SlideShare uma empresa Scribd logo
1 de 34
Baixar para ler offline
The Lion of Storage Systems

Open the New Door

Yosuke Hara

Oct 26, 2013 (rev 2.2)
1
LeoFS is "Unstructured Big Data Storage for the Web"
and a highly available, distributed, eventually consistent
storage system.
Organizations can use LeoFS to store lots of data
efficently, safely and inexpensively.

Started OSS-project on July 4, 2012
www.leofs.org

2
Motivation

3
Motivation
As of 2010
Get Away From Using
"Expensive H/W Based Storages"

?

Expensive Storage Problems:
1. High Costs (Initial Costs, Running Costs)
2. Possibility of "SPOF"
3. NOT Easily Scale
Storage Expansion is difficult during
periods of increasing data

4
The Lion of Storage Systems

HIGH Availability
LeoFS Non Stop

3 Vs in 3 HIGHs
Velocity: Low Latency
Minimum Resources

HIGH Cost
Performance Ratio

Volume: Petabyte / Exabyte
Variety: Photo, Movie, Unstructured-data

HIGH
Scalability

REST-API / AWS S3-API

5
Overview

6
LeoFS Overview
Request from
Web Applications/ Browsers
w/REST-API / S3-API

No Master
No SPOF

Load Balancer

LeoFS-Manager
REST over HTTP
(80/443)

RPC
(4369)

LeoFS-Gateway

(4000,4010,4020)

Monitor

LeoFS-Storage

RPC

(4369)

(10020, 10021)

Storage Engine/Router

metadata

Object Store

Storage Engine/Router

metadata

Object Store

Storage Engine/Router

metadata

GUI Console

Object Store

7
Gateway

8
LeoFS Overview - Gateway
Handle HTTP Request and Response
Built in "Object Cache Mechanism"
Clients

Choosing Replica Target Node(s)
KEY = “bucket/leofs.key”
Hash = md5(Filename)

REST-API / S3-API
Stateless Proxy + Object Cache

Gateway(s)

[ Memory Cache, Disc Cache ]

RING
2 ^ 128 (MD5)
# of replicas = 3

Use Consistent Hashing
for decision of a primary node

Primary Node

Secondary-1

Secondary-2

Storage Cluster

Storage Cluster

9
Storage

10
LeoFS Overview - Storage
Automatically Replicate
an Object and a Metadata to Remote Node(s)
Gateway

Choosing Replica Target Node(s)
KEY = “bucket/leofs.key”
Hash = md5(Filename)

RING
2 ^ 128 (MD5)
# of replicas = 3

Primary Node

Secondary-1

Storage (Storage Cluster)

Secondary-2

Use "Consistent Hashing"
for Replication
in the Storage Cluster

"P2P"

11
LeoFS Overview - Storage
Storage Engine consits of "Object Storage" and "Metadata Storage"
Built in "Replicator", "Recoverer" w/Queue for the Eventual Consistency
Gateway

Request From Gateway

Storage Engine, Metadata + Object Container

LeoFS Storage
Storage Engine Workers

...

Replicator
Repairer w/Queue
...

Metadata : Keeps an in-memory index of all data
Object Container : Manages "Log Structured File"

12
LeoFS Storage Engine - Retrieve an object from the storage
Storage Engine Worker

< META DATA
< META DATA > >
ID
Id
Filename
Filename
Offset, Size
Offset
Checksum (MD5)
Size
Version#
Checksum

Header
File
Footer

Object Container

Metadata Storage
Storage Engine Worker

13
LeoFS Storage Engine - Retrieve an object from the storage
Storage Engine Worker
Insert a metadata

Append an object
into the object container

< META DATA
< META DATA > >
ID
Id
Filename
Filename
Offset, Size
Offset
Checksum (MD5)
Size
Version#
Checksum

Header
File
Footer

Object Container

Metadata Storage
Storage Engine Worker

14
LeoFS Storage Engine - Remove unnecessary objects from the storage
Storage Engine Worker

Compact

Old Object Container/Metadata

New Object Container/Metadata

