25.6.17.49 Таблица 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; для индекса, созданного другим клиентом NDB API, это может отличаться или отсутствовать.
Приведенный синтаксис полных квалифицированных имен объектов является внутренней интерфейсной структурой, которая может быть изменена в будущих релизах.
Рассмотрим таблицу 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 содержит имя соответствующей базовой таблицы. Для базовых таблиц этот столбец всегда NULL.
Столбец type отображает тип объекта схемы, используемого для этого фрагмента, который может принимать любое из значений System table, User table, Unique hash index или Ordered
index. Таблицы BLOB показаны как User table.
Значение столбца table_id уникально в любой момент времени, но может быть повторно использовано, если соответствующий объект был удален. Тот же 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.