LoginSignup
0
0

More than 3 years have passed since last update.

Python から Azure CosmosDB を操作する (クイックスタート深掘り)

Posted at

今回は Python から Azure Cosmos DB を操作する方法をクイックスタートを参考に見ていきます。

準備

まずは、
最新の Python のインストール -> https://www.python.org/
Visual Studio Code にて Python のインストールを実行します。VS Code での Python インストールは任意ですが、VS Code で直接 Python をいじれたり、色々なショートカットがあるので大変便利です。
https://marketplace.visualstudio.com/items?itemName=ms-python.python#overview
image.png

Python アプリの Clone

Microsoft が公開している GitHub からコードをクローンします。
git clone https://github.com/Azure-Samples/azure-cosmos-db-python-getting-started.git

Visual Studio の Terminal を開き、Clone したローカルディレクトリまで移動しておきましょう。

Cosmos DB のデプロイ

Azure Cosmos DB をデプロイします。今回はシンプルな Cosmos DB を作成するので、Azure CLI からデプロイします。

az cosmosdb create --name <account-name> --resource-group <resource-group-name>

作成できたら、以下コマンドを Azure CLI から実行し、Endpoint と Key を取得します。

az cosmosdb keys list --name <account-name> --resource-group <resource-group-name>
az cosmosdb show --name <account-name> --resource-group <resource-group-name>

Visual Studio の Terminal からデプロイ

該当ディレクトリまで進んだ Visual Studio のターミナルから、以下コードを実行します。

python cosmos_get_started.py

すると以下が出力されます。

Read item with id Smith_d457f895-3756-49cd-a629-e7708d7ed252. Operation consumed 1 request units
Read item with id Johnson_3bd2aa16-742f-4aed-9a95-3adc548a94e3. Operation consumed 1 request units
Read item with id Wakefield_c73aa98d-7104-4b01-a3da-4946081575ff. Operation consumed 1 request units
Query returned 2 items. Operation consumed 3.09 request units

Portal ページを確認すると、Cosmos DB を操作できていることが確認できました。

深掘り

今回少しハマったのが、以下エラーが発生したときです。

Traceback (most recent call last):
File "cosmos_get_started.py", line 1, in <module>
    from azure.cosmos import exceptions, CosmosClient, PartitionKey
ImportError: cannot import name 'exceptions' from 'azure.cosmos' (...\lib\site-packages\azure\cosmos\__init__.py)

このエラーは、Azure Cosmos DB の SDK が正しくインストールされていないことで発生するエラーです。-perp のバージョンのAzure Cosmos SDK をインストールしている場合、このエラーにぶち当たります。
解決策ですが、以下の Python ドキュメントに記載の方法で回避ができます。

https://pypi.org/project/azure-cosmosdb-table/
(参照元)https://docs.microsoft.com/ja-jp/azure/cosmos-db/table-sdk-python

また、以下ページに Python SDK の正しいインストール方法が記載されているので、みてみると参考になります!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0