Storage Engine Worker

15
LeoFS Overview - Storage - Data Structure/Relationship an object
for Retrieve an File (Object)
for Sync

<Metadata>
{VNodeId, Key}

KeySize

Custom
Meta Size

File Size

Offset

Version

Timestamp

Checksum

<Needle>
Checksum

KeySize

User-Meta
Size

DataSize

Offset

Version

Header (Metadata - Fixed length)

Timestamp

{VNodeId,
Key}

User-Meta

Actual
File

Body (Variable Length)

Footer

Footer (8B)

Needle-5

Needle-4

Needle-3

Needle-2

Needle-1

Super-block

<Object Container>

16
LeoFS Overview - Storage - Large Object Support
To Equalize Disk Usage of Every Storage Node
To Realize High I/O efficiency and High Availability
[ WRITE Operation ]

chunk-0

Every chunked object and
metadata are replicated
in the cluster

chunk-1
chunk-2
chunk-3
Chunked Objects

Original Object Name
Original Object Size
# of Chunks
An Original Object’s Metadata

Client(s)

Gateway

Storage Cluster

17
Manager

18
LeoFS Overview - Manager
Operate LeoFS - Gateway and Storage Cluster
"RING Monitor" and "NodeState Monitor"

Gateway(s)

Gateway(s)

Manager(s)

Monitor
RING, Node State
Storage Cluster

Operate

Storage Cluster

status, suspend,
resume, detach,
whereis, ...

19
New Features

20
"Insight"

21
New Features - LeoInsight (v1.0)
Give Insight into the State of LeoFS
1. To control requests from Clients to LeoFS
2. To check and see "Traffic info" and "State of Every Node"
for Keeping Availability

22
New Features - LeoInsight (v1.0)

The Lion of Storage Systems

Storage Cluster

Operate LeoFS

Manager

Gateway

Pr

Tr
a

ffi
c

-In
fo

fro

ov
e

s

No
tif
of
a

y

No
de

fro

m

G
at
ew

Notifier
ay

/S
to
r

ag

m

G
at
ew

ay

e/
M

an

Re
ag

er

tri
e

ve

A
TES
R

I(
P

J

N)
SO

Consume MSG
Persistent calculated
statistics-data

Distributed Queue (ElkDB)

TimeSeriesDB (Savannah)

23
More Scalability
&
More Availability

24
New Features - Multi Data Center Data Replication (v1.0)

HIGH-Scalability
HIGH-Availability

+

Easy Operation for Admins

Europe
Tokyo
US

Singapore

NO SPOF
NO Performance Degration

25
v1.0 - Multi Data Center Data Replication
[ 3 Regions & 5 Replicas ]

DC-1 Configuration:
- Method of Replication:
- Consistency Level:

Client

Application(s)
Request to
the Target Region

- local-quorum:[N=3, W=2, R=1, D=2]
- # of target DC(s):2

Method of MDC-Replication:
Async: Bulked Transfer

Sync+Tran: Consensus Algorithm

- # of replicas a DC:1
>> Total of Replicas: 5

Storage cluster

[replicas:3]

[replicas:1]

[replicas:1]

DC-1

DC-2

DC-3

Manager cluster

Monitor and Replicate each “RING” and “System Configuration”
"Leo Storage Platform"

26
v1.0 - Multi Data Center Data Replication
[ 3 Regions & 5 Replicas ]

DC-1 Configuration:
- Method of Replication:
- Consistency Level:

Client

Application(s)
Request to
the Target Region

- local-quorum:[N=3, W=2, R=1, D=2]
- # of target DC(s):2

Method of MDC-Replication:
Async: Bulked Transfer

Sync+Tran: Consensus Algorithm

- # of replicas a DC:1
>> Total of Replicas: 5

1) 3 replicas are written in "Local Region"
Storage cluster

[replicas:3]

[replicas:1]

[replicas:1]

DC-1

DC-2

DC-3

Manager cluster

Monitor and Replicate each “RING” and “System Configuration”
"Leo Storage Platform"

