シャーディング

2022-09-19 (月) 20:42:15

シャーディング

シャーディングの種類

  • レンジベース
    • データのキー(シャードキー)の範囲を指定した分散
  • ハッシュ型
    • ハッシュアルゴリズムを使ったハッシュ値をキー(シャードキー)の範囲を指定した分散
  • タグベース
    • タグレンジ(分散可能なデータの属性(シャードタグ))を指定した分散

シャードキーの種類

  • 単調に増加する値
    • 日付時刻を使う
    • カーディナリティが低い(書き込み時は分散しない)
    • ローカリティが高い
  • ランダムな値
    • ハッシュアルゴリズムを使う
    • カーディナリティが高い(書き込み時に分散する)
    • ローカリティが低い(インデックスがメモリに乗っていない可能性が高い。インデクスの更新に負荷が高くなる(DISKとのI/Oが発生する)可能性が高い)
    • 範囲指定のクエリは全項目検索になる

自動バランシング機能

  • サーバ間のデータの偏りを整える

関連用語