cassandra!#$images.china-pub.com/ebook195001-200000/198207/ch02.pdf ·...
TRANSCRIPT
书书书
第2章
Cassandra!"#$
本章内容在Windows环境运行单机版Cassandra
在Linux环境运行单机版Cassandra
Cassandra的数据模型
Cassandra的数据排序规则
配置数据类型
使用命令行工具与Cassandra交互
本章小结
书书书
在第1章中,我们介绍了Cassandra和各种NoSQL产品。在本章中,我们主要讲解如何在Windows和Linux平台上快速安装、配置并使用Cassandra。
21 在Windows环境运行单机版Cassandra
Cassandra可以在多种环境中运行,包括 Windows、Linux和 UNIX系统。在 Windows系统中运行Cassandra是非常方便的,只要配置好JRE(Java运行环境),然后下载 Cassandra,并进行简单的配置就可以运行了。
211 配置JRE
JRE是 Java程序的运行环境。想要运行 Java程序,必须先安装 JRE。JRE的官方下载地址:http://wwwjavacom/zh_CN/download/manualjsp。打开 JRE的下载页面,如图2-1所示。
图2-1 下载JRE
下载完成之后,按照提示完成安装。如果没有更改 JRE的安装路径,那么默认的安装路径为C:\ProgramFiles\Java\jre6\。完成安装后,还需要设置 JRE的环境变量:JAVA_HOME=C:\ProgramFiles\Java\jre6。完成设置后,可以打开 “命令行窗口”检验 JRE是否配置成功,如果输入 “java
!
version”后,能够看到 JRE的版本信息,说明 JRE的配置成功了,如图2-2所示。
图2-2 JRE的版本信息
01 Cassandra实战
212 配置运行Cassandra06x
在Cassandra官网下载Cassandra06x的压缩包。下载完成后,先将压缩包解压,假设解压的文件位置为:D:\apachecassandra06x。然后,需要修改Cassandra的日志配置文件(conf/log4jproperties)和存储配置文件 (conf/storageconfxml)。在 conf/log4jproperties文件中,需要修改Cassandra的运行日志的文件路径,将
log4jappenderRFile=/var/log/cassandra/systemlog
修改为
log4jappenderRFile=/apache-cassandra-06x/systemlog
在文件conf/storageconfxml中需要修改回滚日志 (commitlog)、数据文件 (data)和缓存数据文件 (saved_cache)的存放路径。将
<SavedCachesDirectory>/var/lib/cassandra/saved_caches
</SavedCachesDirectory><CommitLogDirectory>/var/lib/cassandra/commitlog
</CommitLogDirectory><DataFileDirectories><DataFileDirectory>/var/lib/cassandra/data</DataFileDirectory></DataFileDirectories>
修改为
<SavedCachesDirectory>/apache-cassandra-06x/saved_caches
</SavedCachesDirectory><CommitLogDirectory>
/apache-cassandra-06x/commitlog</CommitLogDirectory><DataFileDirectories><DataFileDirectory>/apache-cassandra-06x/data</DataFileDirectory>
</DataFileDirectories>
最后,还需要设置Cassandra的环境变量:
CASSANDRA_HOME=D牶\apache-cassandra-06x
完成以上步骤以后,Cassandra的环境就配置完毕了。配置好Cassandra之后,打开 “命令行窗口”,进入到 D:\apachecassandra06x目录
下,然后直接执行 “bin\cassandrabat”命令就可以运行 Cassandra了,如图2-3所示。同时,我们会在 D:\apachecassandra06x目录下看到3个目录 (commitlog、data和 saved_
11第2章 Cassandra快速入门
cache)以及日志文件 (systemlog)。
图2-3 在Windows环境运行Cassandra06x
213 配置运行Cassandra07x
在Cassandra官网下载Cassandra07x的压缩包。下载完成后,先将压缩包解压,假设解压的文件位置为:C:\apachecassandra07x。然后,需要修改Cassandra的日志配置文件(conf/log4jserverproperties)和存储配置文件 (conf/cassandrayaml)。在 conf/log4jserverproperties文件中,需要修改Cassandra的运行日志的文件路径,将
log4jappenderRFile=/var/log/cassandra/systemlog
修改为
log4jappenderRFile=/apache-cassandra-07x/systemlog
在conf/cassandrayaml文件中,需要修改回滚日志 (commitlog)、数据文件 (data)和缓存数据 (saved_caches)的存放路径。将
data_file_directories牶 -/var/lib/cassandra/datacommitlog_directory牶/var/lib/cassandra/commitlogsaved_caches_directory牶/var/lib/cassandra/saved_caches
修改为
data_file_directories牶-/apache-cassandra-07x/data
commitlog_directory牶/apache-cassandra-07x/commitlogsaved_caches_directory牶/apache-cassandra-07x/saved_caches
最后,如果还没有设置Java的环境变量,请根据 Java的安装目录设置 JAVA_HOME路径,如
JAVA_HOME=C牶\ProgramFiles\Java\jre6
完成以上步骤以后,Cassandra的环境就配置完毕了。
21 Cassandra实战
配置好Cassandra之后,打开 “命令行窗口”,进入到 C:\apachecassandra07x目录下,然后直接执行 “bin\cassandrabat”命令就可以运行 Cassandra了,如图2-4所示。同时,我们会在 D:\apachecassandra07x目录下发现多了 3个目录 (commitlog、data和saved_caches)以及日志文件 (systemlog)。
图2-4 在Windows环境运行Cassandra07x
另外,由于Cassandra07x版本中添加了在线修改元数据 (Schema)信息的功能,所以系统在启动的时候,不会包含任何用户定义的元数据信息,需要自己手动创建,或者执
行如下命令将配置文件中定义的元数据信息导入系统中。
C牶\apache-cassandra-072>bin\schematoolbatlocalhost8080import
31第2章 Cassandra快速入门
22 在Linux环境运行单机版Cassandra
在Linux环境中配置Cassandra与在Windows环境中配置类似,区别主要在于 JRE的配置方式和启动Cassandra的脚本不同。如启动Cassandra,在Windows系统中使用的脚本名为cassandrabat,而在Linux系统中使用的脚本名为cassandra。
下面演示的Linux系统版本为32位的Ubuntu1004。
221 配置JRE
在大多数Linux发行版中,Java都是默认安装的,可以直接在命令行中输入 “javaversion”来查看安装的JRE版本信息。
如果默认没有安装JRE,可以到官网下载。JRE的官方下载地址:http://wwwjavacom/zh_CN/download/manualjsp。打开JRE的下载页面,如图2-5所示。
图2-5 下载JRE
下载JRE后,对其执行解压缩操作,设解压后的文件目录为/home/aaron/Downloads/jre160_21。在~/bashrc文件中将 JAVA_HOME的环境变量设置到 JRE目录的 bin目录中,同时修改系统的PATH的环境变量。
exportJAVA_HOME=/home/aaron/Downloads/jre160_21/binexportPATH=$JAVA_HOME牶$PATH
修改完成后,再执行以下命令,让修改的系统环境变量生效。
~/bashrc
最后校验JRE环境是否配置成功,如图2-6所示。
图2-6 校验JRE
41 Cassandra实战
从图2-6中可以看出,JRE已经配置成功,并且可以正常使用。
222 配置运行Cassandra06x
从官网中下载 Cassandra06x,然后将下载的压缩包解压,假设解压的文件位置为/home/aaron/Downloads/apachecassandra06x。然后,需要修改 Cassandra的日志配置文件(conf/log4jproperties)和存储配置文件 (conf/storageconfxml)。在 conf/log4jproperties文件中,需要修改Cassandra的运行日志的文件路径,将
log4jappenderRFile=/var/log/cassandra/systemlog
修改为
log4jappenderRFile=/home/aaron/Downloads/apache-cassandra-06x/systemlog
在conf/storageconfxml文件中,需要修改回滚日志 (commitlog)、数据文件 (data)和缓存数据文件 (saved_cache)的存放路径。将
<SavedCachesDirectory>/var/lib/cassandra/saved_caches
</SavedCachesDirectory><CommitLogDirectory>/var/lib/cassandra/commitlog
</CommitLogDirectory><DataFileDirectories><DataFileDirectory>/var/lib/cassandra/data</DataFileDirectory></DataFileDirectories>
修改为
<SavedCachesDirectory>/home/aaron/Downloads/apache-cassandra-06x/saved_caches </SavedCachesDirectory> <CommitLogDirectory>
/home/aaron/Downloads/apache-cassandra-06x/commitlog </CommitLogDirectory> <DataFileDirectories> <DataFileDirectory>/home/aaron/Downloads/apache-cassandra-06x/data</DataFileDirectory> </DataFileDirectories>
完成以上步骤以后,Cassandra的运行环境就配置完毕了。配置好 Cassandra之后,打开 “命令行窗口”,进入到/home/aaron/Downloads/apache
cassandra06x目录下,然后直接执行 “bin/cassandra”命令就可以运行 Cassandra了,如图2-7所示。同时,/home/aaron/Downloads/apachecassandra06x目录下多了 3个目录
51第2章 Cassandra快速入门
(commitlog、data和saved_cache)以及日志文件 (systemlog)。
图2-7 在Linux环境运行Cassandra06x
223 配置运行Cassandra07x
从官网中下载 Cassandra07x,然后将下载的压缩包解压,假设解压的文件位置为/home/aaron/Downloads/apachecassandra07x。然后,需要修改 Cassandra的日志配置文件(conf/log4jserverproperties)和存储配置文件 (conf/cassandrayaml)。在 conf/log4jserverproperties文件中,需要修改Cassandra的运行日志的文件路径,将
log4jappenderRFile=/var/log/cassandra/systemlog
修改为
log4jappenderRFile=/home/aaron/Downloads/apache-cassandra-07x/systemlog
在conf/cassandrayaml文件中,需要修改回滚日志 (commitlog)、数据文件 (data)和缓存数据 (caches)的存放路径。将
#directorieswhereCassandrashouldstoredataondiskdata_file_directories牶
-/var/lib/cassandra/data
#commitlogcommitlog_directory牶/var/lib/cassandra/commitlog
#savedcachessaved_caches_directory牶/var/lib/cassandra/saved_caches
修改为
#directorieswhereCassandrashouldstoredataondisk data_file_directories牶 -/home/aaron/Downloads/apache-cassandra-07x/data #commitlog
61 Cassandra实战
commitlog_directory牶/home/aaron/Downloads/apache-cassandra-07x/commitlog #savedcaches saved_caches_directory牶/home/aaron/Downloads/apache-cassandra-07x/saved_caches
完成以上步骤以后,Cassandra的运行环境就配置完毕了。配置好 Cassandra之后,打开 “命令行窗口”,进入到/home/aaron/Downloads/apache
cassandra07x目录下,然后直接执行 “bin/cassandra”命令就可以运行 Cassandra了,如图2-8所示。同时,/home/aaron/Downloads/apachecassandra07x目录下多了 3个目录(commitlog、data和saved_caches)以及日志文件 (systemlog)。
图2-8 在Linux环境运行Cassandra07x
另外,由于Cassandra07x版本中添加了在线修改元数据 (Schema)信息的功能,所以系统在启动的时候不会包含任何用户定义的元数据信息,需要自己手动创建,或者执行
71第2章 Cassandra快速入门
如下命令将配置文件中定义的元数据信息导入系统中。
shbin/schematoollocalhost8080import
23 Cassandra的数据模型
Cassandra的数据模型与传统的键值对类型不同,我们可以将Cassandra的数据模型想象成一个四维或者五维的HashMap。
在Cassandra中,数据类型有以下几种:Column、SuperColumn、ColumnFamily和 Keyspace。下面将分别介绍这4种数据类型。
231 Column
Column是Cassandra中最小的数据单元。它是一个三元的数据类型,包含 name、value和timestamp。
将一个Column用JSON的形式表现出来,如下所示:
狖//这是一个Columnname牶"emailaddress"牞value牶"gpcuster@gmalicom"牞timestamp牶123456789
狚
这里提到的name和value都是Java中的byte[]类型。
232 SuperColumn
我们可以将 SuperColumn想象成 Column的数组,它包含一个 name以及一系列相应的Column。
将一个SuperColumn用JSON的形式表现如下:
狖 //这是一个SuperColumnname牶"email"牞//包含一系列的Columnvalue牶狖 狖name牶"address"牞value牶"gpcustr@gmailcom"牞timestamp牶123456789狚牞 狖name牶"id"牞value牶"gpcuster"牞timestamp牶123456789狚牞 狖name牶"password"牞value牶"123456"牞timestamp牶123456789狚牞狚
狚
Column和SuperColumn都是name与value的组合,它们之间最大的不同在于 Column的value是Java中的String类型,而SuperColumn的value是Column的Map。
81 Cassandra实战
注意:SuperColumn自身是不包含timestamp属性的。
233 ColumnFamily
ColumnFamily是一个包含了许多 Row的结构,可以将它想象成数据库中的表。Row是由Key以及与这个Key所关联的Column组成的。
代码清单2-1代表了一个ColumnFamily。
代码清单2-1 ColumnFamily示例
UserProfile=狖//这是一个ColumnFamilygpcuster牶狖 //这是对应ColumnFamily的Key//这是Key下对应的Column狖name牶"username"牞value牶"aaron"牞timestamp牶123456789狚牞狖name牶"email"牞value牶"gpcuster@gmailcom"牞timestamp牶123456789狚牞狖name牶"phone"牞value牶"13912345678"牞timestamp牶123456789狚
狚牞//第一个Row结束 ieure牶狖 //这是ColumnFamily的另一个Key //这是另一个Key对应的column 狖name牶"username"牞value牶"bean"牞timestamp牶123456789狚牞 狖name牶"email"牞value牶"bean@gmailcom"牞timestamp牶123456789狚牞 狖name牶"phone"牞value牶"13312341234"牞timestamp牶123456789狚牞 狖name牶"age"牞value牶"23"牞timestamp牶123456789狚 狚//第二个Row结束狚
上面例子是一个Standard类型的ColumnFamily,Standard类型的 ColumnFamily包含了一系列Column。
ColumnFamily也可以是Super类型的,代码清单2-2代表了一个SuperColumnFamily。
代码清单2-2 SuperColumnFamily示例
AddressBook=狖//这是一个Super类型的ColumnFamily gpcuster牶狖 //这是对应ColumnFamily的Key 狖 name牶"John"牞//这是SuperColumn的name value牶狖 狖name牶"email"牞value牶"john@gmailcom"牞timestamp牶123456789狚牞 狖name牶"phone"牞value牶"13412341234"牞timestamp牶123456789狚牞 狚 狚牞 狖 name牶"Kim"牞//这是SuperColumn的name value牶狖 狖name牶"email"牞value牶"kim@gmailcom"牞timestamp牶123456789狚牞 狖name牶"phone"牞value牶"13412340000"牞timestamp牶123456789狚牞 狚 狚牞 狖 name牶"Tod"牞//这是SuperColumn的name
91第2章 Cassandra快速入门
value牶狖 狖name牶"email"牞value牶"tod@gmailcom"牞timestamp牶123456789狚牞 狖name牶"phone"牞value牶"13412341111"牞timestamp牶123456789狚牞 狚 狚 狚牞//第一个Row结束 ieure牶狖 //这是对应ColumnFamily的Key 狖 name牶"joey"牞//这是SuperColumn的name value牶狖 狖name牶"email"牞value牶"joey@gmailcom"牞timestamp牶123456789狚牞 狖name牶"phone"牞value牶"13400001234"牞timestamp牶123456789狚牞 狚 狚牞 狖 name牶"William"牞//这是SuperColumn的name value牶狖 狖name牶"email"牞value牶"william@gmailcom"牞timestamp牶123456789狚牞 狖name牶"phone"牞value牶"13011110000"牞timestamp牶123456789狚牞 狚 狚 狚//第二个Row结束狚
234 Keyspace
每一个Keyspace包含多个ColumnFamily,并且可以指定使用的数据备份策略和数据的备份数。
一般来说,Cassandra集群只需要一个Keyspace就足够了。但是当Cassandra集群足够庞大、业务足够复杂的时候,一个Keyspace就无法满足需求了。
比如有两个博客网站共用同一个Cassandra集群,每一个博客网站都需要一个叫做 BlogEntry的ColumnFamily,而且第一个博客网站的数据备份数为3,第二个博客网站的数据备份数为5,那么就需要使用2个不同的Keysapce才能满足这个条件。
24 Cassandra的数据排序规则
除了拥有灵活的数据模型,Cassandra还可以指定 ColumnFamily中 Column的排序规则。这个排序操作是在数据插入 Cassandra的时候完成的,读取的时候就已经是有序的了。
假设定义了一个ColumnFamliy,并且将某一个Key下面的4条数据分别写入 Cassandra。这4条数据的写入顺序如下:
狖name牶123牞value牶"firstinsert"牞timestamp牶123456789狚狖name牶832416牞value牶"secondinsert"牞timestamp牶123456789狚
02 Cassandra实战
狖name牶3牞value牶"thirdinsert"牞timestamp牶123456789狚狖name牶976牞value牶"fourthinsert"牞timestamp牶123456789狚
如果指定的排序规则为LongType,那么这4条数据写入Cassandra后的顺序如下:
狖name牶3牞value牶"thirdinsert"牞timestamp牶123456789狚狖name牶123牞value牶"firstinsert"牞timestamp牶123456789狚狖name牶976牞value牶"fourthinsert"牞timestamp牶123456789狚狖name牶832416牞value牶"secondinsert"牞timestamp牶123456789狚
可以看到,按照LongType排序后,Key下面的所有Column都是以 Column的 name数值大小排序的。
也可以指定排序规则为UTF8Type,那么这4条数据写入Cassandra后的顺序如下:
狖name牶123牞value牶"firstinsert"牞timestamp牶123456789狚狖name牶3牞value牶"thirdinsert"牞timestamp牶123456789狚狖name牶832416牞value牶"secondinsert"牞timestamp牶123456789狚狖name牶976牞value牶"fourthinsert"牞timestamp牶123456789狚
按照UTF8Type排序以后,排序的规则变为了按照Column的name字节大小。除了LongType和UTF8Type的排序规则之外,Cassandra还支持其他排序规则。表2-1
详细介绍了Cassandra支持的所有排序规则。
表2-1 Cassandra支持的所有排序规则
排 序 名 称 排 序 规 则
BytesType 按照Column名称的Byte顺序进行排序AsciiType 按照Column名称的ASCII顺序进行排序UTF8Type 按照Column名称的UTF8顺序进行排序LongType 按照Column名称的Long顺序进行排序LexicalUUIDType 按照Column名称的LexicalUUID顺序进行排序TimeUUIDType 按照Column名称的TimeUUID顺序进行排序
由于Super类型的ColumnFamily中包括的是 SuperColumn,所以除了可以指定 SuperColumn与SuperColumn之间的排序规则外,还可以额外指定SuperColumn中所包括的Column的排序规则,并且这些排序规则都是通用的,如下所示:
狖//第一个SuperColumn name牶"workAddress"牞 value牶狖 狖name牶"street"牞value牶"streetone"牞timestamp牶123456789狚牞 狖name牶"city"牞value牶"Beijing"牞timestamp牶123456789狚牞 狖name牶"zip"牞value牶"100000"牞timestamp牶123456789狚 狚狚狖//第二个SuperColumn name牶"homeAddress"牞
12第2章 Cassandra快速入门
value牶狖 狖name牶"street"牞value牶"streettwo"牞timestamp牶123456789狚牞 狖name牶"city"牞value牶"Hunan"牞timestamp牶123456789狚牞 狖name牶"zip"牞value牶"414000"牞timestamp牶123456789狚 狚狚
如果指定SuperColumn与SuperColumn之间的排序规则与 SuperColumn中所包括的 Column的排序规则为UTF8Type,那么排序后的结果如下:
狖//第二个SuperColumn name牶"homeAddress"牞 value牶狖 狖name牶"city"牞value牶"Hunan"牞timestamp牶123456789狚牞 狖name牶"street"牞value牶"streettwo"牞timestamp牶123456789狚牞 狖name牶"zip"牞value牶"414000"牞timestamp牶123456789狚 狚狚牞 狖 //第一个SuperColumn name牶"workAddress"牞 value牶狖 狖name牶"city"牞value牶"Beijing"牞timestamp牶123456789狚牞 狖name牶"street"牞value牶"streetone"牞timestamp牶123456789狚牞 狖name牶"zip"牞value牶"100000"牞timestamp牶123456789狚 狚狚
可以看到,经过排序后,名称为 “homeAddress”的 SuperColumn排在了名称为 “workAddress”的SuperColumn前面。同时SuperColumn内部名称为 “city”的Column排在了名称为 “street”的Column前面。
25 配置数据类型
在Cassandra06x中,我们需要修改 storageconfxml来配置使用的数据类型,并且修改后的数据模型需要重启Cassandra才能生效。
在storageconfxml文件中,可以任意指定 Keyspace以及 Keyspace下面的 ColumnFamily和ColumnFamily的排序类型。
假设需要添加一个名为 School的 Keyspace,并且下面包括3个 ColumnFamily,分别为Student、Teacher和Class,我们可以在storageconfxml文件中的<Keyspaces>范围内添加如下内容:
<KeyspaceName="School"> <ColumnFamilyName="Student"CompareWith="UTF8Type"/> <ColumnFamilyName="Teacher"CompareWith="UTF8Type"/>
22 Cassandra实战
<ColumnFamilyName="Class" ColumnType="Super" CompareWith="UTF8Type" CompareSubcolumnsWith="UTF8Type"/> <ReplicaPlacementStrategy>orgapachecassandralocatorRackUnawareStrategy</ReplicaPlacementStrategy> <ReplicationFactor>1</ReplicationFactor> <EndPointSnitch>orgapachecassandralocatorEndPointSnitch</EndPointSnitch></Keyspace>
添加完这些内容后,我们再启动Cassandra就会多一个Keyspace可以使用。在指定 Keyspace包含ColumnFamily的同时,也通过 CompareWith指定了排序规则。对于 Super类型的ColumnFamily,我们需要指定 ColumnType,并且可以通过 CompareSubcolumnsWith指定 SuperColumn下Column的排序规则。
在指定新的 Keyspace的同时,也指定了备份策略 (ReplicaPlacementStrategy)、备份数(ReplicationFactor)和网络寻址规则 (EndPointSnitch),这些配置的详细信息会在后面的章节中介绍。
在Cassandra07x中,可以直接在 conf/cassandrayaml文件中修改 schema,然后使用bin/schematool文件将新定义的schema文件信息导入 Cassandra中,或者直接通过命令行执行需要修改的schema信息,无须重启Cassandra进程。
26 使用命令行工具与Cassandra交互
261 与Cassandra06x进行交互
打开一个命令行窗口,进入到 Cassandra的安装目录下,在启动 Cassandra命令行工具后,输入 “connectlocalhost/9160”就可以连接到本机的Cassandra了。连接成功后,会输出“Connectedto:"TestCluster"onlocalhost/9160”的字样,如图2-9所示。
图2-9 启动Cassandra06x命令工具
32第2章 Cassandra快速入门
接着,我们可以在School的Keyspace中插入如下两条数据到Student中:
cassandra>setSchoolStudent犤′aaron′犦犤′no′犦=′123456′Valueinsertedcassandra>setSchoolStudent犤′aaron′犦犤′age′犦=′25′Valueinserted
在命令 “setSchoolStudent[′aaron′][′no′]=′123456′”中,“set”表示要添加新的值,“School”表示Keyspace的名称,“Student”表示 ColumnFamily的名称,“aaron”表示 Key,“no”表示Column的名称,“123456”表示Column的值。
然后,可以将插入的这两条数据取回来。
cassandra>getSchoolStudent犤′aaron′犦=>牗column=no牞value=123456牞timestamp=1280502063365000牘=>牗column=age牞value=25牞timestamp=1280502069028000牘Returned2results
也可以分别取回aaron这个Key下面的Column。
cassandra>getSchoolStudent犤′aaron′犦犤′no′犦=>牗column=no牞value=123456牞timestamp=1280502063365000牘cassandra>getSchoolStudent犤′aaron′犦犤′age′犦=>牗column=age牞value=25牞timestamp=1280502069028000牘
更多关于Cassandra命令行提供的功能,可以输入 “?”或者 “help”进行查看,部分功能的预览界面如图2-10所示。
图2-10 Cassandra06x命令工具提供的功能
262 与Cassandra07x进行交互
打开一个命令行窗口,进入到 Cassandra的安装目录下,在启动 Cassandra命令行工具后,输入 “connectlocalhost/9160”就可以连接到本机的Cassandra了。连接成功后,会输出“Connectedto:"TestCluster"onlocalhost/9160”的字样,如图2-11所示。
42 Cassandra实战
图2-11 启动Cassandra07x命令工具
接着,我们可以在Cassandra中先删除之前通过 schematool加载的 Keyspace1,然后创建一个Keyspace1,如图2-12所示。
图2-12 创建一个Keyspace1
我们可以在Keyspace1中插入三条数据,然后再将这些数据读取出来,如图2-13所示。
图2-13 在Keyspace1中插入三条数据,并读取出来
更多关于Cassandra命令行提供的功能,可以输入 “?”或者 “help”进行查看,部分功能的预览界面如图2-14所示。
图2-14 Cassandra07x命令工具提供的功能
52第2章 Cassandra快速入门
提示:如果在Linux平台中使用该命令行工具,只需要在 Cassandra的目录下输入 bin\cassandracli即可。
27 本章小结
本章的目的是引导读者快速搭建 Cassandra的使用环境和掌握 Cassandra的基本操作方法。首先演示了如何在Windows和Linux系统中配置和运行Cassandra,接着详细讲解了Cassandra的数据模型、排序规则以及如何配置数据类型,最后讲解了如何使用 Cassandra自带的命令工具与Cassandra进行交互。
62 Cassandra实战