在 Amazon Keyspaces 中使用分区器 - Amazon Keyspaces (for Apache Cassandra)
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在 Amazon Keyspaces 中使用分区器

在 Apache Cassandra 中,分区器控制集群中存储数据的节点。分区器使用分区键的哈希值创建数字标记。Cassandra 使用这个代币在节点之间分配数据。客户端还可以在SELECT操作和WHERE子句中使用这些令牌来优化读写操作。例如,通过在每个parallel 作业中指定要查询的不同令牌范围,客户端可以有效地对大型表执行parallel 查询。

Amazon Keyspaces 提供了三种不同的分区器。

Murmur3 分区器(默认)

兼容 Apache CassandraMurmur3PartitionerMurmur3Partitioner是 Amazon Keyspaces 和 Cassandra 1.2 及更高版本中的默认 Cassandra 分区器。

RandomPartitioner

兼容 Apache CassandraRandomPartitionerRandomPartitioner是 Cassandra 1.2 之前版本的默认 Cassandra 分区器。

Keyspaces 默认分区器

DefaultPartitioner返回的token函数结果与RandomPartitioner

您可以随时安全地更改您的账户级分区器。请注意 10分钟完成配置更改大约10分钟完成 10 分钟完成 10 分钟完成 10 分钟完成 10 分钟完成 10 分钟 10 更改分区器设置时,无需重新加载 Amazon Keyspaces 数据。客户端将在下次连接时自动使用新的分区器设置。

你可以使用Amazon Web Services Management Console或 Cassandra 查询语言 (CQL) 来更改分区器。

Amazon Web Services Management Console
使用 Amazon Keyspaces 控制台更改分区器
  1. 访问 https://console.aws.amazon.com/keyspaces/home 登录并打开 Amazon Keyspaces Keyspaces 控制台,网址为Amazon Web Services Management Console

  2. 在导航窗格中,选择 Configuration(配置)。

  3. 在 “配置” 页面上,转到 “编辑分区器”。

  4. 选择与你的 Cassandra 版本兼容的分区器。应用分区器更改大约10分钟 10 分钟完成 10 分钟完成 10 分钟完成 10 分钟完成 10 分钟完成 10 分钟

    注意

    配置更改完成后,您必须断开连接并重新连接到 Amazon Keyspaces,才能请求使用新分区程序。

Cassandra Query Language (CQL)
  1. 要查看为账户配置了哪个分区器,可以使用以下查询

    SELECT partitioner from system.local;

    如果分区器未更改,则查询将输出以下内容。

    partitioner -------------------------------------------- com.amazonaws.cassandra.DefaultPartitioner
  2. 要将分区程序更新为Murmur3分区器,可以使用以下语句。

    UPDATE system.local set partitioner='org.apache.cassandra.dht.Murmur3Partitioner' where key='local';
  3. 请注意 10分钟完成配置更改大约10分钟完成 10 分钟完成 10 分钟完成 10 分钟完成 10 分钟完成 10 分钟 10 要确认分区程序已设置,可以再次运行SELECT查询。请注意,由于最终的读取一致性,响应反映的可能不是刚刚刚刚完成的分区器变更的结果。如果您在短时间后再次重复该SELECT操作,则响应应返回最新数据。

    SELECT partitioner from system.local;
    注意

    您必须断开连接并重新连接到 Amazon Keyspaces,这样请求才能使用新的分区程序。