使用 datastax 进行错误的 SOlr 索引。从 1 个节点扩展到 2 个 cassandra 节点和 1 个搜索节点

Posted

技术标签:

【中文标题】使用 datastax 进行错误的 SOlr 索引。从 1 个节点扩展到 2 个 cassandra 节点和 1 个搜索节点【英文标题】:Bad SOlr indexing with datastax. scaling from 1 node to 2 cassandra nodes and one search node 【发布时间】:2013-10-30 00:02:15 【问题描述】:

我正在使用 Datastax 3.1.4 我正在尝试从一个简单的环(一个启用 Solr 的节点)变为一个带有 2 个 cassandra 节点(禁用 Solr)和一个搜索节点(启用 Solr)的小环。

根据 Opscenter,集群部署良好,但是当我使用 Solr HTTP API 插入数据时出现问题...... 我没有收到任何警告或错误,但是如果在我检查的所有节点(即使是启用了 Solr 的节点)中都插入了值,那么 Solr 索引是错误的:根据 solr,只有少数文档被插入 9(而 20 已被插入并且是出现在我的 cassandra 表中)

我很确定这是一个简单的配置问题,但我无法弄清楚它是什么......

【问题讨论】:

当然,它适用于单节点集群。 Datastax 是否仅在单节点集群上与 solr 一起使用? cassandra.yaml:pastebin.com/LCbKkCksdse.yaml:pastebin.com/iZqiJBd7dsetool 环输出:pastebin.com/RxxgdYAt 【参考方案1】:

所有启用 Solr 的节点必须位于同一个 DC(数据中心)中,并且该 DC 中只有启用 Solr 的节点。

如果您想拥有非 Solr 节点,则需要将它们放在与启用 Solr 的节点不同的数据中心中。

单个 DSE 环可以处理多个 DC 或工作负载,例如一个或多个 Cassandra-only 节点或 Cassandra-only 和 Hadoop 分析节点,或支持 Cassandra-Solr 的搜索节点。支持 Hadoop 的节点和仅限 Cassandra 的节点可以混合在同一个 DC 中,但支持 Solr 的节点不能在具有仅限 Cassandra 或 Cassandra-Hadoop 节点的 DC 中混合。

您可以在此处阅读有关“混合工作负载”的更多信息: http://www.datastax.com/docs/datastax_enterprise3.1/solutions/dse_search_cluster

【讨论】:

非常感谢您的回答。我的问题在别处。 感谢您的回答,不幸的是,它仍然无法正常工作:我已将集群限制为 2 个节点:DC1 上的一个完整 cassandra 和 DC2 上的一个 Solr。这是我的 cassandra-topology.properties:pastebin.com/RXtTQp3d 当我执行 nodetool 状态时,我得到了这个:pastebin.com/Y4WsQgJr 但是当我插入数据时,我仍然只有一半被索引... 我也尝试在同一个 DC 上只拥有 solr 节点。但在那种情况下,对于一个非常简单的模式,我的核心创建变得巨大(45 秒):pastebin.com/vKhmna9n 当我尝试插入数据时它不起作用(或者花费太多时间可能是因为我在一个而)所以我真的不明白发生了什么......真的很欢迎帮助 检查 dsetool 的输出以验证节点的工作负载。

以上是关于使用 datastax 进行错误的 SOlr 索引。从 1 个节点扩展到 2 个 cassandra 节点和 1 个搜索节点的主要内容,如果未能解决你的问题,请参考以下文章

Datastax Search / Solr中的分组和计数(*)

在 datastax 图中使用 gremlin 访问 Solr 的最佳方法

无法使用 cassandra datastax 生成 solr 架构

Datastax solr:Cassandra 现在将刷新到两个最大的内存表以释放内存

在 Datastax Solr 中创建的 Banana 中加载多个内核

在 Solr Admin 中显示为 0 的 Numdocs