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 — это имя хоста или адрес узла, идентификатор которого указан в столбце 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 (9.2.0-ndb-9.2.0, Nodegroup: 0, *)
id=2 @10.100.10.2 (9.2.0-ndb-9.2.0, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=10 @10.100.10.10 (9.2.0-ndb-9.2.0)
[mysqld(API)] 2 node(s)
id=20 @10.100.10.20 (9.2.0-ndb-9.2.0)
id=21 @10.100.10.21 (9.2.0-ndb-9.2.0)
В таблице transporters содержится 10 строк — 5 для первого узла данных и 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.