Table Storage のスケーラビリティとパフォーマンスのターゲット

この参照では、Azure Storage のスケーラビリティおよびパフォーマンスのターゲットについて説明されています。 ここで示すスケーラビリティとパフォーマンスのターゲットは、ハイエンドのターゲットですが、達成可能です。 いずれの場合も、ストレージ アカウントで実現される要求レートと帯域幅は、格納されているオブジェクトのサイズ、使用されるアクセス パターン、アプリケーションが実行するワークロードの種類によって異なります。

サービスをテストして、そのパフォーマンスが要件を満たしているかどうかを判断します。 可能であれば、トラフィック量の急増を回避し、トラフィックがパーティション間でうまく分散されるようにしてください。

ワークロードがアプリケーションのパーティションで処理できる上限に達すると、Azure Storage はエラー コード 503 (サーバーがビジー状態) またはエラー コード 500 (操作タイムアウト) の応答を返し始めます。 503 エラーが発生した場合は、再試行に指数バックオフ ポリシーを使用するようにアプリケーションを変更することを検討してください。 指数バックオフにより、パーティションの負荷が減少し、そのパーティションへのトラフィックの急増が容易になります。

Table Storage のターゲットをスケーリングする

次の表では、Table Storage の容量、スケーラビリティ、パフォーマンスについて説明しています。

リソース 目標
Azure のストレージ アカウントのテーブルの数 ストレージ アカウントの容量のみによる制限
テーブルのパーティションの数 ストレージ アカウントの容量のみによる制限
パーティション内のエンティティの数 ストレージ アカウントの容量のみによる制限
1 つのテーブルの最大サイズ 500 TiB
単一のエンティティの最大サイズ (すべてのプロパティを含む) 1 メビバイト (MiB)
テーブル エンティティの最大プロパティ数 255 (PartitionKeyRowKey、および Timestamp の 3 つのシステム プロパティも含む)
エンティティ内の個々のプロパティの最大合計サイズ プロパティの型によって異なります。 詳細については、「Table サービス データ モデルについて」の「プロパティの型」を参照してください。
PartitionKey のサイズ 1024 文字までのサイズの文字列
RowKeyのサイズ 1024 文字までのサイズの文字列
エンティティ グループ トランザクションのサイズ トランザクションには最大で 100 個のエンティティを含めることができ、ペイロードは 4 MiB 未満にする必要があります。 エンティティ グループのトランザクションには、エンティティへの更新を 1 回だけ含めることができます。
テーブルあたりの保存されるアクセス ポリシーの最大数 5
ストレージ アカウントあたりの最大要求レート 毎秒 20,000 トランザクション (エンティティ サイズは 1 KiB を想定)
単一のテーブル パーティションの目標スループット (1 KiB エンティティ) 毎秒最大 2,000 エンティティ

こちらも参照ください