25.6.17.66 Таблица ndbinfo transporters
В этой таблице содержится информация о транспортерах NDB. Для аналогичной информации об отдельных транспортерах см. таблицу transporter_details.
Таблица transporters содержит следующие столбцы:
-
node_idУникальный идентификатор узла этого узла данных в кластере
-
remote_node_idИдентификатор удаленного узла данных
-
statusСостояние соединения
-
remote_addressИмя или IP-адрес удаленного хоста
-
bytes_sentКоличество байтов, отправленных по этому соединению
-
bytes_receivedКоличество байтов, полученных по этому соединению
-
connect_countКоличество раз, когда соединение было установлено на этом транспортере
-
overloaded1, если этот транспортер в настоящее время перегружен, иначе 0
-
overload_countКоличество раз, когда этот транспортер переходил в состояние перегрузки с момента подключения
-
slowdown1, если этот транспортер находится в состоянии замедления, иначе 0
-
slowdown_countКоличество раз, когда этот транспортер переходил в состояние замедления с момента подключения
-
encryptedЕсли это подключение транспортера выполняется с использованием TLS, этот столбец содержит значение
1, в противном случае —0.
Примечания
Для каждого работающего узла данных в кластере таблица transporters отображает строку, показывающую состояние каждого из соединений этого узла со всеми узлами в кластере, включая его самого. Эта информация показана в столбце status таблицы, который может иметь любое из следующих значений: CONNECTING, CONNECTED, DISCONNECTING или DISCONNECTED.
Подключения к узлам API и управления, которые настроены, но в настоящее время не подключены к кластеру, отображаются со статусом DISCONNECTED. Строки, где node_id относится к узлу данных, который в настоящее время не подключен, в этой таблице не отображаются. (Это аналогично опущению отключенных узлов в таблице ndbinfo.nodes.
remote_address — имя хоста или адрес узла, ID которого показан в столбце remote_node_id. bytes_sent с этого узла и bytes_received этим узлом — это числа, соответственно, байтов, отправленных и полученных узлом по этому соединению с момента его установления. Для узлов, статус которых CONNECTING или DISCONNECTED, эти столбцы всегда отображают 0.
Предположим, у вас есть кластер из 5 узлов, состоящий из 2 узлов данных, 2 узлов SQL и 1 узла управления, как показано в выводе команды SHOW в клиенте ndb_mgm:
ndb_mgm> SHOW
Connected to Management Server at: localhost:1186 (using cleartext)
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=1 @10.100.10.1 (8.4.5-ndb-8.4.5, Nodegroup: 0, *)
id=2 @10.100.10.2 (8.4.5-ndb-8.4.5, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=10 @10.100.10.10 (8.4.5-ndb-8.4.5)
[mysqld(API)] 2 node(s)
id=20 @10.100.10.20 (8.4.5-ndb-8.4.5)
id=21 @10.100.10.21 (8.4.5-ndb-8.4.5)
В таблице transporters содержится 10 строк — по 5 для первого и второго узлов данных — при условии, что все узлы данных работают, как показано здесь:
+---------+----------------+------------+----------------+------------+----------------+---------------+------------+----------------+----------+----------------+-----------+
| node_id | remote_node_id | status | remote_address | bytes_sent | bytes_received | connect_count | overloaded | overload_count | slowdown | slowdown_count | encrypted |
+---------+----------------+------------+----------------+------------+----------------+---------------+------------+----------------+----------+----------------+-----------+
| 5 | 6 | CONNECTED | 127.0.0.1 | 15509748 | 15558204 | 1 | 0 | 0 | 0 | 0 | 0 |
| 5 | 50 | CONNECTED | 127.0.0.1 | 1058220 | 284316 | 1 | 0 | 0 | 0 | 0 | 0 |
| 5 | 100 | CONNECTED | 127.0.0.1 | 574796 | 402208 | 1 | 0 | 0 | 0 | 0 | 0 |
| 5 | 101 | CONNECTING | - | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 6 | 5 | CONNECTED | 127.0.0.1 | 15558204 | 15509748 | 1 | 0 | 0 | 0 | 0 | 0 |
| 6 | 50 | CONNECTED | 127.0.0.1 | 1054548 | 283812 | 1 | 0 | 0 | 0 | 0 | 0 |
| 6 | 100 | CONNECTED | 127.0.0.1 | 529948 | 397444 | 1 | 0 | 0 | 0 | 0 | 0 |
| 6 | 101 | CONNECTING | - | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+---------+----------------+------------+----------------+------------+----------------+---------------+------------+----------------+----------+----------------+-----------+
mysql> SELECT node_id, remote_node_id, status
-> FROM ndbinfo.transporters;
+---------+----------------+---------------+
| node_id | remote_node_id | status |
+---------+----------------+---------------+
| 1 | 1 | DISCONNECTED |
| 1 | 2 | CONNECTED |
| 1 | 10 | CONNECTED |
| 1 | 20 | CONNECTED |
| 1 | 21 | CONNECTED |
| 2 | 1 | CONNECTED |
| 2 | 2 | DISCONNECTED |
| 2 | 10 | CONNECTED |
| 2 | 20 | CONNECTED |
| 2 | 21 | CONNECTED |
+---------+----------------+---------------+
10 rows in set (0.04 sec)
Если вы выключите один из узлов данных в этом кластере, используя команду 2 STOP в клиенте ndb_mgm, а затем повторите предыдущий запрос (снова с использованием клиента mysql), эта таблица теперь отображает только 5 строк — по одной строке для каждого соединения от оставшегося узла управления к другому узлу, включая себя и узел данных, который сейчас отключен, — и отображает CONNECTING для состояния каждого оставшегося соединения с узлом данных, который сейчас отключен, как показано здесь:
mysql> SELECT node_id, remote_node_id, status
-> FROM ndbinfo.transporters;
+---------+----------------+---------------+
| node_id | remote_node_id | status |
+---------+----------------+---------------+
| 1 | 1 | DISCONNECTED |
| 1 | 2 | CONNECTING |
| 1 | 10 | CONNECTED |
| 1 | 20 | CONNECTED |
| 1 | 21 | CONNECTED |
+---------+----------------+---------------+
5 rows in set (0.02 sec)
Счетчики connect_count, overloaded, overload_count, slowdown и slowdown_count сбрасываются при подключении и сохраняют свои значения после отключения удаленного узла. Счетчики bytes_sent и bytes_received также сбрасываются при подключении и сохраняют свои значения после отключения (до следующего подключения, которое их обнулит).
Состояние перегрузки, упоминаемое в столбцах overloaded и overload_count, возникает, когда буфер отправки этого транспортера содержит более чем OVerloadLimit байтов (по умолчанию 80% от SendBufferMemory, то есть 0,8 * 2097152 = 1677721 байт). Когда данный транспортер находится в состоянии перегрузки, любая новая транзакция, пытающаяся использовать этот транспортер, завершается ошибкой 1218 (Буферы отправки перегружены в ядре NDB). Это влияет как на сканирование, так и на операции с первичными ключами.
Состояние замедления, упоминаемое в столбцах slowdown и slowdown_count этой таблицы, возникает, когда буфер отправки транспортера содержит более 60% от предела перегрузки (по умолчанию 0,6 * 2097152 = 1258291 байт). В этом состоянии размер пакета любой новой операции сканирования, использующей этот транспортер, уменьшается для минимизации нагрузки на транспортер.
К распространенным причинам замедления или перегрузки буфера отправки относятся:
Размер данных, в частности, количество данных, хранящихся в столбцах
TEXTили столбцахBLOB(или в обоих типах столбцов)Узел данных (ndbd или ndbmtd) на том же хосте, что и узел SQL, участвующий в двоичном журналировании
Большое количество строк на транзакцию или пакет транзакций
Проблемы с настройкой, например, недостаточный объем
SendBufferMemoryПроблемы с оборудованием, например, недостаточный объем ОЗУ или плохая сетевая связь
См. также Раздел 25.4.3.14, «Настройка параметров буфера отправки кластера NDB».
Если для подключения используется TLS, столбец encrypted имеет значение 1, как показано здесь:
mysql> SELECT node_id, remote_node_id, status, encrypted
-> FROM ndbinfo.transporters;
+---------+----------------+------------+-----------+
| node_id | remote_node_id | status | encrypted |
+---------+----------------+------------+-----------+
| 5 | 6 | CONNECTED | 1 |
| 5 | 50 | CONNECTED | 1 |
| 5 | 100 | CONNECTED | 1 |
| 5 | 101 | CONNECTING | 0 |
| 6 | 5 | CONNECTED | 1 |
| 6 | 50 | CONNECTED | 1 |
| 6 | 100 | CONNECTED | 1 |
| 6 | 101 | CONNECTING | 0 |
+---------+----------------+------------+-----------+
8 rows in set (0.04 sec)
В противном случае значение этого столбца равно 0.
Для получения информации о сертификатах каждого узла, подключенного с использованием шифрования связи, можно использовать таблицу certificates.
Дополнительную информацию см. в Разделе 25.6.15, «Шифрование связи TLS для кластера NDB».
© 2025 Oracle
Licensed under the GPLv2 License.