資料庫必須面對的九條挑戰 - thenewstack

banq發表於2020-09-08

當今的資料庫面臨著前所未有的挑戰。他們必須處理大量不同的資料,眨眼間就能得到結果,並應對極其複雜的技術環境,同時又要易於使用且高度可用。為了應對這些挑戰,現代資料庫平臺必須具備以下九個關鍵特徵:

1.即時表現
現代資料庫必須在不到一毫秒的時間內做出響應,以避免成為當今應用程式的效能瓶頸。在磁碟上執行的資料庫已經根本無法跟上。DRAM中的快取層可以幫助加快常見請求以減慢資料庫速度,但是這增加了複雜性,並且不能總是足夠快地滿足每個請求。越來越多的公司開始轉向記憶體資料庫,這種資料庫可以在不到一毫秒的時間內做出響應,而無需單獨的快取層。

2.可擴充套件性
現代應用程式可以處理越來越大的資料集。公司必須計劃以經濟有效的方式擴充套件其資料平臺,以滿足整體增長(這是一個好問題!),同時還要應對季節性的激增和需求的意外高峰。線性擴充套件對於在無需大量基礎架構投資的情況下實現這一目標至關重要。

3.高可用性
如果無法從資料庫故障中快速恢復可能會導致資料丟失,這是從財務交易事務到線上訂單的所有問題都無法接受的問題。這就是為什麼選擇具有高可用性且正常執行時間為 five-nines(99.999%)的資料庫的原因。

4.分層記憶體支援
資料庫設計人員正在轉向分層儲存方案,將最熱點的資料儲存在DRAM中,而稍熱的資料則駐留在諸如基於快閃記憶體的固態磁碟之類的永續性記憶體選項上,這些選項比旋轉磁碟快,但比DRAM便宜。他們以更低的成本獲得了60-70%的DRAM效能。

5.簡單性和可擴充套件性
由於沒有單一的資料模型可以很好地處理所有型別的資料,因此您最終可能會在同一組織中甚至在同一應用程式中部署多個資料庫。那麼解決方案是什麼?多模型資料庫在同一資料庫中提供了多個資料結構,透過減少為每個所需資料模型提供和維護不同資料庫的需求,從而減少了複雜性和開銷。

6.高階開發人員工具
除了簡單和通用之外,資料庫還必須易於開發人員使用。儘管命令列介面(CLI)仍然是與資料庫平臺一起使用的最常用方法,但對圖形使用者介面的需求卻在不斷增長,以簡化系統管理並支援希望以可視方式探索其資料並與之互動的分析人員。

7. Cloud Native(包括混合雲和多雲)
雲端計算的興起意味著您不再需要管理所使用資料庫的內部工作。但這不僅僅涉及購買資料庫即服務(DBaaS)—為了最大程度地利用雲,您技術堆疊中的每個元素都必須與透過雲交付的各種資源一起使用。您的資料庫必須與微服務體系結構以及容器和容器編排系統(例如Docker和Kubernetes)良好配合,並且可以在多雲和混合雲環境中工作。

8.開源DNA
現在,即使是最保守的企業也意識到沒有理由不依賴開源解決方案來處理幾乎任何資料庫用例。擁有開源DNA是必不可少的:這是確保技術儘可能地可擴充套件並儘快更新的唯一方法。另外,紮根於開源意味著開發人員可以解決社群真正需要的東西,而不是供應商可以做什麼或想要做什麼。

9.未來的NoSQL
如今,您的大多數資料可能都沒有結構化,很難像傳統的SQL資料庫一樣在表中進行組織。現在,NoSQL資料庫將非結構化資料放入文件中,並使用鍵值資料儲存和搜尋功能來查詢所需內容。SQL資料庫將永遠不會消失,但NoSQL就是未來-這是解決最有價值的用例的地方。


 

相關文章