SlideShare a Scribd company logo
1 of 38
Download to read offline
Disperse Translator
Ramon Selga
rselga@datalab.es
Xavier Hernandez
xhernandez@datalab.es
Barcelona, November 8, 2012
Disperse Translator
• Introduction
• Features
• How it works
• Architecture
• Reliability
• Examples
• Current state
• Future
Disperse Translator
• Introduction
• Features
• How it works
• Architecture
• Reliability
• Examples
• Current state
• Future
Disperse Translator
Introduction
Main idea:
 Striped volumes offer a lot of space but do not
support faulting bricks
 Replicated volumes allow a configurable degree
of fault tolerance but eat a lot of space
 We want to build a volume that has a configurable
degree of redundancy with a small space waste
 Solution: Disperse the data and add redundancy
Disperse Translator
Introduction
• Currently available volume types
 Striped
 Distributed
 Replicated
 Distributed+Replicated
 Striped+Replicated
 Distributed+Striped
 Distributed+Striped+Replicated
Disperse Translator
Introduction
• New volume types for Gluster
 Dispersed
 Based on erasure codes
 Configurable level of redundancy
 Better utilization of physical storage space
 Optimized bandwidth usage
 Limited I/O performance
 Small performance loss when degraded
 Distributed+Dispersed
 Improved I/O performance
Disperse Translator
• Introduction
• Features
• How it works
• Architecture
• Reliability
• Examples
• Current state
• Future
Disperse Translator
Features
• Configurable level of fault tolerance
 Volumes can have any number of bricks (B)
 A level of redundancy (R) must be defined
 Minimum allowed value is 1
At most 1 brick can fail at the same time without loss of service
nor data.
For a 0 redundancy, you can use stripe or distribute.
 Maximum allowed value is 𝐵−1
2
Almost half of the bricks can fail at the same time without loss
of service nor data.
To tolerate the failure of half of the bricks, you can use
replicate.
 The effective space is reduced (B-R)
 Redundancy is distributed evenly amongst bricks
 Tradeoff between reliability and available space
Disperse Translator
Features
• Minimize storage space waste
 Each file is divided into chunks of size S
 Each chunk is split into fragments
 Additional redundancy fragments are generated
 Each fragment is stored on one brick
 The proportion of wasted space is 𝑅
𝐵
 You can make this value as small as desired
Example:
6 bricks (B=6) of 1 TB and redundancy 2 (R=2)
Total space: 6 TB
Wasted space: 2 TB (33%)
Effective space: 4 TB (67%)
Disperse Translator
Features
• Reduced bandwidth usage
 Reads
 Always read B - R fragments of size 𝑆
𝐵−𝑅
 No overhead.
 Writes
 B – F fragments of size 𝑆
𝐵−𝑅
must be updated
 If not a full chunk write, a read must be made (S bytes)
 Always strictly less than 3S
 On average it’s commonly near 2S (or lower if read not needed)
Example:
6 bricks of 1 TB with redundancy 2. Read/Write size 4KB (S=4096)
Read overhead: 0 bytes (*)
Write overhead: 2048 bytes (6144 bytes if read needed)
Disperse Translator
Features
• Limited IOPS
 Each brick stores a fragment of each chunk
 Reads
 R bricks do not need to be accessed
 Some reads can be served in parallel
 Writes
 All alive bricks are accessed
 No parallelism is possible
 Degradation does not have a great impact
 Distribute translator can improve that
Disperse Translator
Features
• Lock-Free Self-Healing
 Based on a new healing translator running on each server
 Managed only by one client per file basis
 Data healing is handled without any lock held
 Metadata requests are refused on the brick being healed
 Read requests are only served if belong to an already healed area
 Write requests are always handled and have priority over healing
 The healing client is allowed to read/modify data or metadata
Disperse Translator
• Introduction
• Features
• How it works
• Architecture
• Reliability
• Examples
• Current state
• Future
Disperse Translator
How it works
• Based on erasure codes
 Fast implementation of the Rabin IDA (Information
Dispersal Algorithm)
 R additional fragments are computed from a set of
B – R data fragments
 Any data fragment can be recovered from any
subset of B – R fragments (data or redundancy)
Disperse Translator
How it works
• Each request is mapped to the involved
chunks of the file
 The chunk size can be customized
 The selected value may affect performance
 It depends on access patterns and file sizes
• For read requests, B-R fragments of each
chunk are read from B-R bricks
• For write requests, incomplete chunks are
read and then updated
• If one or more bricks are down, their
fragments are recovered using IDA
Disperse Translator
How it works
• Read operation
Disperse Translator
How it works
• Read operation
 When possible, all fragments are read from
data fragments, not redundancy, to avoid using
IDA
 Redundancy is spread over the bricks in a way
that, in average, it distributes the load
Disperse Translator
How it works
• Write operation
Disperse Translator
How it works
• Self-Healing
 Clients detect inconsistencies using metadata
 Then initiate a healing session using the healing
translator (only one is allowed to heal a single file)
 Initially entrylk() and inodelk() are held
 Healing client handshake
 Healing preparation
 Metadata healing
 No lock is held during data healing
 Finally inodelk() is held
 Final synchronization of metadata (xattr)
 Gracefully finalize the healing process
Disperse Translator
• Introduction
• Features
• How it works
• Architecture
• Reliability
• Examples
• Current state
• Future
Disperse Translator
Architecture
Disperse Translator
• Introduction
• Features
• How it works
• Architecture
• Reliability
• Examples
• Current state
• Future
Disperse Translator
Reliability of metadata
• All metadata is replicated over all bricks
 This makes metadata highly reliable
 Metadata is used to detect inconsistencies
• A minimum quorum of matching metadata
is needed
 The data of a file is only considered valid if
metadata of at least B – R bricks matches
 Split-Brain is not possible
 It will never have two valid versions of the same
data
• Special files are handled as metadata
Disperse Translator
Reliability of data
• Many concepts are similar to RAID5/6
• User selectable level of reliability
(configuring R at creation time)
 Up to R bricks (any subset of B) may fail
