SlideShare a Scribd company logo
BlobSeer Presented by Viet-Trung TRAN KerData Team
BlobSeer: Architecture Clients Perform fine grain blob accesses Providers Store the pages of the blob Provider manager Monitors the providers Favours data load balancing  Metadata providers Store information about page location Version manager Ensures concurrency control Clients Providers Metadata providers Provider  manager Version  manager
BlobSeer: What may be refined Hotspots/fault-tolerance  Fixed single version manager Fixed provider manager Load balancing Version manager, provider manager may become hotspots Fixed metadata providers
BlobSeer: What I am thinking of
Background: Lighting-weigh DHT(may not correct) Using consistent hashing to hash distribute keys Load balancing Fault tolerance Elasticity Lookup cost: O(1) Base on Gossip overlay (borrowed from NoSQL world) Or base on Kelips P2P prototype (I have just know about it) Given a key, node know the destination exactly in most cases Overhead: OK ref. NoSQL world (Facebook Cassandra, Amazon Dynamo, Voldermort) I will try solving my given problems by building BlobSeer on top of this DHT
Distributed version managers Distributed version managers: A 2 levels Splitting BLOB_ID namespace DHT-based Fortunately, blob is independent from each other  Hash (BLOB_ID) => ID of version manager server Splitting version ID’s space per BLOB Easily Rely on DHT replication Hash (BLOB_ID) => {neighbouring version managers} Lookup cost = O(1), equally to BlobSeer
Concurrent writing/appending need to be serialized On master Blob.getlatest() Blob.write() Blob.append() Access to history versions Randomly on {master, slaves} Blob.read() Blob.getsize() Ask Master only in case of necessary Master periodically PUTS OR Slaves PULL versions to do serialization Version info is quite tiny
Eliminate the provider manager Provider manager keeps cluster state to answer clients’ requests Lookup costs O(1) Providers can learn themselves about the system state Load and Load balancing?? Lookup costs O(1) Use the presented DHT overlay to propagate providers’ states Gossip-based (limited in cluster size around 1000 but it is still good) Or a lighting version of P2P overlay (E.g. Kelips) Hotspot when increasing number of clients, providers Client randomly asks any providers
However !!! We will not want to use consistent hashing  
Architecture Version managers, metadata managers, providers, clients DHT with consistent hashing Distributed membership management Gossip based Zookeeper (like Google’s chubby) Replication, fault tolerance, leader election
Access scenarios Reading Hash blobID to know its associated version manager Go down the metadata tree Access providers O(1) for any step and equal to the current BlobSeer design Writing The same as in BlobSeer but no provider manager
Overview of the implementation Gossip based DHT We need 3 hash namespaces Version managers Metadata providers Providers Elasticity Is inherent if we use consistent hashing  for DHT Fault-tolerance DHT based Load balancing DHT based
Advantages Still keeping the current nice features of BlobSeer Monolithic-based design Node provides all capabilities as a client, a version manager, a metadata manager and a provider Simpler/easier for configuration/deployment  (autonomic feature?) Load balancing Fault tolerance Elasticity Compare to NoSQL key/value store Efficient one key/ a value of TB size (versioning, throughput)
Some more discussions If client is outside of BlobSeer storage cloud, client randomly chooses one node to communicate. Node is as a proxy server (Cassandra) We may need a small number of version manager, metadata managers Leader election (can base on Apache Zookeeper) If we fix them, we will reduce overhead at DHT level BlobSeer cloud Client
BlobSeer in NoSQL paradigm Document stores Column stores
{pages} distribution BlobSeer’s approach Distribute {pages} over different providers {pages} are mapped to physical addresses of providers directly DHT’s  approach DHT is used only to know how has {pages} but not to route {pages} Must find a good way: {pages} of single write should be distributed over different providers? [YES or NO] Hopefully, page keys are picked by client in BlobSeer DHT load balancing DHT fault-tolerance Lookup cost: O(1)
Eliminate the provider manager Provider manager keeps cluster state to answer clients’ requests Lookup costs O(1) Hotspot when increasing number of clients, providers Providers can learn themselves about the system state Lookup costs O(1) Use the presented DHT overlay to propagate providers’ states Gossip-based (limited in cluster size around 1000 but it is still good) Or a lighting version of P2P overlay (E.g. Kelips) Need a good way to distribute {pages} of each separated write operation over DHT? BlobSeer’s approach DHT’s approach

