在中创建键空间 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 句法。
  1. 简单的策略:当您只有一个数据中心时,使用简单策略。在此策略中,第一个副本放置在分区器选择的节点上。其余节点按环中的顺时针方向放置,而不考虑机架或节点位置。
  2. 网络拓扑策略:当您拥有多个数据中心时,使用网络拓扑策略。在此策略中,您必须为每个数据中心分别提供复制因子。网络拓扑策略将副本按顺时针方向放置在同一数据中心的节点中。此策略尝试将副本放置在不同的机架中。
  • 复制因子:复制因子是放置在不同节点上的数据副本数。为了避免故障,3 是良好的复制因子。超过 XNUMX 个复制因子可确保没有单点故障。有时,服务器可能会停机,或者可能会发生网络问题,然后其他副本可以无故障地提供服务。
  • 计费示例: 以下是执行命令“Create Keyspace”的快照,该命令将在以下位置创建键空间: Cassandra.

在中创建键空间 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。

修改键空间 Cassandra

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。

Cassandra 删除键空间

Drop keyspace University;

成功执行“Drop keyspace University”命令后,keyspace University 将从 Cassandra 包含所有数据和模式。

这是尝试访问不存在的键空间时返回错误的快照。

Cassandra 删除键空间

备注:drop keyspace 和 delete keyspace 没有区别。Drop keyspace 等于 delete keyspace。