次の方法で共有


Azure Cosmos DB for NoSQL グレインの永続性

Azure Cosmos DB グレイン永続化プロバイダーは、API for NoSQL をサポートしています。

NuGet パッケージのインストール

Microsoft.Orleans.Persistence.CosmosMicrosoft.Orleans.Clustering.Cosmos NuGet パッケージをインストールします。 Azure Cosmos DB プロバイダーは、状態をコンテナー項目に格納します。

重要

プロバイダーで使用される既定のデータベース名は Orleans です。 既定のクラスタリング コンテナー名は OrleansCluster で、既定のストレージ コンテナー名は OrleansStorage です。 クラスター コンテナーにはパーティション キーの値 /ClusterId が必要であり、ストレージ コンテナーには /PartitionKey が必要です。

クラスタリング プロバイダーを構成する

クラスタリング プロバイダーを構成するには、HostingExtensions.UseCosmosClustering 拡張メソッドを使用します。 このメソッドでは、データベースまたはコンテナーの名前とスループットのカスタマイズ、リソース作成の有効化、クライアントの資格情報の構成を行うことができます。

siloBuilder.UseCosmosClustering(
    configureOptions: static options =>
    {
        options.IsResourceCreationEnabled = true;
        options.DatabaseName = "OrleansAlternativeDatabase";
        options.ContainerName = "OrleansClusterAlternativeContainer";
        options.ContainerThroughputProperties = ThroughputProperties.CreateAutoscaleThroughput(1000);
        options.ConfigureCosmosClient("<azure-cosmos-db-nosql-connection-string>");
    });

ストレージ プロバイダーを構成する

HostingExtensions.AddCosmosGrainStorage 拡張メソッドを使用して Azure Cosmos DB グレイン永続化プロバイダーを構成します。

siloBuilder.AddCosmosGrainStorage(
    name: "profileStore",
    configureOptions: static options =>
    {
        options.IsResourceCreationEnabled = true;
        options.DatabaseName = "OrleansAlternativeDatabase";
        options.ContainerName = "OrleansStorageAlternativeContainer";
        options.ContainerThroughputProperties = ThroughputProperties.CreateAutoscaleThroughput(1000);
        options.ConfigureCosmosClient("<azure-cosmos-db-nosql-connection-string>");
    });