19

我在 cassandra.yaml 中找不到它,也许 nodetool 可以让我获得集群的配置复制因子?

复制因子的默认值是多少?

4

6 回答 6

29

集群没有复制因子,但是您的键空间有

如果您想查看给定键空间的复制因子,只需执行 SELECT * FROM system_schema.keyspaces;,它将打印您需要的所有复制信息。

于 2016-01-18T16:43:03.233 回答
18

考虑使用DESCRIBE SCHEMA- usingsystem.schema_keyspaces在未来的版本中可能无法正常工作(例如 3.0+,其中架构移至system_schema);

于 2016-01-18T20:00:24.273 回答
6

在 3.0 + Cassandra 版本中,您可以从复制system_schema中的键空间获取 RF 详细信息。system_schema.keyspaces

cassandra@cqlsh:system_schema> SELECT * FROM system_schema.keyspaces;

 keyspace_name      | durable_writes | replication
--------------------+----------------+-------------------------------------------------------------------------------------
        system_auth |           True | {'class': 'org.apache.cassandra.locator.SimpleStrategy', 'replication_factor': '1'}
      system_schema |           True |                             {'class': 'org.apache.cassandra.locator.LocalStrategy'}
 system_distributed |           True | {'class': 'org.apache.cassandra.locator.SimpleStrategy', 'replication_factor': '3'}
            company |           True | {'class': 'org.apache.cassandra.locator.SimpleStrategy', 'replication_factor': '2'}
             system |           True |                             {'class': 'org.apache.cassandra.locator.LocalStrategy'}
             jerry  |           True |                   {'class': 'org.apache.cassandra.locator.NetworkTopologyStrategy'}
      system_traces |           True | {'class': 'org.apache.cassandra.locator.SimpleStrategy', 'replication_factor': '2'}
于 2018-06-12T06:00:24.243 回答
2

对于 Cassandra 3.11 及以上版本:

  • 转到 Cassandra 节点上的路径:cd /usr/local/cassandra/apache-cassandra-3.11.0/bin
  • 键入命令:(./cqlsh您的 Cassandra 节点 IP)
  • 然后键入:SELECT * FROM system_schema.keyspaces;

输出:您将获得 Cassandra 中所有相应键空间的复制因子

于 2019-02-08T09:37:14.280 回答
2

复制因子在Keysapce 级别定义。

为了查看特定键空间的复制因子,请在 cqlsh 中使用以下查询:

desc KEYSPACE Keyspace_Name;

您将获得输出,您可以在其中看到上述键空间的复制因子: 在此处输入图像描述

于 2018-08-11T11:56:18.883 回答
0

如果您不想使用cqlsh并且只想从终端打印信息,请使用nodetool名为describe cluster的 and 命令,如下所示:

[user@user ~]$ nodetool describecluster

它将打印非常有用且简短的信息,包括有关键空间的信息,如下所示:

Keyspaces:
    system_schema -> Replication class: LocalStrategy {}
    system -> Replication class: LocalStrategy {}
    system_distributed -> Replication class: SimpleStrategy {replication_factor=3}
    system_traces -> Replication class: SimpleStrategy {replication_factor=2}
    system_auth -> Replication class: NetworkTopologyStrategy {dc1=3}

如果您正在寻找一个特定的键空间复制信息,只需使用以下命令(在此示例中,我们将询问system_auth键空间信息):

[user@user ~]$ nodetool describecluster | grep system_auth

..它会打印这样的信息:

system_auth -> Replication class: NetworkTopologyStrategy {dc1=3}
于 2021-05-25T11:35:53.523 回答