large objects in the cloud - goto...

18
Large objects in the Cloud Thursday, 11 April 13

Upload: others

Post on 01-Jan-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

Large objects in the Cloud

Thursday, 11 April 13

Page 2: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

Riak Cloud Storage

• Cloud Storage software backed by Riak

• Simple API

• Multi-tenant, Per-tenant Reporting

• Pluggable Authentication

• Multi Data Center Replication (Enterprise)

• DTrace Support, Detailed Stats, etc

• Preliminary CloudStack integration

Thursday, 11 April 13

Page 3: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

Simple Storage Service (S3) Protocol

• Straight forward API

• Make buckets, list buckets, etc

• GET / PUT / DELETE - operations

• Use any existing Amazon S3 client library ;)

e.g.s3cmd put test-file s3://test-bucket

Thursday, 11 April 13

Page 4: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

Riak

• Key-Value Store + Extras

• Distributed, horizontally scalable

• Fault-tolerant

• Highly-available

• Built for the Web

• Inspired by Amazon’s Dynamo

Thursday, 11 April 13

Page 5: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

Riak CS

Large Object

Reporting APIS3 API

Riak CS

Reporting APIS3 API

Riak CS

Reporting APIS3 API

Riak CS

Reporting APIS3 API

Riak CS

Reporting APIS3 API

Riak Node

Riak Node

Riak Node

Riak Node

Riak Node

1mb 1mb

1mb 1mb

Thursday, 11 April 13

Page 6: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

Coming Soon

• Riak CS 1.4

• Swift API

• Keystone Integration

• COPY Object

• Object Versioning

• Additional exotic S3 features

Thursday, 11 April 13

Page 7: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

On March 20, 2013

Riak CSbecame open source

Thursday, 11 April 13

Page 8: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

Provisionally scheduled for

November 2013

Thursday, 11 April 13

Page 9: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

CC 2.0 by Bryan Pearson | http://flic.kr/p/RUfEt

Page 10: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

2

About HBase

HBase is an open source, distributed,

column-oriented data store modeled after Google’s BigTable

HBase Introduction

11. April 2013

Page 11: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

3

Data Model

•  Sorted map data store •  Table consists of rows, each has a

row key (primary key)

•  Each row may have any number of columns (Map<byte[], byte []>)

•  Rows are sorted lexicographically based on row key

HBase Introduction

11. April 2013

Page 12: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

4

Sorted Map (Logical View)

HBase Introduction

11. April 2013

Row key Data

amuller info: { ‘height’: ‘2.0m’, ‘state’: ‘ZH’ } roles: { ‘IBM’: ‘Sales Manager’ }

cguegi info: { ‘height’: ‘1.85m’, ‘state’: ‘BE’ } roles: { ‘Sentric’: ‘Architect’@ts=2011, ‘Sentric’: ‘Mentor’@ts=2012, ‘SBDUG’: ‘Founder’ }

Data is all byte[]

Single cell may have different values at different timestampes

Different rows may have different sets of columns (table is sparse)

Different types of data separated into different “column families”

Page 13: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

5

Sorted Map (Physical View)

HBase Introduction

11. April 2013

Row key Column key Timestamp Value

amuller info:height 1333883187 2.0m

amuller info:state 1273871824 ZH

cguegi info:height 1325755229 1.85m

cguegi info:state 1325751049 TG

info Column Family

Row key Column key Timestamp Value

amuller roles:IBM 1320105636 Developer

cguegi roles:SBDUG 1330561785 Founder

cguegi roles:Sentric 1325376723 Mentor

cguegi roles:Sentric 1293840959 Architect

roles Column Family

Unix timestamp

Sort

ed o

n d

isk

by

row

key

, co

lum

n k

ey, d

esce

nd

ing

ts

Page 14: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

6

HBase Architecture

HBase Introduction

11. April 2013

HDFS ZooKeeper

Master HFile Memstore

Write-Ahead Log

RegionServer

HBase API

[HBase: The Definitive Guide]

Page 15: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

7

HBase vs other “NoSQL”

•  Favors Consistency over Availability •  Great Hadoop integration •  Ordered range partitions

•  Automatically shards/scales •  Sparse column storage

HBase Introduction

11. April 2013

Page 16: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

CC 2.0 by Aurelien Guichard | http://flic.kr/p/cjg9yw

Page 17: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

9

Resources

•  http://hbase.apache.org •  http://www.sentric.ch •  http://bigdata-usergroup.ch

•  http://about.me/cguegi

HBase Introduction

11. April 2013

Page 18: Large objects in the Cloud - GOTO Conferencegotocon.com/dl/goto-zurich-2013/slides/ChrisMolozian_and... · 2013. 4. 11. · Riak Cloud Storage • Cloud Storage software backed by

10

Database Landscape Map

HBase Introduction

11. April 2013

Source: http://blogs.the451group.com/information_management/2013/02/04/updated-database-lanscape-map-february-2013/