Spec-Zone.ru › MySQL 8.4

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

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

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

  • В циклическом порядке

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

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

Примечание

Вы можете определить, какой метод выбора 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. (Дополнительную информацию о параметрах конфигурации см. в разделе Параметры транзакций в Разделе 25.4.3.6, “Определение узлов данных кластера NDB”.)

  • Количество прерванных транзакций (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. Этот планировщик работает в бесконечном цикле; во время каждого цикла планировщик выполняет следующие задачи:

  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.

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

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

Spec-Zone.ru

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