作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想验证和测试 Cassandra DB 的“replication_factor”和一致性级别 ONE。
我指定了一个集群: “MyCluster01”在两个数据中心具有三个节点:RAC1 中的 DC1(node1, node2),RAC2 中的 DC2(node3) .
结构如下图:
[root@localhost ~]# nodetool status
Datacenter: DC1
===============
Status=Up/Down |/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
UN 10.0.0.62 409.11 KB 256 ? 59bf9a73-45cc-4f9b-a14a-a27de7b19246 RAC1
UN 10.0.0.61 408.93 KB 256 ? b0cdac31-ca73-452a-9cee-4ed9d9a20622 RAC1
Datacenter: DC2
===============
Status=Up/Down |/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
UN 10.0.0.63 336.34 KB 256 ? 70537e0a-edff-4f48-b5db-44f623ec6066 RAC2
CREATE KEYSPACE my_check1 WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '1'};
create table replica_test(id uuid PRIMARY KEY);
After I inserted one record into that table:
insert into replica_test(id) values (uuid());
select * from replica_test;
id
--------------------------------------
5e6050f1-8075-4bc9-a072-5ef24d5391e5
select * from replica_test;
Traceback (most recent call last): File "/usr/bin/cqlsh", line 997,
in perform_simple_statement
rows = self.session.execute(statement, trace=self.tracing_enabled) File
"/usr/share/cassandra/lib/cassandra-driver-internal-only-2.1.3.post.zip/cassandra-driver-2.1.3.post/cassandra/cluster.py",
line 1337, in execute
result = future.result(timeout) File "/usr/share/cassandra/lib/cassandra-driver-internal-only-2.1.3.post.zip/cassandra-driver-2.1.3.post/cassandra/cluster.py",
line 2861, in result
raise self._final_exception Unavailable: code=1000 [Unavailable exception] message="Cannot achieve consistency level ONE"
info={'required_replicas': 1, 'alive_replicas': 0, 'consistency':
'ONE'}
UN 10.0.0.62 409.11 KB 256 ? 59bf9a73-45cc-4f9b-a14a-a27de7b19246 RAC1
DN 10.0.0.61 408.93 KB 256 ? b0cdac31-ca73-452a-9cee-4ed9d9a20622 RAC1
UN 10.0.0.63 336.34 KB 256 ? 70537e0a-edff-4f48-b5db-44f623ec6066 RAC2
最佳答案
What ultimately does 'replication_factor' controls?
nodetool getendpoints my_check1 replica_test 5e6050f1-8075-4bc9-a072-5ef24d5391e5
5e6050f1-8075-4bc9-a072-5ef24d5391e5
的数据在哪个节点上居住。我的第一个想法是,您正在删除唯一具有此键的节点,然后尝试查询它。
SimpleStrategy
.使用
SimpleStrategy
多个 DC 可能会产生不可预测的结果。同样对于多个 DC,您需要使用
NetworkTopologyStrategy
以及除默认值之外的其他内容
SimpleSnitch
.否则 Cassandra 可能无法找到合适的节点来完成操作。
NetworkTopologyStrategy
.然后将您的告密者(在
cassandra.yaml
中)更改为网络感知的告密者,重新启动您的节点,然后再次尝试此练习。
关于 Cassandra 数据库 : What ultimately does 'replication_factor' controls?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29605744/
我是一名优秀的程序员,十分优秀!