More Related Content

PDF
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
PDF
What's new in apache pulsar 2.4.0
PDF
Infinite Topic Backlogs with Apache Pulsar
PDF
How Zhaopin contributes to Pulsar community
PDF
Introduction to Apache BookKeeper Distributed Storage
PDF
Coherence Implementation Patterns - Sig Nov 2011
PDF
Apache BookKeeper: A High Performance and Low Latency Storage Service
PDF
Kafka Overview
Introduction and Overview of Apache Kafka, TriHUG July 23, 2013
What's new in apache pulsar 2.4.0
Infinite Topic Backlogs with Apache Pulsar
How Zhaopin contributes to Pulsar community
Introduction to Apache BookKeeper Distributed Storage
Coherence Implementation Patterns - Sig Nov 2011
Apache BookKeeper: A High Performance and Low Latency Storage Service
Kafka Overview

What's hot (20)

PPTX
APACHE KAFKA / Kafka Connect / Kafka Streams
PDF
Apache con2016final
PDF
High performance messaging with Apache Pulsar
PPTX
Apache kafka
PDF
Kafka on Pulsar
PDF
Cloud Messaging Service: Technical Overview
PPTX
Apache Kafka - Messaging System Overview
PDF
Bookie storage - Apache BookKeeper Meetup - 2015-06-28
PDF
Transaction Support in Pulsar 2.5.0
PDF
Kafka meetup - kafka connect
PPTX
Twitter Fatcache
PDF
Hands-on Workshop: Apache Pulsar
PDF
Data Pipelines with Apache Kafka
PDF
Kafka as Message Broker
PPTX
HBase: Where Online Meets Low Latency
PDF
Linked In Stream Processing Meetup - Apache Pulsar
PDF
Pulsar - Distributed pub/sub platform
PPTX
Modern Distributed Messaging and RPC
PPTX
Anypoint mq queues and exchanges
PDF
Kafka - Messaging System
APACHE KAFKA / Kafka Connect / Kafka Streams
Apache con2016final
High performance messaging with Apache Pulsar
Apache kafka
Kafka on Pulsar
Cloud Messaging Service: Technical Overview
Apache Kafka - Messaging System Overview
Bookie storage - Apache BookKeeper Meetup - 2015-06-28
Transaction Support in Pulsar 2.5.0
Kafka meetup - kafka connect
Twitter Fatcache
Hands-on Workshop: Apache Pulsar
Data Pipelines with Apache Kafka
Kafka as Message Broker
HBase: Where Online Meets Low Latency
Linked In Stream Processing Meetup - Apache Pulsar
Pulsar - Distributed pub/sub platform
Modern Distributed Messaging and RPC
Anypoint mq queues and exchanges
Kafka - Messaging System
Ad

Viewers also liked (8)

PPSX
Fuglar
PPTX
Fuglar rebekka
PPT
Vertis Overview
PPSX
Fuglar
PDF
3D Platform Tutorial
PPTX
Moldóva Slideshow
PDF
3 D Platform Tutorial
PDF
Taylor-fit Big Data Platform
Fuglar
Fuglar rebekka
Vertis Overview
Fuglar
3D Platform Tutorial
Moldóva Slideshow
3 D Platform Tutorial
Taylor-fit Big Data Platform
Ad

Similar to BlobSeer in NoSQL world (15)

