文档首页
MySQL 8.4 参考手册
相关文档 下载本手册
PDF (US Ltr) - 39.9Mb
PDF (A4) - 40.0Mb
手册页 (TGZ) - 258.5Kb
手册页 (Zip) - 365.5Kb
信息文件 (Gzip) - 4.0Mb
信息文件 (Zip) - 4.0Mb


MySQL 8.4 参考手册  /  ...  /  ndbinfo operations_per_fragment 表

25.6.17.49 ndbinfo operations_per_fragment 表

operations_per_fragment 表提供有关在各个分片和分片副本上执行的操作的信息,以及有关这些操作的一些结果的信息。

operations_per_fragment 表包含以下列:

  • fq_name

    此分片的名称

  • parent_fq_name

    此分片的父级的名称

  • type

    对象的类型;有关可能的值,请参见正文

  • table_id

    此表的表 ID

  • node_id

    此节点的节点 ID

  • block_instance

    内核块实例 ID

  • fragment_num

    分片 ID(编号)

  • tot_key_reads

    此分片副本的密钥读取总数

  • tot_key_inserts

    此分片副本的密钥插入总数

  • tot_key_updates

    此分片副本的密钥更新总数

  • tot_key_writes

    此分片副本的密钥写入总数

  • tot_key_deletes

    此分片副本的密钥删除总数

  • tot_key_refs

    被拒绝的密钥操作数

  • tot_key_attrinfo_bytes

    所有 attrinfo 属性的总大小

  • tot_key_keyinfo_bytes

    所有 keyinfo 属性的总大小

  • tot_key_prog_bytes

    attrinfo 属性携带的所有解释程序的总大小

  • tot_key_inst_exec

    由密钥操作的解释程序执行的指令总数

  • tot_key_bytes_returned

    从密钥读取操作返回的所有数据和元数据的总大小

  • tot_frag_scans

    对此分片副本执行的扫描总数

  • tot_scan_rows_examined

    扫描检查的行总数

  • tot_scan_rows_returned

    返回给客户端的行总数

  • tot_scan_bytes_returned

    返回给客户端的数据和元数据的总大小

  • tot_scan_prog_bytes

    用于扫描操作的解释程序的总大小

  • tot_scan_bound_bytes

    有序索引扫描中使用的所有边界的总大小

  • tot_scan_inst_exec

    为扫描执行的指令总数

  • tot_qd_frag_scans

    此分片副本的扫描已排队的次数

  • conc_frag_scans

    当前在此分片副本上处于活动状态的扫描数(不包括排队的扫描)

  • conc_qd_frag_scans

    当前为此分片副本排队的扫描数

  • tot_commits

    提交到此分片副本的行更改总数

备注

fq_name 包含此分片副本所属的架构对象的完全限定名称。当前采用以下格式:

  • 基表:数据库名/def/表名

  • BLOB 表:数据库名/def/NDB$BLOB_基表 ID_列号

  • 有序索引:sys/def/基表 ID/索引名

  • 唯一索引:sys/def/基表 ID/索引名$unique

唯一索引显示的 $unique 后缀是由 mysqld 添加的;对于由其他 NDB API 客户端应用程序创建的索引,这可能会有所不同,或者不存在。

刚才显示的完全限定对象名称的语法是一个内部接口,在将来的版本中可能会更改。

考虑一个表 t1,它由以下 SQL 语句创建和修改:

CREATE DATABASE mydb;

USE mydb;

CREATE TABLE t1 (
  a INT NOT NULL,
  b INT NOT NULL,
  t TEXT NOT NULL,
  PRIMARY KEY (b)
) ENGINE=ndbcluster;

CREATE UNIQUE INDEX ix1 ON t1(b) USING HASH;

如果为 t1 分配了表 ID 11,则会产生此处显示的 fq_name 值:

  • 基表:mydb/def/t1

  • BLOB 表:mydb/def/NDB$BLOB_11_2

  • 有序索引(主键):sys/def/11/PRIMARY

  • 唯一索引:sys/def/11/ix1$unique

对于索引或 BLOB 表,parent_fq_name 列包含相应基表的 fq_name。对于基表,此列始终为 NULL

type 列显示用于此分片的架构对象类型,它可以采用以下任何值:系统表用户表唯一哈希索引有序索引BLOB 表显示为 用户表

table_id 列值在任何给定时间都是唯一的,但如果已删除相应的对象,则可以重复使用。可以使用 ndb_show_tables 实用程序查看相同的 ID。

block_instance 列显示此分片副本属于哪个 LDM 实例。您可以使用它从 threadblocks 表中获取有关特定线程的信息。第一个此类实例始终编号为 0。

由于通常有两个分片副本,并且假设是这样,因此每个 fragment_num 值应该在表中出现两次,位于来自同一节点组的两个不同数据节点上。

由于 NDB 不对有序索引使用单键访问,因此 tot_key_readstot_key_insertstot_key_updatestot_key_writestot_key_deletes 的计数不会因有序索引操作而增加。

注意

使用 tot_key_writes 时,您应该记住,在这种情况下,写入操作会在密钥存在时更新行,否则会插入新行。(其中一个用途是在 NDB 中实现 REPLACE SQL 语句。)

tot_key_refs 列显示 LDM 拒绝的密钥操作数。通常,这种拒绝是由于重复的密钥(插入)、找不到密钥 错误(更新、删除和读取),或者操作被用作与密钥匹配的行上的谓词的解释程序拒绝。

tot_key_attrinfo_bytestot_key_keyinfo_bytes 列统计的 attrinfokeyinfo 属性是 LQHKEYREQ 信号的属性(请参见 NDB 通信协议),用于由 LDM 启动密钥操作。attrinfo 通常包含元组字段值(插入和更新)或投影规范(用于读取);keyinfo 包含在此架构对象中定位给定元组所需的主键或唯一键。

tot_frag_scans 显示的值包括完整扫描(检查每一行)和子集扫描。唯一索引和 BLOB 表永远不会被扫描,因此,此值以及其他与扫描相关的计数对于这些分片副本为 0。

tot_scan_rows_examined 显示的值可能少于给定分片副本中的行总数,因为有序索引扫描可能会受到边界的限制。此外,客户端可以选择在检查完所有可能匹配的行之前结束扫描;例如,在使用包含 LIMITEXISTS 子句的 SQL 语句时,就会发生这种情况。tot_scan_rows_returned 始终小于或等于 tot_scan_rows_examined

对于推送连接,tot_scan_bytes_returned 包括返回到 NDB 内核中的 DBSPJ 块的投影。

tot_qd_frag_scans 可能会受到 MaxParallelScansPerFragment 数据节点配置参数设置的影响,该参数限制了可以在单个分片副本上并发执行的扫描数。