查询此表提供的信息类似于使用 ALL REPORT MemoryUsage 命令在 ndb_mgm 客户端中获取的信息,或者由 ALL DUMP 1000 记录的信息。
The memoryusage 表包含以下列:
node_id此数据节点的节点 ID。
memory_type其中之一为
数据内存、索引内存或长消息缓冲区。used此数据节点当前用于数据内存或索引内存的字节数。
used_pages此数据节点当前用于数据内存或索引内存的页数;请参阅文本。
total此数据节点可用于数据内存或索引内存的总字节数;请参阅文本。
total_pages此数据节点上可用于数据内存或索引内存的总页数;请参阅文本。
注意
The total 列表示特定数据节点上可用于给定资源(数据内存或索引内存)的总内存量(以字节为单位)。 此数字应与 config.ini 文件中相应配置参数的设置大致相等。
假设集群具有 2 个数据节点,其节点 ID 为 5 和 6,并且 config.ini 文件包含以下内容:
[ndbd default]
DataMemory = 1G
IndexMemory = 1G假设 LongMessageBuffer 配置参数的值允许取其默认值(64 MB)。
以下查询显示了大致相同的值:
mysql> SELECT node_id, memory_type, total
> FROM ndbinfo.memoryusage;
+---------+---------------------+------------+
| node_id | memory_type | total |
+---------+---------------------+------------+
| 5 | Data memory | 1073741824 |
| 5 | Index memory | 1074003968 |
| 5 | Long message buffer | 67108864 |
| 6 | Data memory | 1073741824 |
| 6 | Index memory | 1074003968 |
| 6 | Long message buffer | 67108864 |
+---------+---------------------+------------+
6 rows in set (0.00 sec)在这种情况下,索引内存的 total 列值略高于 IndexMemory 的设置值,这是由于内部舍入造成的。
对于 used_pages 和 total_pages 列,资源以页为单位进行衡量,对于 DataMemory,页大小为 32K,对于 IndexMemory,页大小为 8K。 对于长消息缓冲区内存,页大小为 256 字节。