27
v1.0 - Multi Data Center Data Replication
[ 3 Regions & 5 Replicas ]

DC1.node_0 DC1.node_1
DC1.node_2
DC2.node_3
DC3.node_4

Client

Application(s)
Request to
the Target Region

Leader

Primary
Local-follower
Remote-follower

Follower

2) Sync (or Async) Rplicaion to Other Region(s)

Storage cluster

[replicas:3]

[replicas:1]

[replicas:1]

DC-1

DC-2

DC-3

Manager cluster

Monitor and Replicate each “RING” and “System Configuration”
"Leo Storage Platform"

28
v1.0 - Multi Data Center Data Replication
[ 3 Regions & 5 Replicas ]

Remote-1

Remote-2

Tokyo

Singapore

US

Singapore

Client

Local Region

Tokyo

Europe

Europe

US

Singapore

US

Europe

Tokyo

Application(s)
Request to
the Target Region

3) Replication for Geographical Optimization

Storage cluster

[replicas:3]

[replicas:1]

[replicas:1]

DC-1

DC-2

DC-3

DC-4

Tokyo

Singapore

US

Europe

Manager cluster

Monitor and Replicate each “RING” and “System Configuration”
"Leo Storage Platform"

29
"Center"

30
New Features - LeoCenter
Web-based administrative console for inspecting and manipulating
LeoFS Storage Clusters and LeoFS Gateway
Admin Tools
Access Log Analysis

Operate LeoFS

31
Access Log Analysis (β)

32
The Lion of Storage Systems

HIGH Availability
LeoFS Non Stop

3 Vs in 3 HIGHs
Velocity: Low Latency
Minimum Resources

HIGH Cost
Performance Ratio

Volume: Petabyte / Exabyte
Variety: Photo, Movie, Unstructured-data

HIGH
Scalability

REST-API / AWS S3-API

33
Set Sail for “Cloud Storage”
Website: www.leofs.org
Twitter: @LeoFastStorage
Facebook: www.facebook.com/org.leofs
34

Mais conteúdo relacionado

Mais procurados

Oracle Database Overview
Oracle Database OverviewOracle Database Overview
Oracle Database Overview
honglee71
 
Oracle Basics and Architecture
Oracle Basics and ArchitectureOracle Basics and Architecture
Oracle Basics and Architecture
Sidney Chen
 
Exploring Oracle Database 12c Multitenant best practices for your Cloud
Exploring Oracle Database 12c Multitenant best practices for your CloudExploring Oracle Database 12c Multitenant best practices for your Cloud
Exploring Oracle Database 12c Multitenant best practices for your Cloud
dyahalom
 
Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...
Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...
Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...
Simplilearn
 
Understand oracle real application cluster
Understand oracle real application clusterUnderstand oracle real application cluster
Understand oracle real application cluster
Satishbabu Gunukula
 

Mais procurados (20)

Supporting Apache HBase : Troubleshooting and Supportability Improvements
Supporting Apache HBase : Troubleshooting and Supportability ImprovementsSupporting Apache HBase : Troubleshooting and Supportability Improvements
Supporting Apache HBase : Troubleshooting and Supportability Improvements
 
HDFS Tiered Storage: Mounting Object Stores in HDFS
HDFS Tiered Storage: Mounting Object Stores in HDFSHDFS Tiered Storage: Mounting Object Stores in HDFS
HDFS Tiered Storage: Mounting Object Stores in HDFS
 
Oracle Database Overview
Oracle Database OverviewOracle Database Overview
Oracle Database Overview
 
HDFS Analysis for Small Files
HDFS Analysis for Small FilesHDFS Analysis for Small Files
HDFS Analysis for Small Files
 
Introduction to HDFS
Introduction to HDFSIntroduction to HDFS
Introduction to HDFS
 
Hadoop Operations - Best Practices from the Field
Hadoop Operations - Best Practices from the FieldHadoop Operations - Best Practices from the Field
Hadoop Operations - Best Practices from the Field
 
Oracle Basics and Architecture
Oracle Basics and ArchitectureOracle Basics and Architecture
Oracle Basics and Architecture
 
Apache Kafka Women Who Code Meetup
Apache Kafka Women Who Code MeetupApache Kafka Women Who Code Meetup
Apache Kafka Women Who Code Meetup
 
Exploring Oracle Database 12c Multitenant best practices for your Cloud
Exploring Oracle Database 12c Multitenant best practices for your CloudExploring Oracle Database 12c Multitenant best practices for your Cloud
Exploring Oracle Database 12c Multitenant best practices for your Cloud
 
HBaseCon 2013: How (and Why) Phoenix Puts the SQL Back into NoSQL
HBaseCon 2013: How (and Why) Phoenix Puts the SQL Back into NoSQLHBaseCon 2013: How (and Why) Phoenix Puts the SQL Back into NoSQL
HBaseCon 2013: How (and Why) Phoenix Puts the SQL Back into NoSQL
 
HDFS Tiered Storage: Mounting Object Stores in HDFS
HDFS Tiered Storage: Mounting Object Stores in HDFSHDFS Tiered Storage: Mounting Object Stores in HDFS
HDFS Tiered Storage: Mounting Object Stores in HDFS
 
Oracle database high availability solutions
Oracle database high availability solutionsOracle database high availability solutions
Oracle database high availability solutions
 
Install oracle binaris or clonse oracle home
Install oracle binaris or clonse oracle homeInstall oracle binaris or clonse oracle home
Install oracle binaris or clonse oracle home
 
Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...
Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...
Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...
 
Apache HBase 0.98
Apache HBase 0.98Apache HBase 0.98
Apache HBase 0.98
 
Hadoop 3.0 features
Hadoop 3.0 featuresHadoop 3.0 features
Hadoop 3.0 features
 
Oracle 12c PDB insights
Oracle 12c PDB insightsOracle 12c PDB insights
Oracle 12c PDB insights
 
Understand oracle real application cluster
Understand oracle real application clusterUnderstand oracle real application cluster
Understand oracle real application cluster
 
Oracle 12c Multitenant architecture
Oracle 12c Multitenant architectureOracle 12c Multitenant architecture
Oracle 12c Multitenant architecture
 
HDFS Federation++
HDFS Federation++HDFS Federation++
HDFS Federation++
 

Destaque

Intro to Joyent's Manta Object Storage Service
Intro to Joyent's Manta Object Storage ServiceIntro to Joyent's Manta Object Storage Service
Intro to Joyent's Manta Object Storage Service
Rod Boothby
 

Destaque (10)

[RakutenTechConf2013] [LT] Scrum of Global Ichiba
[RakutenTechConf2013] [LT] Scrum of Global Ichiba[RakutenTechConf2013] [LT] Scrum of Global Ichiba
[RakutenTechConf2013] [LT] Scrum of Global Ichiba
 
[Rakuten TechConf2014] [A-5] Lessons learned from Ruby
[Rakuten TechConf2014] [A-5] Lessons learned from Ruby[Rakuten TechConf2014] [A-5] Lessons learned from Ruby
[Rakuten TechConf2014] [A-5] Lessons learned from Ruby
 
Agile meets waterfall
Agile meets waterfallAgile meets waterfall
Agile meets waterfall
 
[Rakuten TechConf2014] [D-1] A/B Testing for Mobile Apps: techniques and oppo...
[Rakuten TechConf2014] [D-1] A/B Testing for Mobile Apps: techniques and oppo...[Rakuten TechConf2014] [D-1] A/B Testing for Mobile Apps: techniques and oppo...
[Rakuten TechConf2014] [D-1] A/B Testing for Mobile Apps: techniques and oppo...
 
[Rakuten TechConf2014] [E-5] Gra-navi
[Rakuten TechConf2014] [E-5] Gra-navi[Rakuten TechConf2014] [E-5] Gra-navi
[Rakuten TechConf2014] [E-5] Gra-navi
 
[Rakuten TechConf2014] [Sendai] Sense of SENS
[Rakuten TechConf2014] [Sendai] Sense of SENS[Rakuten TechConf2014] [Sendai] Sense of SENS
[Rakuten TechConf2014] [Sendai] Sense of SENS
 
