在中创建键空间 Cassandra:创建、修改和删除示例
什么是 Keyspace Cassandra?
中的键空间 Cassandra 是一个数据容器,类似于RDMBS(关系数据库管理系统)中的数据库。 Cassandra 键空间决定数据在节点上的复制方式。
如何在 Cassandra
键空间是保存列族、用户定义类型的对象。 Cassandra,键空间类似于 RDBMS 数据库。键空间包含列族、索引、用户定义类型、数据中心感知、键空间中使用的策略、复制因子等。
命令 ”创建键空间” 用于在 Cassandra.
句法
Create keyspace KeyspaceName with replication={'class':strategy name, 'replication_factor': No of replications on different nodes};
各种组件 Cassandra 键空间
- 策略:在声明策略名称时 Cassandra. 有两种策略在 Cassandra 句法。
- 简单的策略:当您只有一个数据中心时,使用简单策略。在此策略中,第一个副本放置在分区器选择的节点上。其余节点按环中的顺时针方向放置,而不考虑机架或节点位置。
- 网络拓扑策略:当您拥有多个数据中心时,使用网络拓扑策略。在此策略中,您必须为每个数据中心分别提供复制因子。网络拓扑策略将副本按顺时针方向放置在同一数据中心的节点中。此策略尝试将副本放置在不同的机架中。
- 复制因子:复制因子是放置在不同节点上的数据副本数。为了避免故障,3 是良好的复制因子。超过 XNUMX 个复制因子可确保没有单点故障。有时,服务器可能会停机,或者可能会发生网络问题,然后其他副本可以无故障地提供服务。
- 计费示例: 以下是执行命令“Create Keyspace”的快照,该命令将在以下位置创建键空间: Cassandra.
Create keyspace University with replication={'class':SimpleStrategy,'replication_factor': 3};
成功执行“创建密钥空间”命令后,密钥空间大学将在 Cassandra 采用策略“SimpleStrategy”和复制因子3。
修改键空间 Cassandra
命令“Alter Keyspace”会更改已创建的键空间中的复制因子、策略名称和持久写入属性 Cassandra.
句法
Alter Keyspace KeyspaceName with replication={'class':'StrategyName', 'replication_factor': no of replications on different nodes} with DURABLE_WRITES=true/false
修改 Keyspace 时的关键方面 Cassandra
- 键空间名称:键空间名称不能更改 Cassandra.
- 策略名称:可以通过指定新的策略名称来改变策略名称。
- 复制因子:可以通过指定新的复制因子来改变复制因子。
- DURABLE_WRITES :可以通过指定其值为 true/false 来更改 DURABLE_WRITES 值。默认情况下,它是 true。如果设置为 false,则不会将任何更新写入提交日志,反之亦然。
- 执行:这是执行命令“Alter Keyspace”的快照,该命令将 DataCenter3 的键空间策略从“SimpleStrategy”更改为“NetworkTopologyStrategy”,并将复制因子从 1 更改为 1。
Alter Keyspace University with replication={'class':'NetworktopologyStrategy', 'DataCenter1':1};
成功执行“Alter Keyspace”命令后,Strategyname 将从“SimpleStrategy”更改为“NetworkTopologyStrategy”,并且“DataCenter3”的复制因子将从 1 更改为 1。
Cassandra 删除键空间
命令 '删除键空间' 删除键空间,包括所有数据、列族、用户定义类型和索引 Cassandra在删除键空间之前, Cassandra 拍摄密钥空间的快照。如果密钥空间在 Cassandra, Cassandra 除非使用 IF EXISTS,否则将返回错误。
句法
Drop keyspace KeyspaceName
例如:
这是执行的命令“Drop Keyspace”的快照,该命令将删除键空间 University。
Drop keyspace University;
成功执行“Drop keyspace University”命令后,keyspace University 将从 Cassandra 包含所有数据和模式。
这是尝试访问不存在的键空间时返回错误的快照。
备注:drop keyspace 和 delete keyspace 没有区别。Drop keyspace 等于 delete keyspace。