Azure Cosmos DB for NoSQL にコンテナーを作成する

適用対象: NoSQL

この記事では、Azure Cosmos DB for NoSQL にコンテナーを作成するいくつかの方法について説明します。 Azure portal、Azure CLI、PowerShell、またはサポートされている SDK を使用して、コンテナーを作成する方法が示されます。 この記事では、コンテナーを作成してパーティション キーを指定し、スループットをプロビジョニングする方法を紹介します。

この記事では、Azure Cosmos DB for NoSQL にコンテナーを作成するいくつかの方法について説明します。 別の API を使用している場合にコンテナーを作成する方法については、MongoDB 用 APICassandra 用 APIGremlin 用 APITable 用 API の記事をご覧ください。

Note

コンテナーを作成するときは、同じ名前で大文字と小文字が異なる 2 つのコンテナーを作成しないようにしてください。 これは、Azure プラットフォームの一部で大文字と小文字が区別されないため、このような名前のコンテナーでテレメトリとアクションの混同や衝突が発生する可能性があるためです。

Azure portal を使用してコンテナーを作成する

  1. Azure portal にサインインします。

  2. 新しい Azure Cosmos DB アカウントを作成するか、既存のアカウントを選びます。

  3. [データ エクスプローラー] ウィンドウを開いて [新しいコンテナー] を選択します。 次に、以下の詳細を指定します。

    • 新しいデータベースを作成するか、既存のデータベースを使用するかを指定します。
    • コンテナー ID を入力します。
    • パーティション キーの値を入力します (例: /ItemID)。
    • 自動スケーリングまたは手動スループットを選択し、必要なコンテナー スループットを入力します (例: 1,000 RU/秒)。 プロビジョニングするスループットを入力します (例: 1,000 RU)。
    • [OK] を選択します。

    Screenshot of Data Explorer, with New Collection highlighted

Azure CLI を使用してコンテナーを作成する

Azure CLI を使用してコンテナーを作成します。 すべての Azure Cosmos DB API にわたる Azure CLI の全サンプルの一覧については、「Azure Cosmos DB の Azure CLI サンプル」を参照してください。

PowerShell を使用してコンテナーを作成する

PowerShell を使用してコンテナーを作成します。 すべての Azure Cosmos DB API にわたる PowerShell の全サンプルの一覧については、「Azure Cosmos DB 用 Azure PowerShell サンプル」を参照してください

.NET SDK を使用してコンテナーを作成する

コレクションの作成時にタイムアウト例外が発生した場合は、コレクションが正常に作成されたかどうかを確認する読み取り操作を実行します。 この読み取り操作では、コレクションの作成操作が成功するまで例外がスローされます。 作成操作でサポートされている状態コードの一覧については、記事「Azure Cosmos DB の HTTP 状態コード」を参照してください。

// Create a container with a partition key and provision 400 RU/s manual throughput.
CosmosClient client = new CosmosClient(connectionString, clientOptions);
Database database = await client.CreateDatabaseIfNotExistsAsync(databaseId);

ContainerProperties containerProperties = new ContainerProperties()
{
    Id = containerId,
    PartitionKeyPath = "/myPartitionKey"
};

var throughput = ThroughputProperties.CreateManualThroughput(400);
Container container = await database.CreateContainerIfNotExistsAsync(containerProperties, throughput);

次のステップ