新聞中心
當前位置:網站(zhàn)首頁 > 新聞中心
雲數據庫選型必讀:總有一款适合你(nǐ)!
我最近查看(kàn)的DB-Engines排名中有373個系統,不過其中許多産品不是明(míng)确的雲數據庫。我選擇了(le)有代表性的12家雲服務和(hé)雲數據庫供應商,按首字母排序來(lái)介紹。請(qǐng)注意,本文(wén)提及的并非建議(yì)使用(yòng),未提及的也(yě)并非不好(hǎo)。
亞馬遜網絡服務(AWS)在其雲端提供至少15種數據庫,不過其中幾種是數據倉庫。Aurora是高(gāo)性能(néng)、高(gāo)可用(yòng)性的關系數據庫服務,同時(shí)支持MySQL和(hé)PostgreSQL。RDS是其标準性能(néng)的關系數據庫服務,支持5種引擎:MariaDB、MySQL、Oracle Database、PostgreSQL 和(hé)Microsoft SQL Server。DynamoDB是高(gāo)流量鍵值數據庫服務。ElastiCache是内存中服務,與Memcached和(hé)Redis兼容。DocumentDB是一種與MongoDB兼容的文(wén)檔數據庫服務。Keyspaces是一種與Cassandra兼容的寬列數據庫服務。Neptune是一種圖數據庫服務,支持屬性圖和(hé)RDF模型。Timestream是一種時(shí)間序列數據庫服務。QLDB是一種分類賬數據庫服務。
CockroachDB是一種分布式、可橫向擴展、動态分片的關系多模型數據庫,它在鍵值存儲數據庫上(shàng)實現(xiàn)了(le)PostgreSQL;它擁有強一緻性和(hé)異常出色的存活能(néng)力。CockroachDB Core是免費開(kāi)源的;CockroachDB Enterprise是擁有附加功能(néng)的商業版;CockroachCloud是供應商管理(lǐ)的多雲數據庫即服務,基于CockroachDB Enterprise和(hé)Kubernetes;CockroachCloud Free是CockroachCloud的永久免費版,功能(néng)簡化,每個免費集群最多隻能(néng)使用(yòng)1個vCPU和(hé)5 GB存儲。CockroachDB在 2020年年底增加了(le)空(kōng)間數據存儲和(hé)索引功能(néng)。
Couchbase Server是一種内存優先、分布式、靈活的JSON文(wén)檔數據庫,在本地集群中高(gāo)度一緻。Couchbase Lite是移動版本,可以在本地運行,也(yě)可以在連接後同步到(dào)服務器。Couchbase Cloud是一種完全托管的NoSQL數據庫服務,面向關鍵任務型應用(yòng),可在AWS或Microsoft Azure的雲環境中自(zì)動部署和(hé)管理(lǐ)Couchbase Server。
DataStax Enterprise 是開(kāi)源寬列數據庫Apache Cassandra的增強型雲原生版本。DataStax Astra是一種基于Apache Cassandra/DataStax Enterprise構建的雲原生多雲、無服務器、可擴展的多區(qū)域DBaaS。存儲附加索引機制爲Astra提供了(le)針對(duì)非主鍵的查詢功能(néng),其他(tā)任何版本的Cassandra還沒有這(zhè)項功能(néng)。
谷歌雲托管10多種數據庫。關系數據庫包括Bare Metal Solution for Oracle Database、Cloud SQL for MySQL/PostgreSQL/Microsoft SQL Server以及Google Cloud Spanner,後者是雲原生系統,支持無限制的規模、一緻性和(hé)99.999%的可用(yòng)性。Google Cloud Bigtable是類似Cassandra或HBase的寬列存儲數據庫。Firestore和(hé)Firebase Realtime Database是文(wén)檔數據庫。Memorystore支持Redis API和(hé)Memcached API。谷歌雲合作(zuò)夥伴服務支持來(lái)自(zì)MongoDB、DataStax、Redis Labs和(hé)Neo4j的托管産品。
IBM 在其雲端提供大(dà)約10種數據庫。關系數據庫服務包括PostgreSQL、EnterpriseDB(PostgreSQL 的商業擴展)和(hé)IBM Db2。NoSQL數據庫服務包括IBM Cloudant(文(wén)檔數據庫)、MongoDB(也(yě)是文(wén)檔數據庫)、DataStax(寬列Cassandra的商業擴展)以及Redis。IBM 在超級保護的環境中托管PostgreSQL和(hé)MongoDB,實現(xiàn)了(le)端到(dào)端加密。
Microsoft Azure支持8種事(shì)務雲數據庫。Azure SQL是SQL Server的雲原生版本,是一種關系多模型數據庫;Azure SQL實例類似,但(dàn)提供與最新SQL Server引擎的最大(dà)兼容性。你(nǐ)還可以在虛拟機中運行SQL Server。Azure Database支持MariaDB、MySQL和(hé)PostgreSQL。Cosmos DB是一種高(gāo)可用(yòng)性、多模型、多區(qū)域的數據庫服務,提供文(wén)檔、寬列、鍵值和(hé)圖模型,不過每個實例支持一個模型。Azure Cache與Redis兼容。Azure Managed Instance for Cassandra是一種托管寬列數據庫,可以與本地Cassandra集群同步。
MongoDB Atlas是一種可在AWS、谷歌雲和(hé)Microsoft Azure上(shàng)使用(yòng)的多雲文(wén)檔數據庫服務。MongoDB本身可作(zuò)爲托管服務來(lái)使用(yòng),或在幾乎每家雲服務提供商的虛拟機中使用(yòng)。
MySQL、MariaDB、Vitess、PlanetScale和(hé)SkySQL是從(cóng)MySQL派生而來(lái)的數據庫,可作(zuò)爲雲服務來(lái)使用(yòng)。MySQL是一種開(kāi)源多模型關系數據庫,可在AWS、谷歌雲、Microsoft Azure和(hé)Oracle Cloud以及幾乎每家雲服務提供商的虛拟機中作(zuò)爲一項托管服務來(lái)使用(yòng)。MariaDB是早期開(kāi)發人員開(kāi)發的MySQL的一個分支。Vitess是一種用(yòng)于橫向擴展MySQL的數據庫集群系統,有自(zì)動分片功能(néng)。PlanetScale是一種與MySQL兼容的無服務器數據庫平台,由Vitess提供支持。SkySQL則是可在AWS和(hé)谷歌雲中使用(yòng)的MariaDB服務。
Neo4j是一種符合ACID的屬性圖數據庫,有許多集群功能(néng)。Neo4j Aura是一種快(kuài)速、可靠、可擴展且完全自(zì)動化的Neo4j圖數據庫,作(zuò)爲雲服務來(lái)提供。Aura的免費版和(hé)專業版僅在谷歌雲上(shàng)可用(yòng)。企業版在AWS和(hé)谷歌雲上(shàng)都可用(yòng)。
Oracle Database是一種商業關系數據庫,也(yě)是領先的關系多模型數據庫。它在 Oracle Cloud中以多種形式和(hé)大(dà)小(xiǎo)的服務來(lái)使用(yòng);MySQL作(zuò)爲一項服務可在Oracle Cloud中使用(yòng)。Oracle Database也(yě)可用(yòng)于 AWS和(hé)谷歌雲的本地部署環境中。
Redis是一種NoSQL内存中的數據結構存儲,可以持久保存在磁盤上(shàng)。它可以充當數據庫、緩存和(hé)消息代理(lǐ)。它通過Redis Sentinel提供高(gāo)可用(yòng)性,并通過Redis Cluster實現(xiàn)自(zì)動分區(qū)。Redis Enterprise增加了(le)提高(gāo)速度、可靠性和(hé)靈活性的功能(néng),可以作(zuò)爲雲數據庫即服務來(lái)使用(yòng)。Redis on Flash是Redis Enterprise的一項功能(néng),可顯著降低(dī)Redis的硬件成本。Redis Enterprise Cloud實例可在AWS、谷歌雲和(hé)Microsoft Azure上(shàng)使用(yòng);你(nǐ)可以選擇自(zì)己的一個或多個區(qū)域,還可以在雲虛拟機、Kubernetes或容器中運行Redis。
無論你(nǐ)爲自(zì)己的應用(yòng)選擇什(shén)麽數據庫,都别忘了(le)在投入資源之前運行概念驗證,并在進入到(dào)生産環境之前進行負載測試。許多雲數據庫可以根據需要縱向擴展和(hé)橫向擴展,但(dàn)并非所有雲數據庫都可以在無須将數據傳輸到(dào)新實例然後關閉舊實例的情況下(xià)進行擴展。
一旦你(nǐ)的數據庫進入到(dào)生産環境,就要設置持續監控機制,能(néng)夠針對(duì)異常情況發出警報(bào),并且準備好(hǎo)應對(duì)緊急情況。請(qǐng)注意,一些(xiē)數據庫需要在負載變化時(shí)對(duì)索引進行調整和(hé)更改,另一些(xiē)數據庫會(huì)自(zì)動調整自(zì)己。
作(zuò)者:Martin Heller現(xiàn)爲《InfoWorld》網站(zhàn)的特約編輯兼評論員,此前擔任Web和(hé)Windows編程顧問。從(cóng)1986年至2010年,Heller一直從(cóng)事(shì)數據庫、軟件和(hé)網站(zhàn)的開(kāi)發工(gōng)作(zuò)。近期,他(tā)出任Alpha Software的技術和(hé)教育副總裁,還是Tubifi的主席兼首席執行官。
來(lái)源:計(jì)算(suàn)機世界
上(shàng)一篇 流量造假?大(dà)數據殺熟?國家網信辦重拳出擊 下(xià)一篇 控制雲計(jì)算(suàn)支出的7種方法
|