SlideShare a Scribd company logo
"The Effort of Rakuten for A Distributed Key-
Value Store "ROMA" in Ruby.
- GUI change Key-Value Store“ -
Vol.01 Nov/13/2014
Hiroaki Iwase, Bando rui
Global Operations Department, Rakuten Inc.
http://roma-kvs.org
Ruby World Conference 2014
2
Agenda	
1. What’s about Rakuten?	
2. Rakuten’s development style	
3. ROMA	
4. Gladiator
3
Rui Bando
Engineer &
Scrum Master
Twitter : @banrui
Career
2011.3 Graduate from Waseda Univ.
M.A Program in Journalism
2011.4 Rakuten, Inc.
2011.8 New Service Development
2014.1 Global Operations Department
(Current Team)
Self introduction
4
1. What’s about Rakuten?
Rakuten,Inc.	
Founded: 	
   	
  February	
  7,	
  1997	
  
IPO: 	
   	
  April	
  19,	
  2000	
  (JASDAQ	
  Stock	
  Exchange)	
  
Office: 	
   	
  Rakuten	
  Tower	
  (Tokyo,	
  Japan)	
  
Employees:	
   	
  10,867	
  (as	
  of	
  Dec.	
  2013)	
  	
  
Market	
  Cap:	
   	
  JPY	
  2,332	
  Billion	
  (as	
  of	
  Jan	
  17,	
  2014)	
  
6
Rakuten Group
Internet Services
(1997)
(2003)
(2006)
(2007)
(2010)
in USA
EC in
France
(2009)
(2004)
(2008)
(2008)
(2011)
EC in
UK
EC
inAustria
In Indonesia
in Brazil
(2005)
(2009)
EC
In Thailand
(2010)
Internet Finance
(2001)(2000) (2005)
In Germany
(2012)
EC in
Malaysia
(2013)
(2013)
In Spain
EC
In Singapore
EC
In Japan
Online Books,
DVD Store
Online Hotel
Reservation
Pay-per-view
Video Service
Portal Site
Performance
Marketing
In USA
Internet
Research
Internet
Auction
EC
in Taiwan
Global eBook
Global Video
streaming Global Video
Streaming
Global Social
Messaging App
Online Security
Brokerage
Credit Card E-moneyInternet
Banking
Rakuten Life
Insurance
IP Telephony
Professional
Baseball
Marriage
Consultant
1997 2014
(2014)
Credit Card Payment
By Smartphone
(2012)
Point Service
(2013)
Phone Service
Online Golf
Reservation
Others
Energy Service
Real Café Service
Curation Service
Over 40 different services
Japan	
  Business	
  
About	
  Rakuten	
  Ichiba	
  in	
  Japan	
http://global.rakuten.com/corp/about/strength/data.html
About	
  Rakuten	
  Ichiba	
  in	
  Japan	
http://global.rakuten.com/corp/about/strength/data.html
About	
  Rakuten	
  Ichiba	
  in	
  Japan
Global	
  Business	
  
Rapidly Expanding Worldwide from 2010
English-nization/
Globalization.
Global	
  Expansion
Expanding	
  Business	
  Por>olio	
Taiwan
1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014
Global	
  Expansion	
  
E-Commerce
eBook
Travel
Other services & businesses
Rakuten Institute of Technology  
Development center
Head Office / Regional Headquarters 
Head Office
•  E-commerce in 14 countries and regions
•  All services and businesses in 28 countries
15
2. Rakuten’s development style
16
I do not know…
17
We have many services and teams !!
Our	
  Development	
  Environment	
  
