TABLE_REGIONS

TABLE_REGIONS 表展示了关于特定表的 Region 信息。与 TIKV_REGION_STATUS 不同,TABLE_REGIONS 只会返回数据 Region (record regions),不会返回索引 Region (index regions)。

该表的一个特殊用途是,其 START_KEYEND_KEY 列的值可以用于 SELECT 查询语句中的 TABLESPLIT() 子句,从而高效地查询特定范围内的数据。

USE information_schema; DESC TABLE_REGIONS;

输出结果如下:

+------------------+-------------+------+------+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------------+-------------+------+------+---------+-------+ | REGION_ID | bigint | YES | | NULL | | | START_KEY | text | YES | | NULL | | | END_KEY | text | YES | | NULL | | | TABLE_ID | bigint | YES | | NULL | | | DB_NAME | varchar(64) | YES | | NULL | | | TABLE_NAME | varchar(64) | YES | | NULL | | | PARTITION_ID | bigint | YES | | NULL | | | PARTITION_NAME | varchar(64) | YES | | NULL | | | APPROXIMATE_SIZE | bigint | YES | | NULL | | | APPROXIMATE_KEYS | bigint | YES | | NULL | | +------------------+-------------+------+------+---------+-------+ 10 rows in set (0.00 sec)

TABLE_REGIONS 表中列的含义如下:

  • REGION_ID:Region 的 ID。
  • START_KEY:Region 的起始 key 的值。可用于 TABLESPLIT() 子句中指定查询的 Region 范围。
  • END_KEY:Region 的末尾 key 的值。可用于 TABLESPLIT() 子句中指定查询的 Region 范围。
  • TABLE_ID:Region 所属的表的 ID。
  • DB_NAMETABLE_ID 所属的数据库的名称。
  • TABLE_NAME:Region 所属的表的名称。
  • PARTITION_ID:如果 Region 所属的表为分区表,则显示 Region 所属的分区的 ID。
  • PARTITION_NAME:如果 Region 所属的表为分区表,则显示 Region 所属的分区的名字。
  • APPROXIMATE_SIZE:Region 的近似数据量 (MB)。
  • APPROXIMATE_KEYS:Region 中 key 的近似数量。