我需要在同一个键空间中复制一个 ColumnFamily——我不关心这个 ColumnFamily 中的数据,只关心 CF 的元数据(属性、设置等——不管你想怎么称呼它)。
我在网上找不到任何描述这个过程的东西(我也找不到它是否可能)。
有什么建议/想法吗?
我可以使用 python 或 java(astyanax 或 hector)。另外,我正在运行 cassandra 1.1
谢谢!
您需要获取现有列族的架构,然后创建一个具有完全相同设置但名称不同的架构。您可以在 cassandra-cli 中轻松执行此操作
use keyspace;
show schema;
然后复制要复制的列族的架构,更改名称并将其粘贴。
或者,如果使用 CQL,您可以使用来自 cqlsh 或 CQL 驱动程序的相同方法。
你也可以在赫克托做。用于Cluster.describeKeyspace()
获取KeyspaceDefinition
您的密钥空间。然后在列表中找到要复制的列族getCfDefs()
。更改其名称setName
并使用Cluster.addColumnFamily
.