[譯]2018 年度最佳數據庫即服務解決方案

從應用程序到工做流,隨處都有數據庫的用武之地,而爲大多數企業部署這些數據引擎的最佳方式即是成本低廉且功能先進的數據庫即服務(DBaaS)。這裏咱們測評了一些頂級 DBaaS 解決方案供您參考,您可根據自身業務選擇其中最合適的。前端

什麼是數據庫即服務(DBaaS)?

數據庫即服務(DBaaS)是雲上數據庫存儲和服務的術語。它具備許多其餘雲服務常見的優缺點,例如一方面是更好的成本控制,另外一方面是比內部替代方案更有限的功能。不一樣的是,它可兼做引擎式軟件,支持從直接相關的數據可視化工具到整個組織的企業資源規劃(ERP)平臺的大量其餘軟件即服務(SaaS)應用。同時 DBaaS 這種解決方案仍繼承着數據庫功能所特有的優缺點。android

DBaaS 的好處之一是令以前只能用於大型企業的技術更易使用,也下降了數字時代特有用例的准入門檻,例如物聯網(IoT)數據流、機器學習(ML)數據訓練,以及輔助邊緣計算的混合應用等。ios

DBaaS 的缺點包括數據庫的廣泛僵化、數據科學的複雜性、集成的不靈活性、網絡性能問題以及大量數據傳輸帶來的複雜性。這些限制可能致使不得不須要數據庫管理員(DBA)的幫助,儘管許多 DBaaS 供應商聲稱他們的平臺是可自助服務且對用戶友好的。git

重要的是,哪怕 DBaaS 產品中數據庫的啓動和配置已有必定程度的自動化,數據科學仍不容易。但在衆多 DBaaS 產品選項中,仍是有比其它更易用,即便普通開發者和商業分析師也足以掌握的產品服務的。github

我從開發者和分析師的角度作了這個測評,所以這對於內部 IT 資源不多的中小型企業(SMB)也有借鑑意義。這個測評的目的不是要從嚴格的技術角度排出誰優誰劣,而是肯定一個普通用戶在沒有 DBA 的幫助下能夠將該服務使用到何種程度,同時仍保留該技術的所有優點。若是僅考慮技術方面,那麼供應商排名可能會有所不一樣。web

在 DBaaS 中「易於使用」意味着什麼

與任何其餘 SaaS 產品同樣,DBaaS 其實是其餘人服務器上的軟件。即便在不幸名爲「無服務器」的模型中也是如此。本文的「易於使用」不只測評用戶界面是否對用戶友好,還涉及如下方面:sql

  1. 是否提供指導,幫助用戶根據自身數據或工做量選擇合適的數據庫類型或引擎,
  2. 加載和傳輸數據的容易程度,
  3. 服務器硬件配置和服務配置項的自動化智能程度,以及
  4. 備份和恢復過程的自動化程度。

若是用戶單是配置數據庫就得作出一長串決策,那麼不管 UI 上有多少下拉菜單和說明框,它對於非 DBA 人士來講就都不算易用。然而出於不一樣目的或是另外一種測評標準,它對 DBA 來講就是容易用的,甚至說得上是好用。換句話說,爲了使 DBaaS 成爲一個強大的自助服務平臺,它須要在每個實際交互細節上消除對 DBA 的需求。mongodb

另外一方面,若是它是已有數據庫的備份,或是混合數據庫的一部分,甚至是公司主數據庫(雲時代的公司一般是這種狀況),那麼是否利於 DBA 使用和監控就應該是要考慮的首要因素。例如,若是您的公司多年來一直在本地運行 Microsoft SQL Server 實例,而如今選擇添加一個 Microsoft Azure SQL 數據庫實例做爲雲上備份,則大多數最終用戶將永遠用不到這個實例。一樣,若是數據庫的主要任務是支持另外一個應用程序或工做流,那麼用戶一般不須要直接與其進行交互。畢竟,一旦數據庫啓動並運行,用戶就能夠藉助商業智能(BI)、開發者和 DevOps 應用程序等工具來完成他們真正感興趣的工做。大多數狀況下,數據庫仍處於後臺,不是 DBA 的話不多須要碰它,即便是高級用戶。數據庫

也就是說,這篇測評中的易用性包括所提供的全部服務。這些服務使得開發者、分析師以及少數 SMB 通用技術人員得以隨時啓用數據庫,而只須要不多的指令,以及信用卡和一臺能上網的筆記本電腦。後端

根據這些參數,Microsoft Azure SQL 數據庫是最容易使用的,MongoDB Atlas 緊隨其後。要從這兩個「主編推薦」獎項得主中選出適合您使用的,應多考慮您的數據格式和業務,而不是易用性。 IBM Db2 on Cloud 也很容易使用,但不少開發者可能會不贊同。除了大多集中在開發者的設計限制上的槽點外,IBM Db2 on Cloud 還有可選擇地區不多的問題,這多是受限於歐盟通用數據保護法規(GDPR)。誠然,MongoDB Atlas 還不符合健康保險流通與責任法案(HIPAA),但這是暫時的。即使如此,HIPAA 對開發者的影響也比 GDPR 少,這使得後者變成了大量開發者和分析師最大的擔憂。