PPT
Agents and P2P Networks
PPT
Introduction P2p
PPTX
CS8603 DS UNIT 5.pptx
PDF
Towards A Grid File System Based On A Large-Scale BLOB Management Service
PDF
Kraken mesoscon 2018
PPTX
handle data with DHT and load balnce over P2P network
PDF
OpenNebulaConf 2014 - Using Ceph to provide scalable storage for OpenNebula -...
PDF
OpenNebula Conf 2014 | Using Ceph to provide scalable storage for OpenNebula ...
PDF
KubeCon EU 2019 - P2P Docker Image Distribution in Hybrid Cloud Environment w...
ODP
Simple and Flexible DHTs
PPT
IETF-71 P2PSIP Clients
PDF
The International Journal of Engineering and Science (IJES)
PDF
Elliptics
PPTX
Semantic Web in the Fog of Browsers
PDF
Progress on adapting BlobSeer to WAN scale
Agents and P2P Networks
Introduction P2p
CS8603 DS UNIT 5.pptx
Towards A Grid File System Based On A Large-Scale BLOB Management Service
Kraken mesoscon 2018
handle data with DHT and load balnce over P2P network
OpenNebulaConf 2014 - Using Ceph to provide scalable storage for OpenNebula -...
OpenNebula Conf 2014 | Using Ceph to provide scalable storage for OpenNebula ...
KubeCon EU 2019 - P2P Docker Image Distribution in Hybrid Cloud Environment w...
Simple and Flexible DHTs
IETF-71 P2PSIP Clients
The International Journal of Engineering and Science (IJES)
Elliptics
Semantic Web in the Fog of Browsers
Progress on adapting BlobSeer to WAN scale

More from Viet-Trung TRAN (20)

PDF
Bắt đầu tìm hiểu về dữ liệu lớn như thế nào - 2017
PDF
Dynamo: Amazon’s Highly Available Key-value Store
PDF
Pregel: Hệ thống xử lý đồ thị lớn
PDF
Mapreduce simplified-data-processing
PDF
Tìm kiếm needle trong Haystack: Hệ thống lưu trữ ảnh của Facebook
PPTX
giasan.vn real-estate analytics: a Vietnam case study
PDF
Giasan.vn @rstars
PDF
A Vietnamese Language Model Based on Recurrent Neural Network
PDF
A Vietnamese Language Model Based on Recurrent Neural Network
PPTX
Large-Scale Geographically Weighted Regression on Spark
PDF
Recent progress on distributing deep learning
PDF
success factors for project proposals
PDF
GPSinsights poster
PPTX
OCR processing with deep learning: Apply to Vietnamese documents
PDF
Paper@Soict2015: GPSInsights: towards a scalable framework for mining massive...
PDF
Deep learning for nlp
PDF
Introduction to BigData @TCTK2015
PDF
From neural networks to deep learning
PDF
From decision trees to random forests
PPTX
Recommender systems: Content-based and collaborative filtering
Bắt đầu tìm hiểu về dữ liệu lớn như thế nào - 2017
Dynamo: Amazon’s Highly Available Key-value Store
Pregel: Hệ thống xử lý đồ thị lớn
Mapreduce simplified-data-processing
Tìm kiếm needle trong Haystack: Hệ thống lưu trữ ảnh của Facebook
giasan.vn real-estate analytics: a Vietnam case study
Giasan.vn @rstars
A Vietnamese Language Model Based on Recurrent Neural Network
A Vietnamese Language Model Based on Recurrent Neural Network
Large-Scale Geographically Weighted Regression on Spark
Recent progress on distributing deep learning
success factors for project proposals
GPSinsights poster
OCR processing with deep learning: Apply to Vietnamese documents
Paper@Soict2015: GPSInsights: towards a scalable framework for mining massive...
Deep learning for nlp
Introduction to BigData @TCTK2015
From neural networks to deep learning
From decision trees to random forests
Recommender systems: Content-based and collaborative filtering

Recently uploaded (20)

PDF
KodekX | Application Modernization Development
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Approach and Philosophy of On baking technology
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Encapsulation theory and applications.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Big Data Technologies - Introduction.pptx
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
Cloud computing and distributed systems.
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
KodekX | Application Modernization Development
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Approach and Philosophy of On baking technology
20250228 LYD VKU AI Blended-Learning.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Chapter 3 Spatial Domain Image Processing.pdf
Understanding_Digital_Forensics_Presentation.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Encapsulation theory and applications.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
Reach Out and Touch Someone: Haptics and Empathic Computing
Big Data Technologies - Introduction.pptx
Spectral efficient network and resource selection model in 5G networks
Cloud computing and distributed systems.
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
MIND Revenue Release Quarter 2 2025 Press Release
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Diabetes mellitus diagnosis method based random forest with bat algorithm

