21.6.15.29 Таблица ndbinfo operations_per_fragment
Таблица operations_per_fragment предоставляет информацию об операциях, выполненных над отдельными фрагментами и репликами фрагментов, а также о некоторых результатах этих операций.
Таблица operations_per_fragment содержит следующие столбцы:
-
fq_nameИмя этого фрагмента
-
parent_fq_nameИмя родительского фрагмента
-
typeТип объекта; возможные значения см. в тексте
-
table_idИдентификатор таблицы для этой таблицы
-
node_idИдентификатор узла для этого узла
-
block_instanceИдентификатор экземпляра блока ядра
-
fragment_numИдентификатор фрагмента (число)
-
tot_key_readsОбщее количество чтений ключей для этой реплики фрагмента
-
tot_key_insertsОбщее количество вставок ключей для этой реплики фрагмента
-
tot_key_updatesОбщее количество обновлений ключей для этой реплики фрагмента
-
tot_key_writesОбщее количество записей ключей для этой реплики фрагмента
-
tot_key_deletesОбщее количество удалений ключей для этой реплики фрагмента
-
tot_key_refsКоличество отклоненных операций с ключами
-
tot_key_attrinfo_bytesОбщий размер всех атрибутов
attrinfo -
tot_key_keyinfo_bytesОбщий размер всех атрибутов
keyinfo -
tot_key_prog_bytesОбщий размер всех интерпретируемых программ, выполняемых атрибутами
attrinfo -
tot_key_inst_execОбщее количество инструкций, выполненных интерпретируемыми программами для операций с ключами
-
tot_key_bytes_returnedОбщий размер всех данных и метаданных, возвращенных из операций чтения ключей
-
tot_frag_scansОбщее количество сканирований, выполненных для этой реплики фрагмента
-
tot_scan_rows_examinedОбщее количество строк, проверенных при сканировании
-
tot_scan_rows_returnedОбщее количество строк, возвращенных клиенту
-
tot_scan_bytes_returnedОбщий размер данных и метаданных, возвращенных клиенту
-
tot_scan_prog_bytesОбщий размер интерпретируемых программ для операций сканирования
-
tot_scan_bound_bytesОбщий размер всех границ, используемых в сканировании индексов с упорядочением
-
tot_scan_inst_execОбщее количество инструкций, выполненных для сканирования
-
tot_qd_frag_scansКоличество раз, когда сканирование этой реплики фрагмента было помещено в очередь
-
conc_frag_scansКоличество активных сканирований для этой реплики фрагмента (исключая сканирования в очереди)
-
conc_qd_frag_scansКоличество сканирований в очереди для этой реплики фрагмента
-
tot_commitsОбщее количество изменений строк, подтвержденных для этой реплики фрагмента
Примечания
fq_name содержит полное имя схемы объекта, к которому принадлежит эта реплика фрагмента. В настоящее время это имеет следующие форматы:
Базовая таблица:
DbName/def/TblNameТаблица
BLOB:DbName/def/NDB$BLOB_BaseTblId_ColNoИндекс с упорядочением:
sys/def/BaseTblId/IndexNameУникальный индекс:
sys/def/BaseTblId/IndexName$unique
Суффикс $unique, показанный для уникальных индексов, добавляется приложением mysqld; для индекса, созданного другим приложением API NDB, это может отличаться или отсутствовать.
Только что показанный синтаксис полных имен объектов — это внутренний интерфейс, который может измениться в будущих выпусках.
Рассмотрим таблицу t1, созданную и измененную следующими SQL-командами:
CREATE DATABASE mydb;
USE mydb;
CREATE TABLE t1 (
a INT NOT NULL,
b INT NOT NULL,
t TEXT NOT NULL,
PRIMARY KEY (b)
) ENGINE=ndbcluster;
CREATE UNIQUE INDEX ix1 ON t1(b) USING HASH;
Если t1 присвоено идентификатор таблицы 11, это приводит к значениям fq_name, показанным здесь:
Базовая таблица:
mydb/def/t1Таблица
BLOB:mydb/def/NDB$BLOB_11_2Индекс с упорядочением (первичный ключ):
sys/def/11/PRIMARYУникальный индекс:
sys/def/11/ix1$unique
Для индексов или таблиц BLOB столбец parent_fq_name содержит имя fq_name соответствующей базовой таблицы. Для базовых таблиц этот столбец всегда NULL.
Столбец type показывает тип объекта схемы, используемого для этого фрагмента, который может принимать любое из значений System table, User table, Unique hash index или Ordered
index. Таблицы BLOB отображаются как User table.
Значение столбца table_id уникально в любой момент времени, но может быть повторно использовано, если соответствующий объект был удален. Тот же идентификатор можно увидеть с помощью утилиты ndb_show_tables.
Столбец block_instance показывает, к какому экземпляру LDM принадлежит эта реплика фрагмента. Вы можете использовать это для получения информации о конкретных потоках из таблицы threadblocks. Первый такой экземпляр всегда имеет номер 0.
Поскольку обычно есть две реплики, и предполагая, что это так, каждое значение fragment_num должно появляться дважды в таблице на двух разных узлах данных из одной группы узлов.
Поскольку NDB не использует доступ по одному ключу для индексов с упорядочением, счетчики для tot_key_reads, tot_key_inserts, tot_key_updates, tot_key_writes и tot_key_deletes не увеличиваются операциями индексов с упорядочением.
Используя tot_key_writes, следует помнить, что операция записи в этом контексте обновляет строку, если ключ существует, и вставляет новую строку в противном случае. (Одно из применений этого — в реализации NDB инструкции SQL REPLACE).
Столбец tot_key_refs показывает количество операций с ключами, отклоненных LDM. Как правило, такое отклонение вызвано дублированными ключами (вставки), ошибками «Ключ не найден» (обновления, удаления и чтения) или операция была отклонена интерпретируемой программой, используемой в качестве предиката для строки, соответствующей ключу.
Атрибуты attrinfo и keyinfo, подсчитанные столбцами tot_key_attrinfo_bytes и tot_key_keyinfo_bytes, являются атрибутами сигнала LQHKEYREQ (см. Протокол связи NDB), используемого для запуска операции с ключом LDM. attrinfo обычно содержит значения полей кортежа (вставки и обновления) или спецификации проекции (для чтений); keyinfo содержит первичный или уникальный ключ, необходимый для поиска заданного кортежа в этом объекте схемы.
Показанное значение tot_frag_scans включает полные сканирования (которые проверяют каждую строку) и сканирования подмножеств. Уникальные индексы и таблицы BLOB никогда не сканируются, поэтому это значение, как и другие счетчики, связанные со сканированием, равно 0 для реплик фрагментов этих объектов.
tot_scan_rows_examined может отображать меньше, чем общее количество строк в данной реплике фрагмента, поскольку сканирование индексов с упорядочением может быть ограничено границами. Кроме того, клиент может выбрать завершение сканирования до проверки всех потенциально соответствующих строк; это происходит при использовании SQL-запроса, содержащего предложение LIMIT или EXISTS, например. tot_scan_rows_returned всегда меньше или равно tot_scan_rows_examined.
tot_scan_bytes_returned включает в случае выталкиваемых объединений проекции, возвращенные в блок DBSPJ в ядре NDB.
tot_qd_frag_scans может быть затронуто значением параметра конфигурации узла данных MaxParallelScansPerFragment, которое ограничивает количество сканирований, которые могут выполняться одновременно для одной реплики фрагмента.
© 2025 Oracle
Licensed under the GPLv2 License.