without service interruption or data loss
• Redundancy is spread uniformly over the
bricks
• A fast implementationof Rabin IDA is used
when a volume is degraded
Disperse Translator
• Introduction
• Features
• How it works
• Architecture
• Reliability
• Examples
• Current state
• Future
Disperse Translator
Examples
• Scenario:
 6 servers with 4 SATA disks 4TB each and
capable of 90 IOPS
 Each disk is configured as one brick
• Alternatives considered:
 Striped volume
 Distributed + Replica 2 volume
 Distributed + Replica 3 volume
 Distributed + Disperse 6.2 (B=6, R=2) volume
Disperse Translator
Examples
• Striped volume
 Effective capacity: 96 TB
 Read IOPS: 2160
 Write IOPS: 2160
 Read bandwidth ratio: 1
 Write bandwidth ratio: 1
 Maximum failed bricks: 0
 Maximum failed servers: 0
Disperse Translator
Examples
• Distribued + Replica 2 volume
 Effective capacity: 48 TB
 Read IOPS: 2160
 Write IOPS: 1080
 Read bandwidth ratio: 1
 Write bandwidth ratio: 2
 Maximum failed bricks: 1
 Maximum failed servers: 1
Disperse Translator
Examples
• Distribued + Replica 3 volume
 Effective capacity: 32 TB
 Read IOPS: 2160
 Write IOPS: 720
 Read bandwidth ratio: 1
 Write bandwidth ratio: 3
 Maximum failed bricks: 2
 Maximum failed servers: 2
Disperse Translator
Examples
• Distribued + Disperse 6.2 volume
 Effective capacity: 64 TB
 Read IOPS: 540
 Write IOPS: 360
 Read bandwidth ratio: 1
 Write bandwidth ratio: 1..2
 Maximum failed bricks: 2
 Maximum failed servers: 2
Disperse Translator
• Introduction
• Features
• How it works
• Architecture
• Reliability
• Examples
• Current state
• Future
Disperse Translator
Current state
• Disperse translator
 It’s implemented and operational with all features
enabled
 No optimizations applied yet
• Heal helper translator
 It’s implemented and operational with a minimal set
of features to allow lock-free healing
 More features can be added to improve healing
capabilities
• An alpha version is being tested in our labs
Disperse Translator
• Introduction
• Features
• How it works
• Architecture
• Reliability
• Examples
• Current state
• Future
Disperse Translator
Future
• Add cli support for managing the new kind
of volume
• Analyze the possibility and advantages of
using a RAID5-like striping
 Worse network performance
 Better IOPS
• Analyze the possibility of allowing per file
chunk size definition (using xattrs)
Disperse Translator
That’s it
Thank you very much
Disperse Translator
About us
• Who we are
 Company in the IT services sector
 32 years of experience
 Expertise in a wide range of fields
 Aware of the latest technology trends
 Partner of the leading technology companies
 We support Open Source
 Involved in some european funded projects
Disperse Translator
About us
• What we do
 Provide support in decision making to our
customers in a wide range of areas
 Smoothly integrate different technologies to
achieve the best solution for a given problem
 Develop custom applications for client/server,
web or mobile environments
 Install network and system components
 Virtualization
Disperse Translator
About us
• Our customers
 Mid-sized companies
 Some in the public sector
 Healthcare area
 Research departments
• Our customers needs (some of them)
 Need large amounts of storage space

More Related Content

What's hot

Gluster intro-tdose
Gluster intro-tdoseGluster intro-tdose
Gluster intro-tdoseGluster.org
 
Lcna tutorial-2012
Lcna tutorial-2012Lcna tutorial-2012
Lcna tutorial-2012Gluster.org
 
Scale out backups-with_bareos_and_gluster
Scale out backups-with_bareos_and_glusterScale out backups-with_bareos_and_gluster
Scale out backups-with_bareos_and_glusterGluster.org
 
Software defined storage
Software defined storageSoftware defined storage
Software defined storageGluster.org
 
Gluster fs hadoop_fifth-elephant
Gluster fs hadoop_fifth-elephantGluster fs hadoop_fifth-elephant
Gluster fs hadoop_fifth-elephantGluster.org
 
Challenges with Gluster and Persistent Memory with Dan Lambright
Challenges with Gluster and Persistent Memory with Dan LambrightChallenges with Gluster and Persistent Memory with Dan Lambright
Challenges with Gluster and Persistent Memory with Dan LambrightGluster.org
 
Red Hat Gluster Storage : GlusterFS
Red Hat Gluster Storage : GlusterFSRed Hat Gluster Storage : GlusterFS
Red Hat Gluster Storage : GlusterFSbipin kunal
 
Smb gluster devmar2013
Smb gluster devmar2013Smb gluster devmar2013
Smb gluster devmar2013Gluster.org
 
State of Gluster Performance
State of Gluster PerformanceState of Gluster Performance
State of Gluster PerformanceGluster.org
 
Gluster for sysadmins
Gluster for sysadminsGluster for sysadmins
Gluster for sysadminsGluster.org
 
Gluster overview & future directions vault 2015
Gluster overview & future directions vault 2015Gluster overview & future directions vault 2015
Gluster overview & future directions vault 2015Vijay Bellur
 
Gluster Storage
Gluster StorageGluster Storage
Gluster StorageRaz Tamir
 
Sdc 2012-challenges
Sdc 2012-challengesSdc 2012-challenges
Sdc 2012-challengesGluster.org
 
Gluster fs tutorial part 2 gluster and big data- gluster for devs and sys ...
Gluster fs tutorial   part 2  gluster and big data- gluster for devs and sys ...Gluster fs tutorial   part 2  gluster and big data- gluster for devs and sys ...
Gluster fs tutorial part 2 gluster and big data- gluster for devs and sys ...Tommy Lee
 
20160401 Gluster-roadmap
20160401 Gluster-roadmap20160401 Gluster-roadmap
20160401 Gluster-roadmapGluster.org
 
GlusterFs Architecture & Roadmap - LinuxCon EU 2013
GlusterFs Architecture & Roadmap - LinuxCon EU 2013GlusterFs Architecture & Roadmap - LinuxCon EU 2013
GlusterFs Architecture & Roadmap - LinuxCon EU 2013Gluster.org
 