BlobSeer in NoSQL world

  • 1. BlobSeer Presented by Viet-Trung TRAN KerData Team
  • 2. BlobSeer: Architecture Clients Perform fine grain blob accesses Providers Store the pages of the blob Provider manager Monitors the providers Favours data load balancing Metadata providers Store information about page location Version manager Ensures concurrency control Clients Providers Metadata providers Provider manager Version manager
  • 3. BlobSeer: What may be refined Hotspots/fault-tolerance Fixed single version manager Fixed provider manager Load balancing Version manager, provider manager may become hotspots Fixed metadata providers
  • 4. BlobSeer: What I am thinking of
  • 5. Background: Lighting-weigh DHT(may not correct) Using consistent hashing to hash distribute keys Load balancing Fault tolerance Elasticity Lookup cost: O(1) Base on Gossip overlay (borrowed from NoSQL world) Or base on Kelips P2P prototype (I have just know about it) Given a key, node know the destination exactly in most cases Overhead: OK ref. NoSQL world (Facebook Cassandra, Amazon Dynamo, Voldermort) I will try solving my given problems by building BlobSeer on top of this DHT
  • 6. Distributed version managers Distributed version managers: A 2 levels Splitting BLOB_ID namespace DHT-based Fortunately, blob is independent from each other Hash (BLOB_ID) => ID of version manager server Splitting version ID’s space per BLOB Easily Rely on DHT replication Hash (BLOB_ID) => {neighbouring version managers} Lookup cost = O(1), equally to BlobSeer
  • 7. Concurrent writing/appending need to be serialized On master Blob.getlatest() Blob.write() Blob.append() Access to history versions Randomly on {master, slaves} Blob.read() Blob.getsize() Ask Master only in case of necessary Master periodically PUTS OR Slaves PULL versions to do serialization Version info is quite tiny
  • 8. Eliminate the provider manager Provider manager keeps cluster state to answer clients’ requests Lookup costs O(1) Providers can learn themselves about the system state Load and Load balancing?? Lookup costs O(1) Use the presented DHT overlay to propagate providers’ states Gossip-based (limited in cluster size around 1000 but it is still good) Or a lighting version of P2P overlay (E.g. Kelips) Hotspot when increasing number of clients, providers Client randomly asks any providers
  • 9. However !!! We will not want to use consistent hashing 
  • 10. Architecture Version managers, metadata managers, providers, clients DHT with consistent hashing Distributed membership management Gossip based Zookeeper (like Google’s chubby) Replication, fault tolerance, leader election
  • 11. Access scenarios Reading Hash blobID to know its associated version manager Go down the metadata tree Access providers O(1) for any step and equal to the current BlobSeer design Writing The same as in BlobSeer but no provider manager
  • 12. Overview of the implementation Gossip based DHT We need 3 hash namespaces Version managers Metadata providers Providers Elasticity Is inherent if we use consistent hashing for DHT Fault-tolerance DHT based Load balancing DHT based
  • 13. Advantages Still keeping the current nice features of BlobSeer Monolithic-based design Node provides all capabilities as a client, a version manager, a metadata manager and a provider Simpler/easier for configuration/deployment (autonomic feature?) Load balancing Fault tolerance Elasticity Compare to NoSQL key/value store Efficient one key/ a value of TB size (versioning, throughput)
  • 14. Some more discussions If client is outside of BlobSeer storage cloud, client randomly chooses one node to communicate. Node is as a proxy server (Cassandra) We may need a small number of version manager, metadata managers Leader election (can base on Apache Zookeeper) If we fix them, we will reduce overhead at DHT level BlobSeer cloud Client
  • 15. BlobSeer in NoSQL paradigm Document stores Column stores
  • 16. {pages} distribution BlobSeer’s approach Distribute {pages} over different providers {pages} are mapped to physical addresses of providers directly DHT’s approach DHT is used only to know how has {pages} but not to route {pages} Must find a good way: {pages} of single write should be distributed over different providers? [YES or NO] Hopefully, page keys are picked by client in BlobSeer DHT load balancing DHT fault-tolerance Lookup cost: O(1)
  • 17. Eliminate the provider manager Provider manager keeps cluster state to answer clients’ requests Lookup costs O(1) Hotspot when increasing number of clients, providers Providers can learn themselves about the system state Lookup costs O(1) Use the presented DHT overlay to propagate providers’ states Gossip-based (limited in cluster size around 1000 but it is still good) Or a lighting version of P2P overlay (E.g. Kelips) Need a good way to distribute {pages} of each separated write operation over DHT? BlobSeer’s approach DHT’s approach