一貫性ハッシュアルゴリズムとは何ですか?

一貫性ハッシュアルゴリズムとは何ですか?

[[413431]]

一貫性のあるハッシュ

コンシステントハッシュ法は、ノードを削除または追加する際に、既存のキーのマッピング関係をできるだけ変更しないハッシュアルゴリズムです。通常は時計回りに動作します。答える前に、実際の状況に対処する方法を考えてください。コンシステントハッシュ法は、ハッシュ値空間全体を仮想リングに整理します。ハッシュ関数の値空間が0〜2^32-1であると仮定すると、ハッシュ空間リング全体は、以下の左の図に示されています。


コンシステント ハッシュの基本的な考え方は、同じハッシュ アルゴリズムを使用して、データとノードの両方を図のリング ハッシュ空間にマッピングすることです。右上の図は、リング上の 4 つのデータ オブジェクト 1 ~ オブジェクト 4 の分布を示しています。

ノードとデータのマッピング

サーバーのグループがある場合は、IPまたはホスト名をハッシュのキーワードとして使用し、結果をハッシュリングにマップすることができます。3つのサーバーはnodeA-nodeCです。

これで、サーバーに保存する必要があるデータ バッチ (object1 ~ object4) ができました。同じハッシュ アルゴリズムを使用してデータをハッシュできます。結果もリング上にある必要があります。時計回りに検索できます。ノード (サーバー) が見つかったら、このノードにデータを保存します。このようにして、次の図に示すように、データとノードは 1 対 1 で関連付けられます。


ノードを削除

上図のノード B のように、サーバーに問題がある場合は、反時計回りの方向と次のノードの間のデータが影響を受けます。このデータを時計回りの最初のノードにマップするだけで済みます。


1566573901641

ノードを追加

新しいサーバー nodeD が追加されると、サーバーから反時計回りの次のノードまでのデータが影響を受けます。このデータは、右の図に示すように、nodeD にマッピングできます。

仮想ノード

サーバーが 2 つ (nodeA と nodeC) しかないと仮定します。nodeA は 1 つのデータをマップし、nodeC は 3 つのデータをマップします。これは、データ分散が不均衡であることを意味します。仮想ノードを導入し、ノードの複製数が 2 であると仮定すると、nodeA は nodeA1 と nodeA2 になり、nodeC は nodeC1 と nodeC2 になり、マッピングは次のようになります。


これにより、データの配分がより均等になり、バランスが大幅に改善されます。

<<:  2021 年にアルゴリズム エンジニアに必要な必須スキルは何ですか?

>>:  機械プログラミングが次に投資すべきテクノロジーである理由は何ですか?

ブログ    
ブログ    

推薦する

科学者はAIを使って人気曲を97%の精度で識別する

6月21日のニュースによると、新たな研究により、人工知能(AI)は人気曲を正確に識別できることが示さ...

兵馬俑は「Subject Three」を演奏したが、これは予想外のことだった

ご家族の皆さん、世界中で人気の魔法のダンス「Subject Three」、まさか兵馬俑も踊り始めると...

...

ロボットは人間の笑顔を真似することができますが、この笑顔はいつも...

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

...

...

...

効率的で正確な通関手続きのニーズを満たすために、生体認証技術がセキュリティ検査シナリオに導入されています。

空港のセキュリティは、航空機と乗客の生命と財産の安全を確保するために、爆発性、可燃性、腐食性の物品、...

レノボとブラジルのイノベーションセンターCESARは、聴覚障害者が手話を理解できるように人工知能を活用している。

レノボとブラジルのレシフェにある先端研究システムセンター(CESAR)は、聴覚障害者向けに手話を「翻...

AIツールは企業にデータ侵害のリスクをもたらす

2021年以降、企業内部者によるデータ侵害、損失、盗難は月平均28%増加しており、回答者の85%は今...

TransformerはCNNを超え、計算複雑性の問題を解決します

[[390500]]この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI...

...

AI の可能性を最大限に引き出す: 企業での導入を成功させる 5 つの鍵

ビジネスとテクノロジーに関心のある人なら誰でも、AI がすでに業界や日常生活に大きな変化をもたらして...

AIも催眠術をかけられるのか?

いつか、おそらく数十年以内に、人工ニューラル ネットワークを使用して、人間の脳をリアルにシミュレート...