✔️ Global
✔️ Service
✔️ Employee(DEV)
✔️ Repositories
28 countries
Over 40 services
Over 1300 members
Over 9500 repos
19
About our team…
20
Our Team
Scrum Master
Engineer
In Paris
Product Owner
Product Owner
21
But… We are Engineer !!
22
We are Ruby Engineer !!
23
Our work style
✔️ Agile
✔️ Sprint
✔️ Daily
✔️ Retrospective
✔️ Sharing Knowledge
24
About sprint
2 week sprint
25
Our new target board
26
Planning Poker
27
Task stauts sharing
•  What I did yesterday
•  Facing problems
•  What I will do today
Daily Scrum (everyday)
28
Retrospective Time
29
Why?	
Scrum MasterEngineer Product Owner
No consensus L	
Build consensus J
30
✔️Our Task Flow
31
Overview	
White
Board	
related	
sync	
include	
link	
link	
Daily scrum	
issues
32
Synchronized
Synchronized
33
Keep working logs on issues
Keep working logs
34
New Issue…
35
No Rule
Scrum Master EngineerIn Paris Product Owner
Create Issue freely
36
We have many interesting things!!
37
New Issue…
Scrum Master
Engineer
Product Owner
New Tickets
38
Start Sprint
39
Result
40
Any Idea how this happened??
41
New Issue…
Scrum Master
Engineer
Product Owner
Notification
42
New Rule!!
New Board
43
New Rule!!
Back logsFree Tasks
44
Our Target !?
✔️ Expand ROMA & LeoFS
✔️ Rapidly & efficiently support for users
45
Target Tasks	
35 35 36 36
38 39 40 41 42 43
45 45
48 47
50 51
48
50
0
10
20
30
40
50
60
Sprint
1
Sprint
2
Sprint
3
Sprint
4
Sprint
5
Sprint
6
Sprint
7
Sprint
8
Sprint
9
Sprint
11
Sprint
12
Sprint
13
Sprint
14
Sprint
15
Sprint
16
Sprint
17
Sprint
18
Sprint
19
Target Tasks
✔️ Increase sprint target efficiently
46
But…
47
High Dependence
Pull Request
Pull Request
Pull RequestPull Request
48
To realize dream and common goal !!
49
Automation!	
Push
Test
Deploy
Notifiy
50
Visualization!
51
Result!!
Pull Request
Pull Request
Pull Request
New Issue
New Issue
New Tech
52
Target Tasks	
35 35 36 36
38 39 40 41 42 43
45 45
48 47
50 51
48
50
0
10
20
30
40
50
60
Sprint
1
Sprint
2
Sprint
3
Sprint
4
Sprint
5
Sprint
6
Sprint
7
Sprint
8
Sprint
9
Sprint
11
Sprint
12
Sprint
13
Sprint
14
Sprint
15
Sprint
16
Sprint
17
Sprint
18
Sprint
19
Target Tasks
✔️ Increase sprint target efficiently
53
Discover Rakuten !!	
Overseas Conference
Pics of study session	
Study Sessions
(Tech Talk)
54
Discover other team
Daily scrum
Kanban
55
Discover overseas scrum and know-how
56
Discover Rakuten !!
✔️ Many teams
✔️ Many services
✔️ Tech talks
✔️ Conference
✔️ Know-how
We have…
57
Pursue our ideal environment !!
58
3. ROMA
59
Hiroaki Iwase(岩瀬 裕章)
Career
2011.3 Graduated from Tohoku University
2011.4 Join Rakuten, Inc.
2012.5 Join OSS team.
Skill
Ruby
Ruby on Rails
PHP, Ad platform, etc…
Self introduction
60
What’s about ROMA?
61
What’s about ROMA?	
n  ROMA(Rakuten On-Memory Architecture)
Ø  Ruby based Distributed Key Value Store(NOSQL).
ROMA project HP
•  http://roma-kvs.org
Github
•  https://github.com/roma
62
What’s about ROMA?	
n  ROMA(Rakuten On-Memory Architecture)
Ø  Developed by RIT(楽天技術研究所) with Matz.
 - 2007年 ROMA start Development
 - 2009年 Release as a OSS product
20
services
63
What’s about ROMA?	
n  Specialty of ROMA
•  Pure P2P architecture
•  Consistent Hashing and Virtual Nodes
•  Data replication
•  Auto recovering system
•  Plug-in Architecture
•  Memcached compatible protocol
64
4. Gladiator
65
ROMA	
Gladiator is a GUI tool of ROMA
Gladiator	
Management
Control
66
Why need GUI tool?
67
ROMA project	
Development Expand
Support
68
ROMA project	
Development
50%	
Expand
25%	
Support
25%	
Ideal
69
ROMA project	
Development
40%	
 Expand
