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