Перейти к основному содержимому

SHOW TABLET

SHOW TABLET отображает информацию, связанную с tablet.

ПРИМЕЧАНИЕ

Для версии 3.0 и более поздних эта операция требует привилегию OPERATE на уровне SYSTEM и привилегию SELECT на уровне TABLE. Для версии 2.5 и более ранних эта операция требует привилегию ADMIN_PRIV.

Синтаксис

Запрос информации о tablet в таблице или разделе

SHOW TABLET
FROM [<db_name>.]<table_name>
[PARTITION(<partition_name>, ...)]
[
WHERE [version = <version_number>]
[[AND] backendid = <backend_id>]
[[AND] STATE = "NORMAL"|"ALTER"|"CLONE"|"DECOMMISSION"]
]
[ORDER BY <field_name> [ASC | DESC]]
[LIMIT [<offset>,]<limit>]
ПараметрОбязательныйОписание
db_nameНетИмя базы данных. Если вы не указываете этот параметр, по умолчанию используется текущая база данных.
table_nameДаИмя таблицы, из которой вы хотите запросить информацию о tablet. Вы должны указать этот параметр. В противном случае возвращается ошибка.
partition_nameНетИмя раздела, из которого вы хотите запросить информацию о tablet.
version_numberНетНомер версии данных.
backend_idНетID BE, где расположена реплика tablet.
STATEНетСтатус реплик tablet.
  • NORMAL: Реплика нормальная.
  • ALTER: На реплике выполняется Rollup или schema change.
  • CLONE: Реплика клонируется. (Реплики в этом состоянии недоступны для использования).
  • DECOMMISSION: Реплика выводится из эксплуатации.
field_nameНетПоле, по которому сортируются результаты. Все поля, возвращаемые SHOW TABLET FROM <table_name>, можно сортировать.
  • Если вы хотите отобразить результаты в порядке возрастания, используйте ORDER BY field_name ASC.
  • Если вы хотите отобразить результаты в порядке убывания, используйте ORDER BY field_name DESC.
offsetНетКоличество tablet для пропуска из результатов. Например, OFFSET 5 означает пропустить первые пять tablet. Значение по умолчанию: 0.
limitНетКоличество tablet для возврата. Например, LIMIT 10 означает вернуть только 10 tablet. Если этот параметр не указан, возвращаются все tablet, соответствующие условиям фильтра.

Запрос информации об одном tablet

После получения всех ID tablet с помощью SHOW TABLET FROM <table_name>, вы можете запросить информацию об одном tablet.

SHOW TABLET <tablet_id>
ПараметрОбязательныйОписание
tablet_idДаID tablet

Описание возвращаемых полей

Запрос информации о tablet в таблице или разделе

-- В shared-nothing кластере
+----------+-----------+-----------+------------+---------+-------------+-------------------+-----------------------+------------------+----------------------+---------------+----------+----------+--------+-------------------------+--------------+------------------+--------------+----------+----------+-------------------+---------------+
| TabletId | ReplicaId | BackendId | SchemaHash | Version | VersionHash | LstSuccessVersion | LstSuccessVersionHash | LstFailedVersion | LstFailedVersionHash | LstFailedTime | DataSize | RowCount | State | LstConsistencyCheckTime | CheckVersion | CheckVersionHash | VersionCount | PathHash | MetaUrl | CompactionStatus | DiskRootPath |
+----------+-----------+-----------+------------+---------+-------------+-------------------+-----------------------+------------------+----------------------+---------------+----------+----------+--------+-------------------------+--------------+------------------+--------------+----------+----------+-------------------+---------------+
-- В shared-data кластере
+----------+-----------+----------+----------+------------+
| TabletId | BackendId | DataSize | RowCount | MinVersion |
+----------+-----------+----------+----------+------------+
ПолеОписание
TabletIdID таблицы.
ReplicaIdID реплики.
BackendIdID BE, где расположена реплика.
SchemaHashХеш схемы (генерируется случайно).
VersionНомер версии данных.
VersionHashХеш номера версии данных.
LstSuccessVersionПоследняя успешно загруженная версия.
LstSuccessVersionHashХеш последней успешно загруженной версии.
LstFailedVersionВерсия последней неудачной загрузки. -1 указывает, что ни одна версия не была загружена неудачно.
LstFailedVersionHashХеш последней неудачной версии.
LstFailedTimeВремя последней неудачной загрузки. NULL указывает, что неудач загрузки не было.
DataSizeРазмер данных tablet.
RowCountКоличество строк данных tablet.
StateСтатус реплики tablet.
LstConsistencyCheckTimeВремя последней проверки согласованности. NULL указывает, что проверка согласованности не выполнялась.
CheckVersionВерсия данных, на которой была выполнена проверка согласованности. -1 указывает, что ни одна версия не была проверена.
CheckVersionHashХеш версии, на которой была выполнена проверка согласованности.
VersionCountОбщее количество версий данных.
PathHashХеш каталога, в котором хранится tablet.
MetaUrlURL, используемый для запроса дополнительной мета-информации.
CompactionStatusURL, используемый для запроса статуса Compaction версий данных.
DiskRootPathДиск, на котором расположена реплика.
MinVersionМинимальная версия данных, сохраненная для tablet. Только для shared-data кластеров.

