Spec-Zone.ru › MySQL 5.7

21.6.3.3 Использование CLUSTERLOG STATISTICS в клиенте управления NDB Cluster

Клиент управления NDB с помощью команды CLUSTERLOG STATISTICS может предоставлять ряд полезных статистических данных в своём выводе. Счётчики, предоставляющие информацию о состоянии кластера, обновляются каждые 5 секунд координатором транзакций (TC) и локальным обработчиком запросов (LQH) и записываются в журнал кластера.

Статистика координатора транзакций. Каждая транзакция имеет одного координатора транзакций, который выбирается одним из следующих способов:

  • По круговому циклу

  • По близости связи

  • Путем предоставления подсказки размещения данных при запуске транзакции

Примечание

Вы можете определить, какой метод выбора TC используется для транзакций, начатых с определённого узла SQL, используя системную переменную ndb_optimized_node_selection.

Все операции в рамках одной транзакции используют одного координатора транзакций, который отчитывается о следующей статистике:

  • Количество транзакций (Trans count). Это количество транзакций, начатых в последнем интервале с использованием данного TC в качестве координатора транзакций. Любая из этих транзакций может быть завершена, прервана или оставаться незавершенной в конце отчётного интервала.

    Примечание

    Транзакции не мигрируют между TC.

  • Количество успешных транзакций (Commit count). Это количество транзакций, использовавших данный TC как координатора транзакций, которые были успешно завершены в последнем отчётном интервале. Поскольку некоторые транзакции, завершённые в данном отчётном интервале, могут начаться в предыдущем отчётном интервале, возможно, что Commit count будет больше, чем Trans count.

  • Количество операций чтения (Read count). Это количество операций чтения первичного ключа с использованием данного TC в качестве координатора транзакций, начатых в последнем отчётном интервале, включая простые операции чтения. Это количество также включает чтения, выполненные в рамках операций с уникальными индексами. Операция чтения уникального индекса генерирует 2 операции чтения первичного ключа — одну для скрытой таблицы уникального индекса и одну для таблицы, по которой выполняется чтение.

  • Количество простых операций чтения (Simple read count). Это количество простых операций чтения с использованием данного TC в качестве координатора транзакций, начатых в последнем отчётном интервале.

  • Количество операций записи (Write count). Это количество операций записи первичного ключа с использованием данного TC в качестве координатора транзакций, начатых в последнем отчётном интервале. Это включает все операции вставки, обновления, записи и удаления, а также записи, выполненные в рамках операций с уникальными индексами.

    Примечание

    Операция обновления уникального индекса может генерировать несколько операций чтения и записи PK в таблице индекса и в основной таблице.

  • AttrInfoCount. Это количество 32-битовых слов данных, полученных в последнем отчётном интервале для операций с первичным ключом с использованием данного TC в качестве координатора транзакций. Для чтений это пропорционально количеству запрашиваемых столбцов. Для вставок и обновлений это пропорционально количеству записанных столбцов и размеру их данных. Для операций удаления это обычно ноль.

    Операции с уникальными индексами генерируют несколько операций PK, увеличивая это значение. Однако, слова данных, отправленные для описания самой операции PK и отправленной информации ключа, здесь не учитываются. Информация об атрибутах, отправленная для описания столбцов для чтения при сканировании или для описания ScanFilters, также не учитывается в AttrInfoCount.

  • Concurrent Operations (Одновременные операции). Это количество операций с первичным ключом или сканирования с использованием данного TC в качестве координатора транзакций, начатых в последнем отчётном интервале, но не завершённых. Операции увеличивают этот счётчик при запуске и уменьшают его при завершении; это происходит после успешного завершения транзакции. Некорректные операции чтения и записи, а также несостоявшиеся операции, уменьшают этот счётчик.

    Максимальное значение, которое может принимать Concurrent Operations, равно максимальному количеству операций, которые может поддерживать блок TC; в настоящее время это (2 * MaxNoOfConcurrentOperations) + 16 + MaxNoOfConcurrentTransactions. (Дополнительную информацию об этих параметрах конфигурации см. в разделе Параметры транзакций в Разделе 21.4.3.6, “Определение узлов данных NDB Cluster”.)

  • Количество прерванных транзакций (Abort count). Это количество транзакций, использующих данный TC как координатор транзакций, которые были прерваны в последнем отчётном интервале. Так как некоторые транзакции, прерванные в последнем отчётном интервале, могли начаться в предыдущем, Abort count иногда может быть больше, чем Trans count.

  • Сканирования (Scans). Это количество сканирований таблиц с использованием данного TC как координатора транзакций, начатых в последнем отчётном интервале. Это не включает сканирования по диапазону (то есть упорядоченные сканирования индексов).

  • Сканирования по диапазону (Range scans). Это количество упорядоченных сканирований индексов с использованием данного TC как координатора транзакций, начатых в последнем отчётном интервале.

  • Локальные операции чтения (Local reads). Это количество операций чтения первичного ключа, выполненных с использованием координатора транзакций на узле, на котором также хранится основная репликация фрагмента записи. Это значение также может быть получено из счётчика LOCAL_READS в таблице ndbinfo.counters.

  • Локальные операции записи (Local writes). Это количество операций чтения первичного ключа, которые были выполнены с использованием координатора транзакций на узле, который также хранит первичную реплику фрагмента записи. Это значение также может быть получено из счётчика LOCAL_WRITES в таблице ndbinfo.counters.

