SlideShare una empresa de Scribd logo
1 de 22
ROMA   R akuten  O n- M emory  A rchitecture 楽天株式会社 楽天技術研究所 西澤無我| 2009年2月20日
ROMA について ,[object Object],[object Object],ROMA (key-value store)
ROMA の特徴 ROMA ,[object Object],[object Object],[object Object],エンドユーザ Web ( アプリケーション )  サーバ GET GET PUT
Consistent Hashing ,[object Object],[object Object],[object Object],[object Object],ROMA
Zero-hop  でのデータ探索  (1/2) ,[object Object],[object Object],[object Object],[object Object],ROMA 担当ノード ① データを  GET/PUT ③ 担当ノードから 値を  GET/PUT ② 担当ノードを計算 コーディネータ クライアント
Zero-hop  でのデータ探索  (2/2) ,[object Object],[object Object],[object Object],[object Object],ROMA 担当ノード ③ 担当ノードから値を  GET/PUT ② 担当ノードを計算 ① データを  GET/PUT クライアント
ROMA Client ,[object Object],[object Object],[object Object],[object Object],#!/usr/local/bin/ruby require ‘RClient’ rc = ROMA::Client.new rc.open(“roma0”, 3300) #   任意の  ROMA  プロセスを指定 rc[“muga”] = “data”   #  ROMA  にデータを  PUT data = rc[“muga”]   #  ROMA  からデータを  GET rc[“muga”] = nil   #  ROMA  からデータを  DELETE ※  Ruby  実装のクライアント  API  の例
Replication (1/2) ,[object Object],[object Object],[object Object],[object Object],ROMA 担当ノード ① 担当ノードに 値が  PUT ② 左右のノードにレプリカを  PUT
Replication (2/2) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],ROMA 担当ノード ① 担当ノードに 値が  PUT ② 左右のノードにレプリカを  PUT
Replica Synchronization (1/2) ,[object Object],[object Object],[object Object],[object Object],[object Object],ROMA 担当ノード ① 担当ノードに 値が  PUT ② 左右のノードにレプリカを  PUT
Replica Synchronization (2/2) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],ROMA 担当ノード ① 担当ノードに 値が  PUT ② 左右のノードにレプリカを  PUT
ノードの Join (1/3) ,[object Object],[object Object],[object Object],[object Object],[object Object],ROMA 新規ノード ① ブロードキャスト ② ROMA  ノードが応答
各ノードのデータ領域 LS P RS LS P RS LS P RS LS P RS ,[object Object],[object Object],[object Object],[object Object],冗長度  3 冗長度  3 ROMA
ノードの Join (2/3) ,[object Object],LS P RS LS P RS LS P RS LS P RS LS P RS ROMA
ノードの Join (3/3) LS P ,[object Object],LS P RS LS P RS P RS LS P RS LS RS ROMA
環情報の更新 ROMA ,[object Object],[object Object],[object Object]
障害ノードの切り離し ,[object Object],[object Object],ROMA 障害ノード
ノードの障害検知 (1/2) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],ROMA
ノードの障害検知 (2/2) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],セカンダリー 担当ノード セカンダリー ① ② ③
障害ノードの切り離し ,[object Object],LS P LS P RS LS P RS P RS LS P RS LS RS 離脱ノード 離脱ノード 冗長度  2 冗長度  2 ROMA
永続化 ,[object Object],[object Object],[object Object],[object Object],[object Object],ROMA (key-value store) データ データ データ データ データ データ
まとめ ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

Más contenido relacionado

La actualidad más candente

OpenBSD/luna88k on LUNA-88K2, at OSC 2013 Nagoya
OpenBSD/luna88k on LUNA-88K2, at OSC 2013 NagoyaOpenBSD/luna88k on LUNA-88K2, at OSC 2013 Nagoya
OpenBSD/luna88k on LUNA-88K2, at OSC 2013 NagoyaKenji Aoyama
 
Xeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdkXeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdkMasaru Oki
 
OpenIndiana+KVMによる仮想マシン
OpenIndiana+KVMによる仮想マシンOpenIndiana+KVMによる仮想マシン
OpenIndiana+KVMによる仮想マシン悟 宮崎
 
