8

我想知道是否有任何方法可以在 cassandra 数据库中执行通配符搜索。例如

select KEY,username,password from User where username='\*hello*';

或者

select KEY,username,password from User where username='%hello%';

像这样的东西。

4

2 回答 2

4

在 Cassandra 中没有执行此类查询的本地方法。实现相同目标的典型选项是

a) 自己维护可能的搜索词的索引。例如,每当您插入用户名中包含 hello 的条目时,请在索引列族中插入一个条目,其中 hello 作为键,列值作为数据条目的键。查询时,查询索引 CF,然后从数据 CF 中获取数据。当然,这在本质上是相当严格的,但对于一些基本需求可能很有用。

b) 更好的选择是使用全文搜索引擎。看看 Solandra,https://github.com/tjake/Solandra或 Datastax 企业http://www.datastax.com/products/enterprise

于 2012-07-27T08:52:32.120 回答
0

这个项目看起来也很有希望 http://tuplejump.github.io/stargate/

我最近没有深入研究它,但是当我上次评估它时,它看起来很有希望。

于 2015-01-07T17:22:34.767 回答