加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

scala – 如何列出所有cassandra表

发布时间:2020-12-16 19:11:30 所属栏目:安全 来源:网络整理
导读:cassandra数据库中有许多表,其中包含标题为user_id的列.值user_id被引用到存储在表用户中的用户.由于某些用户被删除,我想删除包含标题为user_id的列的所有表中的孤立记录. 有没有办法使用CassandraSQLContext或任何其他内置方法或自定义过程列出所有表,以避
cassandra数据库中有许多表,其中包含标题为user_id的列.值user_id被引用到存储在表用户中的用户.由于某些用户被删除,我想删除包含标题为user_id的列的所有表中的孤立记录.

有没有办法使用CassandraSQLContext或任何其他内置方法或自定义过程列出所有表,以避免显式定义表列表?

谢谢.

解决方法

有系统表可以提供有关存储的键空间,表,列的信息.

尝试在cqlsh控制台中运行以下命令:

>获取密钥空间信息

SELECT * FROM system.schema_keyspaces;
>获取表格信息

SELECT columnfamily_name FROM system.schema_columnfamilies WHERE keyspace_name =’keyspace name’;
>获取表格信息

SELECT column_name,type,validator FROM system.schema_columns WHERE keyspace_name =’keyspace name’AND columnfamily_name =’table name’;

Sinse v 5.0.x
Docs

>获取密钥空间信息

SELECT * FROM system.schema_keyspaces;
>获取表格信息

SELECT * FROM system_schema.tables WHERE keyspace_name =’keyspace name’;
>获取表格信息

SELECT * FROM system_schema.columns
WHERE keyspace_name =’keyspace_name’AND table_name =’table_name’;

Sinse v 6.0
Docs

>获取密钥空间信息

SELECT * FROM system_schema.keyspaces
>获取表格信息

SELECT * FROM system_schema.tables WHERE keyspace_name =’keyspace name’;
>获取表格信息

SELECT * FROM system_schema.columnsWHERE keyspace_name =’keyspace_name’AND table_name =’table_name’;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读