21.5.15 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
NDBT_ProgramExit: 0 - OK
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
Эту информацию также можно получить, используя соответствующие определения столбцов из таблицы схемы информации 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
NDBT_ProgramExit: 0 - OK
$>
Если единственный вывод программы — NDBT_ProgramExit: 0 - OK, это может указывать на отсутствие статистики. Чтобы заставить их создать (или обновить, если они уже существуют), вызовите ndb_index_stat с опцией --update или выполните ANALYZE TABLE для таблицы в клиенте mysql.
Опции
В следующей таблице перечислены опции, специфичные для утилиты NDB Cluster ndb_index_stat. Дополнительные описания приведены после таблицы.
Таблица 21.34 Параметры командной строки, используемые с программой ndb_index_stat
| Формат | Описание | Добавлен, устарел или удален |
|---|---|---|
| Директория, содержащая наборы символов | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Количество попыток повторного подключения перед отказом | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Количество секунд ожидания между попытками связи с сервером управления | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| То же, что и --ndb-connectstring | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Создание файла core при ошибке; используется при отладке | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Имя базы данных, содержащей таблицу | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Чтение заданного файла после чтения глобальных файлов | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Чтение параметров по умолчанию только из указанного файла | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Также читать группы с concat(group, suffix) | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Удаление статистики индексов для таблицы, остановка любого ранее настроенного автоматического обновления | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Печать кэша запросов | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Отображение текста справки и выход | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Чтение заданного пути из файла входа | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Установить количество повторений заданной команды; значение по умолчанию 0 | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Установить строку подключения для подключения к ndb_mgmd. Синтаксис: "[nodeid=id;][host=]hostname[:port]". Перезаписывает записи в NDB_CONNECTSTRING и my.cnf | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| То же, что и --ndb-connectstring | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Установить идентификатор узла для данного узла, перезаписывая любой ID, заданный --ndb-connectstring | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Включить оптимизации для выбора узлов для транзакций. Включено по умолчанию; используйте --skip-ndb-optimized-node-selection для отключения | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Не читать параметры по умолчанию из какого-либо файла параметров, кроме файла входа | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Печать списка аргументов программы и выход | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Выполнение случайных запросов диапазона на первом ключевом атрибуте (должен быть int unsigned) | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Удаление всех таблиц статистики и событий в ядре NDB (вся статистика теряется) | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Создание всех таблиц статистики и событий в ядре NDB, если они еще не существуют | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Создание любых таблиц статистики и событий в ядре NDB, если они еще не существуют | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Создание любых таблиц статистики или событий, которые еще не существуют в ядре NDB, после удаления любых недопустимых | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Проверка существования системных статистических данных индекса NDB и таблиц событий | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Не применять параметры sys-* к таблицам | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Не применять параметры sys-* к событиям | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Обновление статистики индекса для таблицы, перезапуск любого ранее настроенного автоматического обновления | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Отображение текста справки и выход; то же, что и --help | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Включение подробного вывода | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) | |
| Отображение информации о версии и выход | (Поддерживается во всех выпусках NDB на основе MySQL 5.7) |
-
--character-sets-dirФормат командной строки --character-sets-dir=pathКаталог, содержащий кодировки символов.
-
--connect-retriesФормат командной строки --connect-retries=#Тип Integer Значение по умолчанию 12Минимальное значение 0Максимальное значение 12Количество попыток повторного подключения перед прекращением попыток.
-
--connect-retry-delayФормат командной строки --connect-retry-delay=#Тип Integer Значение по умолчанию 5Минимальное значение 0Максимальное значение 5Количество секунд ожидания между попытками связаться с сервером управления.
-
--connect-stringФормат командной строки --connect-string=connection_stringТип String Значение по умолчанию [none]То же, что и
--ndb-connectstring. -
--core-fileФормат командной строки --core-fileЗаписать core-файл при ошибке; используется при отладке.
-
--database=,name-dnameФормат командной строки --database=nameТип String Значение по умолчанию [none]Минимальное значение Максимальное значение Имя базы данных, содержащей запрашиваемую таблицу.
-
--defaults-extra-fileФормат командной строки --defaults-extra-file=pathТип String Значение по умолчанию [none]Прочитать заданный файл после чтения глобальных файлов.
-
--defaults-fileФормат командной строки --defaults-file=pathТип String Значение по умолчанию [none]Прочитать параметры по умолчанию только из указанного файла.
-
--defaults-group-suffixФормат командной строки --defaults-group-suffix=stringТип String Значение по умолчанию [none]Также прочитать группы с concat(group, suffix).
-
--deleteФормат командной строки --deleteУдалить статистику индексов для данной таблицы, остановив любое ранее настроенное автоматическое обновление.
-
--dumpФормат командной строки --dumpСбросить содержимое кэша запросов.
-
--helpФормат командной строки --helpВывести справку и завершить работу.
-
--login-pathФормат командной строки --login-path=pathТип String Значение по умолчанию [none]Прочитать заданный путь из файла входа.
-
--loops=#Формат командной строки --loops=#Тип Numeric Значение по умолчанию 0Минимальное значение 0Максимальное значение MAX_INTПовторить команды указанное количество раз (для использования в тестировании).
-
--ndb-connectstringФормат командной строки --ndb-connectstring=connection_stringТип String Значение по умолчанию [none]Установить строку подключения для подключения к ndb_mgmd. Синтаксис: "[nodeid=id;][host=]hostname[:port]". Переопределяет записи в NDB_CONNECTSTRING и my.cnf.
-
--ndb-mgmd-hostФормат командной строки --ndb-mgmd-host=connection_stringТип String Значение по умолчанию [none]То же, что и
--ndb-connectstring. -
--ndb-nodeidФормат командной строки --ndb-nodeid=#Тип Integer Значение по умолчанию [none]Установить идентификатор узла для этого узла, переопределяя любой идентификатор, установленный с помощью
--ndb-connectstring. -
--ndb-optimized-node-selectionФормат командной строки --ndb-optimized-node-selectionВключить оптимизацию выбора узлов для транзакций. Включено по умолчанию; использовать
--skip-ndb-optimized-node-selectionдля отключения. -
--no-defaultsФормат командной строки --no-defaultsНе читать параметры по умолчанию из любого файла параметров, кроме файла входа.
-
--print-defaultsФормат командной строки --print-defaultsРаспечатать список аргументов программы и завершить работу.
-
--query=#Формат командной строки --query=#Тип Numeric Значение по умолчанию 0Минимальное значение 0Максимальное значение MAX_INTВыполнить случайные запросы диапазона по первому атрибуту ключа (должен быть int unsigned).
-
--sys-dropФормат командной строки --sys-dropУдалить все таблицы статистики и события в ядре NDB. Это приведёт к потере всей статистики.
-
--sys-createФормат командной строки --sys-createСоздать все таблицы статистики и события в ядре NDB. Это работает только если ни одна из них не существует ранее.
-
--sys-create-if-not-existФормат командной строки --sys-create-if-not-existСоздать все таблицы статистики системы NDB или события (или и то, и другое), которые еще не существуют, при вызове программы.
-
--sys-create-if-not-validФормат командной строки --sys-create-if-not-validСоздать все таблицы статистики системы NDB или события, которые еще не существуют, после удаления всех некорректных.
-
--sys-checkФормат командной строки --sys-checkПроверить, существуют ли все необходимые таблицы статистики системы и события в ядре NDB.
-
--sys-skip-tablesФормат командной строки --sys-skip-tablesНе применять какие-либо
--sys-*параметры к таблицам статистики. -
--sys-skip-eventsФормат командной строки --sys-skip-eventsНе применять какие-либо
--sys-*параметры к событиям. -
--updateФормат командной строки --updateОбновить статистику индексов для заданной таблицы и перезапустить все ранее настроенные автоматические обновления.
-
--usageФормат командной строки --usageОтобразить текст справки и выйти; то же самое, что и
--help. -
--verboseФормат командной строки --verboseВключить подробный вывод.
-
--versionФормат командной строки --versionОтобразить информацию о версии и выйти.
Системные параметры ndb_index_stat. Следующие параметры используются для генерации и обновления таблиц статистики в ядре NDB. Ни один из этих параметров не может быть смешан с параметрами статистики (см. параметры статистики ndb_index_stat).
Параметры статистики ndb_index_stat. Перечисленные здесь параметры используются для генерации статистики индексов. Они работают с заданной таблицей и базой данных. Их нельзя смешивать с системными параметрами (см. системные параметры ndb_index_stat).
© 2025 Oracle
Licensed under the GPLv2 License.