【问题标题】:Different results for same query in different Cassandra nodes不同 Cassandra 节点中相同查询的不同结果
【发布时间】:2018-06-19 05:37:57
【问题描述】:

我有 3 个 cassandra 节点,当我执行 query 时,2 个节点给出相同的响应,但 1 个节点给出不同的响应

假设我执行了query

select * from employee;

Node1 和 Node2 提供2 rows,但 Node3 提供0 rows(empty response)

如何解决这个问题

【问题讨论】:

  • 您能解释一下您是如何进行节点查询的吗?
  • 我的 3 个节点安装在 3 个亚马逊实例中,我连接到这些实例,然后连接到 Cassandra,然后进行查询
  • 每次连接到一个实例?并执行查询?
  • 我有一个 java 应用程序,它已经与这些节点连接,它持续运行......我在 java 中遇到了一些问题,所以我对其进行了故障排除。在进行故障排除时,我连接到了 cassandra 节点我意识到问题出在 cassandra 节点上,它们对不同的 ndo 给出了不同的响应
  • 您能解释一下您的配置、复制因子和一致性吗?你确定集群中连接了3个节点吗?

标签: cassandra-3.0


【解决方案1】:

1.您没有使用网络拓扑。
2.你的复制因子是2。

简单策略:仅用于单个数据中心和一个机架。 SimpleStrategy 将第一个副本放置在分区器确定的节点上。不考虑拓扑(机架或数据中心位置),额外的副本被放置在环中顺时针方向的下一个节点上。

转到此链接: https://docs.datastax.com/en/cassandra/3.0/cassandra/architecture/archDataDistributeReplication.html

【讨论】:

    【解决方案2】:

    我做了以下步骤,然后问题解决了,现在所有 3 个节点的数据都同步了

    在实例上运行命令nodetool rebuild

    'replication_factor': '2' 更新为'replication_factor': '3'

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-05-14
      • 2021-10-27
      • 1970-01-01
      • 1970-01-01
      • 2012-06-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多