Stats Schema

The stats schema is a special schema that contains virtual tables which are read-only and can be queried to get statistical real-time information about the cluster.

Shards

The stats schema contains a table called shards. This table can be queried for gathering real-time shard statistics of one, multiple or all tables:

cr> select * from stats.shards where table_name not like 'my_table%' and num_docs > 0
... order by table_name, size
+------------------------+-----------+----------+---------+-----------------+----------+------+---------+------------+
| node_id                | node_name | num_docs | primary | relocating_node | shard_id | size | state   | table_name |
+------------------------+-----------+----------+---------+-----------------+----------+------+---------+------------+
| ...                    | crate     | 6        | True    | NULL            | 1        | ...  | STARTED | locations  |
| ...                    | crate     | 7        | True    | NULL            | 0        | ...  | STARTED | locations  |
| ...                    | crate     | 1        | True    | NULL            | 1        | ...  | STARTED | quotes     |
| ...                    | crate     | 2        | True    | NULL            | 0        | ...  | STARTED | quotes     |
+------------------------+-----------+----------+---------+-----------------+----------+------+---------+------------+
SELECT 4 rows in set (... sec)

Aggregate functions are supported with grouping:

cr> select count(*), table_name from stats.shards where table_name not like 'my_table%'
... group by table_name order by table_name
+----------+------------+
| COUNT(*) | table_name |
+----------+------------+
| 10       | documents  |
| 2        | locations  |
| 6        | myblobs    |
| 2        | quotes     |
+----------+------------+
SELECT 4 rows in set (... sec)

..and without:

cr> select max(num_docs) from stats.shards where table_name = 'locations' and state = 'STARTED'
+---------------+
| MAX(num_docs) |
+---------------+
| 7             |
+---------------+
SELECT 1 row in set (... sec)

Table Of Contents