我在https://github.com/kallaspriit/Cassandra-PHP-Client-Library/中为 Cassandra 使用 php 库。虽然我试图在网络上找到我的问题的答案,但我做不到。所以,我想听听一些意见。
例如,我正在考虑以下结构(即列)。
ID、品牌、速度
对于这三个数据,我想做两种操作: 1. 获取 Cassandra 中的所有 ID 2. 按品牌名称获取所有列,希望使用正则表达式。
到目前为止,我可以通过创建一个名为“car”的超级列族来实现第一个“1.get all IDs in Cassandra”。并且,插入如下数据:
cassandra->set(
$this->columnFamily.'.ID',
array(
$id => array(
'ID' => $id,
'brand' => $brand,
'speed' =>$speed
)
)
);
然后,我可以通过以下代码获取所有 ID 列表:
cassandra->cf('car')->getAll('ID')
当我试图做第二个问题时,我被卡住了。在网上搜索后,看来我需要创建另一个超级列族以“品牌”搜索。但是,当我找到那种信息时,问题就出来了。如果我们再创建一个结构相同的超级列族,我觉得内存效率非常低。创建另一个超级列族意味着即使我们创建相同的结构,Cassandra 也会创建另一个空间??如果有任何有效的方法来实现这一点,你能建议吗?
而且,这也是一个非常具体的问题。这个 php 库的 getWhere 方法可以使用某些条件,例如大于 24 岁?先感谢您。