Documentation Home
MySQL 8.4 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 39.8Mb
PDF (A4) - 39.9Mb
Man Pages (TGZ) - 257.9Kb
Man Pages (Zip) - 364.9Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


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包含该碎片副本所属架构对象的完全限定名称。当前有以下格式:

  • 基本表:DbName/def/TblName

  • BLOB 表:DbName/def/NDB$BLOB_BaseTblId_ColNo

  • 有序索引:sys/def/BaseTblId/IndexName

  • 唯一索引:sys/def/BaseTblId/IndexName$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_名 列包含对应基本表的 fq_名。对于基本表,这个列始终为 NULL

type 列显示用于该碎片的架构对象类型,可以取值为 System tableUser tableUnique hash indexOrdered indexBLOB 表显示为 User table

table_id 列值在任何给定时间都是唯一的,但如果对应对象已被删除,可以重新使用该 ID。同一个 ID 可以使用 ndb_显示表 工具来查看。

block_instance 列显示该碎片副本属于哪个 LDM 实例。您可以使用这个信息来获取来自 threadblocks 表的关于特定线程的信息。第一个这样的实例始终编号为 0。

通常情况下,存在两个碎片副本,每个fragment_num值应该出现在表中两次,分别在同一个节点组中的两个不同的数据节点上。

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

Note

在使用tot_key_writes时,需要注意的是,在这个上下文中,写操作会更新行,如果键存在,则插入新行。 (这在NDB实现REPLACE SQL 语句时有用。)

tot_key_refs列显示了LDM拒绝的键操作数量。通常,这种拒绝是由于重复键(插入)、Key not found错误(更新、删除和读取)或操作被解释程序用作行匹配键的谓词所 reject 的。

attrinfokeyinfo 属性由 tot_ key_attrinfo_bytestot_key_keyinfo_bytes 列计数,这些属性是 LQHKEYREQ 信号的属性(见NDB 通信协议)用于 LDM 初始化键操作。一个 attrinfo 通常包含插入和更新的元组字段值或读取投影规范; keyinfo 包含在该架构对象中找到给定元组所需的主键或唯一键。

tot_frag_scans 显示的值包括完整扫描(检查每个行)和子集扫描。唯一索引和 BLOB 表格从不被扫描,因此该值,如其他扫描相关计数,0 对于这些碎片副本。

tot_scan_rows_examined 可能显示给定碎片副本中的行数少于总数,因为有序索引扫描可以被 bounds 限制。此外,一客户端可能选择在使用 SQL 语句包含 LIMITEXISTS 子句时结束扫描;这发生在使用带有 LIMITEXISTS 子句的 SQL 语句时。 tot_scan_rows_returned 始终小于或等于 tot_scan_rows_examined

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

tot_qd_frag_scans 可能受到 MaxParallelScansPerFragment 数据节点配置参数的影响,该参数限制了单个副本碎片上可以同时执行的扫描数量。