Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
paulowniaceae
PDF, PPTX
12,931 views
Consistent hash
(in japanese)コンシステントハッシュ法の簡単な説明でうす。ネットでググって出てくる以上の内容はありません
Read more
24
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 32
2
/ 32
Most read
3
/ 32
4
/ 32
5
/ 32
6
/ 32
7
/ 32
8
/ 32
9
/ 32
10
/ 32
11
/ 32
12
/ 32
13
/ 32
14
/ 32
15
/ 32
16
/ 32
17
/ 32
18
/ 32
19
/ 32
Most read
20
/ 32
21
/ 32
22
/ 32
23
/ 32
24
/ 32
25
/ 32
26
/ 32
27
/ 32
28
/ 32
29
/ 32
30
/ 32
31
/ 32
32
/ 32
Most read
More Related Content
PDF
爆速クエリエンジン”Presto”を使いたくなる話
by
Kentaro Yoshida
PPTX
本当は恐ろしい分散システムの話
by
Kumazaki Hiroki
PDF
AWS Systems manager 入門
by
Serverworks Co.,Ltd.
PDF
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
by
Amazon Web Services Japan
PPTX
トランザクションをSerializableにする4つの方法
by
Kumazaki Hiroki
PDF
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
by
Toru Makabe
PDF
こんなに使える!今どきのAPIドキュメンテーションツール
by
dcubeio
PDF
Paxos
by
Preferred Networks
爆速クエリエンジン”Presto”を使いたくなる話
by
Kentaro Yoshida
本当は恐ろしい分散システムの話
by
Kumazaki Hiroki
AWS Systems manager 入門
by
Serverworks Co.,Ltd.
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
by
Amazon Web Services Japan
トランザクションをSerializableにする4つの方法
by
Kumazaki Hiroki
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
by
Toru Makabe
こんなに使える!今どきのAPIドキュメンテーションツール
by
dcubeio
Paxos
by
Preferred Networks
What's hot
PPTX
分散システムについて語らせてくれ
by
Kumazaki Hiroki
PDF
Swagger ではない OpenAPI Specification 3.0 による API サーバー開発
by
Yahoo!デベロッパーネットワーク
PDF
Infrastructure as Code (IaC) 談義 2022
by
Amazon Web Services Japan
PPTX
がっつりMongoDB事例紹介
by
Tetsutaro Watanabe
PPTX
ビッグデータ処理データベースの全体像と使い分け 2018年version
by
Tetsutaro Watanabe
PPTX
Kafka vs Pulsar @KafkaMeetup_20180316
by
Nozomi Kurihara
ODP
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
by
pospome
PDF
Docker Compose 徹底解説
by
Masahito Zembutsu
PDF
分散トレーシング技術について(Open tracingやjaeger)
by
NTT Communications Technology Development
PDF
Dockerからcontainerdへの移行
by
Kohei Tokunaga
PDF
分散システムの限界について知ろう
by
Shingo Omura
PDF
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
by
Noritaka Sekiyama
PDF
Docker道場オンライン#1 Docker基礎概念と用語の理解
by
Masahito Zembutsu
PDF
Hadoopの概念と基本的知識
by
Ken SASAKI
PDF
コンテナの作り方「Dockerは裏方で何をしているのか?」
by
Masahito Zembutsu
PPTX
初心者向けMongoDBのキホン!
by
Tetsutaro Watanabe
PPTX
コンテナネットワーキング(CNI)最前線
by
Motonori Shindo
PDF
Maven基礎
by
Toshio Takiguchi
PPT
Cassandraのしくみ データの読み書き編
by
Yuki Morishita
PDF
AWSでDockerを扱うためのベストプラクティス
by
Amazon Web Services Japan
分散システムについて語らせてくれ
by
Kumazaki Hiroki
Swagger ではない OpenAPI Specification 3.0 による API サーバー開発
by
Yahoo!デベロッパーネットワーク
Infrastructure as Code (IaC) 談義 2022
by
Amazon Web Services Japan
がっつりMongoDB事例紹介
by
Tetsutaro Watanabe
ビッグデータ処理データベースの全体像と使い分け 2018年version
by
Tetsutaro Watanabe
Kafka vs Pulsar @KafkaMeetup_20180316
by
Nozomi Kurihara
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
by
pospome
Docker Compose 徹底解説
by
Masahito Zembutsu
分散トレーシング技術について(Open tracingやjaeger)
by
NTT Communications Technology Development
Dockerからcontainerdへの移行
by
Kohei Tokunaga
分散システムの限界について知ろう
by
Shingo Omura
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
by
Noritaka Sekiyama
Docker道場オンライン#1 Docker基礎概念と用語の理解
by
Masahito Zembutsu
Hadoopの概念と基本的知識
by
Ken SASAKI
コンテナの作り方「Dockerは裏方で何をしているのか?」
by
Masahito Zembutsu
初心者向けMongoDBのキホン!
by
Tetsutaro Watanabe
コンテナネットワーキング(CNI)最前線
by
Motonori Shindo
Maven基礎
by
Toshio Takiguchi
Cassandraのしくみ データの読み書き編
by
Yuki Morishita
AWSでDockerを扱うためのベストプラクティス
by
Amazon Web Services Japan
Similar to Consistent hash
PDF
[アルゴリズムイントロダクション勉強会] ハッシュ
by
Rei Takami
PPTX
Coherenceを利用するときに気をつけること #OracleCoherence
by
Toshiaki Maki
PDF
並列データベースシステムの概念と原理
by
Makoto Yui
PPT
アルゴリズムとデータ構造9
by
Kenta Hattori
PDF
Consistent Hashingの小ネタ
by
Huy Do
PDF
[Basic 3] 計算量 / 配列, 連結リスト / ハッシュ テーブル / スタック, キュー
by
Yuto Takei
PDF
ConcurrentHashMap Code Reading
by
Naoyuki Kakuda
PDF
HashTable と HashDos
by
Yuya Takeyama
PDF
Jump Consistent Hash
by
hitsu mabushi
[アルゴリズムイントロダクション勉強会] ハッシュ
by
Rei Takami
Coherenceを利用するときに気をつけること #OracleCoherence
by
Toshiaki Maki
並列データベースシステムの概念と原理
by
Makoto Yui
アルゴリズムとデータ構造9
by
Kenta Hattori
Consistent Hashingの小ネタ
by
Huy Do
[Basic 3] 計算量 / 配列, 連結リスト / ハッシュ テーブル / スタック, キュー
by
Yuto Takei
ConcurrentHashMap Code Reading
by
Naoyuki Kakuda
HashTable と HashDos
by
Yuya Takeyama
Jump Consistent Hash
by
hitsu mabushi
Consistent hash
1.
@nullpon / id:paulownia コンシステント ハッシュ法 consistent
hashing
2.
コンシステントハッシュ法 分散データベース/キャッシュの保存先を決定 するために開発されたハッシュテーブルのアル ゴリズム
3.
コンシステントハッシュ のアルゴリズム
4.
適当なハッシュ関数を用意 出力値が大小比較可能なハッシュ関数を用意 ※ ここでは、入力値を0から127までの値に変換 する仮想のハッシュ関数 h
で説明する
5.
ノードのIDをハッシュ関数 h で変換 n1:
h("n1") => 25 n2: h("n2") => 120 n3: h("n3") => 50 n4: h("n4") => 95
6.
リング状に配置
7.
データのIDをハッシュ関数 h で変換 a1:
h("a1") => 64 a2: h("a2") => 115 a3: h("a3") => 75 a4: h("a4") => 8 a5: h("a5") => 100 a6: h("a6") => 90 a7: h("a7") => 45 a8: h("a8") => 15
8.
リング状に配置
9.
データの割り当て先ノードは以下の順に決定 データIDのハッシュ値と同じノード データIDより大きいハッシュ値を持つノード のなかで、ハッシュ値が最小のノード ハッシュ値が最小のノード
10.
ノードの追加と削除
11.
ノードの追加
13.
n4のデータの一部がn5へ移動
14.
ノードの削除
16.
n1のデータがn3へ移動
17.
移動するデータ数の平均値 データ数/ノード数
18.
仮想ノード
19.
仮想ノードなしでは、負荷分散が不完全
20.
偏ったリング データが特定のノードに偏り 負荷分散にならない
21.
ノードがダウン 落ちたノードの全データが一つ先のノードへ 移動 一つ先のノードの負荷が2倍 特定のノードに負荷が集中
22.
ノードを追加 1つ先のノードからデータが移動 1つ先のノードの負荷しか減らない 負荷対策にならない
23.
そこで仮想ノード
24.
n1: h("n1"+0) =>
25 n1: h("n1"+1) => 100 n1: h("n1"+2) => 90 n2: h("n2"+0) => 120 n2: h("n2"+1) => 45 n2: h("n2"+2) => 13 … ハッシュ関数 h でノードID+αを変換
25.
リング状に配置 ノード数が増えれば均等に分散する確率が高くなる
26.
ノード4が追加された場合 複数のノードから均等にデータが 移動してくる可能性が高い
27.
ノード1がダウンした場合 ノード1のデータが複数のノードへ 均等に分散することが期待できる
28.
メリット・デメリット
29.
メリット データの割り当て先を自動で決定可能 データをクラスタに均等に分散できる ノードが落ちた時、自動で再割り当て 再割り当てのコストが小さい
30.
デメリット 全てのノードが現在のクラスタの状態を正確に 知ってなければならない。 クラスタ状態の共有コストがかかる
31.
まとめ
32.
コンシステントハッシュを用いると プロセスが1つ2つ程度落ちても問題のない クラスタを構成できる 負荷分散についてエンジニアが手を動かす 必要がない 大規模な分散環境でも運用が楽 (かもしれない)
Download