高いパフォーマンスを確保するためにAzureTableStorageをパーティション分割する方法を読んでいます。私の提案した戦略が、データストアに効率的でスケーラブルな挿入と単純なクエリを提供する機能を提供するかどうかを知りたいです。
30秒ごとにデータの小さなパケット(〜50バイト)をAZTにアップロードする1000の異なるプロセスがあります。私のクエリは、事実上常にプロセスと時間で単純にクエリすることです。たとえば、特定の日付の午後7時から午後9時までのプロセスAのすべてのログを照会したいとします。
私が提案する戦略は、プロセスごとにテーブル(1000テーブル)を作成し、各パーティションに6時間のデータが含まれるように行をパーティション化することです(1日あたり4つの新しいパーティション、パーティションあたり720行)。パーティションキー「NOV82012-0」には、11月8日の深夜から午前6時まで720行が含まれます。「NOV82012-1」には午前6時から正午などが含まれます。
これにより、継続トークンについて心配する必要がないように、どのパーティションにも常に1000行未満になるようにする必要があります。各プロセスのデータには独自のテーブルがあるため、プロセスごとに簡単に「フィルタリング」することもできます。
これはこの場合の理想的な戦略ですか?私は何かが足りないのですか?