A story of porting OpenBSD/luna88k
A story of porting OpenBSD/luna88kA story of porting OpenBSD/luna88k
A story of porting OpenBSD/luna88kKenji Aoyama
 
LoRa GPSトラッカー LGT92 ユーザーマニュアル
LoRa GPSトラッカー LGT92 ユーザーマニュアルLoRa GPSトラッカー LGT92 ユーザーマニュアル
LoRa GPSトラッカー LGT92 ユーザーマニュアルCRI Japan, Inc.
 
Lagopus performance
Lagopus performanceLagopus performance
Lagopus performanceMasaru Oki
 
今もう一度知ろう。 Solarisのコンテナ型仮想化技術
今もう一度知ろう。 Solarisのコンテナ型仮想化技術今もう一度知ろう。 Solarisのコンテナ型仮想化技術
今もう一度知ろう。 Solarisのコンテナ型仮想化技術悟 宮崎
 
3次元SLAMは誰でもできるよ。そう、TX2とTurtleBot3ならね。
3次元SLAMは誰でもできるよ。そう、TX2とTurtleBot3ならね。3次元SLAMは誰でもできるよ。そう、TX2とTurtleBot3ならね。
3次元SLAMは誰でもできるよ。そう、TX2とTurtleBot3ならね。ROBOTIS Japan
 
Pacemaker+DRBDでHAクラスタを作る
Pacemaker+DRBDでHAクラスタを作るPacemaker+DRBDでHAクラスタを作る
Pacemaker+DRBDでHAクラスタを作るTsubasa Nomura
 
LoRaWAN 土壌&ECセンサ - LSE01日本語ユーザーマニュアル
LoRaWAN 土壌&ECセンサ - LSE01日本語ユーザーマニュアルLoRaWAN 土壌&ECセンサ - LSE01日本語ユーザーマニュアル
LoRaWAN 土壌&ECセンサ - LSE01日本語ユーザーマニュアルCRI Japan, Inc.
 
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会「Turtlebot3の紹介」 ROS Japan UG #10 勉強会
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会ROBOTIS Japan
 
Lagopus どれだけ速いのか
Lagopus どれだけ速いのかLagopus どれだけ速いのか
Lagopus どれだけ速いのかMasaru Oki
 
FreeBSD jail+vnetと戯れた話
FreeBSD jail+vnetと戯れた話FreeBSD jail+vnetと戯れた話
FreeBSD jail+vnetと戯れた話Masaru Oki
 
Lagopus as open flow hybrid switch
Lagopus as open flow hybrid switchLagopus as open flow hybrid switch
Lagopus as open flow hybrid switchMasaru Oki
 
Play PSG music on LUNA-88K - Utilization of I/O prosessor
Play PSG music on LUNA-88K - Utilization of I/O prosessorPlay PSG music on LUNA-88K - Utilization of I/O prosessor
Play PSG music on LUNA-88K - Utilization of I/O prosessorKenji Aoyama
 
Trema の紹介とネットワーク仮想化への応用
Trema の紹介とネットワーク仮想化への応用Trema の紹介とネットワーク仮想化への応用
Trema の紹介とネットワーク仮想化への応用kazuyas
 
SDNソフトウェアスイッチlagopus for FreeBSD
SDNソフトウェアスイッチlagopus for FreeBSDSDNソフトウェアスイッチlagopus for FreeBSD
SDNソフトウェアスイッチlagopus for FreeBSDMasaru Oki
 
LoRaWAN LiDAR ToF 距離センサLDDS12 日本語ユーザーマニュアル
 LoRaWAN LiDAR ToF 距離センサLDDS12 日本語ユーザーマニュアル LoRaWAN LiDAR ToF 距離センサLDDS12 日本語ユーザーマニュアル
LoRaWAN LiDAR ToF 距離センサLDDS12 日本語ユーザーマニュアルCRI Japan, Inc.
 

La actualidad más candente (20)

Lagopus 0.2.2
Lagopus 0.2.2Lagopus 0.2.2
Lagopus 0.2.2
 
OpenBSD/luna88k on LUNA-88K2, at OSC 2013 Nagoya
OpenBSD/luna88k on LUNA-88K2, at OSC 2013 NagoyaOpenBSD/luna88k on LUNA-88K2, at OSC 2013 Nagoya
OpenBSD/luna88k on LUNA-88K2, at OSC 2013 Nagoya
 
Xeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdkXeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdk
 
OpenIndiana+KVMによる仮想マシン
OpenIndiana+KVMによる仮想マシンOpenIndiana+KVMによる仮想マシン
OpenIndiana+KVMによる仮想マシン
 
A story of porting OpenBSD/luna88k
A story of porting OpenBSD/luna88kA story of porting OpenBSD/luna88k
A story of porting OpenBSD/luna88k
 
LoRa GPSトラッカー LGT92 ユーザーマニュアル
LoRa GPSトラッカー LGT92 ユーザーマニュアルLoRa GPSトラッカー LGT92 ユーザーマニュアル
LoRa GPSトラッカー LGT92 ユーザーマニュアル
 
Lagopus performance
Lagopus performanceLagopus performance
Lagopus performance
 
今もう一度知ろう。 Solarisのコンテナ型仮想化技術
今もう一度知ろう。 Solarisのコンテナ型仮想化技術今もう一度知ろう。 Solarisのコンテナ型仮想化技術
今もう一度知ろう。 Solarisのコンテナ型仮想化技術
 
OpenFlow
OpenFlowOpenFlow
OpenFlow
 
3次元SLAMは誰でもできるよ。そう、TX2とTurtleBot3ならね。
3次元SLAMは誰でもできるよ。そう、TX2とTurtleBot3ならね。3次元SLAMは誰でもできるよ。そう、TX2とTurtleBot3ならね。
3次元SLAMは誰でもできるよ。そう、TX2とTurtleBot3ならね。
 
Pacemaker+DRBDでHAクラスタを作る
Pacemaker+DRBDでHAクラスタを作るPacemaker+DRBDでHAクラスタを作る
Pacemaker+DRBDでHAクラスタを作る
 
LoRaWAN 土壌&ECセンサ - LSE01日本語ユーザーマニュアル
LoRaWAN 土壌&ECセンサ - LSE01日本語ユーザーマニュアルLoRaWAN 土壌&ECセンサ - LSE01日本語ユーザーマニュアル
LoRaWAN 土壌&ECセンサ - LSE01日本語ユーザーマニュアル
 
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会「Turtlebot3の紹介」 ROS Japan UG #10 勉強会
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会
 
Lagopus どれだけ速いのか
Lagopus どれだけ速いのかLagopus どれだけ速いのか
Lagopus どれだけ速いのか
 
FreeBSD jail+vnetと戯れた話
FreeBSD jail+vnetと戯れた話FreeBSD jail+vnetと戯れた話
FreeBSD jail+vnetと戯れた話
 
Lagopus as open flow hybrid switch
Lagopus as open flow hybrid switchLagopus as open flow hybrid switch
Lagopus as open flow hybrid switch
 
Play PSG music on LUNA-88K - Utilization of I/O prosessor
Play PSG music on LUNA-88K - Utilization of I/O prosessorPlay PSG music on LUNA-88K - Utilization of I/O prosessor
Play PSG music on LUNA-88K - Utilization of I/O prosessor
 
Trema の紹介とネットワーク仮想化への応用
Trema の紹介とネットワーク仮想化への応用Trema の紹介とネットワーク仮想化への応用
Trema の紹介とネットワーク仮想化への応用
 
SDNソフトウェアスイッチlagopus for FreeBSD
SDNソフトウェアスイッチlagopus for FreeBSDSDNソフトウェアスイッチlagopus for FreeBSD
SDNソフトウェアスイッチlagopus for FreeBSD
 
LoRaWAN LiDAR ToF 距離センサLDDS12 日本語ユーザーマニュアル
 LoRaWAN LiDAR ToF 距離センサLDDS12 日本語ユーザーマニュアル LoRaWAN LiDAR ToF 距離センサLDDS12 日本語ユーザーマニュアル
LoRaWAN LiDAR ToF 距離センサLDDS12 日本語ユーザーマニュアル
 

Destacado

ROMA のアーキテクチャと社内事例
ROMA のアーキテクチャと社内事例ROMA のアーキテクチャと社内事例
ROMA のアーキテクチャと社内事例Rakuten Group, Inc.
 