[Rakuten TechConf2014] [E-6] Rakuten Ichiba Globalization - Challenges and So...
[Rakuten TechConf2014] [E-6] Rakuten Ichiba Globalization - Challenges and So...[Rakuten TechConf2014] [E-6] Rakuten Ichiba Globalization - Challenges and So...
[Rakuten TechConf2014] [E-6] Rakuten Ichiba Globalization - Challenges and So...
 
[Rakuten TechConf2014] [B-4] Rakuten Technology Conference Diversity session
[Rakuten TechConf2014] [B-4] Rakuten Technology Conference Diversity session[Rakuten TechConf2014] [B-4] Rakuten Technology Conference Diversity session
[Rakuten TechConf2014] [B-4] Rakuten Technology Conference Diversity session
 
Intro to Joyent's Manta Object Storage Service
Intro to Joyent's Manta Object Storage ServiceIntro to Joyent's Manta Object Storage Service
Intro to Joyent's Manta Object Storage Service
 
[RakutenTechConf2014] [D-4] The next step of LeoFS and Introducing NewDB Project
[RakutenTechConf2014] [D-4] The next step of LeoFS and Introducing NewDB Project[RakutenTechConf2014] [D-4] The next step of LeoFS and Introducing NewDB Project
[RakutenTechConf2014] [D-4] The next step of LeoFS and Introducing NewDB Project
 

Semelhante a RakutenTechConf2013] [D-3_1] LeoFS - Open the New Door

Membase Meetup 2010
Membase Meetup 2010Membase Meetup 2010
Membase Meetup 2010
Membase
 
Bringing OLTP woth OLAP: Lumos on Hadoop
Bringing OLTP woth OLAP: Lumos on HadoopBringing OLTP woth OLAP: Lumos on Hadoop
Bringing OLTP woth OLAP: Lumos on Hadoop
DataWorks Summit
 

Semelhante a RakutenTechConf2013] [D-3_1] LeoFS - Open the New Door (20)

Building a high-performance data lake analytics engine at Alibaba Cloud with ...
Building a high-performance data lake analytics engine at Alibaba Cloud with ...Building a high-performance data lake analytics engine at Alibaba Cloud with ...
Building a high-performance data lake analytics engine at Alibaba Cloud with ...
 
Scaling and High Performance Storage System: LeoFS
Scaling and High Performance Storage System: LeoFSScaling and High Performance Storage System: LeoFS
Scaling and High Performance Storage System: LeoFS
 
Hadoop File system (HDFS)
Hadoop File system (HDFS)Hadoop File system (HDFS)
Hadoop File system (HDFS)
 
Membase Meetup 2010
Membase Meetup 2010Membase Meetup 2010
Membase Meetup 2010
 
Voldemort & Hadoop @ Linkedin, Hadoop User Group Jan 2010
Voldemort & Hadoop @ Linkedin, Hadoop User Group Jan 2010Voldemort & Hadoop @ Linkedin, Hadoop User Group Jan 2010
Voldemort & Hadoop @ Linkedin, Hadoop User Group Jan 2010
 
Hadoop and Voldemort @ LinkedIn
Hadoop and Voldemort @ LinkedInHadoop and Voldemort @ LinkedIn
Hadoop and Voldemort @ LinkedIn
 
Bringing OLTP woth OLAP: Lumos on Hadoop
Bringing OLTP woth OLAP: Lumos on HadoopBringing OLTP woth OLAP: Lumos on Hadoop
Bringing OLTP woth OLAP: Lumos on Hadoop
 
Data Analytics Meetup: Introduction to Azure Data Lake Storage
Data Analytics Meetup: Introduction to Azure Data Lake Storage Data Analytics Meetup: Introduction to Azure Data Lake Storage
Data Analytics Meetup: Introduction to Azure Data Lake Storage
 