Developing apps and_integrating_with_gluster_fs_-_libgfapi
Developing apps and_integrating_with_gluster_fs_-_libgfapiDeveloping apps and_integrating_with_gluster_fs_-_libgfapi
Developing apps and_integrating_with_gluster_fs_-_libgfapiGluster.org
 
20160401 guster-roadmap
20160401 guster-roadmap20160401 guster-roadmap
20160401 guster-roadmapGluster.org
 
Lisa 2015-gluster fs-hands-on
Lisa 2015-gluster fs-hands-onLisa 2015-gluster fs-hands-on
Lisa 2015-gluster fs-hands-onGluster.org
 

What's hot (20)

Gluster intro-tdose
Gluster intro-tdoseGluster intro-tdose
Gluster intro-tdose
 
Lcna tutorial-2012
Lcna tutorial-2012Lcna tutorial-2012
Lcna tutorial-2012
 
Dedupe nmamit
Dedupe nmamitDedupe nmamit
Dedupe nmamit
 
Scale out backups-with_bareos_and_gluster
Scale out backups-with_bareos_and_glusterScale out backups-with_bareos_and_gluster
Scale out backups-with_bareos_and_gluster
 
Software defined storage
Software defined storageSoftware defined storage
Software defined storage
 
Gluster fs hadoop_fifth-elephant
Gluster fs hadoop_fifth-elephantGluster fs hadoop_fifth-elephant
Gluster fs hadoop_fifth-elephant
 
Challenges with Gluster and Persistent Memory with Dan Lambright
Challenges with Gluster and Persistent Memory with Dan LambrightChallenges with Gluster and Persistent Memory with Dan Lambright
Challenges with Gluster and Persistent Memory with Dan Lambright
 
Red Hat Gluster Storage : GlusterFS
Red Hat Gluster Storage : GlusterFSRed Hat Gluster Storage : GlusterFS
Red Hat Gluster Storage : GlusterFS
 
Smb gluster devmar2013
Smb gluster devmar2013Smb gluster devmar2013
Smb gluster devmar2013
 
State of Gluster Performance
State of Gluster PerformanceState of Gluster Performance
State of Gluster Performance
 
Gluster for sysadmins
Gluster for sysadminsGluster for sysadmins
Gluster for sysadmins
 
Gluster overview & future directions vault 2015
Gluster overview & future directions vault 2015Gluster overview & future directions vault 2015
Gluster overview & future directions vault 2015
 
Gluster Storage
Gluster StorageGluster Storage
Gluster Storage
 
Sdc 2012-challenges
Sdc 2012-challengesSdc 2012-challenges
Sdc 2012-challenges
 
Gluster fs tutorial part 2 gluster and big data- gluster for devs and sys ...
Gluster fs tutorial   part 2  gluster and big data- gluster for devs and sys ...Gluster fs tutorial   part 2  gluster and big data- gluster for devs and sys ...
Gluster fs tutorial part 2 gluster and big data- gluster for devs and sys ...
 
20160401 Gluster-roadmap
20160401 Gluster-roadmap20160401 Gluster-roadmap
20160401 Gluster-roadmap
 
GlusterFs Architecture & Roadmap - LinuxCon EU 2013
GlusterFs Architecture & Roadmap - LinuxCon EU 2013GlusterFs Architecture & Roadmap - LinuxCon EU 2013
GlusterFs Architecture & Roadmap - LinuxCon EU 2013
 
Developing apps and_integrating_with_gluster_fs_-_libgfapi
Developing apps and_integrating_with_gluster_fs_-_libgfapiDeveloping apps and_integrating_with_gluster_fs_-_libgfapi
Developing apps and_integrating_with_gluster_fs_-_libgfapi
 
20160401 guster-roadmap
20160401 guster-roadmap20160401 guster-roadmap
20160401 guster-roadmap
 
Lisa 2015-gluster fs-hands-on
Lisa 2015-gluster fs-hands-onLisa 2015-gluster fs-hands-on
Lisa 2015-gluster fs-hands-on
 

Viewers also liked

Accessing gluster ufo_-_eco_willson
Accessing gluster ufo_-_eco_willsonAccessing gluster ufo_-_eco_willson
Accessing gluster ufo_-_eco_willsonGluster.org
 
Gluster wireshark niels_de_vos
Gluster wireshark niels_de_vosGluster wireshark niels_de_vos
Gluster wireshark niels_de_vosGluster.org
 
State of the_gluster_-_lceu
State of the_gluster_-_lceuState of the_gluster_-_lceu
State of the_gluster_-_lceuGluster.org
 
Join the super_colony_-_feb2013
Join the super_colony_-_feb2013Join the super_colony_-_feb2013
Join the super_colony_-_feb2013Gluster.org
 
Debugging with-wireshark-niels-de-vos
Debugging with-wireshark-niels-de-vosDebugging with-wireshark-niels-de-vos
Debugging with-wireshark-niels-de-vosGluster.org
 
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013Gluster.org
 
Gsummit apis-2013
Gsummit apis-2013Gsummit apis-2013
Gsummit apis-2013Gluster.org
 
20160130 Gluster-roadmap
20160130 Gluster-roadmap20160130 Gluster-roadmap
20160130 Gluster-roadmapGluster.org
 
Introduction to Open Source
Introduction to Open SourceIntroduction to Open Source
Introduction to Open SourceGluster.org
 
Gluster fs current_features_and_roadmap
Gluster fs current_features_and_roadmapGluster fs current_features_and_roadmap
Gluster fs current_features_and_roadmapGluster.org
 
Glusterfs for sysadmins-justin_clift
Glusterfs for sysadmins-justin_cliftGlusterfs for sysadmins-justin_clift
Glusterfs for sysadmins-justin_cliftGluster.org
 
Kkeithley ufonfs-gluster summit
Kkeithley ufonfs-gluster summitKkeithley ufonfs-gluster summit
Kkeithley ufonfs-gluster summitGluster.org
 
Hands On Gluster with Jeff Darcy
Hands On Gluster with Jeff DarcyHands On Gluster with Jeff Darcy
Hands On Gluster with Jeff DarcyGluster.org
 