測試版本,以及地區的重要性

對每種產品的測評內容還包括是否有試用版/免費版及其限制。例如,MongoDB Atlas 有一個「永久免費」版本,512 MB 存儲和共享隨機存取存儲器(RAM)。IBM Db2 on Cloud 有一個免費的含企業功能的開發者版本,但其免費商業版 Express-C 不含高級企業功能。付費版本差別較小,由於它們一般與存儲和計算用量而非功能特性相掛鉤。然而,在選擇以前,注意不一樣版本的可用功能和區域是很是重要的。

顯然,若是一個版本沒有你正須要的高級企業功能,例如 IBM Db2 on Cloud 的 Express-C 版,那它就沒用了。一樣,若是您須要解決 GDPR 的問題,或者您須要爲世界各地的大量用戶提供低延遲的應用程序,那麼 Microsoft Azure SQL 數據庫驚人的全球 140 個國家的 50 個可選地區就很重要了。

地區方面,Microsoft Azure SQL 數據庫是迄今爲止可選地區最多的。 MongoDB Atlas 排名第二,但這只是由於它託管在 Amazon Web Services(AWS)、Google CloudMicrosoft Azure 上,利用了這三家服務提供的地區。另外,與直覺相反,谷歌 BigQuery 的地區數量最少。

可以爲數據庫選擇地區位置很是重要,緣由有兩個。首先,因爲 GDPR 等法規,您必須肯定數據所在的位置(即便在雲中)、遷移方向以及使用方式。即便您沒有歐盟(EU)客戶數據或歐盟員工數據,爲保持符合 GDPR 標準也必須可以選擇合適的數據庫位置。這裏有好些狀況可能觸碰到 GDPR。

例如,員工多是美國人,所以他的數據不受 GDPR 的影響。他的妻子多是歐洲人或美國人,但若是他們的孩子出生在歐洲,就可能擁有雙重國籍。那麼他們的保險數據將受 GDPR 的影響。所以,即便公司沒有歐盟客戶或歐盟員工數據,也仍須要符合 GDPR 標準。該法律很是複雜。歐盟甚至還有另外的更復雜的隱私法。所以,謹慎地瞭解您的數據在何處以及發生了什麼,再想一想您是否還認爲您沒有任何歐盟我的數據須要擔憂。

您的數據和應用程序越近,性能就越好,就越不會有滯後或其它問題。您會但願找個與數據庫相同的數據中心部署您的應用程序或將您的數據庫寄存在應用程序旁。

供應商之間以及單個供應商的不一樣產品線之間,版本也存在很大差別。有些剛開始不貴,但經過各類工具和服務升級來刺激消費,提升成本,例如額外的安全性或備份和恢復服務。注意這一點。

這篇測評中,我主要使用由供應商設置的中等價位測試賬戶,而不是更受限的試用版或免費版。有時我會傳輸本身的測試數據,有時我會加載供應商的測試數據或使用他們加載好的數據集。一般,供應商提供了額度以確保我能夠完全測試他們的系統。有時我用免費的開發者版本測試,好比說 SAP Cloud Platform,由於這些版本一般是功能齊全的。不論如何,我會在每篇測評中都寫明測試的版本。

SQL 仍是 NoSQL?

另外一個使得本文難以直接對比的因素是數據庫的類型。正如全部數據專業人士所知,SQL 處理結構化數據,NoSQL 用於非結構化數據,但這種區別對於普通用戶來講可能並不明顯。結構化數據的例子是電子表格,而非結構化數據的示例是 Twitter 反饋消息。SQL 數據庫一般稱爲關係數據庫,而 NoSQL 數據庫稱爲非關係數據庫。

可是,當涉及到 DBaaS 時,選項更加多樣化,而不只僅是肯定數據是結構化仍是非結構化。例如,開源 NoSQL 的 MongoDB Atlas 運行在其餘品牌的雲服務上,如 AWS、Google 和 Microsoft。一些供應商會指導您完成迷宮般的選項,由於他們的品牌 DBaaS 服務提供了其它類型數據庫的產品選項。

例如,IBM Db2 on Cloud 就是 SQL,但它會在一開始就將用戶導入 IBM 的 NoSQL DBaaS 產品 Cloudant,或開源數據庫 MongoDB on IBM,就像上傳的數據所指示的那樣。這對於那些數據科學技能不多或理解力有限的人來講很是有用。

在每篇測評中,我都會註明 DBaaS 產品是 SQL 仍是 NoSQL,以及產品中是否有其餘數據庫選項。大多數服務要求您自己就知道您須要什麼類型的數據庫。少數服務,如 IBM Db2 on Cloud,會經過新手教程引導您選擇正確的數據庫。

