[解決済み] DynamoDBのパーティションキーはどのように機能しますか?
質問内容
DynamoDBテーブルのパーティションがどのように作成されるかを理解しようとしています。
これによると ブログ ということは、ユーザーIDが1から1000までのテーブルがあれば、1000のパーティションがあるということでしょうか?それとも、内部ハッシュ関数次第なのでしょうか?
その後、各パーティションに均等にデータを割り当てるために、1~10のランダムなサフィックスを使用することが提案されましたが、与えられた請求書番号に対して10回クエリを実行することをどうやって知るのでしょうか?パーティションが10個あるときだけなのでしょうか。しかし、この場合、何千もの請求書番号があるため、同じ量のパーティションが作成され、請求書番号を照会するためのクエリーが作成されることになります。
どのように解決するのですか?
Amazon DynamoDBのテーブルが作成されたとき、次のことができます。 希望するスループットをReads per secondとWrites per secondで指定する。 . テーブルは、要求されたスループットを提供するのに十分な複数のサーバ(パーティション)にわたってプロビジョニングされます。
あなた を表示することはできません。 パーティションの作成数は、DynamoDBが完全に管理します。データ量の増加やプロビジョニングされたスループットの増加に伴い、パーティションは追加で作成されます。
例えば、秒間1000Readsを要求し、データが内部で10台のサーバー(10パーティション)に分割されているとします。各パーティションは 100回/秒 . すべてのRead要求が同じパーティションキーである場合、スループットは100Reads/secに制限されます。もし、要求が異なる値の範囲に分散している場合、スループットは完全な 1000 リード/秒 .
同じパーティション・キーに対して多くのクエリーが行われた場合、結果的に ホットパーティション となり、利用可能なスループットの合計が制限されます。
のようなものだと考えてください。 窓口の前に行列ができる銀行 . 一人の窓口に全員が並べば、対応できる顧客は少なくなります。多くの窓口にお客さまを分散させた方が効率的です。A 良いパーティションキー 顧客ごとに異なるので、顧客番号で顧客を分散させることもできます。A 貧弱なパーティションキー というのも、彼らは皆、銀行の近くの同じ地域に住んでいるからです。
単純なルールとしては、さまざまな値の範囲を持つパーティション・キーを選択することです。
参照してください。 パーティションとデータ配布
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン