🗂

Pythonを使ってJSONデータをAzure Cosmos DBにimportする方法

2024/04/15に公開

やること

JsonデータをCosmosDBのDatabaseにimportする

参考資料

↓CosmosDBのパーテーションについて

https://blog.shibayan.jp/entry/20220925/1664037901

前提

  • Cosmos DBを構築済みであること
  • Databaseを作成済みであること
  • JSONデータがローカルにあること

code

from azure.cosmos import CosmosClient, PartitionKey
import os,json
 
url = "<CosmosDBのURL>"
key = "<CosmosDBのKey>"
database_name = "<Database名>"
 
client = CosmosClient(url, credential=key)
database = client.get_database_client(database_name)
 
json_files_directory = r"<Jsonファイルまでのパス>"
 
# JSONファイルをループ処理
for filename in os.listdir(json_files_directory):
    if filename.endswith('.json'):
        # コンテナ名をファイル名から作成(拡張子なし)
        container_name = filename[:-5]
        partition_key = PartitionKey(path="<partition_key_path>")
 
        # コンテナの作成(既に存在する場合はスキップ)
        container = database.create_container_if_not_exists(
            id=container_name,
            partition_key=partition_key
        )
 
        print(f"Processed and inserted data from {filename} into container {container_name}.")
ヘッドウォータース

Discussion