
本篇適合已對 Cosmos 有初步認識的朋友,如果沒有的話,其實好像也還好?簡單的說明一下關於 Azure Cosmos,可以先看一下官方的介紹文件。
仔細看 Azure Cosmos DB 你會發現它的 logo 是閃亮亮的地球,沒錯!它就是為全域分散式多模型資料庫服務,可以彈性調整輸送量和儲存體,可自行選用如 SQL、MongoDB、Cassandra,Tables 或 Gremlin 等 API 來進行資料存取。
實作
在 Azure 上建立 Cosmos
在 Azure Portal 上,搜尋 Cosmos 就可以選入底下這個畫面直接開始建立。

根據個人的需求來選擇 Geo-Redundancy 和 Multi-region Writes 。
Geo-Redundancy / 異地備援
簡單來說就是你的資料會被備份在另一個區域的 Data Center,當你目前選擇的 Data Center 出了什麼意外,還有一個保險在,當然你也可以選擇你要備援地區的數量。
針對異地備援,你可以參考官方文件更詳細的說明:
Multi-region Writes / 多區域複寫
多區域寫入功能允許利用全球數據庫和容器的預配置吞吐量,讓你的資料庫達到高可用性。
可以參考官方文件更詳細的說明:
因為是簡單的測試 Cosmos Python SDK,因此我先不啟用這兩項功能。

紀錄連線字串
建立完成後,在 Cosmos 資源中 Keys 的地方,記下 Primary Key 和 URI,API 主要會透過這個 key 及連線字串來取得對 Cosmos 進行操作的權限。

安裝相應套件及 Virtual Env
我習慣每個專案都先設定一個 virtual environment,以免系統被我弄髒。
如果你還有沒有 virtualenv,可以先透過 pip 安裝。
pip install virtualenv
接著,利用 virtualenv 來建立虛擬環境,我自己的環境中因為同時有 python2 和 python3,因此我會需要指定 python 的版本來建立虛擬環境,建立完成以後把虛擬環境 run 起來。
virtualenv .env --python=python3
source .env/bin/activate
最後就可以安裝 Azure Cosmos SDK 會使用到的套件了。
pip install azure-cosmos
後記
如果想要接著直接進行下去的話,可以直接透過這個連結進入下一篇:
Python實作Azure Cosmos DB(二)— CosmosClient
當然還是希望……這系列關於Azure Cosmos DB python SDK 的介紹可以有諸多系列,但通常都是遙遙無期