Movile Internet Movel SA: A Change of Seasons: A big move to Apache Cassandra
Movile Internet Movel SA: A Change of Seasons: A big move to Apache CassandraMovile Internet Movel SA: A Change of Seasons: A big move to Apache Cassandra
Movile Internet Movel SA: A Change of Seasons: A big move to Apache Cassandra
 
Cassandra Summit 2015 - A Change of Seasons
Cassandra Summit 2015 - A Change of SeasonsCassandra Summit 2015 - A Change of Seasons
Cassandra Summit 2015 - A Change of Seasons
 
Top 20 FAQs on the Autonomous Database
Top 20 FAQs on the Autonomous DatabaseTop 20 FAQs on the Autonomous Database
Top 20 FAQs on the Autonomous Database
 
optimizing_ceph_flash
optimizing_ceph_flashoptimizing_ceph_flash
optimizing_ceph_flash
 
Interoperability Fundamentals: SWORD 2
Interoperability Fundamentals: SWORD 2Interoperability Fundamentals: SWORD 2
Interoperability Fundamentals: SWORD 2
 
Databricks Platform.pptx
Databricks Platform.pptxDatabricks Platform.pptx
Databricks Platform.pptx
 
Case Study: Elasticsearch Ingest Using StreamSets at Cisco Intercloud
Case Study: Elasticsearch Ingest Using StreamSets at Cisco IntercloudCase Study: Elasticsearch Ingest Using StreamSets at Cisco Intercloud
Case Study: Elasticsearch Ingest Using StreamSets at Cisco Intercloud
 
Case Study: Elasticsearch Ingest Using StreamSets @ Cisco Intercloud
Case Study: Elasticsearch Ingest Using StreamSets @ Cisco IntercloudCase Study: Elasticsearch Ingest Using StreamSets @ Cisco Intercloud
Case Study: Elasticsearch Ingest Using StreamSets @ Cisco Intercloud
 
Hadoop training in bangalore-kellytechnologies
Hadoop training in bangalore-kellytechnologiesHadoop training in bangalore-kellytechnologies
Hadoop training in bangalore-kellytechnologies
 
Yaroslav Nedashkovsky "How to manage hundreds of pipelines for processing da...
Yaroslav Nedashkovsky  "How to manage hundreds of pipelines for processing da...Yaroslav Nedashkovsky  "How to manage hundreds of pipelines for processing da...
Yaroslav Nedashkovsky "How to manage hundreds of pipelines for processing da...
 