Gluster technical overview
Gluster technical overviewGluster technical overview
Gluster technical overviewGluster.org
 
Geo-Replication and Disaster Recovery : Glusterfs
Geo-Replication and Disaster Recovery : GlusterfsGeo-Replication and Disaster Recovery : Glusterfs
Geo-Replication and Disaster Recovery : Glusterfsbipin kunal
 
レッドハット グラスター ストレージ Red Hat Gluster Storage (Japanese)
レッドハット グラスター ストレージ Red Hat Gluster Storage (Japanese)レッドハット グラスター ストレージ Red Hat Gluster Storage (Japanese)
レッドハット グラスター ストレージ Red Hat Gluster Storage (Japanese)Katsutoshi Kojima
 
Gluster as Block Store in Containers
Gluster as Block Store in ContainersGluster as Block Store in Containers
Gluster as Block Store in ContainersGluster.org
 

Viewers also liked (19)

Accessing gluster ufo_-_eco_willson
Accessing gluster ufo_-_eco_willsonAccessing gluster ufo_-_eco_willson
Accessing gluster ufo_-_eco_willson
 
Gluster wireshark niels_de_vos
Gluster wireshark niels_de_vosGluster wireshark niels_de_vos
Gluster wireshark niels_de_vos
 
State of the_gluster_-_lceu
State of the_gluster_-_lceuState of the_gluster_-_lceu
State of the_gluster_-_lceu
 
Join the super_colony_-_feb2013
Join the super_colony_-_feb2013Join the super_colony_-_feb2013
Join the super_colony_-_feb2013
 
Debugging with-wireshark-niels-de-vos
Debugging with-wireshark-niels-de-vosDebugging with-wireshark-niels-de-vos
Debugging with-wireshark-niels-de-vos
 
Qemu gluster fs
Qemu gluster fsQemu gluster fs
Qemu gluster fs
 
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
 
Gsummit apis-2013
Gsummit apis-2013Gsummit apis-2013
Gsummit apis-2013
 
20160130 Gluster-roadmap
20160130 Gluster-roadmap20160130 Gluster-roadmap
20160130 Gluster-roadmap
 
Introduction to Open Source
Introduction to Open SourceIntroduction to Open Source
Introduction to Open Source
 
Qos
QosQos
Qos
 
Gluster fs current_features_and_roadmap
Gluster fs current_features_and_roadmapGluster fs current_features_and_roadmap
Gluster fs current_features_and_roadmap
 
Glusterfs for sysadmins-justin_clift
Glusterfs for sysadmins-justin_cliftGlusterfs for sysadmins-justin_clift
Glusterfs for sysadmins-justin_clift
 
Kkeithley ufonfs-gluster summit
Kkeithley ufonfs-gluster summitKkeithley ufonfs-gluster summit
Kkeithley ufonfs-gluster summit
 
Hands On Gluster with Jeff Darcy
Hands On Gluster with Jeff DarcyHands On Gluster with Jeff Darcy
Hands On Gluster with Jeff Darcy
 
Gluster technical overview
Gluster technical overviewGluster technical overview
Gluster technical overview
 
Geo-Replication and Disaster Recovery : Glusterfs
Geo-Replication and Disaster Recovery : GlusterfsGeo-Replication and Disaster Recovery : Glusterfs
Geo-Replication and Disaster Recovery : Glusterfs
 
レッドハット グラスター ストレージ Red Hat Gluster Storage (Japanese)
レッドハット グラスター ストレージ Red Hat Gluster Storage (Japanese)レッドハット グラスター ストレージ Red Hat Gluster Storage (Japanese)
レッドハット グラスター ストレージ Red Hat Gluster Storage (Japanese)
 
Gluster as Block Store in Containers
Gluster as Block Store in ContainersGluster as Block Store in Containers
Gluster as Block Store in Containers
 

Similar to Disperse xlator ramon_datalab

Elasticsearch Arcihtecture & What's New in Version 5
Elasticsearch Arcihtecture & What's New in Version 5Elasticsearch Arcihtecture & What's New in Version 5
Elasticsearch Arcihtecture & What's New in Version 5Burak TUNGUT
 
Deep Dive - Maximising EC2 & EBS Performance
Deep Dive - Maximising EC2 & EBS PerformanceDeep Dive - Maximising EC2 & EBS Performance
Deep Dive - Maximising EC2 & EBS PerformanceAmazon Web Services
 
Select Stars: A DBA's Guide to Azure Cosmos DB (SQL Saturday Oslo 2018)
Select Stars: A DBA's Guide to Azure Cosmos DB (SQL Saturday Oslo 2018)Select Stars: A DBA's Guide to Azure Cosmos DB (SQL Saturday Oslo 2018)
Select Stars: A DBA's Guide to Azure Cosmos DB (SQL Saturday Oslo 2018)Bob Pusateri
 
Scaling with sync_replication using Galera and EC2
Scaling with sync_replication using Galera and EC2Scaling with sync_replication using Galera and EC2
Scaling with sync_replication using Galera and EC2Marco Tusa
 
Cloud computing UNIT 2.1 presentation in
Cloud computing UNIT 2.1 presentation inCloud computing UNIT 2.1 presentation in
Cloud computing UNIT 2.1 presentation inRahulBhole12
 
