【Cassandra】查看键空间,表,列的创建时间戳

cassandra中查询键空间,表,列的创建时间方法

cassandra中默认有键空间system,该键空间中的表会记录该集群的相关操作信息,例如其他键空间的记录,表的记录,列的记录,我们可以通过这些记录写入的时间(writetime),来获取这些键空间,表,列的创建时间。

示例如下,先创建好测试用的键空间与表:

【Cassandra】查看键空间,表,列的创建时间戳

此时我们查看system,我们此时需要关注的有:

【Cassandra】查看键空间,表,列的创建时间戳

查看schema_keyspaces,我们能获取键空间相关的信息:

select * from schema_keyspaces where keyspace_name = 'test';

【Cassandra】查看键空间,表,列的创建时间戳

再通过writetime选择未更新过的字段,便可以获取到键空间的创建时间:

select writetime(durable_writes) from schema_keyspaces where keyspace_name = 'test';

【Cassandra】查看键空间,表,列的创建时间戳

相同的,如果此时要关注表的创建,则关注schema_columnfamilies,通过:

select * from schema_columnfamilies where keyspace_name = 'test' AND columnfamily_name = 'test_table';

【Cassandra】查看键空间,表,列的创建时间戳

【Cassandra】查看键空间,表,列的创建时间戳

然后再通过writetime去获取。

相同的,如果此时要关注列的创建,则关注schema_columns,通过:

select * from schema_columns where keyspace_name = 'test' AND columnfamily_name = 'test_table' AND column_name = 'test_a';

【Cassandra】查看键空间,表,列的创建时间戳

小结,通过system库中的schema_keyspaces,schema_columnfamilies,schema_colunms分别获取键空间,表,列的信息,再通过查看未更新的字段的writetime,来获取相关键空间,表,列的创建时间