Статистика локального обработчика запросов (Operations). Один кластерный событие на блок локального обработчика запросов (то есть один на процесс узла данных). Операции записываются в LQH, где хранятся данные, над которыми они выполняются.

Примечание

Одна транзакция может обработать данные, хранящиеся в нескольких блоках LQH.

Статистика Operations указывает количество локальных операций, выполненных данным блоком LQH в последнем отчётном интервале, и включает все типы операций чтения и записи (вставки, обновления, записи и удаления). Это также включает операции, используемые для репликации записей. Например, в кластере с двумя репликами фрагментов запись в первичную реплику фрагмента записывается в первичном LQH, а запись в резервную — в резервном LQH. Операции с уникальными ключами могут привести к нескольким локальным операциям; однако это не включает локальные операции, генерируемые в результате сканирования таблицы или упорядоченного сканирования индекса, которые не учитываются.

Статистика планировщика процессов. Помимо статистики, отчитываемой координатором транзакций и локальным обработчиком запросов, у каждого процесса ndbd есть планировщик, который также предоставляет полезные метрики, связанные с производительностью NDB Cluster. Этот планировщик работает в бесконечном цикле; во время каждого цикла планировщик выполняет следующие задачи:

  1. Читает все входящие сообщения из сокетов в буфер задач.

  2. Проверяет наличие сообщений с тайм-аутами, которые нужно выполнить; в случае необходимости добавляет их в буфер задач.

  3. Выполняет (в цикле) все сообщения в буфере задач.

  4. Отправляет все распределённые сообщения, сгенерированные при выполнении сообщений в буфере задач.

  5. Ожидает новые входящие сообщения.

Статистика планировщика процессов включает в себя следующее:

  • Среднее значение счётчика циклов (Mean Loop Counter). Это количество циклов, выполненных на третьем шаге из предыдущего списка. Этот показатель увеличивается по мере улучшения использования буфера TCP/IP. Вы можете использовать его для мониторинга изменений производительности при добавлении новых процессов узлов данных.

  • Средний размер отправки и Средний размер приёма (Mean send size and Mean receive size). Эти статистические данные позволяют оценить эффективность соответственно записи и чтения между узлами. Значения даются в байтах. Более высокие значения означают меньшую стоимость на байт отправки или получения; максимальное значение составляет 64 КБ.

Для того, чтобы все статистические данные журнала кластера были записаны, вы можете использовать следующую команду в клиенте управления NDB:

ndb_mgm> ALL CLUSTERLOG STATISTICS=15
Примечание

Установка порога для STATISTICS в значение 15 приводит к тому, что журнал кластера становится очень подробным и быстро увеличивается в размере, прямо пропорционально количеству узлов кластера и активности в NDB Cluster.

Дополнительную информацию о командах клиента управления NDB Cluster, связанных с журналированием и отчётами, см. в Разделе 21.6.3.1, “Команды управления журналированием NDB Cluster”.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/mysql-cluster-log-statistics.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API