楽天におけるHadoop活用と、Big Dataのビジョン
楽天におけるHadoop活用と、Big Dataのビジョン楽天におけるHadoop活用と、Big Dataのビジョン
楽天におけるHadoop活用と、Big DataのビジョンRakuten Group, Inc.
 
楽天テクノロジーカンファレン2009 基調講演
楽天テクノロジーカンファレン2009 基調講演楽天テクノロジーカンファレン2009 基調講演
楽天テクノロジーカンファレン2009 基調講演Rakuten Group, Inc.
 
Devsumi2012フィードバック オープニング
Devsumi2012フィードバック オープニングDevsumi2012フィードバック オープニング
Devsumi2012フィードバック オープニングRakuten Group, Inc.
 
データドリブン企業におけるHadoop基盤とETL -niconicoでの実践例-
データドリブン企業におけるHadoop基盤とETL -niconicoでの実践例-データドリブン企業におけるHadoop基盤とETL -niconicoでの実践例-
データドリブン企業におけるHadoop基盤とETL -niconicoでの実践例-Makoto SHIMURA
 

Destacado (6)

ROMA のアーキテクチャと社内事例
ROMA のアーキテクチャと社内事例ROMA のアーキテクチャと社内事例
ROMA のアーキテクチャと社内事例
 
Roma rolling update
Roma rolling updateRoma rolling update
Roma rolling update
 
楽天におけるHadoop活用と、Big Dataのビジョン
楽天におけるHadoop活用と、Big Dataのビジョン楽天におけるHadoop活用と、Big Dataのビジョン
楽天におけるHadoop活用と、Big Dataのビジョン
 
楽天テクノロジーカンファレン2009 基調講演
楽天テクノロジーカンファレン2009 基調講演楽天テクノロジーカンファレン2009 基調講演
楽天テクノロジーカンファレン2009 基調講演
 
Devsumi2012フィードバック オープニング
Devsumi2012フィードバック オープニングDevsumi2012フィードバック オープニング
Devsumi2012フィードバック オープニング
 
データドリブン企業におけるHadoop基盤とETL -niconicoでの実践例-
データドリブン企業におけるHadoop基盤とETL -niconicoでの実践例-データドリブン企業におけるHadoop基盤とETL -niconicoでの実践例-
データドリブン企業におけるHadoop基盤とETL -niconicoでの実践例-
 

Similar a The Overall Architecture of ROMA

ログ収集フレームワークの新バージョン「FlumeNG」
ログ収集フレームワークの新バージョン「FlumeNG」ログ収集フレームワークの新バージョン「FlumeNG」
ログ収集フレームワークの新バージョン「FlumeNG」AdvancedTechNight
 
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)Tomoya Hibi
 
透過型確率的パケットマーキング装置の提案と開発(オープンルータコンペティション発表資料)
透過型確率的パケットマーキング装置の提案と開発(オープンルータコンペティション発表資料)透過型確率的パケットマーキング装置の提案と開発(オープンルータコンペティション発表資料)
透過型確率的パケットマーキング装置の提案と開発(オープンルータコンペティション発表資料)Akira Kanaoka
 
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
構造化オーバーレイネットワークに適した分散双方向連結リストDDLLKota Abe
 
NPStudy LT Lagopus Router v19.07
NPStudy LT Lagopus Router v19.07NPStudy LT Lagopus Router v19.07
NPStudy LT Lagopus Router v19.07Tomoya Hibi
 
SORACOM UG 東海 #1 | これだけ知っていれば LoRaWAN & SORACOM Air for LoRaWAN ハンズオン
SORACOM UG 東海 #1 | これだけ知っていれば LoRaWAN & SORACOM Air for LoRaWAN ハンズオンSORACOM UG 東海 #1 | これだけ知っていれば LoRaWAN & SORACOM Air for LoRaWAN ハンズオン
SORACOM UG 東海 #1 | これだけ知っていれば LoRaWAN & SORACOM Air for LoRaWAN ハンズオンSORACOM,INC
 
