一貫性のあるハッシュコンシステントハッシュ法は、ノードを削除または追加する際に、既存のキーのマッピング関係をできるだけ変更しないハッシュアルゴリズムです。通常は時計回りに動作します。答える前に、実際の状況に対処する方法を考えてください。コンシステントハッシュ法は、ハッシュ値空間全体を仮想リングに整理します。ハッシュ関数の値空間が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 年にアルゴリズム エンジニアに必要な必須スキルは何ですか?
>>: 機械プログラミングが次に投資すべきテクノロジーである理由は何ですか?
あらゆる種類の機械学習 (ML) の問題に取り組む場合、選択できるさまざまなアルゴリズムがあります。...
火災による被害は明らかですが、火災の予防と制御は容易ではありません。たとえば、森林火災は、その範囲が...
1. 要件の説明長い文字列と短い文字列を入力し、短い文字列に現れる文字を長い文字列から削除するプログ...
人工知能はデジタル経済の高品質な発展の原動力であり、新たな科学技術革命と産業変革の重要な原動力です。...
最近、第51回国際コンシューマー・エレクトロニクス・ショーが米国ラスベガスで開催され、世界中の人工知...
この記事の著者である Steven Dufresne は、初心者が TensorFlow を学習する...
機械アルゴリズムのディープラーニングは、ビジネスの世界に多くの変化をもたらしました。定義上、これは人...
[[384196]]今日は、ビッグデータ、人工知能、認知問題の解決の関係ロジックについて話す記事を書...
アーキテクチャ、クラウドコンピューティング1. 複雑なものをシンプルに: 「ミニマリズム」の道を行く...
本日7月3日、デジタルブロガーの@长安数码君がソーシャルプラットフォームでニュースを発表しました。顔...
最近、TCP/IP プロトコルの学習に時間を費やしました。主な理由は、TCP/IP に関する私の理解...
この投稿では、ディープラーニングのあまり知られていない応用分野である構造化データに焦点を当てます。こ...
人工知能の急速な発展に伴い、ナレッジグラフの実装と商業化の可能性は継続的に強化され、社内のデータ分析...