這有一個快速的經驗法則:若是您使用的是機器可讀的數據,那麼您須要 SQL。想一想電子表格和物聯網數據。若是它是人類的想法或表達,那麼你須要 NoSQL。想一想社交媒體、視頻數據和音頻數據。但要事先知道,有時應用程序會向推進您選擇某一種類型,一般是 SQL。但有時最終目標會推進您選擇另外一種類型:NoSQL,利於更大、更快地擴展。

最後,請記住,機器學習輔助處理數據比本身白忙活一通更好。 機器學習的支持也在測評中有註明。

特點數據庫即服務解決方案測評:

Microsoft Azure SQL Database 測評 ⭐️ ⭐️ ⭐️ ⭐️ ⭐️

優勢: 功能豐富。使用方便。許多地區都有更多符合 GDPR 標準的選項。遷移中沒有應用程序破損。基於機器學習的自動調整功能。支持 2005 年以後的 SQL 版本。

缺點: 僅適用於結構化數據,由於數據庫是 SQL。很是適合複雜的查詢,但不適合混亂的人類交流數據。

概要: Microsoft Azure SQL 數據庫是一種出色的數據庫即服務(DBaaS)解決方案,適用於開發者、商業分析師和數據庫管理員,由於它易於使用且可控性出色。

測評詳情

MongoDB Atlas 測評 ⭐️ ⭐️ ⭐️ ⭐️ ⭐️

優勢: 易於使用。開源,具備強大的擴展、分片、無服務器和機器學習功能。

缺點: 它是 NoSQL,所以它不適合複雜的查詢或須要 HIPAA 合規性的項目。某些應用程序須要 SQL 數據庫才能運行,就無需考慮 NoSQL 數據庫。

概要: MongoDB Atlas 是開發者的理想數據庫,具備很是簡單的用戶界面,比大多數數據庫即服務(DBaaS)解決方案更自動化,高度的靈活性和可控性,內置備份功能與零鎖定。

測評詳情

Amazon 關係型數據庫服務測評 ⭐️ ⭐️ ⭐️ ⭐ ️

優勢: 穩定而強大。爲用戶提供充分的控制。很是有安全意識。

缺點: 設置和移動數據複雜。須要數據庫管理員和網絡專業人員的幫助才能進行設置。貴。

概要: Amazon 關係型數據庫服務不是一種對新手友好的數據庫即服務(DBaaS)解決方案,但若是有合適的專業人員幫助您,它將是一個很棒的關係型數據庫服務。

測評詳情

Google BigQuery 測評 ⭐️ ⭐️ ⭐️ ⭐️

優勢: 很是適合大數據項目。數據提取靈活。分析快速。幾乎能夠與任何類型的數據集成。

缺點: 專爲大數據而設計,所以對小型數據集來講過重了。SQL 方言使人困惑。若是沒有適當關注工具使用和自動擴展,將會產生大量成本。更好的統一費率訂價。

概要: Google BigQuery 是一個出色的數據庫即服務(DBaaS)解決方案,適用於雲時代的公司以及任何從事機器學習應用程序開發或處理大量數據集的人。

測評詳情

IBM Db2 on Cloud 測評 ⭐️ ⭐️ ⭐️ ⭐️

優勢: 數據遷移和設置異常簡單。設計精良。

缺點: 可選地區較少,可能會影響您的性能和合規性要求,具體取決於您對數據庫的使用方式。

概要: IBM Db2 on Cloud 是面向開發者和商業分析師的理想數據庫即服務(DBaaS)解決方案,由於他們能夠在沒有數據庫管理員幫助的狀況下使用它,而無需太多專業技能。

測評詳情

SAP Cloud Platform 測評 ⭐️ ⭐️ ⭐️

優勢: 很是適合 HANA 用戶和大數據開發者。是的,這意味着適合物聯網、機器學習和 Java。

缺點: 擁有兩個不一樣的開發者環境,這使人困惑,且可能具備限制性。

概要: SAP Cloud Platform 還不夠成熟,但它仍然是一個功能強大且獨特的數據庫即服務(DBaaS)解決方案,具備許多重要功能。

若是發現譯文存在錯誤或其餘須要改進的地方,歡迎到 掘金翻譯計劃 對譯文進行修改並 PR,也可得到相應獎勵積分。文章開頭的 本文永久連接 即爲本文在 GitHub 上的 MarkDown 連接。


掘金翻譯計劃 是一個翻譯優質互聯網技術文章的社區,文章來源爲 掘金 上的英文分享文章。內容覆蓋 AndroidiOS前端後端區塊鏈產品設計人工智能等領域,想要查看更多優質譯文請持續關注 掘金翻譯計劃官方微博知乎專欄

相關文章
相關標籤/搜索