How to Build a High Performance Application Using Cloud Foundry and Redis (Cl...
How to Build a High Performance Application Using Cloud Foundry and Redis (Cl...How to Build a High Performance Application Using Cloud Foundry and Redis (Cl...
How to Build a High Performance Application Using Cloud Foundry and Redis (Cl...
 
Datalake Architecture
Datalake ArchitectureDatalake Architecture
Datalake Architecture
 

Mais de Rakuten Group, Inc.

Mais de Rakuten Group, Inc. (20)

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

Último

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Último (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

RakutenTechConf2013] [D-3_1] LeoFS - Open the New Door

  • 1. The Lion of Storage Systems Open the New Door Yosuke Hara Oct 26, 2013 (rev 2.2) 1
  • 2. LeoFS is "Unstructured Big Data Storage for the Web" and a highly available, distributed, eventually consistent storage system. Organizations can use LeoFS to store lots of data efficently, safely and inexpensively. Started OSS-project on July 4, 2012 www.leofs.org 2
  • 4. Motivation As of 2010 Get Away From Using "Expensive H/W Based Storages" ? Expensive Storage Problems: 1. High Costs (Initial Costs, Running Costs) 2. Possibility of "SPOF" 3. NOT Easily Scale Storage Expansion is difficult during periods of increasing data 4
  • 5. The Lion of Storage Systems HIGH Availability LeoFS Non Stop 3 Vs in 3 HIGHs Velocity: Low Latency Minimum Resources HIGH Cost Performance Ratio Volume: Petabyte / Exabyte Variety: Photo, Movie, Unstructured-data HIGH Scalability REST-API / AWS S3-API 5
  • 7. LeoFS Overview Request from Web Applications/ Browsers w/REST-API / S3-API No Master No SPOF Load Balancer LeoFS-Manager REST over HTTP (80/443) RPC (4369) LeoFS-Gateway (4000,4010,4020) Monitor LeoFS-Storage RPC (4369) (10020, 10021) Storage Engine/Router metadata Object Store Storage Engine/Router metadata Object Store Storage Engine/Router metadata GUI Console Object Store 7
  • 9. LeoFS Overview - Gateway Handle HTTP Request and Response Built in "Object Cache Mechanism" Clients Choosing Replica Target Node(s) KEY = “bucket/leofs.key” Hash = md5(Filename) REST-API / S3-API Stateless Proxy + Object Cache Gateway(s) [ Memory Cache, Disc Cache ] RING 2 ^ 128 (MD5) # of replicas = 3 Use Consistent Hashing for decision of a primary node Primary Node Secondary-1 Secondary-2 Storage Cluster Storage Cluster 9
  • 11. LeoFS Overview - Storage Automatically Replicate an Object and a Metadata to Remote Node(s) Gateway Choosing Replica Target Node(s) KEY = “bucket/leofs.key” Hash = md5(Filename) RING 2 ^ 128 (MD5) # of replicas = 3 Primary Node Secondary-1 Storage (Storage Cluster) Secondary-2 Use "Consistent Hashing" for Replication in the Storage Cluster "P2P" 11
  • 12. LeoFS Overview - Storage Storage Engine consits of "Object Storage" and "Metadata Storage" Built in "Replicator", "Recoverer" w/Queue for the Eventual Consistency Gateway Request From Gateway Storage Engine, Metadata + Object Container LeoFS Storage Storage Engine Workers ... Replicator Repairer w/Queue ... Metadata : Keeps an in-memory index of all data Object Container : Manages "Log Structured File" 12
  • 13. LeoFS Storage Engine - Retrieve an object from the storage Storage Engine Worker < META DATA < META DATA > > ID Id Filename Filename Offset, Size Offset Checksum (MD5) Size Version# Checksum Header File Footer Object Container Metadata Storage Storage Engine Worker 13
  • 14. LeoFS Storage Engine - Retrieve an object from the storage Storage Engine Worker Insert a metadata Append an object into the object container < META DATA < META DATA > > ID Id Filename Filename Offset, Size Offset Checksum (MD5) Size Version# Checksum Header File Footer Object Container Metadata Storage Storage Engine Worker 14
  • 15. LeoFS Storage Engine - Remove unnecessary objects from the storage Storage Engine Worker Compact Old Object Container/Metadata New Object Container/Metadata Storage Engine Worker 15
  • 16. LeoFS Overview - Storage - Data Structure/Relationship an object for Retrieve an File (Object) for Sync <Metadata> {VNodeId, Key} KeySize Custom Meta Size File Size Offset Version Timestamp Checksum <Needle> Checksum KeySize User-Meta Size DataSize Offset Version Header (Metadata - Fixed length) Timestamp {VNodeId, Key} User-Meta Actual File Body (Variable Length) Footer Footer (8B) Needle-5 Needle-4 Needle-3 Needle-2 Needle-1 Super-block <Object Container> 16
  • 17. LeoFS Overview - Storage - Large Object Support To Equalize Disk Usage of Every Storage Node To Realize High I/O efficiency and High Availability [ WRITE Operation ] chunk-0 Every chunked object and metadata are replicated in the cluster chunk-1 chunk-2 chunk-3 Chunked Objects Original Object Name Original Object Size # of Chunks An Original Object’s Metadata Client(s) Gateway Storage Cluster 17
  • 19. LeoFS Overview - Manager Operate LeoFS - Gateway and Storage Cluster "RING Monitor" and "NodeState Monitor" Gateway(s) Gateway(s) Manager(s) Monitor RING, Node State Storage Cluster Operate Storage Cluster status, suspend, resume, detach, whereis, ... 19
  • 22. New Features - LeoInsight (v1.0) Give Insight into the State of LeoFS 1. To control requests from Clients to LeoFS 2. To check and see "Traffic info" and "State of Every Node" for Keeping Availability 22
  • 23. New Features - LeoInsight (v1.0) The Lion of Storage Systems Storage Cluster Operate LeoFS Manager Gateway Pr Tr a ffi c -In fo fro ov e s No tif of a y No de fro m G at ew Notifier ay /S to r ag m G at ew ay e/ M an Re ag er tri e ve A TES R I( P J N) SO Consume MSG Persistent calculated statistics-data Distributed Queue (ElkDB) TimeSeriesDB (Savannah) 23
  • 25. New Features - Multi Data Center Data Replication (v1.0) HIGH-Scalability HIGH-Availability + Easy Operation for Admins Europe Tokyo US Singapore NO SPOF NO Performance Degration 25
  • 26. v1.0 - Multi Data Center Data Replication [ 3 Regions & 5 Replicas ] DC-1 Configuration: - Method of Replication: - Consistency Level: Client Application(s) Request to the Target Region - local-quorum:[N=3, W=2, R=1, D=2] - # of target DC(s):2 Method of MDC-Replication: Async: Bulked Transfer Sync+Tran: Consensus Algorithm - # of replicas a DC:1 >> Total of Replicas: 5 Storage cluster [replicas:3] [replicas:1] [replicas:1] DC-1 DC-2 DC-3 Manager cluster Monitor and Replicate each “RING” and “System Configuration” "Leo Storage Platform" 26
  • 27. v1.0 - Multi Data Center Data Replication [ 3 Regions & 5 Replicas ] DC-1 Configuration: - Method of Replication: - Consistency Level: Client Application(s) Request to the Target Region - local-quorum:[N=3, W=2, R=1, D=2] - # of target DC(s):2 Method of MDC-Replication: Async: Bulked Transfer Sync+Tran: Consensus Algorithm - # of replicas a DC:1 >> Total of Replicas: 5 1) 3 replicas are written in "Local Region" Storage cluster [replicas:3] [replicas:1] [replicas:1] DC-1 DC-2 DC-3 Manager cluster Monitor and Replicate each “RING” and “System Configuration” "Leo Storage Platform" 27
  • 28. v1.0 - Multi Data Center Data Replication [ 3 Regions & 5 Replicas ] DC1.node_0 DC1.node_1 DC1.node_2 DC2.node_3 DC3.node_4 Client Application(s) Request to the Target Region Leader Primary Local-follower Remote-follower Follower 2) Sync (or Async) Rplicaion to Other Region(s) Storage cluster [replicas:3] [replicas:1] [replicas:1] DC-1 DC-2 DC-3 Manager cluster Monitor and Replicate each “RING” and “System Configuration” "Leo Storage Platform" 28
  • 29. v1.0 - Multi Data Center Data Replication [ 3 Regions & 5 Replicas ] Remote-1 Remote-2 Tokyo Singapore US Singapore Client Local Region Tokyo Europe Europe US Singapore US Europe Tokyo Application(s) Request to the Target Region 3) Replication for Geographical Optimization Storage cluster [replicas:3] [replicas:1] [replicas:1] DC-1 DC-2 DC-3 DC-4 Tokyo Singapore US Europe Manager cluster Monitor and Replicate each “RING” and “System Configuration” "Leo Storage Platform" 29
  • 31. New Features - LeoCenter Web-based administrative console for inspecting and manipulating LeoFS Storage Clusters and LeoFS Gateway Admin Tools Access Log Analysis Operate LeoFS 31
  • 33. The Lion of Storage Systems HIGH Availability LeoFS Non Stop 3 Vs in 3 HIGHs Velocity: Low Latency Minimum Resources HIGH Cost Performance Ratio Volume: Petabyte / Exabyte Variety: Photo, Movie, Unstructured-data HIGH Scalability REST-API / AWS S3-API 33
  • 34. Set Sail for “Cloud Storage” Website: www.leofs.org Twitter: @LeoFastStorage Facebook: www.facebook.com/org.leofs 34