前面《Cassandra基本介紹》我們已經了解了Cassandra,今天将帶領大家了解下,Cassandra的基礎知識。
在《Cassandra基礎入門篇》的整體目錄如下:
快速開始
Cassandra資料模型
應用互動:驅動
Cassandra分布式架構
複制/一緻性
Cassandra内部架構
課程總結
那麼,我們這次的學習目标為是什麼?總共有四大點:
安裝和啟動Cassandra
建立table,插入和查詢資料
了解Cassandra資料模型
了解Cassandra架構
下面我們進入快速開始,為了以下課程的進行,我們需要快速掌握下如下知識:
Cassandra的安裝和啟動
CQL基本用法
一、首先我們介紹下,Cassandra的安裝和啟動:
Cassandra有3種安裝選項:
1. 社群版:
位址:http://planetcassandra.org/Download/DataStaxCommunityEdition
描述:開發和生産環境免費
2. 企業版
位址:http://www.datastax.com/download
描述:開發環境免費,生産環境需要license
3. 開源版
github位址:https://github.com/apache/cassandra
安裝方式,Cassandra有yum,tarball安裝方式,我們選擇tarball安裝:
根據上面下載下傳位址,我們下載下傳後并解壓*.tar.gz檔案
可以看到,解壓後包含bin,conf、tools等目錄
直接在bin目錄下,運作Cassandra

啟動Cassandra:
Cassandra會在log目錄下生産日記檔案,檢視“statejump to normal”,表示啟動成功
二、CQL基礎
主要包含以下知識點:
什麼是CQL
什麼是Keyspaces
什麼是Tables
基本datatypes
什麼是CQL呢?
CQL全稱:Cassandra Query Language,就是Cassandra查詢文法,類似于SQL。
什麼是Keyspaces?
Keyspaces是Cassandra中資料最外層/頂層的容器,類似于關系型資料庫的schema的概念。有屬性Replication,定義了整個Keyspaces範圍内的全局行為。
切換Keyspaces方法:使用USE
什麼是Tables?
Keyspaces包含tables,tables包含資料,與關系型資料庫中的表容器類似。
基本資料類型:
類型
描述
text
UTF-8編碼
varchar與text相同
int
有符号型
32位
timestamp
64位整型
存儲從1970-01-01 00:00:00的秒數
UUID和TIMEUUID類型
用來替代整型id(由于Cassandra是分布式資料庫)
UUID全稱:Universally Unique Identifier
例如:52b11d6d-16e2-4ee2-b2a9-5ef1e9589328
通過uuid()生成
TIMEUUID:将timestamp嵌入UUID值中
例如:1be43390-9fe4-11e3-8d05-425861b86ab6
可排序的,通過now()生成
INSERT文法:
類似于關系型文法
SELECT文法:
其他文法:
後續資料模型課程,會介紹更多。
參考我的部落格:
http://eric100.blog.51cto.com/2535573/1697169
http://eric100.blog.51cto.com/2535573/1697914