无法使用 cassandra datastax 生成 solr 架构

Posted

技术标签:

【中文标题】无法使用 cassandra datastax 生成 solr 架构【英文标题】:unable to generate solr schema with cassandra datastax 【发布时间】:2016-12-23 07:47:08 【问题描述】:

我正在使用 datastax enterprise 5.0.2,我想使用 solr

我试试这个:

dsetool create_core keyspace.table generateResources=true reindex=true

但我明白了:

org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException: Type org.apache.cassandra.db.marshal.ByteType is not supported with automatic Solr schema generation.
Specify 'lenient: true' in your resource generation options to ignore unsupported columns.

当我尝试使用 lenient true 时,我也无法让它工作,因为我的主键有一个名为“type”的字节字段

org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException: Schema Parsing Failed: Schema contains no indexed field for element 'type' of composite key '(lang,type)

任何线索如何解决这个问题?

我的表格有超过 100 个字段,手动生成会很困难

【问题讨论】:

如果你使用infer_solr_schema,你会得到回应吗? docs.datastax.com/en/datastax_enterprise/5.0/… 不,即使手动映射和/或在宽松模式下也不支持字节类型 如果您可以在没有此字节类型的情况下生成重复的虚拟表,则从中创建架构,然后您可以将其用于原始表。您也许可以设置 stored=falseindexed=false 并仍然在架构中拥有它 已经尝试过了,但也不起作用。我最终使用了 int,不是最好的解决方案,而是一个可行的解决方案 【参考方案1】:

取出

reindix=true。

在第一次创建时,只需这样做:

dsetool create_core keyspace.table generateResources=true

稍后你可以重新索引

【讨论】:

以上是关于无法使用 cassandra datastax 生成 solr 架构的主要内容,如果未能解决你的问题,请参考以下文章

无法使用最新的 datastax python 驱动程序扩展 cassandra

无法使用 datastax java 驱动程序通过 UDT 键从 cassandra 检索

NoClassDefFoundError - Cassandra 的 datastax java 驱动程序

使用 DataStax 生命周期管理器升级 cassandra

在 EC2 Ruby on Rails 上连接到 datastax 集群上的 cassandra 节点

NoSuchMethodException 使用 datastax cassandra 映射器