25%	
Support
35%	
Inquiry	
Actuality
70
ROMA project	
Development
35%	
Expand
20%	
Support
45%	
Inquiry	
Actuality	
Inquiry
71
ROMA project	
Development
30%	
Expand
15%	
Support
55%	
Inquiry	
Actuality	
Inquiry	
Inquiry
72
ROMA project	
Development
10%	
Expand
5%	
Inquiry	
Actuality	
Inquiry	
Inquiry	
Inquiry	
Support
85%	
Inquiry	
 Inquiry	
Inquiry	
Inquiry	
Inquiry	
 Inquiry
73
Example1	
A「なんかROMAの調子悪くって。。」
岩「おっと、ERRORログとか出てますか?これ試してもらえますか?」
A「なんかROMAの調子悪くって。。」
岩「なおりませんか・・・次はここ確認して、これ試してもらえませんか?」
A「なんかROMAの調子悪くって。。」
岩「すいません。ここ確認してこうならあれしてもらえませんか?」
A「なんかROMAの調子悪くって。。」
岩「お手数おかけしてすいません。。上のどの方法でも少しも改善しないと
なると、ちょっとそちらに伺って調査した方がいいかもしれませんね。」
A「あっ。まだどれもやってないですよ^^」
岩「・・・・」
A「なんかROMAの調子が(ry」
74
Example2	
ERROR ログ?多分出てます。多分ね。うん見てないですけどね。
データ?後で送ります。(送らない)
ログ?後で送ります。(送らない)
ROMAが反応してないんですけど!(怒)・・・えっ?サーバが落ちてる?
ターミナルには極力入りたくないんですよねー。
いまこっちプログラマいないんですよねー。
いま担当者いないです。とりあえず何したらいいですか?
「これあれですよね?こういうことですよね?そうですよね?よしじゃあもうやっちゃいますね!」
サーバは落ちてるけど、ROMAは動いている
んです(!!?)
Version upはしません。そう決めました。EOSL?なんですかそれ?
なんかサービスの調子悪いんですけど!なんも調査してないけどとりあえずROMAなんとかして下さい!
この問題いつ解決するんですか!!・・・えっ解決してる?そんな情報引き継いでませんよ!
「この前のお問い合わせの件なんですが」「なんの話でしたっけ?」
とりあえずこのオプションつけとけばいいんですよね?えっ違う?
はぁ!?この構成意味わからないんですけど!!
5回くらい聞いたかもしれませんけど、これなんでしたっけ?
そんなリソースないです。
ちょっと調べたら原因ROMAじゃないっぽいのでもう大丈夫です。	
・・・ bash? ・・・ export?
75
tough…
76
Many costs…	
?
Operation
cost
(運用)	
benefit
Learning
cost
(学習)	
Installation
cost
(導入)
77
Operation	
benefit
Gladiator reduce these costs!!	
!
78
What can Gladiator do?
79
1. Cluster control
80
81
Cluster Status Panel
82
Instance Status Table
83
You can change cluster architecture.
84
In case of Cluster Error….
85
In case of only CUI management….
86
bothered...
87
But in case of Gladiator ・・・!
88
89
Redundancy down
was happen!
90
Redundancy down
was happen!	
But you can solve
by “Recover” button
91
Recover process repair
the redundancy
problem.
92
Can management by non-engineers!
93
Can management
more easily, more intuitively!!
94
2. Status/Configuration Setting
95
You can check ROMA’s configuration parameters.
96
If you want, you can change parameters directly.	
Without
Stopping
ROMA!
97
3. Routing information
98
99
4. Log
100
You can check logs of each instances.
101
LOG LEVEL filter	
Can sort and filtering.
102
Can sort and filtering.	
LOG contents filter
103
5. Data management
104
105
Get Value parameter
106
Set Data(key/value)
107
SnapShot function
108
Demo	
Try to use Gladiator!!
109
Events by Global Human Resources Department	
For Students For Engineers
“Hiring Party” at Rakuten Café
Next events:
November 28th at 19:00- Big Data
December 18th at 19:00- OPS…...
If you are interested in our events, please talk to me (Bando) or send an
inquiry to recruit-tech@mail.rakuten.com
Hackathon
Rakuten Tower Tour
Recruiting events etc.
Next events:
Will be updated on engineer recruiting
home page and facebook
110
Thanks for your listening.
ご静聴ありがとうございました。	
http://roma-kvs.org/

More Related Content

PPTX
[Rakuten TechConf2014] [Sendai] Little look inside Global Ichiba: Ichiba Busi...
PDF
Ruby conf Taiwan -Ruby based Distributed Key Value Store "ROMA"-
PDF
RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-
PDF
OSGi for outsiders - Milen Dyankov
PDF
Of Microservices and Microservices - Robert Munteanu
PDF
Discover Qt Learning and Certification
PPTX
Remote agile testing webinar slides.
PDF
Monitoring Drupal In an Infrastructure as Code Age
[Rakuten TechConf2014] [Sendai] Little look inside Global Ichiba: Ichiba Busi...
Ruby conf Taiwan -Ruby based Distributed Key Value Store "ROMA"-
RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-
OSGi for outsiders - Milen Dyankov
Of Microservices and Microservices - Robert Munteanu
Discover Qt Learning and Certification
Remote agile testing webinar slides.
Monitoring Drupal In an Infrastructure as Code Age

What's hot (14)

PPTX
Patterns of agility, how to recognize and agile project when you see one
PDF
How spotify makes product
PDF
apidays LIVE Paris 2021 - Localizing OpenAPI Specification by Olga Baybakova,...
PPTX
[PGCONF.EU 2017 Keynote] Database Horror Stories, Bad Code, and How Not to be...
PDF
Your localization partner in asia
PDF
Monitoring in an Infrastructure as Code Age
PDF
Dev "Programming" Ops For DevOps Success
PDF
Localization proposal honyaku center
ODP
Adopting Devops , Stories from the trenches
PDF
Tutti i miei sbagli
ODP
On the Importance of Infrastructure as Code
PDF
A Startup Journey: Ad-hoc to Agile to Kanban
PDF
AgileDC 2015 - Agile portfolio metrics roadtrip slides
Patterns of agility, how to recognize and agile project when you see one
How spotify makes product
apidays LIVE Paris 2021 - Localizing OpenAPI Specification by Olga Baybakova,...
[PGCONF.EU 2017 Keynote] Database Horror Stories, Bad Code, and How Not to be...
Your localization partner in asia
Monitoring in an Infrastructure as Code Age
Dev "Programming" Ops For DevOps Success
Localization proposal honyaku center
Adopting Devops , Stories from the trenches
Tutti i miei sbagli
On the Importance of Infrastructure as Code
A Startup Journey: Ad-hoc to Agile to Kanban
AgileDC 2015 - Agile portfolio metrics roadtrip slides
Ad

Similar to The Effort of Rakuten for A Distributed Key- Value Store "ROMA" in Ruby. GUI change Key-Value Store (20)

PPT
ROMA -- An Customizable-NoSQL Database in Ruby at NoSQL Afternoon in Japan
PDF
ROMA User-Customizable NoSQL Database in Ruby
PPTX
[Rakuten TechConf2014] [E-6] Rakuten Ichiba Globalization - Challenges and So...
PDF
Rakuten Ichiba_Rakuten Technology Conference 2016
PDF
Prototype And Test Eh
PDF
Prototype And Test Eh5
PPTX
[Rakuten TechConf2014] [A-4] Rakuten Ichiba
PPTX
PDF
PDF CEE 2019 - Alexey Sidorenko - How to Stop Launching Poor Projects (and Lo...
PPT
Rails Rookies Bootcamp - Blogger
PDF
Scaling Up Lookout
PPTX
A Personal Journey
PPTX
From Ant to Rake
PDF
Ruby in office time reboot
PDF
RESTful Rails Development Building Open Applications and Services 1st Edition...
PDF
Building a globalized, customer facing e-commerce product, powered by micro-s...
PDF
Welcome To Ruby On Rails
PDF
Beyond your daily coding - The Conf Brazil 2017 Keynote
PPT
Advanced topics in Agile: Implementing Scrum in a project-based company
PDF
Agile Web Development With Rails 4th Edition 4th Edition Sam Ruby
ROMA -- An Customizable-NoSQL Database in Ruby at NoSQL Afternoon in Japan
ROMA User-Customizable NoSQL Database in Ruby
[Rakuten TechConf2014] [E-6] Rakuten Ichiba Globalization - Challenges and So...
Rakuten Ichiba_Rakuten Technology Conference 2016
Prototype And Test Eh
Prototype And Test Eh5
[Rakuten TechConf2014] [A-4] Rakuten Ichiba
PDF CEE 2019 - Alexey Sidorenko - How to Stop Launching Poor Projects (and Lo...
Rails Rookies Bootcamp - Blogger
Scaling Up Lookout
A Personal Journey
From Ant to Rake
Ruby in office time reboot
RESTful Rails Development Building Open Applications and Services 1st Edition...
Building a globalized, customer facing e-commerce product, powered by micro-s...
Welcome To Ruby On Rails
Beyond your daily coding - The Conf Brazil 2017 Keynote
Advanced topics in Agile: Implementing Scrum in a project-based company
Agile Web Development With Rails 4th Edition 4th Edition Sam Ruby
Ad

More from Rakuten Group, Inc. (20)

PDF
EPSS (Exploit Prediction Scoring System)モニタリングツールの開発
PPTX
コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話
PDF
楽天における安全な秘匿情報管理への道のり
PDF
What Makes Software Green?
PDF
Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...
PDF
DataSkillCultureを浸透させる楽天の取り組み
PDF
大規模なリアルタイム監視の導入と展開
PDF
楽天における大規模データベースの運用
PDF
楽天サービスを支えるネットワークインフラストラクチャー
PDF
楽天の規模とクラウドプラットフォーム統括部の役割
PDF
Rakuten Services and Infrastructure Team.pdf
PDF
The Data Platform Administration Handling the 100 PB.pdf
PDF
Supporting Internal Customers as Technical Account Managers.pdf
PDF
Making Cloud Native CI_CD Services.pdf
PDF
How We Defined Our Own Cloud.pdf
PDF
Travel & Leisure Platform Department's tech info
PDF
Travel & Leisure Platform Department's tech info
PDF
OWASPTop10_Introduction
PDF
Introduction of GORA API Group technology
PDF
100PBを越えるデータプラットフォームの実情
EPSS (Exploit Prediction Scoring System)モニタリングツールの開発
コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話
楽天における安全な秘匿情報管理への道のり
What Makes Software Green?
Simple and Effective Knowledge-Driven Query Expansion for QA-Based Product At...
DataSkillCultureを浸透させる楽天の取り組み
大規模なリアルタイム監視の導入と展開
楽天における大規模データベースの運用
楽天サービスを支えるネットワークインフラストラクチャー
楽天の規模とクラウドプラットフォーム統括部の役割
Rakuten Services and Infrastructure Team.pdf
The Data Platform Administration Handling the 100 PB.pdf
Supporting Internal Customers as Technical Account Managers.pdf
Making Cloud Native CI_CD Services.pdf
How We Defined Our Own Cloud.pdf
Travel & Leisure Platform Department's tech info
Travel & Leisure Platform Department's tech info
OWASPTop10_Introduction
Introduction of GORA API Group technology
100PBを越えるデータプラットフォームの実情

Recently uploaded (20)

PPTX
Introduction to Artificial Intelligence
PDF
top salesforce developer skills in 2025.pdf
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PPTX
ai tools demonstartion for schools and inter college
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PDF
Nekopoi APK 2025 free lastest update
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
System and Network Administraation Chapter 3
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Introduction to Artificial Intelligence
top salesforce developer skills in 2025.pdf
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Design an Analysis of Algorithms II-SECS-1021-03
Internet Downloader Manager (IDM) Crack 6.42 Build 41
ai tools demonstartion for schools and inter college
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
Nekopoi APK 2025 free lastest update
Operating system designcfffgfgggggggvggggggggg
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Navsoft: AI-Powered Business Solutions & Custom Software Development
wealthsignaloriginal-com-DS-text-... (1).pdf
Design an Analysis of Algorithms I-SECS-1021-03
Which alternative to Crystal Reports is best for small or large businesses.pdf
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
System and Network Administraation Chapter 3
VVF-Customer-Presentation2025-Ver1.9.pptx
2025 Textile ERP Trends: SAP, Odoo & Oracle
Adobe Illustrator 28.6 Crack My Vision of Vector Design

The Effort of Rakuten for A Distributed Key- Value Store "ROMA" in Ruby. GUI change Key-Value Store