25.5.14 ndb_index_stat — Утилита статистики индексов NDB
ndb_index_stat предоставляет статистическую информацию по фрагментам о индексах на NDB таблицах. Включая версию и возраст кэша, количество записей индекса на каждой части и потребление памяти индексами.
Использование
Для получения базовой статистики индексов заданной NDB таблицы, вызовите ndb_index_stat, как показано ниже, указав имя таблицы в качестве первого аргумента и имя базы данных, содержащей эту таблицу, сразу после неё, используя --database (-d) опцию:
ndb_index_stat table -d database
В этом примере мы используем ndb_index_stat для получения такой информации о NDB таблице с именем mytable в базе данных test:
$> ndb_index_stat -d test mytable
table:City index:PRIMARY fragCount:2
sampleVersion:3 loadTime:1399585986 sampleCount:1994 keyBytes:7976
query cache: valid:1 sampleCount:1994 totalBytes:27916
times in ms: save: 7.133 sort: 1.974 sort per sample: 0.000
sampleVersion — это номер версии кэша, из которого берутся данные статистики. Вызов ndb_index_stat с --update опцией увеличивает sampleVersion.
loadTime — это время последнего обновления кэша. Это выражается как количество секунд, прошедших с эпохи Unix.
sampleCount — это количество записей индекса, найденных на каждой части. Вы можете оценить общее количество записей, умножив это значение на количество фрагментов (показано как fragCount).
sampleCount можно сравнить с кардинальностью SHOW INDEX или INFORMATION_SCHEMA.STATISTICS, хотя последние два предоставляют представление о таблице в целом, в то время как ndb_index_stat предоставляет среднее значение по каждому фрагменту.
keyBytes — это количество байт, используемых индексом. В этом примере первичный ключ является целым числом, для которого требуется четыре байта для каждого индекса, поэтому keyBytes может быть рассчитано в этом случае, как показано здесь:
keyBytes = sampleCount * (4 bytes per index) = 1994 * 4 = 7976
Эту информацию также можно получить, используя соответствующие определения столбцов из INFORMATION_SCHEMA.COLUMNS (для этого требуется сервер MySQL и приложение-клиент MySQL).
totalBytes — это общее количество памяти, потребляемой всеми индексами таблицы в байтах.
Время, показанное в предыдущих примерах, специфично для каждого вызова ndb_index_stat.
Опция --verbose предоставляет дополнительный вывод, как показано здесь:
$> ndb_index_stat -d test mytable --verbose
random seed 1337010518
connected
loop 1 of 1
table:mytable index:PRIMARY fragCount:4
sampleVersion:2 loadTime:1336751773 sampleCount:0 keyBytes:0
read stats
query cache created
query cache: valid:1 sampleCount:0 totalBytes:0
times in ms: save: 20.766 sort: 0.001
disconnected
$>
Если вывод программы пуст, это может указывать на то, что статистика еще не существует. Чтобы принудительно создать её (или обновить, если она уже существует), вызовите ndb_index_stat с опцией --update или выполните ANALYZE TABLE над таблицей в клиенте mysql.
Опции
В следующей таблице содержатся опции, специфичные для утилиты NDB Cluster ndb_index_stat. Дополнительные описания перечислены ниже таблицы.
-
Формат командной строки --character-sets-dir=pathКаталог, содержащий кодировки символов.
-
Формат командной строки --connect-retries=#Тип Integer Значение по умолчанию 12Минимальное значение 0Максимальное значение 12Количество попыток повторного подключения перед отказом.
-
Формат командной строки --connect-retry-delay=#Тип Integer Значение по умолчанию 5Минимальное значение 0Максимальное значение 5Количество секунд ожидания между попытками связаться с сервером управления.
-
Формат командной строки --connect-string=connection_stringТип String Значение по умолчанию [none]То же, что и
--ndb-connectstring. -
Формат командной строки --core-fileЗаписать файл core при ошибке; используется при отладке.
-
--database=,name-dnameФормат командной строки --database=nameТип String Значение по умолчанию [none]Минимальное значение Максимальное значение Имя базы данных, содержащей запрашиваемую таблицу.
-
Формат командной строки --defaults-extra-file=pathТип String Значение по умолчанию [none]Прочитать заданный файл после чтения глобальных файлов.
-
Формат командной строки --defaults-file=pathТип String Значение по умолчанию [none]Прочитать параметры по умолчанию только из заданного файла.
-
Формат командной строки --defaults-group-suffix=stringТип String Значение по умолчанию [none]Также читать группы с concat(group, suffix).
-
Формат командной строки --deleteУдалить статистику индекса для данной таблицы, остановив любое ранее настроенное автоматическое обновление.
-
Формат командной строки --dumpДамп содержимого кэша запросов.
-
Формат командной строки --helpВывести справку и выйти.
-
Формат командной строки --login-path=pathТип String Значение по умолчанию [none]Прочитать заданный путь из файла входа.
-
Формат командной строки --no-login-pathsПропускает чтение параметров из файла пути входа.
-
Формат командной строки --loops=#Тип Numeric Значение по умолчанию 0Минимальное значение 0Максимальное значение MAX_INTПовторять команды это количество раз (для использования в тестировании).
-
Формат командной строки --ndb-connectstring=connection_stringТип String Значение по умолчанию [none]Установить строку подключения для подключения к ndb_mgmd. Синтаксис:
[nodeid=. Переопределяет записи вid;][host=]hostname[:port]NDB_CONNECTSTRINGиmy.cnf. -
Формат командной строки --ndb-mgm-tls=levelТип Enumeration Значение по умолчанию relaxedДопустимые значения relaxedstrictЗадает уровень поддержки TLS, необходимый для подключения к серверу управления; одно из
relaxedилиstrict.relaxed(по умолчанию) означает, что попытка подключения по TLS осуществляется, но успех не обязателен;strictозначает, что для подключения требуется TLS. -
Формат командной строки --ndb-mgmd-host=connection_stringТип String Значение по умолчанию [none]То же, что и
--ndb-connectstring.
-
Формат командной строки --ndb-nodeid=#Тип Integer Значение по умолчанию [none]Установить идентификатор узла для этого узла, переопределив любой идентификатор, установленный с помощью
--ndb-connectstring. -
--ndb-optimized-node-selectionФормат командной строки --ndb-optimized-node-selectionВключить оптимизацию выбора узлов для транзакций. Включено по умолчанию; используйте
--skip-ndb-optimized-node-selectionдля отключения. -
Формат командной строки --ndb-tls-search-path=listТип Path name Значение по умолчанию (Unix) $HOME/ndb-tlsЗначение по умолчанию (Windows) $HOMEDIR/ndb-tlsУкажите список каталогов для поиска файла CA. На платформах Unix имена каталогов разделяются двоеточиями (
:); в системах Windows в качестве разделителя используется символ точки с запятой (;). Ссылка на каталог может быть относительной или абсолютной; она может содержать одну или несколько переменных среды, каждая из которых обозначается предшествующим знаком доллара ($) и расширяется перед использованием.Поиск начинается с самого левого именованного каталога и продолжается слева направо, пока не будет найден файл. Пустая строка обозначает пустой путь поиска, что приводит к сбою всех поисков. Строка, состоящая из одной точки (
.), указывает, что путь поиска ограничен текущим рабочим каталогом.Если путь поиска не указан, используется встроенное значение по умолчанию. Это значение зависит от используемой платформы: в Windows это
\ndb-tls; на других платформах (включая Linux) это$HOME/ndb-tls. Это можно переопределить, скомпилировав NDB Cluster с использованием-DWITH_NDB_TLS_SEARCH_PATH. -
Формат командной строки --no-defaultsНе читать параметры по умолчанию из любого файла параметров, кроме файла входа.
-
Формат командной строки --print-defaultsВывести список аргументов программы и завершить работу.
-
Формат командной строки --query=#Тип Numeric Значение по умолчанию 0Минимальное значение 0Максимальное значение MAX_INTВыполнить запросы случайного диапазона по первому ключевому атрибуту (должен быть int unsigned).
-
Формат командной строки --sys-dropУдалить все таблицы статистики и события в ядре NDB. Это приводит к потере всей статистики.
-
Формат командной строки --sys-createСоздать все таблицы статистики и события в ядре NDB. Это работает только если ни одна из них не существует ранее.
-
Формат командной строки --sys-create-if-not-existСоздать любые таблицы или события (или и то, и другое) статистики системы NDB, которые ещё не существуют, когда вызывается программа.
-
Формат командной строки --sys-create-if-not-validСоздать любые таблицы или события статистики системы NDB, которые ещё не существуют, после удаления любых недействительных.
-
Формат командной строки --sys-checkПроверить, существуют ли все необходимые таблицы и события статистики системы в ядре NDB.
-
Формат командной строки --sys-skip-tablesНе применять любые параметры
--sys-*к таблицам статистики. -
Формат командной строки --sys-skip-eventsНе применять любые параметры
--sys-*к событиям. -
Формат командной строки --updateОбновить статистику индекса для данной таблицы и перезапустить любое автообновление, которое было ранее настроено.
-
Формат командной строки --usageВывести справку и завершить работу; то же самое, что и
--help. -
Формат командной строки --verboseВключить подробный вывод.
-
Формат командной строки --versionВывести информацию о версии и завершить работу.
Системные параметры ndb_index_stat. Следующие параметры используются для генерации и обновления таблиц статистики в ядре NDB. Ни один из этих параметров не может быть смешан с параметрами статистики (см. ndb_index_stat statistics options).
Параметры статистики ndb_index_stat. Указанные здесь параметры используются для генерации статистики индексов. Они работают с заданной таблицей и базой данных. Их нельзя смешивать с системными параметрами (см. системные параметры ndb_index_stat).
© 2025 Oracle
Licensed under the GPLv2 License.