Azureテーブルストレージを時系列データベースとして使用します。データベースは、より多くの行(各パーティションごとに約20行/秒)で常に拡張されます。毎日、私はその日のデータ用に新しいパーティションを作成して、すべてのパーティションが同じサイズを持ち、決して大きくなりすぎないようにします。パーティション全体をクエリした後のAzureテーブルのストレージパフォーマンスの大幅な低下
これまではすべてが問題なく動作していましたが、特定のパーティションからデータを取得したいときは、1000の値に対して2.5秒以上かかることはなく、平均して1秒かかるでしょう。
私はパーティションのすべてのデータを照会しようとしましたが、実際には非常に遅くなりました。手順の途中では、各クエリは1000の値に対して30〜40秒かかるでしょう。
私は小さな範囲で再起動するために手順をキャンセルしました。しかし、すべてのクエリに時間がかかりすぎる。最初からすべてのクエリは15〜30秒必要です。データが効率の悪い方法で再配置されたことがあります。そのため、パフォーマンスが大幅に低下しています。もしそうなら、そのような並べ替えを処理する方法はありますか?
最適なパフォーマンスを得るためにテーブルを「暖かい」状態に保つ必要があることを知っています。基本的に、設定されたパーティションを照会するほど最適な速度に近づきます。しかし、それは確かではありません - パフォーマンスの低下を説明できるparticion key/rowキー以外のものに基づいてクエリを実行していますか? –
これも私の考えです。そのため、クエリを開始しても少なくともパフォーマンスは正常に戻ってくると思いますが、そうではないようですが、パフォーマンスはあまりにも悪くなっています。いいえ、私は '継続トークン'を使って特定のパーティションキーを問い合わせています – LetsPlayYahtzee
私は本当にこれを引き起こしていることを知りたいのです - 性能保証はパーティションあたり2,000エンティティ/秒(1Kbエンティティ)あなたはその範囲内です。 –