用于搜索地图类型的Cassandra Lucene索引

时间:2017-07-17 23:48:14

标签: database cassandra lucene datastax datastax-enterprise

我们已经完成了为不同参数集开发可扩展模式的任务,并且能够通过组合多重标准值在其中进行搜索。我们通过在该映射上使用Map类型和构建的Stratio Lucene索引来解决该任务。 这是我们的计划:

CREATE TABLE logging_events (
  event_id              UUID,
  event_parameters   MAP<VARCHAR, VARCHAR>,
  PRIMARY KEY (event_id)
);

这是lucene指数:

CREATE CUSTOM INDEX logging_events_index ON logging_events()
USING 'com.stratio.cassandra.lucene.Index'
WITH OPTIONS = {
    'schema': '{
      fields: {
        "event_parameters": {type: "string"},
      }
    }'};

我们使用该方法导致不同的事件,我们有不同的参数集。

现在我的问题是这些东西的可靠性以及我们在生产中可能遇到的问题。这种方法对我们的案例有好处还是坏处?对你的答案很有帮助。

我们知道,如果没有索引,即使过滤也无法搜索。

1 个答案:

答案 0 :(得分:0)

在一个月内进行了大量测试并在负载下运行此架构后,这似乎是一个有效的案例。由于Cassandra的nosql性质,由于数据模式较弱,这似乎是Cassandra的主要功能之一。这种方法的优点是你不必在模式更新后重建索引或像这样重建。但要为严肃的空间消费做好准备