使用DSE Solr

时间:2018-01-11 12:55:36

标签: datastax-enterprise datastax-search

从Cassandra Datastax文档:https://docs.datastax.com/en/dse/5.1/dse-dev/datastax_enterprise/search/customizeSchemaSearch.html,写成:

  

indexed =“true”的字段被索引并存储为Lucene中的辅助文件,以便可以搜索字段。索引字段存储在数据库中,而不是存储在Lucene中,而不管存储的属性值的值如何,复制字段除外。复制字段目标不存储在数据库中。

我想知道在运行CQL Solr请求时从哪里获取数据(例如SELECT first_name,last_name FROM individual solr_query = ...)。

first_name和last_name是从cassandra数据库还是从存储该字段的Solr索引中提取的?

我没有得到“indexed =”true“的字段被索引并存储为Lucene中的辅助文件”然后“索引字段存储在数据库中,而不是在Lucene“这似乎是矛盾的?

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

发出

SELECT first_name, last_name FROM individual WHERE solr_query=...;

first_namelast_name必须存在于Cassandra表individual中,它们不存储在Lucene中(如文档所述)。

文档行应为:

indexed =“true”的字段被索引并存储为Lucene 中的辅助索引文件,因为DSE中的Solr / Lucene集成使用Cassandra二级索引实现。

搜索这些索引文件并返回一组唯一ID,用于从Cassandra表中读取行。