ビルトインTTN LoRaWANゲートウェイ LPS8v2日本語ユーザーマニュアル
ビルトインTTN  LoRaWANゲートウェイ LPS8v2日本語ユーザーマニュアルビルトインTTN  LoRaWANゲートウェイ LPS8v2日本語ユーザーマニュアル
ビルトインTTN LoRaWANゲートウェイ LPS8v2日本語ユーザーマニュアルCRI Japan, Inc.
 
処理概要図&構築手順書1124
処理概要図&構築手順書1124処理概要図&構築手順書1124
処理概要図&構築手順書1124Kazuki Miura
 
普及版8チャンネルLoRaWAN Pico Staion LPS8ユーザーマニュアル
普及版8チャンネルLoRaWAN Pico Staion LPS8ユーザーマニュアル普及版8チャンネルLoRaWAN Pico Staion LPS8ユーザーマニュアル
普及版8チャンネルLoRaWAN Pico Staion LPS8ユーザーマニュアルCRI Japan, Inc.
 
MRU : Monobit Reliable UDP ~5G世代のモバイルゲームに最適な通信プロトコルを目指して~
MRU : Monobit Reliable UDP ~5G世代のモバイルゲームに最適な通信プロトコルを目指して~MRU : Monobit Reliable UDP ~5G世代のモバイルゲームに最適な通信プロトコルを目指して~
MRU : Monobit Reliable UDP ~5G世代のモバイルゲームに最適な通信プロトコルを目指して~モノビット エンジン
 
モーターを低速で定速で動かしてみる
モーターを低速で定速で動かしてみるモーターを低速で定速で動かしてみる
モーターを低速で定速で動かしてみるKeiichi Sakai
 
Lagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそばLagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそばYoshihiro Nakajima
 
MySQL Clusterを運用して10ヶ月間
MySQL Clusterを運用して10ヶ月間MySQL Clusterを運用して10ヶ月間
MySQL Clusterを運用して10ヶ月間hiroi10
 
Rubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつりRubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつりYuya Rin
 
Wiresharkで検出できないチャットプログラム
Wiresharkで検出できないチャットプログラムWiresharkで検出できないチャットプログラム
Wiresharkで検出できないチャットプログラムShinichi Hirauchi
 
FD.io VPP事始め
FD.io VPP事始めFD.io VPP事始め
FD.io VPP事始めtetsusat
 

Similar a The Overall Architecture of ROMA (20)

ログ収集フレームワークの新バージョン「FlumeNG」
ログ収集フレームワークの新バージョン「FlumeNG」ログ収集フレームワークの新バージョン「FlumeNG」
ログ収集フレームワークの新バージョン「FlumeNG」
 
P2Pって何?
P2Pって何?P2Pって何?
P2Pって何?
 
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)
Lagopusで試すL3ルーティング + α (Lagopusの設定方法いろいろ)
 
透過型確率的パケットマーキング装置の提案と開発(オープンルータコンペティション発表資料)
透過型確率的パケットマーキング装置の提案と開発(オープンルータコンペティション発表資料)透過型確率的パケットマーキング装置の提案と開発(オープンルータコンペティション発表資料)
透過型確率的パケットマーキング装置の提案と開発(オープンルータコンペティション発表資料)
 
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
 
NPStudy LT Lagopus Router v19.07
NPStudy LT Lagopus Router v19.07NPStudy LT Lagopus Router v19.07
NPStudy LT Lagopus Router v19.07
 
SORACOM UG 東海 #1 | これだけ知っていれば LoRaWAN & SORACOM Air for LoRaWAN ハンズオン
SORACOM UG 東海 #1 | これだけ知っていれば LoRaWAN & SORACOM Air for LoRaWAN ハンズオンSORACOM UG 東海 #1 | これだけ知っていれば LoRaWAN & SORACOM Air for LoRaWAN ハンズオン
SORACOM UG 東海 #1 | これだけ知っていれば LoRaWAN & SORACOM Air for LoRaWAN ハンズオン
 
ビルトインTTN LoRaWANゲートウェイ LPS8v2日本語ユーザーマニュアル
ビルトインTTN  LoRaWANゲートウェイ LPS8v2日本語ユーザーマニュアルビルトインTTN  LoRaWANゲートウェイ LPS8v2日本語ユーザーマニュアル
ビルトインTTN LoRaWANゲートウェイ LPS8v2日本語ユーザーマニュアル
 
