cassandra簡介(注:該段介紹來自baidu百科)
cassandra是乙個混合型的非關係的資料庫,類似於google的bigtable。其主要功能比dynomite(分布式的key- value儲存系統)更豐富,但支援度卻不如文件儲存mongodb(介於關聯式資料庫和非關聯式資料庫之間的開源產品,是非關聯式資料庫當中功能最豐富,最像 關聯式資料庫的。支援的資料結構非常鬆散,是類似json的bjson格式,因此可以儲存比較複雜的資料型別。)cassandra最初由facebook 開發,後轉變成了開源專案。它是乙個網路社交雲計算方面理想的資料庫。以amazon專有的完全分布式的dynamo為基礎,結合了google bigtable基於列族(column family)的資料模型。p2p去中心化的儲存。很多方面都可以稱之為dynamo 2.0。
功能
cassandra的主要特點就是它不是乙個資料庫,而是由一堆資料庫節點共同構成的乙個分布式網路服務,對cassandra 的乙個寫操作,會被複製到其他節點上去,對cassandra的讀操作,也會被路由到某個節點上面去讀取。對於乙個cassandra群集來說,擴充套件效能 是比較簡單的事情,只管在群集裡面新增節點就可以了。
模式靈活:使用cassandra,像文件儲存,你不必提前解決記錄中的字段。你可以在系統執行時隨意的新增或移除字段。這是乙個驚人的效率提公升,特別是在大型部署上。
真正的可擴充套件性:cassandra是純粹意義上的水平擴充套件。為給集群新增更多容量,可以指向另一台電腦。你不必重啟任何程序,改變應用查詢,或手動遷移任何資料。
多資料中心識別:你可以調整你的節點布局來避免某乙個資料中心**,乙個備用的資料中心將至少有每條記錄的完全複製。
一些使cassandra提高競爭力的其他功能:
列表資料結構:在混合模式可以將超級列新增到5維。對於每個使用者的索引,這是非常方便的。
分布式寫操作:有可以在任何地方任何時間集中讀或寫任何資料。並且不會有任何單點失敗。
應用客戶:twitter、facebook等
cassandra安裝:
第二步:解壓縮與配置
將壓縮包解壓後複製你想安裝的目錄下,這裡我安裝在d:\apache-cassandra-0.6.1\目錄中
開啟conf資料夾,可以對下面的相關配置檔案進行配置,也可以使用預設.
你可以根據自己需要更改日誌、資料庫存放目錄等引數
2) 修改conf目錄下的storage-conf.xml檔案:
<
commitlogdirectory
> d:\apache-cassandra-0.6.1\commitlog
commitlogdirectory
>
<
datafiledirectories
>
<
datafiledirectory
> d:\apache-cassandra-0.6.1\data
datafiledirectory
>
datafiledirectories
>
第三步:環境變數的配置
2)設定環境變數"我的電腦"--"高階"選項卡--"環境變數"--"系統變數--新增",根據自己cassandra的位置來設定系統變數的值
cassandra 安裝在:d:\apache-cassandra-0.6.1
3)免重啟啟用環境變數
在cmd中鍵入命令 "set cassandra_home=任意字元",這樣環境變數可以在不重啟的情況下被啟用了。
為了確認是否被啟用,重新開啟新的cmd視窗,記住,一定要新開cmd才可以檢視到被啟用的環境變數。
你可以在新的cmd視窗中輸入"echo %cassandra_home%"輸出環境變數的值,我們會發現,可以獲取到我們設定的值。
每四步: 正式的啟動cassandra服務
同樣開啟cmd視窗,在cmd視窗中執行d:\apache-cassandra-0.6.1\bin下面的cassandra.bat啟動cassandra服務
出現上面的圖後表示服務啟動成功了,記住,這個cmd的視窗不要關閉,關閉了好像服務就被一起關閉了,接下來客端的連線好像就不行了。
第五步:客戶端的連線
服務啟動成功之後,cassandra裡面預設有乙個測試資料庫,訪問的方式是在cmd視窗中執行d:\apache-cassandra-0.6.1\bin下面的cassandra-cli.bat批處理檔案,然後出現cassandra提示符,在提示符後面輸入connect localhost\9160就可以連上預設的資料庫。下圖是連線成功後的介面。
再接著我們試著插入一條新記錄,並讀出這條記錄的值。
插入的命令是"set"關鍵字
在命令提示符下輸入
" set keyspace1.standard1['jsmith']['first']" = 'john'
如果提示"value inserted"表示插入成功。
同樣我們把插入的值讀出來,使用的關鍵字是"get"
「get keyspace1.standard1['jsmith']」
如圖,我們把剛才插入的資料給讀了出來。ok,就介紹到這。下面的東西自己也在摸索。學習中……
其他:cassandra預設使用8080埠,在bin目錄下cassandra.bat檔案中我們找到 -dcom.sun.management.jmxremote.port=8080^,如果在你的機子上沒有和8080衝突的東西的話,那你可以保留默 認的8080,但很多時候會有衝突,比如oracle,tomcat等等,這時候就需要修改下。
Cassandra學習總結
一.cassandra簡介 cassandra是一套高度可擴充套件 最終一致 分布式的結構化鍵值儲存系統。cassandra由一堆資料庫節點共同構成的乙個分布式網路服務,對cassandra 的乙個寫操作,會被複製到其他節點上去,對cassandra的讀操作,也會被路由到某個節點上面去讀取。對於乙個...
信安數基學習筆記(1)
密碼學中經常需要使用到數論知識 再加上不少學長說信安數基這門課很難 因此我決定在假期先學學信安數基 我使用的是清華大學出版社的版本 第一章 整數的可除性 整除 a,b為任意整數,若存在整數q使得a qb,則稱b整除a,稱a為b的倍數,b為a的因數 素數 對除0與 1以外的整數,若它除了 1與 n以外...
cassandra 0 3 原始碼學習筆記 2
原始碼中對節點的如下稱呼應該是等價的 end point node machine datacenter host。cassandra節點的啟動main 在類org.apache.cassandra.service.cassandradaemon中,細節在 setup 中。過程中會start乙個ca...