一,引言
今天是國慶、中秋雙節房價的第三天,今天抽時間分享一篇關於使用Azure 提供的一項 NoSql 服務-----Azure Cosmos DB。就有人問了,我聽說過 MongoDB、Redis 等Nosql 型別的非關聯式資料庫,你講到的 Azure Cosmos DB 和它兩有什麼區別沒?
Azure Cosmos DB 是微軟針對操作和分析工作負荷提供的多區域分散式多模型資料庫服務。 它通過自動縮放吞吐量、計算和儲存來提供多主資料庫功能。過以下常用 API 利用個位數毫秒級的快速資料訪問:SQL、MongoDB、Cassandra、表或 Gremlin。 Cosmos DB 為吞吐量、延遲、可用性和一致性保證提供綜合服務級別協議 (SLA),這是其他資料庫服務無法提供的。簡單來說,Azure Cosmos DB 就是多區域式分佈多模型資料庫服務。
--------------------我是分割線--------------------
二,正文
1,使用 Azure Cosmos DB 的優勢
(1)多區域分佈:利用 Cosmos DB,可在全球範圍內生成具有高響應能力和可用性的應用程式。 無論使用者身處何處,Cosmos DB 均可以透明方式複製資料,因此使用者可以與離他們最近的資料副本進行互動。Cosmos DB 允許隨時在 Cosmos 帳戶中新增或刪除任何 Azure 區域,只需單擊一個按鈕即可。 Cosmos DB 將無縫地將資料複製到與 Cosmos 帳戶相關聯的所有區域,同時,得益於該服務的多導功能,應用程式將繼續保持高可用性 。
(2)吞吐量和儲存可彈性縮放:Cosmos DB 採用透明水平分割槽和多主資料庫複製設計,為全球範圍內的讀寫操作提供前所未有的彈性縮放能力。 在任何區域,只需發出一次 API 呼叫,即可將每秒數千個請求彈性擴充套件到數百萬個請求,而你只需為實際使用的吞吐量(和儲存)付費。
(3)多個一致性選項:在 Cosmos DB 中構建多區域分散式應用程式時,不再需要在一致性、可用性、延遲和吞吐量之間進行極端的權衡。 Cosmos DB 的多主資料庫複製協議經過精心設計,提供五個妥善定義的一致性選項 - 非常一致性、有限過期一致性、會話一致性、一致字首一致性和最終一致性 - 可為多區域分散式應用程式提供直觀的程式設計模型以及低延遲和高可用性。
(4)無需架構或者索引管理:對於多區域分散式應用而言,使資料庫架構和索引與應用程式的架構保持同步非常棘手。 藉助 Cosmos DB,則無需處理架構或索引管理。 資料庫引擎完全與架構無關。 由於不需要架構和索引管理,因此遷移架構時也不必擔心應用程式停用時間。 Cosmos DB 自動為所有資料編制索引,並可快速提供查詢服務。
(5)全面的SLA保證可用性:由於 Cosmos DB 是一項完全託管服務,因此不再需要管理和操作複雜的多資料中心部署和資料庫軟體的升級,也不再需要為支援、許可或操作付費,也不必為峰值工作負載預配資料庫。
2,支援多種資料庫模型
通過以下常用 API 利用個位數毫秒級的快速資料訪問:SQL、MongoDB、Cassandra、表或 Gremlin。
3,使用場景
受益於 Azure Cosmos DB 的解決方案,任何 Web、移動、遊戲和 IoT 應用程式,只要其需要處理大量資料和多區域規模的讀寫操作,各種資料的響應時間接近實時,就可以充分利用 Cosmos DB 所保證的高可用性、高吞吐量、低延遲以及可調的一致性。 瞭解如何將 Azure Cosmos DB 用於生成 IoT 和 遠端資訊處理、零售和營銷、遊戲以及 Web 和移動應用程式。
ok,今天我們先了解這麼多,只是先對Azure Cosmos DB 有個大概的認識,以及使用用它來做什麼,下一篇我們正式開始在專案中如何正確的使用多種不同型別的資料模型進行開發。
以上介紹來自:微軟官方 Azure Cosmos DB 文件
三,結尾
作者:Allen
版權:轉載請在文章明顯位置註明作者及出處。如發現錯誤,歡迎批評指正。