7個原因告訴你為什么要選擇ArangoDB “多模型” 數(shù)據(jù)庫?
ArangoDB 是一個開源的分布式原生多模型數(shù)據(jù)庫 (Apache 2 license)。
其理念是: 利用一個引擎,一個 query 語法,一項數(shù)據(jù)庫技術(shù),以及多個數(shù)據(jù) 模型,來***力度滿足項目的靈活性,簡化技術(shù)堆棧,簡化數(shù)據(jù)庫運維,降低運營成本。
Find ArangoDB on Github
1.合并
多模型數(shù)據(jù)庫能夠適用于許多不同的用例。因此它能夠最小化后臺部件。這樣有助于降低總擁有成本,增加靈活性,并整合您的整體技術(shù)堆棧需求。
2.簡化性能擴展
應(yīng)用程序都是一步步逐漸成熟。使用ArangoDB可以使架構(gòu)中的不同組件便可以進行獨立擴展。ArangoDB支持垂直和水平擴展來滿足您不斷增加的需求。如果您對性能的需求降低,您也可以優(yōu)化后臺系統(tǒng),這樣還可以節(jié)省硬件消耗和運營成本。
3.降低操作復(fù)雜度
Polyglot Persistence 的目的是為項目選擇最適合的工具。只安裝單一模型的數(shù)據(jù)庫軟件會讓您在運行過程中遇到很多挑戰(zhàn)。集成這些解決方案本身就是一項復(fù)雜的任務(wù),但是創(chuàng)建一個具有不同數(shù)據(jù)庫之間一致數(shù)據(jù)的大型內(nèi)聚系統(tǒng),并且包含容錯機制是無法實現(xiàn)的。在數(shù)據(jù)方面,Polyglot Persistence 更多的是為某一項工作配置其所需的合理的數(shù)據(jù)模型。原生多模型數(shù)據(jù)庫支持多種數(shù)據(jù)(合理的數(shù)據(jù)與數(shù)據(jù)模型的配對)并且不含Polyglot Persistence 的復(fù)雜性。除此之外,ArangoDB還能夠確保ACID事務(wù)處理的一致性,以及有效提升您的應(yīng)用軟件的容錯率。
4.強大的數(shù)據(jù)一致性
如果在您的應(yīng)用程序內(nèi)沒有更高級別的事務(wù)處理功能,那么它就不能支持在不同數(shù)據(jù)庫系統(tǒng)之間的事務(wù)處理功能。因此,保持不同模型之間的高度一致性是非常困難的。用單一后臺來管理不同的數(shù)據(jù)模型,您可以輕松實現(xiàn)ACID。ArangoDB已經(jīng)可以確保單實例下的高度一致性和集群模式下的原子性。 ArangoDB的 3.x版本也將會為集群模式提供高度的一致性(MVCC)。
5.容錯性
與其他組件一起構(gòu)建一個容錯系統(tǒng)是一項具有挑戰(zhàn)性的任務(wù)。在集群模式下尤為困難。對上述系統(tǒng)的搭建和維護需要包含不同技術(shù)和技術(shù)棧深厚的專業(yè)知識。將原本設(shè)計為獨立運行的多項子系統(tǒng)合并到一起更是會增加工程和運營成本。然而在一個如ArangoDB這樣的的可擴展多模型數(shù)據(jù)庫里這些問題都不會出現(xiàn)。這也是ArangoDB 為什么能夠使得先進的擁有不同數(shù)據(jù)模型的模塊化架構(gòu)得以正常運行,并且也可以應(yīng)用到集群模式下的原因。
6.降低總體擁有成本
使用不同的數(shù)據(jù)庫技術(shù)會增加很多關(guān)于硬件,軟件,以及與系統(tǒng)運營相關(guān)的成本開支。每個數(shù)據(jù)庫技術(shù)都需要持續(xù)的維護,補丁,錯誤修復(fù)和由供應(yīng)商提供的其它修改。每個新的更新都必須由專門的團隊進行測試,其與當(dāng)前系統(tǒng)整體是否兼容。使用多模型數(shù)據(jù)庫可以有效地減少這些成本開支。
7.事務(wù)處理
對多臺機器提供事務(wù)處理保障是非常具有挑戰(zhàn)性的,而且?guī)缀跛械腘oSQL數(shù)據(jù)庫都不提供這些保障。而ArangoDB原生多模型數(shù)據(jù)庫則會要求事務(wù)處理始終確保數(shù)據(jù)都存儲在數(shù)據(jù)庫中。ArangoDB已經(jīng)可以確保單實例下的高度一致性和集群模式下的原子性。ArangoDB的3.x版本也將會為集群模式提供事務(wù) (MVCC)。
免費社區(qū)版下載地址:https://www.arangodb.com/