天天看點

Cassandra的應用(一)

1、Cassandra(開源分布式NOSQL資料庫系統)

Cassandra 是一個來自 Apache 的分布式資料庫,具有高度可擴充性,可用于管理大量的結構化資料。它提供了高可用性,沒有單點故障。

2、Cassandra的主要特點就是它不是一個資料庫,而是由一堆資料庫節點共同構成的一個分布式網絡服務,對Cassandra 的一個寫操作,會被複制到其他節點上去,對Cassandra的讀操作,也會被路由到某個節點上面去讀取。

3、特點

①、模式靈活
使用Cassandra,像文檔存儲,你不必提前解決記錄中的字段。你可以在系統運作時随意的添加或移除字段。這是一個驚人的效率提升,特别是在大型部署上。
②、可擴充性
Cassandra是純粹意義上的水準擴充。為給叢集添加更多容量,可以指向另一台電腦。你不必重新開機任何程序,改變應用查詢,或手動遷移任何資料。
③、多資料中心
你可以調整你的節點布局來避免某一個資料中心起火,一個備用的資料中心将至少有每條記錄的完全複制。
一些使Cassandra提高競争力的其他功能:
④、範圍查詢
如果你不喜歡全部的鍵值查詢,則可以設定鍵的範圍來查詢。
⑤、清單資料結構
在混合模式可以将超級列添加到5維。對于每個使用者的索引,這是非常友善的。
⑥、分布式寫操作
有可以在任何地方任何時間集中讀或寫任何資料。并且不會有任何單點失敗。
           

4、關系型資料庫和NOSQL資料庫的差別

Cassandra的應用(一)

5、Cassandra的基礎操作

我之前已經釋出了Cassandra的安裝與啟動

①、在Windows下的啟動: 打開cmd

C:\Cassandra\apache-cassandra-3.11.2-bin\apache-cassandra-3.11.2\bin 的目錄下,輸入cassandra 

Cassandra的應用(一)

②、單獨打開一個cmd

C:\Cassandra\apache-cassandra-3.11.2-bin\apache-cassandra-3.11.2\bin 的目錄下 ,輸入cqlsh

Cassandra的應用(一)

6、Cassandra的基礎指令;

①、HELP:HELP指令顯示所有cqlsh指令的摘要和簡要描述。

Cassandra的應用(一)

7、空間

①、建立空間

Cassandra的應用(一)

輸入:

Cassandra的應用(一)

     查詢空間

describe keyspaces;

Cassandra的應用(一)

②、删除空間

Cassandra的應用(一)
Cassandra的應用(一)

查詢空間:

Cassandra的應用(一)

③、修改空間:

Cassandra的應用(一)

修改名為demo1的鍵空間,将複制因子有2改到1:

Cassandra的應用(一)

8、表

檢視鍵空間裡的表

Cassandra的應用(一)

8.1chuagnjian

①、選擇鍵空間:

use demo;

Cassandra的應用(一)

clear 清空;

②、建立表

Cassandra的應用(一)

③、查詢表:

describe tables;

Cassandra的應用(一)

8.2添加表的字段

Cassandra的應用(一)

查詢結果   select * from user

Cassandra的應用(一)
Cassandra的應用(一)

8.3删除字段并查詢

Cassandra的應用(一)
Cassandra的應用(一)

8.4删除表

drop table user;

9.表中的資料

9.1插入資料并查詢結果

Cassandra的應用(一)

根據id進行查詢

Cassandra的應用(一)

9.2截斷表

Cassandra的應用(一)

9.3更新表

Cassandra的應用(一)
Cassandra的應用(一)

10.索引

索引的作用相當于圖書的目錄,可以根據目錄中的頁碼快速找到所需的内容。

①、在資料庫系統中建立索引主要有以下作用: (1)快速取資料; (2)保證資料記錄的唯一性; (3)實作表與表之間的參照完整性; (4)在使用ORDER by、group by子句進行資料檢索時,利用索引可以減少排序和分組的時間。

優點
1.大大加快資料的檢索速度;
2.建立唯一性索引,保證資料庫表中每一行資料的唯一性;
3.加速表和表之間的連接配接;
4.在使用分組和排序子句進行資料檢索時,可以顯著減少查詢中分組和排序的時間。
缺點
1.索引需要占實體空間。
2.當對表中的資料進行增加、删除和修改的時候,索引也要動态的維護,降低了資料的維護速度。
           
最基本的索引類型,沒有唯一性之類的限制。普通索引可以通過以下幾種方式建立:
建立索引,例如CREATE INDEX <索引的名字> ON tablename (列的清單);
修改表,例如ALTER TABLE tablename ADD INDEX [索引的名字] (列的清單); 
建立表的時候指定索引,例如CREATE TABLE tablename ( [...], INDEX [索引的名字] (列的清單) );
           

10.1建立索引

Cassandra的應用(一)
Cassandra的應用(一)

10.2删除索引

Cassandra的應用(一)
Cassandra的應用(一)

11.批量操作

Cassandra的應用(一)

有參考其他的資料!!