処理概要図&構築手順書1124
処理概要図&構築手順書1124処理概要図&構築手順書1124
処理概要図&構築手順書1124
 
普及版8チャンネルLoRaWAN Pico Staion LPS8ユーザーマニュアル
普及版8チャンネルLoRaWAN Pico Staion LPS8ユーザーマニュアル普及版8チャンネルLoRaWAN Pico Staion LPS8ユーザーマニュアル
普及版8チャンネルLoRaWAN Pico Staion LPS8ユーザーマニュアル
 
MRU : Monobit Reliable UDP ~5G世代のモバイルゲームに最適な通信プロトコルを目指して~
MRU : Monobit Reliable UDP ~5G世代のモバイルゲームに最適な通信プロトコルを目指して~MRU : Monobit Reliable UDP ~5G世代のモバイルゲームに最適な通信プロトコルを目指して~
MRU : Monobit Reliable UDP ~5G世代のモバイルゲームに最適な通信プロトコルを目指して~
 
モーターを低速で定速で動かしてみる
モーターを低速で定速で動かしてみるモーターを低速で定速で動かしてみる
モーターを低速で定速で動かしてみる
 
osoljp 2011.08
osoljp 2011.08osoljp 2011.08
osoljp 2011.08
 
Pandora FMS
Pandora FMSPandora FMS
Pandora FMS
 
Lagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそばLagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそば
 
Pandora FMS
Pandora FMSPandora FMS
Pandora FMS
 
MySQL Clusterを運用して10ヶ月間
MySQL Clusterを運用して10ヶ月間MySQL Clusterを運用して10ヶ月間
MySQL Clusterを運用して10ヶ月間
 
Rubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつりRubyで創るOpenFlowネットワーク - LLまつり
Rubyで創るOpenFlowネットワーク - LLまつり
 
Wiresharkで検出できないチャットプログラム
Wiresharkで検出できないチャットプログラムWiresharkで検出できないチャットプログラム
Wiresharkで検出できないチャットプログラム
 
FD.io VPP事始め
FD.io VPP事始めFD.io VPP事始め
FD.io VPP事始め
 

Último

モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 

Último (8)

モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 

The Overall Architecture of ROMA

  • 1. ROMA R akuten O n- M emory A rchitecture 楽天株式会社 楽天技術研究所 西澤無我| 2009年2月20日
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.

Notas del editor

  1. ROMA は P2P で自律的に複数のノードを管理。さらに、環状にノードを並べて管理している。 各ノードはユニークなハッシュ値をもつ
  2. ROMA ではデータの探索をクライアントが行う。 クライアントが ROMA に初めてアクセスした際、 ROMA から環情報を取得する。 この環の情報を利用して、 key の担当ノードを探索する。 このようなことができるのは、 ROMA を構成するノード数が、高々 1,000 台程度だからです。
  3. ROMA ではデータの探索をクライアントが行う。 クライアントが ROMA に初めてアクセスした際、 ROMA から環情報を取得する。 この環の情報を利用して、 key の担当ノードを探索する。 このようなことができるのは、 ROMA を構成するノード数が、高々 1,000 台程度だからです。
  4. その ROMA のハッシュテーブル(というか key-value store) 上のデータへアクセスする API を提供している。 アプリケーション開発者はこの ROMA クライアント API を利用することで、分散を意識せずに済む。 ROMA へデータを格納すると、実際には複数マシンのメモリ上にデータが格納される。
  5. ROMA ではデータが格納されるノードの両隣のノードにそのデータの複製が格納される。 この左右のノードはハッシュ値こそ近いが、物理的には近い場所というわけではない。 現時点ではそこまで考慮した実装ではないが、 DC にまたがっていることも考えられる。
  6. 同じデータの複製がある中で、基本的に単一のノードのみが、そのデータの PUT/GET を引き受ける
  7. 先ほどの例では、マスターのダウンをクライアントのアクセスがある前に ROMA が気づけた場合の規則 しかし、運悪く ROMA がノードのダウンに気づく前に、クライアントがそのノードにアクセスしてくる場合がある そのような場合は、ROMA はとりあえずダーティフラグ付きのデータをクライアントに返す