Select Stars: A DBA's Guide to Azure Cosmos DB (Chicago Suburban SQL Server U...
Select Stars: A DBA's Guide to Azure Cosmos DB (Chicago Suburban SQL Server U...Select Stars: A DBA's Guide to Azure Cosmos DB (Chicago Suburban SQL Server U...
Select Stars: A DBA's Guide to Azure Cosmos DB (Chicago Suburban SQL Server U...Bob Pusateri
 
Big Data (NJ SQL Server User Group)
Big Data (NJ SQL Server User Group)Big Data (NJ SQL Server User Group)
Big Data (NJ SQL Server User Group)Don Demcsak
 
MongoDB Replication fundamentals - Desert Code Camp - October 2014
MongoDB Replication fundamentals - Desert Code Camp - October 2014MongoDB Replication fundamentals - Desert Code Camp - October 2014
MongoDB Replication fundamentals - Desert Code Camp - October 2014Avinash Ramineni
 
MongoDB Replication fundamentals - Desert Code Camp - October 2014
MongoDB Replication fundamentals - Desert Code Camp - October 2014MongoDB Replication fundamentals - Desert Code Camp - October 2014
MongoDB Replication fundamentals - Desert Code Camp - October 2014clairvoyantllc
 
JasperWorld 2012: Reinventing Data Management by Max Schireson
JasperWorld 2012: Reinventing Data Management by Max SchiresonJasperWorld 2012: Reinventing Data Management by Max Schireson
JasperWorld 2012: Reinventing Data Management by Max SchiresonMongoDB
 
Writing Scalable Software in Java
Writing Scalable Software in JavaWriting Scalable Software in Java
Writing Scalable Software in JavaRuben Badaró
 
Cassandra for mission critical data
Cassandra for mission critical dataCassandra for mission critical data
Cassandra for mission critical dataOleksandr Semenov
 
Select Stars: A SQL DBA's Introduction to Azure Cosmos DB (SQL Saturday Orego...
Select Stars: A SQL DBA's Introduction to Azure Cosmos DB (SQL Saturday Orego...Select Stars: A SQL DBA's Introduction to Azure Cosmos DB (SQL Saturday Orego...
Select Stars: A SQL DBA's Introduction to Azure Cosmos DB (SQL Saturday Orego...Bob Pusateri
 
Azure Data Factory Data Flow Performance Tuning 101
Azure Data Factory Data Flow Performance Tuning 101Azure Data Factory Data Flow Performance Tuning 101
Azure Data Factory Data Flow Performance Tuning 101Mark Kromer
 
Capacity Planning
Capacity PlanningCapacity Planning
Capacity PlanningMongoDB
 
Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...
Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...
Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...Lviv Startup Club
 
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)Lars Marowsky-Brée
 
Data Diffing Based Software Architecture Patterns
Data Diffing Based Software Architecture PatternsData Diffing Based Software Architecture Patterns
Data Diffing Based Software Architecture PatternsHuahai Yang
 
Overview of Redundant Disk Arrays
Overview of Redundant Disk ArraysOverview of Redundant Disk Arrays
Overview of Redundant Disk ArraysAndrew Robinson
 

Similar to Disperse xlator ramon_datalab (20)

Elasticsearch Arcihtecture & What's New in Version 5
Elasticsearch Arcihtecture & What's New in Version 5Elasticsearch Arcihtecture & What's New in Version 5
Elasticsearch Arcihtecture & What's New in Version 5
 
Deep Dive - Maximising EC2 & EBS Performance
Deep Dive - Maximising EC2 & EBS PerformanceDeep Dive - Maximising EC2 & EBS Performance
Deep Dive - Maximising EC2 & EBS Performance
 
Select Stars: A DBA's Guide to Azure Cosmos DB (SQL Saturday Oslo 2018)
Select Stars: A DBA's Guide to Azure Cosmos DB (SQL Saturday Oslo 2018)Select Stars: A DBA's Guide to Azure Cosmos DB (SQL Saturday Oslo 2018)
Select Stars: A DBA's Guide to Azure Cosmos DB (SQL Saturday Oslo 2018)
 
Scaling with sync_replication using Galera and EC2
Scaling with sync_replication using Galera and EC2Scaling with sync_replication using Galera and EC2
Scaling with sync_replication using Galera and EC2
 
Cloud computing UNIT 2.1 presentation in
Cloud computing UNIT 2.1 presentation inCloud computing UNIT 2.1 presentation in
Cloud computing UNIT 2.1 presentation in
 
Select Stars: A DBA's Guide to Azure Cosmos DB (Chicago Suburban SQL Server U...
Select Stars: A DBA's Guide to Azure Cosmos DB (Chicago Suburban SQL Server U...Select Stars: A DBA's Guide to Azure Cosmos DB (Chicago Suburban SQL Server U...
Select Stars: A DBA's Guide to Azure Cosmos DB (Chicago Suburban SQL Server U...
 
Big Data (NJ SQL Server User Group)
Big Data (NJ SQL Server User Group)Big Data (NJ SQL Server User Group)
Big Data (NJ SQL Server User Group)
 
MongoDB Replication fundamentals - Desert Code Camp - October 2014
MongoDB Replication fundamentals - Desert Code Camp - October 2014MongoDB Replication fundamentals - Desert Code Camp - October 2014
MongoDB Replication fundamentals - Desert Code Camp - October 2014
 
MongoDB Replication fundamentals - Desert Code Camp - October 2014
MongoDB Replication fundamentals - Desert Code Camp - October 2014MongoDB Replication fundamentals - Desert Code Camp - October 2014
MongoDB Replication fundamentals - Desert Code Camp - October 2014
 
JasperWorld 2012: Reinventing Data Management by Max Schireson
JasperWorld 2012: Reinventing Data Management by Max SchiresonJasperWorld 2012: Reinventing Data Management by Max Schireson
JasperWorld 2012: Reinventing Data Management by Max Schireson
 
Writing Scalable Software in Java
Writing Scalable Software in JavaWriting Scalable Software in Java
Writing Scalable Software in Java
 
Cassandra for mission critical data
Cassandra for mission critical dataCassandra for mission critical data
Cassandra for mission critical data
 
Select Stars: A SQL DBA's Introduction to Azure Cosmos DB (SQL Saturday Orego...
Select Stars: A SQL DBA's Introduction to Azure Cosmos DB (SQL Saturday Orego...Select Stars: A SQL DBA's Introduction to Azure Cosmos DB (SQL Saturday Orego...
Select Stars: A SQL DBA's Introduction to Azure Cosmos DB (SQL Saturday Orego...
 
Azure Data Factory Data Flow Performance Tuning 101
Azure Data Factory Data Flow Performance Tuning 101Azure Data Factory Data Flow Performance Tuning 101
Azure Data Factory Data Flow Performance Tuning 101
 
Capacity Planning
Capacity PlanningCapacity Planning
Capacity Planning
 
NoSQL and MongoDB
NoSQL and MongoDBNoSQL and MongoDB
NoSQL and MongoDB
 
Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...
Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...
Vitalii Bondarenko - “Azure real-time analytics and kappa architecture with K...
 
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
 
Data Diffing Based Software Architecture Patterns
Data Diffing Based Software Architecture PatternsData Diffing Based Software Architecture Patterns
Data Diffing Based Software Architecture Patterns
 
Overview of Redundant Disk Arrays
Overview of Redundant Disk ArraysOverview of Redundant Disk Arrays
Overview of Redundant Disk Arrays
 

More from Gluster.org

Automating Gluster @ Facebook - Shreyas Siravara
Automating Gluster @ Facebook - Shreyas SiravaraAutomating Gluster @ Facebook - Shreyas Siravara
Automating Gluster @ Facebook - Shreyas SiravaraGluster.org
 
nfusr: a new userspace NFS client based on libnfs - Shreyas Siravara
nfusr: a new userspace NFS client based on libnfs - Shreyas Siravaranfusr: a new userspace NFS client based on libnfs - Shreyas Siravara
nfusr: a new userspace NFS client based on libnfs - Shreyas SiravaraGluster.org
 
Facebook’s upstream approach to GlusterFS - David Hasson
Facebook’s upstream approach to GlusterFS  - David HassonFacebook’s upstream approach to GlusterFS  - David Hasson
Facebook’s upstream approach to GlusterFS - David HassonGluster.org
 
Throttling Traffic at Facebook Scale
Throttling Traffic at Facebook ScaleThrottling Traffic at Facebook Scale
Throttling Traffic at Facebook ScaleGluster.org
 
GlusterFS w/ Tiered XFS
GlusterFS w/ Tiered XFS  GlusterFS w/ Tiered XFS
GlusterFS w/ Tiered XFS Gluster.org
 
Gluster Metrics: why they are crucial for running stable deployments of all s...
Gluster Metrics: why they are crucial for running stable deployments of all s...Gluster Metrics: why they are crucial for running stable deployments of all s...
Gluster Metrics: why they are crucial for running stable deployments of all s...Gluster.org
 
Up and Running with Glusto & Glusto-Tests in 5 Minutes (or less)
Up and Running with Glusto & Glusto-Tests in 5 Minutes (or less)Up and Running with Glusto & Glusto-Tests in 5 Minutes (or less)
Up and Running with Glusto & Glusto-Tests in 5 Minutes (or less)Gluster.org
 
Data Reduction for Gluster with VDO
Data Reduction for Gluster with VDOData Reduction for Gluster with VDO
Data Reduction for Gluster with VDOGluster.org
 
Releases: What are contributors responsible for
Releases: What are contributors responsible forReleases: What are contributors responsible for
Releases: What are contributors responsible forGluster.org
 
RIO Distribution: Reconstructing the onion - Shyamsundar Ranganathan
RIO Distribution: Reconstructing the onion - Shyamsundar RanganathanRIO Distribution: Reconstructing the onion - Shyamsundar Ranganathan
RIO Distribution: Reconstructing the onion - Shyamsundar RanganathanGluster.org
 
Gluster and Kubernetes
Gluster and KubernetesGluster and Kubernetes
Gluster and KubernetesGluster.org
 
Native Clients, more the merrier with GFProxy!
Native Clients, more the merrier with GFProxy!Native Clients, more the merrier with GFProxy!
Native Clients, more the merrier with GFProxy!Gluster.org
 
Gluster: a SWOT Analysis
Gluster: a SWOT Analysis Gluster: a SWOT Analysis
Gluster: a SWOT Analysis Gluster.org
 
GlusterD-2.0: What's Happening? - Kaushal Madappa
GlusterD-2.0: What's Happening? - Kaushal MadappaGlusterD-2.0: What's Happening? - Kaushal Madappa
GlusterD-2.0: What's Happening? - Kaushal MadappaGluster.org
 
Scalability and Performance of CNS 3.6
Scalability and Performance of CNS 3.6Scalability and Performance of CNS 3.6
Scalability and Performance of CNS 3.6Gluster.org
 
What Makes Us Fail
What Makes Us FailWhat Makes Us Fail
What Makes Us FailGluster.org
 
Gluster as Native Storage for Containers - past, present and future
Gluster as Native Storage for Containers - past, present and futureGluster as Native Storage for Containers - past, present and future
Gluster as Native Storage for Containers - past, present and futureGluster.org
 
Heketi Functionality into Glusterd2
Heketi Functionality into Glusterd2Heketi Functionality into Glusterd2
Heketi Functionality into Glusterd2Gluster.org
 
Architecture of the High Availability Solution for Ganesha and Samba with Kal...
Architecture of the High Availability Solution for Ganesha and Samba with Kal...Architecture of the High Availability Solution for Ganesha and Samba with Kal...
Architecture of the High Availability Solution for Ganesha and Samba with Kal...Gluster.org
 
Gluster Containerized Storage for Cloud Applications
Gluster Containerized Storage for Cloud ApplicationsGluster Containerized Storage for Cloud Applications
Gluster Containerized Storage for Cloud ApplicationsGluster.org
 

More from Gluster.org (20)

Automating Gluster @ Facebook - Shreyas Siravara
Automating Gluster @ Facebook - Shreyas SiravaraAutomating Gluster @ Facebook - Shreyas Siravara
Automating Gluster @ Facebook - Shreyas Siravara
 
nfusr: a new userspace NFS client based on libnfs - Shreyas Siravara
nfusr: a new userspace NFS client based on libnfs - Shreyas Siravaranfusr: a new userspace NFS client based on libnfs - Shreyas Siravara
nfusr: a new userspace NFS client based on libnfs - Shreyas Siravara
 
Facebook’s upstream approach to GlusterFS - David Hasson
Facebook’s upstream approach to GlusterFS  - David HassonFacebook’s upstream approach to GlusterFS  - David Hasson
Facebook’s upstream approach to GlusterFS - David Hasson
 
Throttling Traffic at Facebook Scale
Throttling Traffic at Facebook ScaleThrottling Traffic at Facebook Scale
Throttling Traffic at Facebook Scale
 
GlusterFS w/ Tiered XFS
GlusterFS w/ Tiered XFS  GlusterFS w/ Tiered XFS
GlusterFS w/ Tiered XFS
 
Gluster Metrics: why they are crucial for running stable deployments of all s...
Gluster Metrics: why they are crucial for running stable deployments of all s...Gluster Metrics: why they are crucial for running stable deployments of all s...
Gluster Metrics: why they are crucial for running stable deployments of all s...
 
Up and Running with Glusto & Glusto-Tests in 5 Minutes (or less)
Up and Running with Glusto & Glusto-Tests in 5 Minutes (or less)Up and Running with Glusto & Glusto-Tests in 5 Minutes (or less)
Up and Running with Glusto & Glusto-Tests in 5 Minutes (or less)
 
Data Reduction for Gluster with VDO
Data Reduction for Gluster with VDOData Reduction for Gluster with VDO
Data Reduction for Gluster with VDO
 
Releases: What are contributors responsible for
Releases: What are contributors responsible forReleases: What are contributors responsible for
Releases: What are contributors responsible for
 
RIO Distribution: Reconstructing the onion - Shyamsundar Ranganathan
RIO Distribution: Reconstructing the onion - Shyamsundar RanganathanRIO Distribution: Reconstructing the onion - Shyamsundar Ranganathan
RIO Distribution: Reconstructing the onion - Shyamsundar Ranganathan
 
Gluster and Kubernetes
Gluster and KubernetesGluster and Kubernetes
Gluster and Kubernetes
 
Native Clients, more the merrier with GFProxy!
Native Clients, more the merrier with GFProxy!Native Clients, more the merrier with GFProxy!
Native Clients, more the merrier with GFProxy!
 
Gluster: a SWOT Analysis
Gluster: a SWOT Analysis Gluster: a SWOT Analysis
Gluster: a SWOT Analysis
 
GlusterD-2.0: What's Happening? - Kaushal Madappa
GlusterD-2.0: What's Happening? - Kaushal MadappaGlusterD-2.0: What's Happening? - Kaushal Madappa
GlusterD-2.0: What's Happening? - Kaushal Madappa
 
Scalability and Performance of CNS 3.6
Scalability and Performance of CNS 3.6Scalability and Performance of CNS 3.6
Scalability and Performance of CNS 3.6
 
What Makes Us Fail
What Makes Us FailWhat Makes Us Fail
What Makes Us Fail
 
Gluster as Native Storage for Containers - past, present and future
Gluster as Native Storage for Containers - past, present and futureGluster as Native Storage for Containers - past, present and future
Gluster as Native Storage for Containers - past, present and future
 
Heketi Functionality into Glusterd2
Heketi Functionality into Glusterd2Heketi Functionality into Glusterd2
Heketi Functionality into Glusterd2
 
Architecture of the High Availability Solution for Ganesha and Samba with Kal...
Architecture of the High Availability Solution for Ganesha and Samba with Kal...Architecture of the High Availability Solution for Ganesha and Samba with Kal...
Architecture of the High Availability Solution for Ganesha and Samba with Kal...
 
Gluster Containerized Storage for Cloud Applications
Gluster Containerized Storage for Cloud ApplicationsGluster Containerized Storage for Cloud Applications
Gluster Containerized Storage for Cloud Applications
 

Recently uploaded

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
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
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
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"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
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
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
 
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
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
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
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 

Recently uploaded (20)

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.
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
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
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"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
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
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)
 
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
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
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
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 

Disperse xlator ramon_datalab

  • 1. Disperse Translator Ramon Selga rselga@datalab.es Xavier Hernandez xhernandez@datalab.es Barcelona, November 8, 2012
  • 2. Disperse Translator • Introduction • Features • How it works • Architecture • Reliability • Examples • Current state • Future
  • 3. Disperse Translator • Introduction • Features • How it works • Architecture • Reliability • Examples • Current state • Future
  • 4. Disperse Translator Introduction Main idea:  Striped volumes offer a lot of space but do not support faulting bricks  Replicated volumes allow a configurable degree of fault tolerance but eat a lot of space  We want to build a volume that has a configurable degree of redundancy with a small space waste  Solution: Disperse the data and add redundancy
  • 5. Disperse Translator Introduction • Currently available volume types  Striped  Distributed  Replicated  Distributed+Replicated  Striped+Replicated  Distributed+Striped  Distributed+Striped+Replicated
  • 6. Disperse Translator Introduction • New volume types for Gluster  Dispersed  Based on erasure codes  Configurable level of redundancy  Better utilization of physical storage space  Optimized bandwidth usage  Limited I/O performance  Small performance loss when degraded  Distributed+Dispersed  Improved I/O performance
  • 7. Disperse Translator • Introduction • Features • How it works • Architecture • Reliability • Examples • Current state • Future
  • 8. Disperse Translator Features • Configurable level of fault tolerance  Volumes can have any number of bricks (B)  A level of redundancy (R) must be defined  Minimum allowed value is 1 At most 1 brick can fail at the same time without loss of service nor data. For a 0 redundancy, you can use stripe or distribute.  Maximum allowed value is 𝐵−1 2 Almost half of the bricks can fail at the same time without loss of service nor data. To tolerate the failure of half of the bricks, you can use replicate.  The effective space is reduced (B-R)  Redundancy is distributed evenly amongst bricks  Tradeoff between reliability and available space
  • 9. Disperse Translator Features • Minimize storage space waste  Each file is divided into chunks of size S  Each chunk is split into fragments  Additional redundancy fragments are generated  Each fragment is stored on one brick  The proportion of wasted space is 𝑅 𝐵  You can make this value as small as desired Example: 6 bricks (B=6) of 1 TB and redundancy 2 (R=2) Total space: 6 TB Wasted space: 2 TB (33%) Effective space: 4 TB (67%)
  • 10. Disperse Translator Features • Reduced bandwidth usage  Reads  Always read B - R fragments of size 𝑆 𝐵−𝑅  No overhead.  Writes  B – F fragments of size 𝑆 𝐵−𝑅 must be updated  If not a full chunk write, a read must be made (S bytes)  Always strictly less than 3S  On average it’s commonly near 2S (or lower if read not needed) Example: 6 bricks of 1 TB with redundancy 2. Read/Write size 4KB (S=4096) Read overhead: 0 bytes (*) Write overhead: 2048 bytes (6144 bytes if read needed)
  • 11. Disperse Translator Features • Limited IOPS  Each brick stores a fragment of each chunk  Reads  R bricks do not need to be accessed  Some reads can be served in parallel  Writes  All alive bricks are accessed  No parallelism is possible  Degradation does not have a great impact  Distribute translator can improve that
  • 12. Disperse Translator Features • Lock-Free Self-Healing  Based on a new healing translator running on each server  Managed only by one client per file basis  Data healing is handled without any lock held  Metadata requests are refused on the brick being healed  Read requests are only served if belong to an already healed area  Write requests are always handled and have priority over healing  The healing client is allowed to read/modify data or metadata
  • 13. Disperse Translator • Introduction • Features • How it works • Architecture • Reliability • Examples • Current state • Future
  • 14. Disperse Translator How it works • Based on erasure codes  Fast implementation of the Rabin IDA (Information Dispersal Algorithm)  R additional fragments are computed from a set of B – R data fragments  Any data fragment can be recovered from any subset of B – R fragments (data or redundancy)
  • 15. Disperse Translator How it works • Each request is mapped to the involved chunks of the file  The chunk size can be customized  The selected value may affect performance  It depends on access patterns and file sizes • For read requests, B-R fragments of each chunk are read from B-R bricks • For write requests, incomplete chunks are read and then updated • If one or more bricks are down, their fragments are recovered using IDA
  • 16. Disperse Translator How it works • Read operation
  • 17. Disperse Translator How it works • Read operation  When possible, all fragments are read from data fragments, not redundancy, to avoid using IDA  Redundancy is spread over the bricks in a way that, in average, it distributes the load
  • 18. Disperse Translator How it works • Write operation
  • 19. Disperse Translator How it works • Self-Healing  Clients detect inconsistencies using metadata  Then initiate a healing session using the healing translator (only one is allowed to heal a single file)  Initially entrylk() and inodelk() are held  Healing client handshake  Healing preparation  Metadata healing  No lock is held during data healing  Finally inodelk() is held  Final synchronization of metadata (xattr)  Gracefully finalize the healing process
  • 20. Disperse Translator • Introduction • Features • How it works • Architecture • Reliability • Examples • Current state • Future
  • 22. Disperse Translator • Introduction • Features • How it works • Architecture • Reliability • Examples • Current state • Future
  • 23. Disperse Translator Reliability of metadata • All metadata is replicated over all bricks  This makes metadata highly reliable  Metadata is used to detect inconsistencies • A minimum quorum of matching metadata is needed  The data of a file is only considered valid if metadata of at least B – R bricks matches  Split-Brain is not possible  It will never have two valid versions of the same data • Special files are handled as metadata
  • 24. Disperse Translator Reliability of data • Many concepts are similar to RAID5/6 • User selectable level of reliability (configuring R at creation time)  Up to R bricks (any subset of B) may fail without service interruption or data loss • Redundancy is spread uniformly over the bricks • A fast implementationof Rabin IDA is used when a volume is degraded
  • 25. Disperse Translator • Introduction • Features • How it works • Architecture • Reliability • Examples • Current state • Future
  • 26. Disperse Translator Examples • Scenario:  6 servers with 4 SATA disks 4TB each and capable of 90 IOPS  Each disk is configured as one brick • Alternatives considered:  Striped volume  Distributed + Replica 2 volume  Distributed + Replica 3 volume  Distributed + Disperse 6.2 (B=6, R=2) volume
  • 27. Disperse Translator Examples • Striped volume  Effective capacity: 96 TB  Read IOPS: 2160  Write IOPS: 2160  Read bandwidth ratio: 1  Write bandwidth ratio: 1  Maximum failed bricks: 0  Maximum failed servers: 0
  • 28. Disperse Translator Examples • Distribued + Replica 2 volume  Effective capacity: 48 TB  Read IOPS: 2160  Write IOPS: 1080  Read bandwidth ratio: 1  Write bandwidth ratio: 2  Maximum failed bricks: 1  Maximum failed servers: 1
  • 29. Disperse Translator Examples • Distribued + Replica 3 volume  Effective capacity: 32 TB  Read IOPS: 2160  Write IOPS: 720  Read bandwidth ratio: 1  Write bandwidth ratio: 3  Maximum failed bricks: 2  Maximum failed servers: 2
  • 30. Disperse Translator Examples • Distribued + Disperse 6.2 volume  Effective capacity: 64 TB  Read IOPS: 540  Write IOPS: 360  Read bandwidth ratio: 1  Write bandwidth ratio: 1..2  Maximum failed bricks: 2  Maximum failed servers: 2
  • 31. Disperse Translator • Introduction • Features • How it works • Architecture • Reliability • Examples • Current state • Future
  • 32. Disperse Translator Current state • Disperse translator  It’s implemented and operational with all features enabled  No optimizations applied yet • Heal helper translator  It’s implemented and operational with a minimal set of features to allow lock-free healing  More features can be added to improve healing capabilities • An alpha version is being tested in our labs
  • 33. Disperse Translator • Introduction • Features • How it works • Architecture • Reliability • Examples • Current state • Future
  • 34. Disperse Translator Future • Add cli support for managing the new kind of volume • Analyze the possibility and advantages of using a RAID5-like striping  Worse network performance  Better IOPS • Analyze the possibility of allowing per file chunk size definition (using xattrs)
  • 36. Disperse Translator About us • Who we are  Company in the IT services sector  32 years of experience  Expertise in a wide range of fields  Aware of the latest technology trends  Partner of the leading technology companies  We support Open Source  Involved in some european funded projects
  • 37. Disperse Translator About us • What we do  Provide support in decision making to our customers in a wide range of areas  Smoothly integrate different technologies to achieve the best solution for a given problem  Develop custom applications for client/server, web or mobile environments  Install network and system components  Virtualization
  • 38. Disperse Translator About us • Our customers  Mid-sized companies  Some in the public sector  Healthcare area  Research departments • Our customers needs (some of them)  Need large amounts of storage space