如何在ruby客户端中从cassandra列族中获取列名。?

如何在ruby客户端中从cassandra列族中获取列名。?,ruby,cassandra,Ruby,Cassandra,我使用ruby客户端从Cassandra访问数据。。是否有任何方法可以获取列族中给定键的列名。 假设一个列族“test”有100行,其中的行具有不同的列名。因此,给定一个键,如何获取该键的列名???如果您使用的是'cassandra'gem,那么您可以执行以下操作: @client.get(:my_column_family, key).keys @client.get返回列名称=>列值的有序散列因此.keys将为您提供列名称 如果您使用的是'cassandra-cql'gem: @clien

我使用ruby客户端从Cassandra访问数据。。是否有任何方法可以获取列族中给定键的列名。
假设一个列族“test”有100行,其中的行具有不同的列名。因此,给定一个键,如何获取该键的列名???

如果您使用的是
'cassandra'
gem,那么您可以执行以下操作:

@client.get(:my_column_family, key).keys
@client.get
返回
列名称=>列值的有序散列
因此
.keys
将为您提供列名称


如果您使用的是
'cassandra-cql'
gem:

@client.execute("select * from my_column_family where key = ?", key).fetch.column_names

谢谢你的解决方案。。但是做“多重获取”不会是一项开销??我的列值约为5KB,一个键大约有5-6列。。因此,每次它都会获得约30KB的数据,这是一个很大的问题。。没有其他方法只获取键吗?没有API只获取列名。如果您真的认为开销是一个问题,那么您可以有一个单独的列族,它只存储列名。