SlideShare a Scribd company logo
1 of 26
Download to read offline
PRESENTATION TITLE GOES HEREConverged Storage Technology
Liang Ming/Huawei
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
SNIA Legal Notice
The material contained in this tutorial is copyrighted by the SNIA unless
otherwise noted.
Member companies and individual members may use this material in
presentations and literature under the following conditions:
Any slide or slides used must be reproduced in their entirety without modification
The SNIA must be acknowledged as the source of any material used in the body of
any document containing material from these presentations.
This presentation is a project of the SNIA Education Committee.
Neither the author nor the presenter is an attorney and nothing in this
presentation is intended to be, or should be construed as legal advice or an
opinion of counsel. If you need legal advice or a legal opinion please
contact your attorney.
The information presented herein represents the author's personal opinion
and current understanding of the relevant issues involved. The author, the
presenter, and the SNIA do not assume any responsibility or liability for
damages arising out of any reliance on or use of this information.
NO WARRANTIES, EXPRESS OR IMPLIED. USE AT YOUR OWN RISK.
2
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Abstract
Converged Storage Technology
This SNIA Tutorial discusses the concept of object store and
key-value storage, next generation key-value converged storage
solutions, and what has been done to promote the key-value
standard.
3
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Background: Object Store
The Device based object store
Originated in CMU NASD project, Garth Gibson
ANSI INCITS T10, OSDv2 (SCSI extension)
Distributed object store
Ceph Rados
Google GFS
Azure Storage Stream Layer
The HTTP based object store
Amazon Web Service S3
Openstack Swift
Ceph Object Gateway
4
Object storage
device
Distributed
object store
HTTP based
object store
Application
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Background: Device based
object store
Software
Ceph OSD
Lustre OSS
Panasas OSD
Hardware
IP Disk
Standard organization
Linux Foundation, KINETIC Open Storage Project
5
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Background: object store
stack
6
HDD SSD
SCSI layer
Block I/O layer
File system
Object Storage Device (OSD)
Object Store Client (OSC)
Block VFS
Object
User space
Kernel space
User space
kernel space
OSD
OSC
Block VFS
Object
HDD SSD
Storage
node
Storage
Device
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Background: Device based
key-value store
Disk optimized key-value store
BerkeleyDB
MongoDB
LevelDB
Flash optimized key-value store
LevelDB
SILT – SOSP 2011
FlashStore – VLDB 2010
FAWN-KV – SOSP 2009
NVMKV – co-designed with FTL, HotStorage 2014
7
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Background: Device based
key-value store
8
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Background: Distributed Key-
value Store
Distributed key-value store / NoSQL DB
Google Bigtable
HBase
Azure Partition Layer
Amazon DynamoDB
Cassandra
Redis
9
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Back ground: Key-value Store
stack
10
HDD SSD
SCSI layer
Block I/O layer
FS
Key value store
Kernel
space
user
space OSD
Distributed Key value store
OSC
Distributed
Object store
Dynamo
Cassandra
BigTable
Azure Partition
Key value
store
OSD
Distributed Key value store
OSC
Distributed
Object store
Dynamo
Cassandra
BigTable
Azure Partition
HDD SSD PCIe Flash
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Background:
KV Store vs Object Store
Key value store and object store are similar, but they do
have differences.
11
Object Store Key value store
Key type Positive integer Any string
Attribute Need Not need
Data size Big Small
Metadata Need Not need
Obj1 Obj2
Obj3 Obj4
Oid
Data Meta
date
Attr
Object
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
A typical converged storage
architecture
12
Converged storage
Integrate all kinds of Storage
device to provide all kinds of
storage service
Device layer
Use local FS to manage the
physical space
Distributed object store
Distributed Replication or EC
Checksum, Failover
Distributed key-value DB
Unified abstraction of storage
services
HDD fs
HDD Flash SMR
Flash fs SMR fs
vfs
Distributed object store
Distributed key-value DB
Distributed file system
Block File
Object NoSQL Queue
Single Node KVDB
Kernel
space
User
space
User
space
Kernel
space
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Problem 1
Complicated
VFS is good for abstraction, but
too complicated.
We only need an object store
flat namespace
space management.
Flash Performance
User-space & kernel space
transition
Performance wasted by OS
Upper layer cannot use the
features of flash
Atomic batch write
Atomic batch trim
13
HDD fs
HDD Flash SMR
Flash fs SMR fs
vfs
Distributed object store
Distributed key-value DB
Distributed file system
Block File
Object NoSQL Queue
Single Node KVDB
Kernel
space
User
space
User
space
Kernel
space
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Solve the problem
Key-value framework (KVF)
User-space key-value library
User-space key-value storage
device
IP-device for remote access
Interface like VFS
General interface for common
application
Extended interface for flash
Make the lower level and high
level the same interface
14
OSD
HDD Flash SMR
KV Flash KV SMR
Key Value Framework
Distributed object store
Distributed key-value DB
Key Value Framework
Block File
Object NoSQL Queue
Single Node KVDB
Kernel
space
User
space
User
space
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
The KVF architecture
KVF is a interface framework (like VFS), KVS is the actual store (like FS).
Low level management interface: Let vendor device register in.
Up level access interface: Let upper services to access the KVS, they can
based on local KVS or Distributed KVS.
Distributed KVS can base on local KVS and register into KVF again, like
many distributed file system do.
15
KV Framework
… Local
KVS
Distributed
KVS
File S3 Block NOSQL …
VENDOR 3
KV-LIB
VENDOR 2
KV-LIB
VENDOR 1
KV-LIB
Upper Layer Access API
Lower Layer Manage API
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
The key value framework
What & why
Storage vendors offload the simple KV operation (put/ get/
delete/ iterator) to the storage medium. Which make the higher
level simple, high performance, low TCO.
All KV store have similar interface, but there is no unified
standard.
16
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
KVF data model
KVS can provide different kind of containers (some vendor called pools),
based on storage medium.
On top of container, we can provide object, which can access by KV interface
Container can nest to provide distributed container.
17
Storages(HDD/SSD)
container … …
Object Object Object… …
Nesting
HDD
container
SSD
container
KV-Framework
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
A kind of KVF interface
18
s32 kvf_register(kvf_type_t * t);
s32 kvf_unregister(kvf_type_t * t);
kvf_type_t* get_kvf(const char* name);
typedef struct kvf_operations {
s32 (*init)(const char* config_file);
s32 (*shutdown)();
s32 (*set_prop)(const char* name, char* value);
s32 (*get_prop)(const char* name, char* value);
void* (*alloc_buf)(u32 size, s32 flag);
void (*free_buf)(void** buf);
const char* (*get_errstr)(s32 errcode);
s32 (*get_stats)(kvf_stats_t * kvfstats);
s32 (*trans_start)(kv_trans_id_t** t_id);
s32 (*trans_commit)(kv_trans_id_t* t_id);
s32 (*trans_abort)(kv_trans_id_t* t_id);
} kvf_operations_t;
typedef struct pool_operations {
s32 (*create)(const char* name, const char* config_file, pool_id_t* pid);
s32 (*destroy)(const char* name);
s32 (*open)(const char* name, u32 mod, pool_id_t* pid);
s32 (*close)(const pool_id_t pid);
s32 (*set_prop)(const pool_id_t pid, u64 prop, const char buf[MAX_PROP_LEN]);
s32 (*get_prop)(const pool_id_t pid, u64 prop, char buf[MAX_PROP_LEN]);
s32 (*get_stats)(const pool_id_t pid, pool_stats_t* stats);
s32 (*xcopy)(const pool_id_t src, const pool_id_t dest, s32 flags, void* regex, s32 regex_len);
s32 (*list)(pool_id_t** pid, s32* num);
} pool_operations_t;
Register interface
Vendor capability
interface
Container
interface
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
KVF interface
19
typedef struct kv_operations {
s32 (*put)(const pool_id_t pid, const key_t* key, const value_t* value,
const kv_props_t* props, const put_options_t* putopts);
s32 (*get)(const pool_id_t pid, const key_t* key, value_t* value, const kv_props_t* props,
const get_options_t* getopts);
s32 (*del)(const pool_id_t pid, const key_t* key, const kv_props_t* props,
s32 (*mput)(pool_id_t pid, const kv_array_t* kvarray, const kv_props_t* props,
const put_options_t* putopts);
s32 (*mget)(pool_id_t pid, kv_array_t* kvarray, const kv_props_t* props,
const get_options_t* getopts);
s32 (*mdel)(pool_id_t pid, const kv_array_t* kvarray, const kv_props_t* props,
const del_options_t* delopts);
s32 (*async_put)(pool_id_t pid, const key_t* key, const value_t* value,
const kv_props_t* props, const put_options_t* putopts, async_crud_cb put_fn);
s32 (*async_get)(pool_id_t pid, const key_t* key, value_t* value,
const kv_props_t* props, const get_options_t* getopts, async_crud_cb get_fn);
s32 (*async_del)(pool_id_t pid, const key_t* key,
const kv_props_t* props, const del_options_t* delopts, async_crud_cb
del_fn);
s32 (*iter_open)(const pool_id_t pid, s32 flags, void* regex, s32 regex_len, s32 limit,
iter_id_t* itid);
s32 (*iter_next)(const pool_id_t pid, iter_id_t itid, kv_array_t* kvarray);
s32 (*iter_close)(const pool_id_t pid, iter_id_t itid);
} kv_operations_t;
Object
access KV
interface
https://github.com/huaweistorage/ananas
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Problem 2
Distributed layer performance
Kernel space block & file
protocol
Not easy to transplant
Not easy to develop
Performance problem
Network package cross the OS
many times, degrade
performance
OSD
HDD Flash SMR
KV Flash KV SMR
Key Value Framework
Distributed object store
Distributed key-value DB
Key Value Framework
Block File
Object NoSQL Queue
Single Node KVDB
Kernel
space
User
space
User
space
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Solve the problem
User-space protocol
User-space iscsi,Linux tgt
User-space NFS,Ganesha
User-space network stack
Intel DPDK
FreeBSD Netmap
InfiniBand, user-space
RDMA
…
End-to-end user-space I/O
stack
21
OSD
HDD Flash SMR
KV Flash KV SMR
Key Value Framework
Distributed object store
Distributed key-value DB
Key Value Framework
Block File Object NoSQL Queue
Single Node KVDB
User
space
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Distributed object store
Distributed Hash Table: Sheepdog, Swift, etc
Less metadata, easy to scale-out,
Loss data locality
Difficult to provide performance isolation
Not easy to support policy
22
P1
P2
P3
P4P5
P6
Pn
…
DHT Storage
node
DHT
User key1
User key2
User key3
User key4
…
User key5
Key1
Key2
Key3
Key4
…
Keyn
Hash
mapping
mapping
OSD1
OSD2
OSD3
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Distributed object store
Master record object location: GFS, Azure Stream Layer,
etc
Metadata bottle-neck
Easy to support policy
Keep data locality
23
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Distributed key value DB
DHT: Dynamo, Cassandra, etc
Easy to scale out
Loss key-value locality
Easy aggregate performance
Range Partition: Bigtable, Azure partition layer, etc.
Easy to scale out
Keep locality
Easy to isolate performance
24
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Other concerns
Lock service
Zookeeper
Chubby
Transaction support
Local transaction
Distributed transaction
Cross datacenter in one region
Sync replication
Cross region
Asynchronous Geo-replication
25
Converged Storage Technology
Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved.
Attribution & Feedback
26
Please send any questions or comments regarding this SNIA
Tutorial to tracktutorials@snia.org
The SNIA Education Committee thanks the following
Individuals for their contributions to this Tutorial.
Authorship History:
Liang Ming/Feb 2016
Additional Contributors
Liang Ming
Qingchao Luo
Keji Huang
Huabing Yan

More Related Content

What's hot

Doing Dropbox the Native Cloud Native Way
Doing Dropbox the Native Cloud Native WayDoing Dropbox the Native Cloud Native Way
Doing Dropbox the Native Cloud Native WayMinio
 
Speed up Digital Transformation with Openstack Cloud & Software Defined Storage
Speed up Digital Transformation with Openstack Cloud & Software Defined StorageSpeed up Digital Transformation with Openstack Cloud & Software Defined Storage
Speed up Digital Transformation with Openstack Cloud & Software Defined StorageMatthew Sheppard
 
Implementation of Dense Storage Utilizing HDDs with SSDs and PCIe Flash Acc...
Implementation of Dense Storage Utilizing  HDDs with SSDs and PCIe Flash  Acc...Implementation of Dense Storage Utilizing  HDDs with SSDs and PCIe Flash  Acc...
Implementation of Dense Storage Utilizing HDDs with SSDs and PCIe Flash Acc...Red_Hat_Storage
 
Open Stack Cheng Du Swift Alex Yang
Open Stack Cheng Du Swift Alex YangOpen Stack Cheng Du Swift Alex Yang
Open Stack Cheng Du Swift Alex YangOpenCity Community
 
[db tech showcase OSS 2017] A11: How Percona is Different, and How We Support...
[db tech showcase OSS 2017] A11: How Percona is Different, and How We Support...[db tech showcase OSS 2017] A11: How Percona is Different, and How We Support...
[db tech showcase OSS 2017] A11: How Percona is Different, and How We Support...Insight Technology, Inc.
 
Sdc2010 scality cloud storage vs object storage for distribution
Sdc2010 scality cloud storage vs object storage for distributionSdc2010 scality cloud storage vs object storage for distribution
Sdc2010 scality cloud storage vs object storage for distributionJerome Lecat
 
7 distributed storage_open_stack
7 distributed storage_open_stack7 distributed storage_open_stack
7 distributed storage_open_stackopenstackindia
 
Red Hat Storage Day Seattle: Supermicro Solutions for Red Hat Ceph and Red Ha...
Red Hat Storage Day Seattle: Supermicro Solutions for Red Hat Ceph and Red Ha...Red Hat Storage Day Seattle: Supermicro Solutions for Red Hat Ceph and Red Ha...
Red Hat Storage Day Seattle: Supermicro Solutions for Red Hat Ceph and Red Ha...Red_Hat_Storage
 
Storage as a service OpenStack
Storage as a service OpenStackStorage as a service OpenStack
Storage as a service OpenStackopenstackindia
 
Red Hat Storage: Emerging Use Cases
Red Hat Storage: Emerging Use CasesRed Hat Storage: Emerging Use Cases
Red Hat Storage: Emerging Use CasesRed_Hat_Storage
 
Swift Architecture and Practice, by Alex Yang
Swift Architecture and Practice, by Alex YangSwift Architecture and Practice, by Alex Yang
Swift Architecture and Practice, by Alex YangHui Cheng
 
Filesystem as a service in OpenStack
Filesystem as a service in OpenStackFilesystem as a service in OpenStack
Filesystem as a service in OpenStackopenstackindia
 
DataKeeper_SAN-SANLess_Clusters_Windows_Product_Brief(RaxcoBE)
DataKeeper_SAN-SANLess_Clusters_Windows_Product_Brief(RaxcoBE)DataKeeper_SAN-SANLess_Clusters_Windows_Product_Brief(RaxcoBE)
DataKeeper_SAN-SANLess_Clusters_Windows_Product_Brief(RaxcoBE)Peter Vervaene
 
VirtualStor Extreme - Software Defined Scale-Out All Flash Storage
VirtualStor Extreme - Software Defined Scale-Out All Flash StorageVirtualStor Extreme - Software Defined Scale-Out All Flash Storage
VirtualStor Extreme - Software Defined Scale-Out All Flash StorageGIGABYTE Technology
 
Portrait of the Developer as the Artist - OpenTour Sofia
Portrait of the Developer as the Artist - OpenTour SofiaPortrait of the Developer as the Artist - OpenTour Sofia
Portrait of the Developer as the Artist - OpenTour SofiaPatrick Chanezon
 
Why Software-Defined Storage Matters
Why Software-Defined Storage MattersWhy Software-Defined Storage Matters
Why Software-Defined Storage MattersRed_Hat_Storage
 
Architecting Ceph Solutions
Architecting Ceph SolutionsArchitecting Ceph Solutions
Architecting Ceph SolutionsRed_Hat_Storage
 
Cisco UCS Integrated Infrastructure for Big Data with Cassandra
Cisco UCS Integrated Infrastructure for Big Data with CassandraCisco UCS Integrated Infrastructure for Big Data with Cassandra
Cisco UCS Integrated Infrastructure for Big Data with CassandraDataStax Academy
 
VMware EVO - Fremtidens datarom er hyperkonvergert
VMware EVO - Fremtidens datarom er hyperkonvergertVMware EVO - Fremtidens datarom er hyperkonvergert
VMware EVO - Fremtidens datarom er hyperkonvergertKenneth de Brucq
 

What's hot (20)

Doing Dropbox the Native Cloud Native Way
Doing Dropbox the Native Cloud Native WayDoing Dropbox the Native Cloud Native Way
Doing Dropbox the Native Cloud Native Way
 
Speed up Digital Transformation with Openstack Cloud & Software Defined Storage
Speed up Digital Transformation with Openstack Cloud & Software Defined StorageSpeed up Digital Transformation with Openstack Cloud & Software Defined Storage
Speed up Digital Transformation with Openstack Cloud & Software Defined Storage
 
Implementation of Dense Storage Utilizing HDDs with SSDs and PCIe Flash Acc...
Implementation of Dense Storage Utilizing  HDDs with SSDs and PCIe Flash  Acc...Implementation of Dense Storage Utilizing  HDDs with SSDs and PCIe Flash  Acc...
Implementation of Dense Storage Utilizing HDDs with SSDs and PCIe Flash Acc...
 
Open Stack Cheng Du Swift Alex Yang
Open Stack Cheng Du Swift Alex YangOpen Stack Cheng Du Swift Alex Yang
Open Stack Cheng Du Swift Alex Yang
 
[db tech showcase OSS 2017] A11: How Percona is Different, and How We Support...
[db tech showcase OSS 2017] A11: How Percona is Different, and How We Support...[db tech showcase OSS 2017] A11: How Percona is Different, and How We Support...
[db tech showcase OSS 2017] A11: How Percona is Different, and How We Support...
 
Sdc2010 scality cloud storage vs object storage for distribution
Sdc2010 scality cloud storage vs object storage for distributionSdc2010 scality cloud storage vs object storage for distribution
Sdc2010 scality cloud storage vs object storage for distribution
 
7 distributed storage_open_stack
7 distributed storage_open_stack7 distributed storage_open_stack
7 distributed storage_open_stack
 
Red Hat Storage Day Seattle: Supermicro Solutions for Red Hat Ceph and Red Ha...
Red Hat Storage Day Seattle: Supermicro Solutions for Red Hat Ceph and Red Ha...Red Hat Storage Day Seattle: Supermicro Solutions for Red Hat Ceph and Red Ha...
Red Hat Storage Day Seattle: Supermicro Solutions for Red Hat Ceph and Red Ha...
 
Storage as a service OpenStack
Storage as a service OpenStackStorage as a service OpenStack
Storage as a service OpenStack
 
Red Hat Storage: Emerging Use Cases
Red Hat Storage: Emerging Use CasesRed Hat Storage: Emerging Use Cases
Red Hat Storage: Emerging Use Cases
 
Swift Architecture and Practice, by Alex Yang
Swift Architecture and Practice, by Alex YangSwift Architecture and Practice, by Alex Yang
Swift Architecture and Practice, by Alex Yang
 
Filesystem as a service in OpenStack
Filesystem as a service in OpenStackFilesystem as a service in OpenStack
Filesystem as a service in OpenStack
 
Scality - RING Overview
Scality - RING OverviewScality - RING Overview
Scality - RING Overview
 
DataKeeper_SAN-SANLess_Clusters_Windows_Product_Brief(RaxcoBE)
DataKeeper_SAN-SANLess_Clusters_Windows_Product_Brief(RaxcoBE)DataKeeper_SAN-SANLess_Clusters_Windows_Product_Brief(RaxcoBE)
DataKeeper_SAN-SANLess_Clusters_Windows_Product_Brief(RaxcoBE)
 
VirtualStor Extreme - Software Defined Scale-Out All Flash Storage
VirtualStor Extreme - Software Defined Scale-Out All Flash StorageVirtualStor Extreme - Software Defined Scale-Out All Flash Storage
VirtualStor Extreme - Software Defined Scale-Out All Flash Storage
 
Portrait of the Developer as the Artist - OpenTour Sofia
Portrait of the Developer as the Artist - OpenTour SofiaPortrait of the Developer as the Artist - OpenTour Sofia
Portrait of the Developer as the Artist - OpenTour Sofia
 
Why Software-Defined Storage Matters
Why Software-Defined Storage MattersWhy Software-Defined Storage Matters
Why Software-Defined Storage Matters
 
Architecting Ceph Solutions
Architecting Ceph SolutionsArchitecting Ceph Solutions
Architecting Ceph Solutions
 
Cisco UCS Integrated Infrastructure for Big Data with Cassandra
Cisco UCS Integrated Infrastructure for Big Data with CassandraCisco UCS Integrated Infrastructure for Big Data with Cassandra
Cisco UCS Integrated Infrastructure for Big Data with Cassandra
 
VMware EVO - Fremtidens datarom er hyperkonvergert
VMware EVO - Fremtidens datarom er hyperkonvergertVMware EVO - Fremtidens datarom er hyperkonvergert
VMware EVO - Fremtidens datarom er hyperkonvergert
 

Viewers also liked

下一代虚拟存储解决方案:Vaai
下一代虚拟存储解决方案:Vaai下一代虚拟存储解决方案:Vaai
下一代虚拟存储解决方案:VaaiITband
 
开源混合存储方案(Flashcache)
开源混合存储方案(Flashcache)开源混合存储方案(Flashcache)
开源混合存储方案(Flashcache)Feng Yu
 
Emc存储培训
Emc存储培训Emc存储培训
Emc存储培训Mq Sfs
 
关系数据库存储树形结构数据的理想实践 20100222
关系数据库存储树形结构数据的理想实践 20100222关系数据库存储树形结构数据的理想实践 20100222
关系数据库存储树形结构数据的理想实践 20100222Cabin WJ
 
结构化数据存储
结构化数据存储结构化数据存储
结构化数据存储光照 刘
 
华为软件定义存储架构分析
华为软件定义存储架构分析华为软件定义存储架构分析
华为软件定义存储架构分析Liang Ming
 
Persona & Scenarios for Baidu Cloud - By Vanbin Fan 2012.12.25
Persona & Scenarios for Baidu Cloud - By Vanbin Fan 2012.12.25Persona & Scenarios for Baidu Cloud - By Vanbin Fan 2012.12.25
Persona & Scenarios for Baidu Cloud - By Vanbin Fan 2012.12.25Vanbin Fan, JWMI MBA
 
缓存技术浅谈
缓存技术浅谈缓存技术浅谈
缓存技术浅谈Robbin Fan
 

Viewers also liked (8)

下一代虚拟存储解决方案:Vaai
下一代虚拟存储解决方案:Vaai下一代虚拟存储解决方案:Vaai
下一代虚拟存储解决方案:Vaai
 
开源混合存储方案(Flashcache)
开源混合存储方案(Flashcache)开源混合存储方案(Flashcache)
开源混合存储方案(Flashcache)
 
Emc存储培训
Emc存储培训Emc存储培训
Emc存储培训
 
关系数据库存储树形结构数据的理想实践 20100222
关系数据库存储树形结构数据的理想实践 20100222关系数据库存储树形结构数据的理想实践 20100222
关系数据库存储树形结构数据的理想实践 20100222
 
结构化数据存储
结构化数据存储结构化数据存储
结构化数据存储
 
华为软件定义存储架构分析
华为软件定义存储架构分析华为软件定义存储架构分析
华为软件定义存储架构分析
 
Persona & Scenarios for Baidu Cloud - By Vanbin Fan 2012.12.25
Persona & Scenarios for Baidu Cloud - By Vanbin Fan 2012.12.25Persona & Scenarios for Baidu Cloud - By Vanbin Fan 2012.12.25
Persona & Scenarios for Baidu Cloud - By Vanbin Fan 2012.12.25
 
缓存技术浅谈
缓存技术浅谈缓存技术浅谈
缓存技术浅谈
 

Similar to Fast2016 liang ming-converged_storage_technology-final (1)

Ceph Day Shanghai - Hyper Converged PLCloud with Ceph
Ceph Day Shanghai - Hyper Converged PLCloud with Ceph Ceph Day Shanghai - Hyper Converged PLCloud with Ceph
Ceph Day Shanghai - Hyper Converged PLCloud with Ceph Ceph Community
 
OpenStack Day Italy: openATTC as an open storage platform for OpenStack
OpenStack Day Italy: openATTC as an open storage platform for OpenStackOpenStack Day Italy: openATTC as an open storage platform for OpenStack
OpenStack Day Italy: openATTC as an open storage platform for OpenStackit-novum
 
Ceph Day Tokyo - Bring Ceph to Enterprise
Ceph Day Tokyo - Bring Ceph to Enterprise Ceph Day Tokyo - Bring Ceph to Enterprise
Ceph Day Tokyo - Bring Ceph to Enterprise Ceph Community
 
Building an open source cloud storage platform for OpenStack - openATTIC
Building an open source cloud storage platform for OpenStack - openATTICBuilding an open source cloud storage platform for OpenStack - openATTIC
Building an open source cloud storage platform for OpenStack - openATTICit-novum
 
DCEU 18: Provisioning and Managing Storage for Docker Containers
DCEU 18: Provisioning and Managing Storage for Docker ContainersDCEU 18: Provisioning and Managing Storage for Docker Containers
DCEU 18: Provisioning and Managing Storage for Docker ContainersDocker, Inc.
 
Ceph Day Bring Ceph To Enterprise
Ceph Day Bring Ceph To EnterpriseCeph Day Bring Ceph To Enterprise
Ceph Day Bring Ceph To EnterpriseAlex Lau
 
Open Cloud Storage @ OpenStack Summit Paris
Open Cloud Storage @ OpenStack Summit ParisOpen Cloud Storage @ OpenStack Summit Paris
Open Cloud Storage @ OpenStack Summit Parisit-novum
 
Red Hat Storage 2014 - Product(s) Overview
Red Hat Storage 2014 - Product(s) OverviewRed Hat Storage 2014 - Product(s) Overview
Red Hat Storage 2014 - Product(s) OverviewMarcel Hergaarden
 
OpenNebulaConf 2016 - OpenNebula, a story about flexibility and technological...
OpenNebulaConf 2016 - OpenNebula, a story about flexibility and technological...OpenNebulaConf 2016 - OpenNebula, a story about flexibility and technological...
OpenNebulaConf 2016 - OpenNebula, a story about flexibility and technological...OpenNebula Project
 
OpenStack Cinder Best Practices - Meet Up
OpenStack Cinder Best Practices - Meet UpOpenStack Cinder Best Practices - Meet Up
OpenStack Cinder Best Practices - Meet UpAaron Delp
 
Ceph Day Taipei - Bring Ceph to Enterprise
Ceph Day Taipei - Bring Ceph to EnterpriseCeph Day Taipei - Bring Ceph to Enterprise
Ceph Day Taipei - Bring Ceph to EnterpriseCeph Community
 
Peanut Butter and jelly: Mapping the deep Integration between Ceph and OpenStack
Peanut Butter and jelly: Mapping the deep Integration between Ceph and OpenStackPeanut Butter and jelly: Mapping the deep Integration between Ceph and OpenStack
Peanut Butter and jelly: Mapping the deep Integration between Ceph and OpenStackSean Cohen
 
Workshop - Openstack, Cloud Computing, Virtualization
Workshop - Openstack, Cloud Computing, VirtualizationWorkshop - Openstack, Cloud Computing, Virtualization
Workshop - Openstack, Cloud Computing, VirtualizationJayaprakash R
 
Openstack workshop @ Kalasalingam
Openstack workshop @ KalasalingamOpenstack workshop @ Kalasalingam
Openstack workshop @ KalasalingamBeny Raja
 
Building Fast SQL Analytics on Anything with Presto, Alluxio
Building Fast SQL Analytics on Anything with Presto, AlluxioBuilding Fast SQL Analytics on Anything with Presto, Alluxio
Building Fast SQL Analytics on Anything with Presto, AlluxioAlluxio, Inc.
 
OSDC 2015: John Spray | The Ceph Storage System
OSDC 2015: John Spray | The Ceph Storage SystemOSDC 2015: John Spray | The Ceph Storage System
OSDC 2015: John Spray | The Ceph Storage SystemNETWAYS
 
The Enhanced Cisco Container Platform
The Enhanced Cisco Container PlatformThe Enhanced Cisco Container Platform
The Enhanced Cisco Container PlatformRobb Boyd
 
What you need to know about ceph
What you need to know about cephWhat you need to know about ceph
What you need to know about cephEmma Haruka Iwao
 
tack Deployment in the Enterprise
tack Deployment in the Enterprisetack Deployment in the Enterprise
tack Deployment in the EnterpriseCisco Canada
 
Getting Started with Apache Spark and Alluxio for Blazingly Fast Analytics
Getting Started with Apache Spark and Alluxio for Blazingly Fast AnalyticsGetting Started with Apache Spark and Alluxio for Blazingly Fast Analytics
Getting Started with Apache Spark and Alluxio for Blazingly Fast AnalyticsAlluxio, Inc.
 

Similar to Fast2016 liang ming-converged_storage_technology-final (1) (20)

Ceph Day Shanghai - Hyper Converged PLCloud with Ceph
Ceph Day Shanghai - Hyper Converged PLCloud with Ceph Ceph Day Shanghai - Hyper Converged PLCloud with Ceph
Ceph Day Shanghai - Hyper Converged PLCloud with Ceph
 
OpenStack Day Italy: openATTC as an open storage platform for OpenStack
OpenStack Day Italy: openATTC as an open storage platform for OpenStackOpenStack Day Italy: openATTC as an open storage platform for OpenStack
OpenStack Day Italy: openATTC as an open storage platform for OpenStack
 
Ceph Day Tokyo - Bring Ceph to Enterprise
Ceph Day Tokyo - Bring Ceph to Enterprise Ceph Day Tokyo - Bring Ceph to Enterprise
Ceph Day Tokyo - Bring Ceph to Enterprise
 
Building an open source cloud storage platform for OpenStack - openATTIC
Building an open source cloud storage platform for OpenStack - openATTICBuilding an open source cloud storage platform for OpenStack - openATTIC
Building an open source cloud storage platform for OpenStack - openATTIC
 
DCEU 18: Provisioning and Managing Storage for Docker Containers
DCEU 18: Provisioning and Managing Storage for Docker ContainersDCEU 18: Provisioning and Managing Storage for Docker Containers
DCEU 18: Provisioning and Managing Storage for Docker Containers
 
Ceph Day Bring Ceph To Enterprise
Ceph Day Bring Ceph To EnterpriseCeph Day Bring Ceph To Enterprise
Ceph Day Bring Ceph To Enterprise
 
Open Cloud Storage @ OpenStack Summit Paris
Open Cloud Storage @ OpenStack Summit ParisOpen Cloud Storage @ OpenStack Summit Paris
Open Cloud Storage @ OpenStack Summit Paris
 
Red Hat Storage 2014 - Product(s) Overview
Red Hat Storage 2014 - Product(s) OverviewRed Hat Storage 2014 - Product(s) Overview
Red Hat Storage 2014 - Product(s) Overview
 
OpenNebulaConf 2016 - OpenNebula, a story about flexibility and technological...
OpenNebulaConf 2016 - OpenNebula, a story about flexibility and technological...OpenNebulaConf 2016 - OpenNebula, a story about flexibility and technological...
OpenNebulaConf 2016 - OpenNebula, a story about flexibility and technological...
 
OpenStack Cinder Best Practices - Meet Up
OpenStack Cinder Best Practices - Meet UpOpenStack Cinder Best Practices - Meet Up
OpenStack Cinder Best Practices - Meet Up
 
Ceph Day Taipei - Bring Ceph to Enterprise
Ceph Day Taipei - Bring Ceph to EnterpriseCeph Day Taipei - Bring Ceph to Enterprise
Ceph Day Taipei - Bring Ceph to Enterprise
 
Peanut Butter and jelly: Mapping the deep Integration between Ceph and OpenStack
Peanut Butter and jelly: Mapping the deep Integration between Ceph and OpenStackPeanut Butter and jelly: Mapping the deep Integration between Ceph and OpenStack
Peanut Butter and jelly: Mapping the deep Integration between Ceph and OpenStack
 
Workshop - Openstack, Cloud Computing, Virtualization
Workshop - Openstack, Cloud Computing, VirtualizationWorkshop - Openstack, Cloud Computing, Virtualization
Workshop - Openstack, Cloud Computing, Virtualization
 
Openstack workshop @ Kalasalingam
Openstack workshop @ KalasalingamOpenstack workshop @ Kalasalingam
Openstack workshop @ Kalasalingam
 
Building Fast SQL Analytics on Anything with Presto, Alluxio
Building Fast SQL Analytics on Anything with Presto, AlluxioBuilding Fast SQL Analytics on Anything with Presto, Alluxio
Building Fast SQL Analytics on Anything with Presto, Alluxio
 
OSDC 2015: John Spray | The Ceph Storage System
OSDC 2015: John Spray | The Ceph Storage SystemOSDC 2015: John Spray | The Ceph Storage System
OSDC 2015: John Spray | The Ceph Storage System
 
The Enhanced Cisco Container Platform
The Enhanced Cisco Container PlatformThe Enhanced Cisco Container Platform
The Enhanced Cisco Container Platform
 
What you need to know about ceph
What you need to know about cephWhat you need to know about ceph
What you need to know about ceph
 
tack Deployment in the Enterprise
tack Deployment in the Enterprisetack Deployment in the Enterprise
tack Deployment in the Enterprise
 
Getting Started with Apache Spark and Alluxio for Blazingly Fast Analytics
Getting Started with Apache Spark and Alluxio for Blazingly Fast AnalyticsGetting Started with Apache Spark and Alluxio for Blazingly Fast Analytics
Getting Started with Apache Spark and Alluxio for Blazingly Fast Analytics
 

Recently uploaded

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 

Recently uploaded (20)

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 

Fast2016 liang ming-converged_storage_technology-final (1)

  • 1. PRESENTATION TITLE GOES HEREConverged Storage Technology Liang Ming/Huawei
  • 2. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. SNIA Legal Notice The material contained in this tutorial is copyrighted by the SNIA unless otherwise noted. Member companies and individual members may use this material in presentations and literature under the following conditions: Any slide or slides used must be reproduced in their entirety without modification The SNIA must be acknowledged as the source of any material used in the body of any document containing material from these presentations. This presentation is a project of the SNIA Education Committee. Neither the author nor the presenter is an attorney and nothing in this presentation is intended to be, or should be construed as legal advice or an opinion of counsel. If you need legal advice or a legal opinion please contact your attorney. The information presented herein represents the author's personal opinion and current understanding of the relevant issues involved. The author, the presenter, and the SNIA do not assume any responsibility or liability for damages arising out of any reliance on or use of this information. NO WARRANTIES, EXPRESS OR IMPLIED. USE AT YOUR OWN RISK. 2
  • 3. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Abstract Converged Storage Technology This SNIA Tutorial discusses the concept of object store and key-value storage, next generation key-value converged storage solutions, and what has been done to promote the key-value standard. 3
  • 4. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Background: Object Store The Device based object store Originated in CMU NASD project, Garth Gibson ANSI INCITS T10, OSDv2 (SCSI extension) Distributed object store Ceph Rados Google GFS Azure Storage Stream Layer The HTTP based object store Amazon Web Service S3 Openstack Swift Ceph Object Gateway 4 Object storage device Distributed object store HTTP based object store Application
  • 5. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Background: Device based object store Software Ceph OSD Lustre OSS Panasas OSD Hardware IP Disk Standard organization Linux Foundation, KINETIC Open Storage Project 5
  • 6. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Background: object store stack 6 HDD SSD SCSI layer Block I/O layer File system Object Storage Device (OSD) Object Store Client (OSC) Block VFS Object User space Kernel space User space kernel space OSD OSC Block VFS Object HDD SSD Storage node Storage Device
  • 7. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Background: Device based key-value store Disk optimized key-value store BerkeleyDB MongoDB LevelDB Flash optimized key-value store LevelDB SILT – SOSP 2011 FlashStore – VLDB 2010 FAWN-KV – SOSP 2009 NVMKV – co-designed with FTL, HotStorage 2014 7
  • 8. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Background: Device based key-value store 8
  • 9. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Background: Distributed Key- value Store Distributed key-value store / NoSQL DB Google Bigtable HBase Azure Partition Layer Amazon DynamoDB Cassandra Redis 9
  • 10. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Back ground: Key-value Store stack 10 HDD SSD SCSI layer Block I/O layer FS Key value store Kernel space user space OSD Distributed Key value store OSC Distributed Object store Dynamo Cassandra BigTable Azure Partition Key value store OSD Distributed Key value store OSC Distributed Object store Dynamo Cassandra BigTable Azure Partition HDD SSD PCIe Flash
  • 11. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Background: KV Store vs Object Store Key value store and object store are similar, but they do have differences. 11 Object Store Key value store Key type Positive integer Any string Attribute Need Not need Data size Big Small Metadata Need Not need Obj1 Obj2 Obj3 Obj4 Oid Data Meta date Attr Object
  • 12. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. A typical converged storage architecture 12 Converged storage Integrate all kinds of Storage device to provide all kinds of storage service Device layer Use local FS to manage the physical space Distributed object store Distributed Replication or EC Checksum, Failover Distributed key-value DB Unified abstraction of storage services HDD fs HDD Flash SMR Flash fs SMR fs vfs Distributed object store Distributed key-value DB Distributed file system Block File Object NoSQL Queue Single Node KVDB Kernel space User space User space Kernel space
  • 13. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Problem 1 Complicated VFS is good for abstraction, but too complicated. We only need an object store flat namespace space management. Flash Performance User-space & kernel space transition Performance wasted by OS Upper layer cannot use the features of flash Atomic batch write Atomic batch trim 13 HDD fs HDD Flash SMR Flash fs SMR fs vfs Distributed object store Distributed key-value DB Distributed file system Block File Object NoSQL Queue Single Node KVDB Kernel space User space User space Kernel space
  • 14. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Solve the problem Key-value framework (KVF) User-space key-value library User-space key-value storage device IP-device for remote access Interface like VFS General interface for common application Extended interface for flash Make the lower level and high level the same interface 14 OSD HDD Flash SMR KV Flash KV SMR Key Value Framework Distributed object store Distributed key-value DB Key Value Framework Block File Object NoSQL Queue Single Node KVDB Kernel space User space User space
  • 15. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. The KVF architecture KVF is a interface framework (like VFS), KVS is the actual store (like FS). Low level management interface: Let vendor device register in. Up level access interface: Let upper services to access the KVS, they can based on local KVS or Distributed KVS. Distributed KVS can base on local KVS and register into KVF again, like many distributed file system do. 15 KV Framework … Local KVS Distributed KVS File S3 Block NOSQL … VENDOR 3 KV-LIB VENDOR 2 KV-LIB VENDOR 1 KV-LIB Upper Layer Access API Lower Layer Manage API
  • 16. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. The key value framework What & why Storage vendors offload the simple KV operation (put/ get/ delete/ iterator) to the storage medium. Which make the higher level simple, high performance, low TCO. All KV store have similar interface, but there is no unified standard. 16
  • 17. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. KVF data model KVS can provide different kind of containers (some vendor called pools), based on storage medium. On top of container, we can provide object, which can access by KV interface Container can nest to provide distributed container. 17 Storages(HDD/SSD) container … … Object Object Object… … Nesting HDD container SSD container KV-Framework
  • 18. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. A kind of KVF interface 18 s32 kvf_register(kvf_type_t * t); s32 kvf_unregister(kvf_type_t * t); kvf_type_t* get_kvf(const char* name); typedef struct kvf_operations { s32 (*init)(const char* config_file); s32 (*shutdown)(); s32 (*set_prop)(const char* name, char* value); s32 (*get_prop)(const char* name, char* value); void* (*alloc_buf)(u32 size, s32 flag); void (*free_buf)(void** buf); const char* (*get_errstr)(s32 errcode); s32 (*get_stats)(kvf_stats_t * kvfstats); s32 (*trans_start)(kv_trans_id_t** t_id); s32 (*trans_commit)(kv_trans_id_t* t_id); s32 (*trans_abort)(kv_trans_id_t* t_id); } kvf_operations_t; typedef struct pool_operations { s32 (*create)(const char* name, const char* config_file, pool_id_t* pid); s32 (*destroy)(const char* name); s32 (*open)(const char* name, u32 mod, pool_id_t* pid); s32 (*close)(const pool_id_t pid); s32 (*set_prop)(const pool_id_t pid, u64 prop, const char buf[MAX_PROP_LEN]); s32 (*get_prop)(const pool_id_t pid, u64 prop, char buf[MAX_PROP_LEN]); s32 (*get_stats)(const pool_id_t pid, pool_stats_t* stats); s32 (*xcopy)(const pool_id_t src, const pool_id_t dest, s32 flags, void* regex, s32 regex_len); s32 (*list)(pool_id_t** pid, s32* num); } pool_operations_t; Register interface Vendor capability interface Container interface
  • 19. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. KVF interface 19 typedef struct kv_operations { s32 (*put)(const pool_id_t pid, const key_t* key, const value_t* value, const kv_props_t* props, const put_options_t* putopts); s32 (*get)(const pool_id_t pid, const key_t* key, value_t* value, const kv_props_t* props, const get_options_t* getopts); s32 (*del)(const pool_id_t pid, const key_t* key, const kv_props_t* props, s32 (*mput)(pool_id_t pid, const kv_array_t* kvarray, const kv_props_t* props, const put_options_t* putopts); s32 (*mget)(pool_id_t pid, kv_array_t* kvarray, const kv_props_t* props, const get_options_t* getopts); s32 (*mdel)(pool_id_t pid, const kv_array_t* kvarray, const kv_props_t* props, const del_options_t* delopts); s32 (*async_put)(pool_id_t pid, const key_t* key, const value_t* value, const kv_props_t* props, const put_options_t* putopts, async_crud_cb put_fn); s32 (*async_get)(pool_id_t pid, const key_t* key, value_t* value, const kv_props_t* props, const get_options_t* getopts, async_crud_cb get_fn); s32 (*async_del)(pool_id_t pid, const key_t* key, const kv_props_t* props, const del_options_t* delopts, async_crud_cb del_fn); s32 (*iter_open)(const pool_id_t pid, s32 flags, void* regex, s32 regex_len, s32 limit, iter_id_t* itid); s32 (*iter_next)(const pool_id_t pid, iter_id_t itid, kv_array_t* kvarray); s32 (*iter_close)(const pool_id_t pid, iter_id_t itid); } kv_operations_t; Object access KV interface https://github.com/huaweistorage/ananas
  • 20. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Problem 2 Distributed layer performance Kernel space block & file protocol Not easy to transplant Not easy to develop Performance problem Network package cross the OS many times, degrade performance OSD HDD Flash SMR KV Flash KV SMR Key Value Framework Distributed object store Distributed key-value DB Key Value Framework Block File Object NoSQL Queue Single Node KVDB Kernel space User space User space
  • 21. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Solve the problem User-space protocol User-space iscsi,Linux tgt User-space NFS,Ganesha User-space network stack Intel DPDK FreeBSD Netmap InfiniBand, user-space RDMA … End-to-end user-space I/O stack 21 OSD HDD Flash SMR KV Flash KV SMR Key Value Framework Distributed object store Distributed key-value DB Key Value Framework Block File Object NoSQL Queue Single Node KVDB User space
  • 22. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Distributed object store Distributed Hash Table: Sheepdog, Swift, etc Less metadata, easy to scale-out, Loss data locality Difficult to provide performance isolation Not easy to support policy 22 P1 P2 P3 P4P5 P6 Pn … DHT Storage node DHT User key1 User key2 User key3 User key4 … User key5 Key1 Key2 Key3 Key4 … Keyn Hash mapping mapping OSD1 OSD2 OSD3
  • 23. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Distributed object store Master record object location: GFS, Azure Stream Layer, etc Metadata bottle-neck Easy to support policy Keep data locality 23
  • 24. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Distributed key value DB DHT: Dynamo, Cassandra, etc Easy to scale out Loss key-value locality Easy aggregate performance Range Partition: Bigtable, Azure partition layer, etc. Easy to scale out Keep locality Easy to isolate performance 24
  • 25. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Other concerns Lock service Zookeeper Chubby Transaction support Local transaction Distributed transaction Cross datacenter in one region Sync replication Cross region Asynchronous Geo-replication 25
  • 26. Converged Storage Technology Approved SNIA Tutorial © 2016 Storage Networking Industry Association. All Rights Reserved. Attribution & Feedback 26 Please send any questions or comments regarding this SNIA Tutorial to tracktutorials@snia.org The SNIA Education Committee thanks the following Individuals for their contributions to this Tutorial. Authorship History: Liang Ming/Feb 2016 Additional Contributors Liang Ming Qingchao Luo Keji Huang Huabing Yan