卡桑德拉+;Solr:具有紧凑存储和复合键的表
我有一个关于ApacheCassandra(1.2)与ApacheSolr(如DataStaxEnterprise3.2.3)合作的问题。 我已经使用CentOS虚拟机安装并配置了Datastax文档中描述的所有内容,并且基本测试工作正常,如所述。 然而,在测试一些自定义配置时,我偶然发现了一个问题,我在文档和常见问题解答中没有找到(目前)直接帮助: 我试图让Solr使用Cassandra表,该表同时使用紧凑存储和复合主键。根据文档,最新的DSE/Solr能够理解这两个示例,但不幸的是,这两个示例都没有结合使用。 至于卡桑德拉,这似乎没有任何问题,但我没有设法让它与索尔一起工作: 这是我添加到Cassandra的表格:卡桑德拉+;Solr:具有紧凑存储和复合键的表,solr,cassandra,datastax-enterprise,Solr,Cassandra,Datastax Enterprise,我有一个关于ApacheCassandra(1.2)与ApacheSolr(如DataStaxEnterprise3.2.3)合作的问题。 我已经使用CentOS虚拟机安装并配置了Datastax文档中描述的所有内容,并且基本测试工作正常,如所述。 然而,在测试一些自定义配置时,我偶然发现了一个问题,我在文档和常见问题解答中没有找到(目前)直接帮助: 我试图让Solr使用Cassandra表,该表同时使用紧凑存储和复合主键。根据文档,最新的DSE/Solr能够理解这两个示例,但不幸的是,这两个示
CREATE TABLE my_table(
myid text,
aa text,
bb text,
cc text,
PRIMARY KEY(myid,aa,bb)
) WITH COMPACT STORAGE;
以下是我尝试(非常基本的)Solr模式的基本部分:
<schema name="my_schema" version="1.1">
<types>
<fieldType name="string" class="solr.StrField"/>
</types>
<fields>
<field name="myid" type="string" indexed="true" stored="true"/>
<field name="aa" type="string" indexed="true" stored="true"/>
<field name="bb" type="string" indexed="true" stored="true"/>
<field name="cc" type="string" indexed="true" stored="true"/>
</fields>
<uniqueKey>(myid,aa,bb)</uniqueKey>
</schema>
创建Solr core时,它似乎在Solr浏览器中找到了它的原点
界面告诉我:
java.io.IOException:java.io.IOException: InvalidRequestException(why:Cannot have key alias equals to a column name: myid).
我的问题是:
- 所描述的组合(Solr+复合键+紧凑型存储)是否可能
- 如果是:我错过了什么
- 如果没有:我将不胜感激处理此问题的建议。我需要同时通过C++/Thrift遗留代码和CQL3保持Cassandra模式的可访问性,即紧凑存储似乎是不可避免的。实际的原始数据模式以超级列为特征,我试图通过使用复合键来模拟超级列
非常感谢您抽出时间 不幸的是,DSE搜索实际上不支持使用复合主键的紧凑型存储(错误非常模糊,我们将对此进行改进)
java.io.IOException:java.io.IOException: InvalidRequestException(why:Cannot have key alias equals to a column name: myid).