Запрос информации о конкретном tablet

+--------+-----------+---------------+-----------+------+---------+-------------+---------+--------+-----------+
| DbName | TableName | PartitionName | IndexName | DbId | TableId | PartitionId | IndexId | IsSync | DetailCmd |
+--------+-----------+---------------+-----------+------+---------+-------------+---------+--------+-----------+
ПолеОписание
DbNameИмя базы данных, к которой принадлежит tablet.
TableNameИмя таблицы, к которой принадлежит tablet.
PartitionNameИмя раздела, к которому принадлежит tablet.
IndexNameИмя индекса.
DbIdID базы данных.
TableIdID таблицы.
PartitionIdID раздела.
IndexIdID индекса.
IsSyncСогласованы ли данные на tablet с мета-данными таблицы. true указывает, что данные согласованы и tablet нормальный. false указывает, что данные отсутствуют на tablet.
DetailCmdURL, используемый для запроса дополнительной информации.

Примеры

Создайте таблицу test_show_tablet в базе данных example_db.

CREATE TABLE `test_show_tablet` (
`k1` date NULL COMMENT "",
`k2` datetime NULL COMMENT "",
`k3` char(20) NULL COMMENT "",
`k4` varchar(20) NULL COMMENT "",
`k5` boolean NULL COMMENT "",
`k6` tinyint(4) NULL COMMENT "",
`k7` smallint(6) NULL COMMENT "",
`k8` int(11) NULL COMMENT "",
`k9` bigint(20) NULL COMMENT "",
`k10` largeint(40) NULL COMMENT "",
`k11` float NULL COMMENT "",
`k12` double NULL COMMENT "",
`k13` decimal128(27, 9) NULL COMMENT ""
) ENGINE=OLAP
DUPLICATE KEY(`k1`, `k2`, `k3`, `k4`, `k5`)
COMMENT "OLAP"
PARTITION BY RANGE(`k1`)
(PARTITION p20210101 VALUES [("2021-01-01"), ("2021-01-02")),
PARTITION p20210102 VALUES [("2021-01-02"), ("2021-01-03")),
PARTITION p20210103 VALUES [("2021-01-03"), ("2021-01-04")),
PARTITION p20210104 VALUES [("2021-01-04"), ("2021-01-05")),
PARTITION p20210105 VALUES [("2021-01-05"), ("2021-01-06")),
PARTITION p20210106 VALUES [("2021-01-06"), ("2021-01-07")),
PARTITION p20210107 VALUES [("2021-01-07"), ("2021-01-08")),
PARTITION p20210108 VALUES [("2021-01-08"), ("2021-01-09")),
PARTITION p20210109 VALUES [("2021-01-09"), ("2021-01-10")))
DISTRIBUTED BY HASH(`k1`, `k2`, `k3`);
  • Пример 1: Запрос информации обо всех tablet в указанной таблице. Следующий пример извлекает информацию только об одном tablet из возвращаемой информации.

        mysql> show tablet from example_db.test_show_tablet\G
    *************************** 1. row ***************************
    TabletId: 9588955
    ReplicaId: 9588956
    BackendId: 10004
    SchemaHash: 0
    Version: 1
    VersionHash: 0
    LstSuccessVersion: 1
    LstSuccessVersionHash: 0
    LstFailedVersion: -1
    LstFailedVersionHash: 0
    LstFailedTime: NULL
    DataSize: 0B
    RowCount: 0
    State: NORMAL
    LstConsistencyCheckTime: NULL
    CheckVersion: -1
    CheckVersionHash: 0
    VersionCount: 1
    PathHash: 0
    MetaUrl: http://172.26.92.141:8038/api/meta/header/9588955
    CompactionStatus: http://172.26.92.141:8038/api/compaction/show?tablet_id=9588955
    DiskRootPath: /storage/disk
  • Пример 2: Запрос информации о tablet 9588955.

        mysql> show tablet 9588955\G
    *************************** 1. row ***************************
    DbName: example_db
    TableName: test_show_tablet
    PartitionName: p20210103
    IndexName: test_show_tablet
    DbId: 11145
    TableId: 9588953
    PartitionId: 9588946
    IndexId: 9588954
    IsSync: true
    DetailCmd: SHOW PROC '/dbs/11145/9588953/partitions/9588946/9588954/9588955';
  • Пример 3: Запрос информации о tablet в разделе p20210103.

    SHOW TABLET FROM test_show_tablet partition(p20210103);
  • Пример 4: Возврат информации о 10 tablet.

        SHOW TABLET FROM test_show_tablet limit 10;
  • Пример 5: Возврат информации о 10 tablet со смещением 5.

    SHOW TABLET FROM test_show_tablet limit 5,10;
  • Пример 6: Фильтрация tablet по backendid, version и state.

        SHOW TABLET FROM test_show_tablet
    WHERE backendid = 10004 and version = 1 and state = "NORMAL";
  • Пример 7: Сортировка tablet по version.

        SHOW TABLET FROM table_name where backendid = 10004 order by version;
  • Пример 8: Возврат информации о tablet, имя индекса которых test_show_tablet.

    SHOW TABLET FROM test_show_tablet where indexname = "test_show_tablet";