50
Ruby based Distributed Key Value Store 'ROMA' Vol.01 June/04/2015 Hiroaki Iwase Rakuten, Inc. http://roma-kvs.org RedDotRuby Conference 2015

RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

Embed Size (px)

Citation preview

Page 1: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

Ruby based Distributed Key Value Store

'ROMA'

Vol.01 June/04/2015

Hiroaki Iwase

Rakuten, Inc.

http://roma-kvs.org

RedDotRuby Conference 2015

Page 2: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

2

Hiroaki Iwase hiroaki-iwase

H1R0AK1_1WA5E

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

Page 3: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

Rakuten,Inc.

Founded: February 7, 1997

IPO: April 19, 2000 (JASDAQ Stock Exchange)

Office: Rakuten Tower (Tokyo, Japan)

Employees: 11,723 (as of Dec. 31, 2014)

Market Cap: JPY ¥111,601 Million (as of Dec. 31, 2014)

Page 4: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

Global Business

Page 5: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

Global Expansion

Page 6: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

Singapore Business

Page 7: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

SEA (South East Asia)

E-Commerce

eBook

Travel

Other services & businesses

Rakuten Institute of Technology

Development center

Head Office / Regional Headquarters

Page 8: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

In Singapore

In Singapore

• Regional Headquarter

• Development team for Global

Page 9: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

9

Agenda

1. ROMA

2. Gladiator

3. How to use & Others

Page 10: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

10

1. ROMA

Page 11: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

11

Page 12: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

12

Page 13: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

13

ROMA

Page 14: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

14

What’s about ROMA?

Page 15: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

15

What’s about ROMA?

ROMA

-Rakuten/Ruby On-Memory Architecture- Ruby based Distributed Key Value Store(NOSQL).

ROMA project HP • http://roma-kvs.org

Github https://github.com/roma

Twitter @ROMA_kvs

Page 16: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

16

What’s about ROMA?

ROMA(Rakuten On-Memory Architecture) Developed by RIT(Rakuten Institute Technology)

with Matz.

- 2007 ROMA start Development

- 2009 Release as a OSS product

20

services

Page 17: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

17

What’s about ROMA?

Specialty of ROMA • Pure P2P architecture

• Consistent Hashing and Virtual Nodes

• Data replication

• Auto recovering system

• Plug-in Architecture

• Memcached compatible protocol

Page 18: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

18

What’s about ROMA?

Specialty of ROMA • Pure P2P architecture

• Consistent Hashing and Virtual Nodes

• Data replication

• Auto recovering system

• Plug-in Architecture

• Memcached compatible protocol

High Scalability

Page 19: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

19

What’s about ROMA?

Specialty of ROMA • Pure P2P architecture

• Consistent Hashing and Virtual Nodes

• Data replication

• Auto recovering system

• Plug-in Architecture

• Memcached compatible protocol

Page 20: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

20

What’s about ROMA?

Specialty of ROMA • Pure P2P architecture

• Consistent Hashing and Virtual Nodes

• Data replication

• Auto recovering system

• Plug-in Architecture

• Memcached compatible protocol

High Fault-Tolerance

Page 21: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

21

What’s about ROMA?

Specialty of ROMA • Pure P2P architecture

• Consistent Hashing and Virtual Nodes

• Data replication

• Auto recovering system

• Plug-in Architecture

• Memcached compatible protocol

Page 22: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

22

Storage

+

Page 23: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

23

Storage

+ You can choice storage type

depending on situation.

Page 24: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

24

2. Gladiator

Page 25: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

25

ROMA

Gladiator is a GUI tool of ROMA

Gladiator

Management

Control

Page 26: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

26

What can Gladiator do?

Page 27: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

27

Cluster Control

Page 28: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

28

Without

Stopping

ROMA!

Status setting

Page 29: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

29

Log

Page 30: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

30

Connection Analysis

Page 31: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

31

In case of only CUI management….

Page 32: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

32

But…

in case of Gladiator

Page 33: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

33

more easily!

more intuitively!!

Page 34: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

34

3. How to use?

Page 35: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

35

https://github.com/roma

Page 36: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

36

https://github.com/roma

Page 37: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

37

https://github.com/roma

Page 38: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

38

https://github.com/roma

Page 39: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

39

https://github.com/roma

Page 40: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

40

Give us your question, feedback, request, etc….

Page 41: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

41

FAQ

Page 42: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

42

Bench mark

Page 43: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

43

Bench mark

Page 44: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

44

Bench mark

Page 45: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

45

Bench mark

Page 46: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

46

http://roma-kvs.org

Page 47: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

47

http://roma-kvs.org

Page 48: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

48

OSS

Page 49: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

49

OSS

YOU!!

Page 50: RedDotRuby 2015 -Ruby based Distributed Key Value Store 'ROMA'-

50

Thanks for your listening.

Terima kasih kerana mendengar anda.

http://roma-kvs.org/