多模型:Cassandra是一個分區(qū)行存儲數(shù)據(jù)庫。它不支持任何其他數(shù)據(jù)模型。如果應(yīng)用程序需要圖形或鍵/值存儲,則必須使用第二種數(shù)據(jù)庫技術(shù)(如Titan或DataStaxEnterprisegraph)來支持圖形,從而增加復(fù)雜性和成本。作為本機多模型,ArangoDB允許您使用一個數(shù)據(jù)庫來處理這兩個問題,還可以高效地對存儲在不同模型中的數(shù)據(jù)運行查詢。
統(tǒng)一查詢語言:ArangoDB查詢語言(AQL)支持所有三種數(shù)據(jù)模型(k/v、文檔、圖形)及其各自的數(shù)據(jù)訪問模式(投影、連接、遍歷等)。此外,AQL本身支持查詢文本或地理空間等特殊數(shù)據(jù)類型。所有數(shù)據(jù)模型和數(shù)據(jù)類型可以在單個AQL查詢中自由組合。要在Cassandra中實現(xiàn)同樣的效果,必須學習CQL和Gremlin的圖形。
連接:AQL也支持各種連接操作。ArangoDB甚至通過衛(wèi)星采集功能支持大規(guī)模連接操作。對于Cassandra,這些操作在本機上是不可能的,必須在客戶端完成,并考慮其所有安全性和性能影響。
復(fù)雜事務(wù):Cassandra不支持ACID事務(wù)。使用ArangoDB,開發(fā)人員可以使用復(fù)雜的事務(wù)來跨越多個文檔和集合,或者運行聚合。ArangoDB支持多文檔和多集合事務(wù)(單實例;集群設(shè)置中的單文檔事務(wù))。
可擴展性需求和ArangoDB:ArangoDB為每個模型和多模型的使用做好了集群準備。由于C++核心與向外擴展相平衡,因此具有無限的擴展能力。ArangoDB集群架構(gòu)支持獨立擴展,以滿足高讀寫量和數(shù)據(jù)存儲(如果需要)的需要。
可擴展性:使用現(xiàn)有的以數(shù)據(jù)為中心的微服務(wù),或在ArangoDB內(nèi)的專用JavaScript框架Foxx中運行自己的服務(wù),例如,為復(fù)雜的圖形遍歷提供單個API調(diào)用。
降低總體擁有成本:了解多模型數(shù)據(jù)庫意味著將相同的知識應(yīng)用于不同的用例,并讓開發(fā)人員更快地行動。ArangoDB可以使用本機多模型方法用于廣泛的不同用例,從而簡化所需的技術(shù)堆棧和操作足跡。
比較表:Cassandra與ArangoDB
*在單服務(wù)器設(shè)置中,ArangoDB支持多文檔和多集合事務(wù)的完整ACID事務(wù)。在集群設(shè)置中,ArangoDB僅支持非分片集合的多文檔和多集合事務(wù)。共享集合支持單文檔事務(wù)。
**包括對任意字符串的全文搜索、前綴搜索以及更高級的功能,如相關(guān)性、排名、單詞規(guī)范化、刪除停止詞、識別跨多個集合工作的單詞邊界。
***輕松為以數(shù)據(jù)為中心的用例創(chuàng)建RESTAPI,并添加任何缺失的功能。
****ArangoDB支持所有基本安全要求。這包括在數(shù)據(jù)庫和集合級別基于LDAP的授權(quán)和用戶管理。通過使用ArangoDB的Foxx微服務(wù)框架,用戶甚至可以創(chuàng)建基于字段的訪問控制。
審核編輯:劉清
-
數(shù)據(jù)庫
+關(guān)注
關(guān)注
7文章
3794瀏覽量
64362 -
AQL
+關(guān)注
關(guān)注
0文章
3瀏覽量
8771 -
Cassandra
+關(guān)注
關(guān)注
0文章
6瀏覽量
2375
原文標題:ArangoDB vs. Cassandra
文章出處:【微信號:哲想軟件,微信公眾號:哲想軟件】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論