- Cassandra是什么?
- Cassandra历史
- Cassandra的特点
- Cassandra的架构
- Cassandra应用场景(案例)
- Cassandra数据类型
- Cassandra数据模型
- Cassandra与HBase比较(区别)
- Cassandra与关系数据库比较(区别)
- Cassandra安装与配置
- Cassandra CQLsh
- Cassandra键空间操作
- Cassandra表操作
- Cassandra数据CRUD操作
- Cassandra CQL数据类型
Cassandra创建键空间(Keyspace)
Cassandra查询语言(CQL)可帮助开发人员与Cassandra沟通交互。 Cassandra查询语言的语法与SQL非常相似。
什么是键空间(Keyspace)?
键空间(Keyspace
)是用于保存列族,用户定义类型的对象。 键空间(Keyspace)就像RDBMS中的数据库,其中包含列族,索引,用户定义类型,数据中心意识,键空间(Keyspace)中使用的策略,复制因子等。
在Cassandra中,“Create Keyspace
”命令用于创建keyspace。
语法:
CREATE KEYSPACE <identifier> WITH <properties>
或者 -
Create keyspace KeyspaceName with replicaton={'class':strategy name, 'replication_factor': No of replications on different nodes}
Cassandra Keyspace的不同组件
策略:Cassandra语法中有两种类型的策略声明:
- 简单策略:在一个数据中心的情况下使用简单的策略。 在这个策略中,第一个副本被放置在所选择的节点上,剩下的节点被放置在环的顺时针方向,而不考虑机架或节点的位置。
- 网络拓扑策略:该策略用于多个数据中心。 在此策略中,您必须分别为每个数据中心提供复制因子。
复制因子:复制因子是放置在不同节点上的数据的副本数。 超过两个复制因子是很好的获得没有单点故障。 所以3
个以上是很好的复制因子。
实例:
让我们举个例子来演示如何创建一个名为“zyiz_ks
”的键空间。
CREATE KEYSPACE zyiz_ks WITH replication = {'class':'SimpleStrategy', 'replication_factor' : 3};
执行结果如下所示 -
cqlsh> CREATE KEYSPACE zyiz_ks ... WITH replication = {'class':'SimpleStrategy', 'replication_factor' : 3}; cqlsh> cqlsh> CREATE KEYSPACE zyiz_ks WITH replication = {'class':'SimpleStrategy', 'replication_factor' : 3}; AlreadyExists: Keyspace 'zyiz_ks' already exists cqlsh>
验证:
要检查键空间是否创建,请使用“DESCRIBE
”命令。 通过使用此命令可以看到创建的所有键空间。
cqlsh> DESCRIBE zyiz_ks; CREATE KEYSPACE zyiz_ks WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '3'} AND durable_writes = true; cqlsh>
查看所有的键空间,可使用以下命令 -
cqlsh> DESCRIBE keyspaces system_schema system_auth system zyiz_ks system_distributed system_traces cqlsh>
Durable_writes属性
默认情况下,表的durable_writes
属性设置为true
,您也可以将此属性设置为false
。 但是,这个属性不能设置为单机策略。
示例:
让我们举个例子来看看durable_write
属性的用法。
CREATE KEYSPACE zyiz_ks1 WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', 'datacenter1' : 3 } AND DURABLE_WRITES = false;
如下图中所示 -
验证:
要检查键空间是否创建,请使用“DESCRIBE
”命令。 通过使用此命令可以看到创建的所有键空间。
使用键空间
要使用创建的键空间,可使用USE
命令。
语法:
USE <identifier>
这里,我们使用的是名称为 zyiz_ks
的键空间(keyspace)。如下图所示 -
上一篇:Cassandra CQLsh
下一篇:Cassandra修改键空间
扫描二维码
程序员编程王