SlideShare a Scribd company logo
Giraffa 
A highly available, scalable, distributed file system 
PLAMEN JELIAZKOV & MILAN DESAI
Quick Introduction 
• Giraffa is a new file system. 
• Distributes it’s namespace by utilizing features of HDFS 
and HBase. 
• Open source project in experimental stage.
Design Principals 
• Linear scalability – more nodes can do more work within the same 
time. Scale data size and compute resources. 
• Reliability and availability – 1/1000 probability that a drive will fail 
today; on a large cluster with thousands of drives there can be 
several failures. 
• Move computation to data – minimize expensive data transfers. 
• Sequential data processing – avoid random reads. [Use HBase for 
random access].
Scalability Limits 
• Single-master architecture: a constraining resource 
• Single NameNode limits linear performance growth – a few 
bad clients / jobs can saturate the NameNode. 
• Single point of failure – takes entire File System out of 
service. 
• NameNode space limit: 
-- 100 million files and 200 million blocks with 64GB RAM 
-- Restricts storage capacity to about 20 PB 
-- Small file problem: block-to-file ratio is shrinking as people 
store more small files in HDFS. 
These are Konstantin’s own discoveries as published in 
“HDFS Scalability: The limits to growth”, USENIX;login: 2010.
The Goals for Giraffa 
• Support millions of concurrent clients 
- More servers -> higher concurrent connections can be accepted. 
• Store hundreds of billions of objects 
- More servers -> higher total memory. 
• Maintain Exabyte total storage capacity 
- More servers -> host more slaves -> higher total storage. 
Sharding the namespace achieves all three goals.
What About Federation? 
1. HDFS Federation allows independent NameNodes to share a 
common pool of DataNodes. 
2. In Federation, a user sees NameNodes as volumes, or as isolated 
file systems. 
Federation is a static approach to Namespace partitioning. 
We call it static because sub-trees are statically assigned to disjoint 
volumes. 
Relocating sub-trees to a new volume requires copying between file 
systems. 
A dynamic Namespace partitioning could move sub-trees 
automatically based on utilization or load-balancing requirements. 
In some cases, sub-trees could be relocated without copying data 
blocks.
VS
Giraffa Requirements 
Availability – the primary goal 
- Region splitting leads to load balancing of metadata traffic. 
- Same data streaming speed to / from DataNodes. 
- No SPOF. Continuous availability. 
Scalability 
- Each RegionServer stores a part of the namespace. 
Cluster operability 
- Cost running larger cluster is same as a smaller one. 
- But, running multiple clusters is more expensive.
The Big Picture 
1. Use HBase to store HDFS Namespace metadata. 
2. DataNodes continue to store HDFS blocks. 
3. Introduce coprocessors to act as communication layer between 
HBase, HDFS, and the file system. 
4. Store files and directories as rows in HBase. 
A Giraffa “shard” consists of: 
HBase RegionServer 
HDFS NameNode – to be replaced with Giraffa BlockManager. 
HDFS DataNode(s) 
*HBase Master 
*ZooKeeper(s) 
* == Not required per shard, but necessary within the network.
Giraffa File System 
• fs.defaultFS = grfa:/// 
• fs.grfa.impl = org.apache.giraffa.GiraffaFileSystem 
• Namespace is cached in RegionServer RAM. 
• Regions lead to dynamic Namespace partitioning. 
• Block management handled by specialized RegionObserver 
coprocessor to handle communication to DataNodes -> performs 
block allocation, replication, deletion, heartbeats, and block 
reports. 
• Namespace manipulation handled by specialized coprocessor -> 
performs all NameNode RPC Server calls.
NamespaceAgent 
Quick run through of this class: 
1. Implements ClientProtocol. Not a coprocessor. 
2. Replaces NameNode RPC channel for GiraffaClient 
(which extends DFSClient and is the client used by 
GiraffaFileSystem class). 
3. Has an HBaseClient member that communicates RPC 
requests to the NamespaceProcessor coprocessor of a 
RegionServer.
Namespace Table 
Single HBase table called “Namespace” stores: 
1. A RowKey: the bytes that identify the row and therefore 
the file / directory. 
2. File attributes: name, owner, group, permissions, access-time, 
modification-time, block size, replication, length. 
3. List of blocks for the file. 
4. List of block locations. 
5. State of the file: under construction, closed.
Row Keys 
• Files and directories are stored as rows in HBase. 
• The key bytes of a row determine its sorting in the Namespace 
table. 
• Different RowKey definitions change locality of files and 
directories within the HBase region. 
• FullPathRowKey is the default implementation. The key bytes 
of the row are the full source path to the file or directory. 
-- Problem: Renames may cause row to move to another Region. 
• Another idea is NumberedRowKey. The key bytes are some 
decided number. 
-- Problem: You lose locality within HBase Namespace table.
Locality of Reference 
• Traditional tree structured namespace is flattened into 
linear array. 
• Ordered list of files is self-partitioned into regions. 
• RowKey implementations define sorting of files and 
directories in the table. 
• Files in the same directory will belong to the same region 
(most of the time). 
-- This leads to an efficient “ls” implementation by purely 
scanning across a Region.
Giraffa Today 
A lot of work has been done by the current team, the newest to 
date are: 
• Introduction of custom Giraffa WebUI. 
• Atomic in-place rename, non-atomic moves, and non-atomic 
move failure recovery. 
• Serializing Exceptions over RPC. 
• Support for YARN. 
• (Coming soon) Introduction of Lease management.
Neat Futures 
• Full Hadoop compatibility / HDFS replacement. We are 96% 
compliant with hadoop/hdfs shell today. Shown by passing 
bulk of TestHDFSCLI. Missing dfsadmin commands today. 
• Since file system metadata lives among the same pool as 
regular data, it is possible to deploy analytics and obtain 
detailed analysis of your own file system. 
• Snapshot implementation becomes a matter of increasing the 
number of versions of a row allowed in HBase. 
• Extended attributes implementation just mean adding a new 
column to the file row.
History 
2009 – Study on scalability limits. 
2010 – Konstantin Shvachko works on design with Michael Stack; 
presentation at HDFS contributors meeting. 
2011 – Plamen Jeliazkov implements first POC. 
2012 – Presented at Hadoop Summit. Open sourced as Apache 
Extra’s project. 
2013 – Milan Desai and Konstantin Pelykh added as committers. 
Konstantin Boudnik as a contributor. 
2014 – Giraffa Scalability tested – ~46,300 mkdirs / second with 64 
RegionServer nodes and 64 client nodes.
?’s
DEMO TIME! 
LINKS TO PROJECT WEBSITE BELOW 
http://apache-extras.org/p/giraffa/ 
https://code.google.com 
/a/apache-extras.org/p/giraffa/

More Related Content

What's hot

presentation_Hadoop_File_System
presentation_Hadoop_File_Systempresentation_Hadoop_File_System
presentation_Hadoop_File_System
Brett Keim
 
Apache hadoop hbase
Apache hadoop hbaseApache hadoop hbase
Apache hadoop hbase
sheetal sharma
 
Facebook keynote-nicolas-qcon
Facebook keynote-nicolas-qconFacebook keynote-nicolas-qcon
Facebook keynote-nicolas-qcon
Yiwei Ma
 
Aziksa hadoop architecture santosh jha
Aziksa hadoop architecture santosh jhaAziksa hadoop architecture santosh jha
Aziksa hadoop architecture santosh jha
Data Con LA
 
Hadoop distributed file system
Hadoop distributed file systemHadoop distributed file system
Hadoop distributed file system
Anshul Bhatnagar
 
Apache Hadoop YARN, NameNode HA, HDFS Federation
Apache Hadoop YARN, NameNode HA, HDFS FederationApache Hadoop YARN, NameNode HA, HDFS Federation
Apache Hadoop YARN, NameNode HA, HDFS Federation
Adam Kawa
 
Hadoop Distributed File System
Hadoop Distributed File SystemHadoop Distributed File System
Hadoop Distributed File System
Anand Kulkarni
 
Apache HBase for Architects
Apache HBase for ArchitectsApache HBase for Architects
Apache HBase for Architects
Nick Dimiduk
 
Introduction to hadoop and hdfs
Introduction to hadoop and hdfsIntroduction to hadoop and hdfs
Introduction to hadoop and hdfs
shrey mehrotra
 
Hbase: an introduction
Hbase: an introductionHbase: an introduction
Hbase: an introduction
Jean-Baptiste Poullet
 
Hadoop Distributed File System
Hadoop Distributed File SystemHadoop Distributed File System
Hadoop Distributed File System
Rutvik Bapat
 
Hadoop File system (HDFS)
Hadoop File system (HDFS)Hadoop File system (HDFS)
Hadoop File system (HDFS)
Prashant Gupta
 
HBaseCon 2013: Compaction Improvements in Apache HBase
HBaseCon 2013: Compaction Improvements in Apache HBaseHBaseCon 2013: Compaction Improvements in Apache HBase
HBaseCon 2013: Compaction Improvements in Apache HBase
Cloudera, Inc.
 
In-memory Caching in HDFS: Lower Latency, Same Great Taste
In-memory Caching in HDFS: Lower Latency, Same Great TasteIn-memory Caching in HDFS: Lower Latency, Same Great Taste
In-memory Caching in HDFS: Lower Latency, Same Great Taste
DataWorks Summit
 
HBase and HDFS: Understanding FileSystem Usage in HBase
HBase and HDFS: Understanding FileSystem Usage in HBaseHBase and HDFS: Understanding FileSystem Usage in HBase
HBase and HDFS: Understanding FileSystem Usage in HBase
enissoz
 
HBase Advanced Schema Design - Berlin Buzzwords - June 2012
HBase Advanced Schema Design - Berlin Buzzwords - June 2012HBase Advanced Schema Design - Berlin Buzzwords - June 2012
HBase Advanced Schema Design - Berlin Buzzwords - June 2012
larsgeorge
 
Oct 2012 HUG: Hadoop .Next (0.23) - Customer Impact and Deployment
Oct 2012 HUG: Hadoop .Next (0.23) - Customer Impact and DeploymentOct 2012 HUG: Hadoop .Next (0.23) - Customer Impact and Deployment
Oct 2012 HUG: Hadoop .Next (0.23) - Customer Impact and Deployment
Yahoo Developer Network
 
Cross-DC Fault-Tolerant ViewFileSystem @ Twitter
Cross-DC Fault-Tolerant ViewFileSystem @ TwitterCross-DC Fault-Tolerant ViewFileSystem @ Twitter
Cross-DC Fault-Tolerant ViewFileSystem @ Twitter
DataWorks Summit/Hadoop Summit
 
HBaseCon 2012 | Content Addressable Storages for Fun and Profit - Berk Demir,...
HBaseCon 2012 | Content Addressable Storages for Fun and Profit - Berk Demir,...HBaseCon 2012 | Content Addressable Storages for Fun and Profit - Berk Demir,...
HBaseCon 2012 | Content Addressable Storages for Fun and Profit - Berk Demir,...
Cloudera, Inc.
 
HBase Accelerated: In-Memory Flush and Compaction
HBase Accelerated: In-Memory Flush and CompactionHBase Accelerated: In-Memory Flush and Compaction
HBase Accelerated: In-Memory Flush and Compaction
DataWorks Summit/Hadoop Summit
 

What's hot (20)

presentation_Hadoop_File_System
presentation_Hadoop_File_Systempresentation_Hadoop_File_System
presentation_Hadoop_File_System
 
Apache hadoop hbase
Apache hadoop hbaseApache hadoop hbase
Apache hadoop hbase
 
Facebook keynote-nicolas-qcon
Facebook keynote-nicolas-qconFacebook keynote-nicolas-qcon
Facebook keynote-nicolas-qcon
 
Aziksa hadoop architecture santosh jha
Aziksa hadoop architecture santosh jhaAziksa hadoop architecture santosh jha
Aziksa hadoop architecture santosh jha
 
Hadoop distributed file system
Hadoop distributed file systemHadoop distributed file system
Hadoop distributed file system
 
Apache Hadoop YARN, NameNode HA, HDFS Federation
Apache Hadoop YARN, NameNode HA, HDFS FederationApache Hadoop YARN, NameNode HA, HDFS Federation
Apache Hadoop YARN, NameNode HA, HDFS Federation
 
Hadoop Distributed File System
Hadoop Distributed File SystemHadoop Distributed File System
Hadoop Distributed File System
 
Apache HBase for Architects
Apache HBase for ArchitectsApache HBase for Architects
Apache HBase for Architects
 
Introduction to hadoop and hdfs
Introduction to hadoop and hdfsIntroduction to hadoop and hdfs
Introduction to hadoop and hdfs
 
Hbase: an introduction
Hbase: an introductionHbase: an introduction
Hbase: an introduction
 
Hadoop Distributed File System
Hadoop Distributed File SystemHadoop Distributed File System
Hadoop Distributed File System
 
Hadoop File system (HDFS)
Hadoop File system (HDFS)Hadoop File system (HDFS)
Hadoop File system (HDFS)
 
HBaseCon 2013: Compaction Improvements in Apache HBase
HBaseCon 2013: Compaction Improvements in Apache HBaseHBaseCon 2013: Compaction Improvements in Apache HBase
HBaseCon 2013: Compaction Improvements in Apache HBase
 
In-memory Caching in HDFS: Lower Latency, Same Great Taste
In-memory Caching in HDFS: Lower Latency, Same Great TasteIn-memory Caching in HDFS: Lower Latency, Same Great Taste
In-memory Caching in HDFS: Lower Latency, Same Great Taste
 
HBase and HDFS: Understanding FileSystem Usage in HBase
HBase and HDFS: Understanding FileSystem Usage in HBaseHBase and HDFS: Understanding FileSystem Usage in HBase
HBase and HDFS: Understanding FileSystem Usage in HBase
 
HBase Advanced Schema Design - Berlin Buzzwords - June 2012
HBase Advanced Schema Design - Berlin Buzzwords - June 2012HBase Advanced Schema Design - Berlin Buzzwords - June 2012
HBase Advanced Schema Design - Berlin Buzzwords - June 2012
 
Oct 2012 HUG: Hadoop .Next (0.23) - Customer Impact and Deployment
Oct 2012 HUG: Hadoop .Next (0.23) - Customer Impact and DeploymentOct 2012 HUG: Hadoop .Next (0.23) - Customer Impact and Deployment
Oct 2012 HUG: Hadoop .Next (0.23) - Customer Impact and Deployment
 
Cross-DC Fault-Tolerant ViewFileSystem @ Twitter
Cross-DC Fault-Tolerant ViewFileSystem @ TwitterCross-DC Fault-Tolerant ViewFileSystem @ Twitter
Cross-DC Fault-Tolerant ViewFileSystem @ Twitter
 
HBaseCon 2012 | Content Addressable Storages for Fun and Profit - Berk Demir,...
HBaseCon 2012 | Content Addressable Storages for Fun and Profit - Berk Demir,...HBaseCon 2012 | Content Addressable Storages for Fun and Profit - Berk Demir,...
HBaseCon 2012 | Content Addressable Storages for Fun and Profit - Berk Demir,...
 
HBase Accelerated: In-Memory Flush and Compaction
HBase Accelerated: In-Memory Flush and CompactionHBase Accelerated: In-Memory Flush and Compaction
HBase Accelerated: In-Memory Flush and Compaction
 

Similar to Giraffa - November 2014

Hadoop - HDFS
Hadoop - HDFSHadoop - HDFS
Hadoop - HDFS
KavyaGo
 
Apache hadoop basics
Apache hadoop basicsApache hadoop basics
Apache hadoop basics
saili mane
 
Topic 9a-Hadoop Storage- HDFS.pptx
Topic 9a-Hadoop Storage- HDFS.pptxTopic 9a-Hadoop Storage- HDFS.pptx
Topic 9a-Hadoop Storage- HDFS.pptx
DanishMahmood23
 
Hadoop data management
Hadoop data managementHadoop data management
Hadoop data management
Subhas Kumar Ghosh
 
Chapter2.pdf
Chapter2.pdfChapter2.pdf
Chapter2.pdf
WasyihunSema2
 
Dynamic Namespace Partitioning with Giraffa File System
Dynamic Namespace Partitioning with Giraffa File SystemDynamic Namespace Partitioning with Giraffa File System
Dynamic Namespace Partitioning with Giraffa File System
DataWorks Summit
 
Big Data Architecture Workshop - Vahid Amiri
Big Data Architecture Workshop -  Vahid AmiriBig Data Architecture Workshop -  Vahid Amiri
Big Data Architecture Workshop - Vahid Amiri
datastack
 
module 2.pptx
module 2.pptxmodule 2.pptx
module 2.pptx
ssuser6e8e41
 
Data Analytics presentation.pptx
Data Analytics presentation.pptxData Analytics presentation.pptx
Data Analytics presentation.pptx
SwarnaSLcse
 
Big Data and Hadoop - History, Technical Deep Dive, and Industry Trends
Big Data and Hadoop - History, Technical Deep Dive, and Industry TrendsBig Data and Hadoop - History, Technical Deep Dive, and Industry Trends
Big Data and Hadoop - History, Technical Deep Dive, and Industry Trends
Esther Kundin
 
HDFS Deep Dive
HDFS Deep DiveHDFS Deep Dive
HDFS Deep Dive
Zoltan C. Toth
 
Big Data and Hadoop - History, Technical Deep Dive, and Industry Trends
Big Data and Hadoop - History, Technical Deep Dive, and Industry TrendsBig Data and Hadoop - History, Technical Deep Dive, and Industry Trends
Big Data and Hadoop - History, Technical Deep Dive, and Industry Trends
Esther Kundin
 
Hadoop training in bangalore
Hadoop training in bangaloreHadoop training in bangalore
Hadoop training in bangalore
Kelly Technologies
 
HDFS
HDFSHDFS
Hadoop Distributed File System
Hadoop Distributed File SystemHadoop Distributed File System
Hadoop Distributed File System
elliando dias
 
Introduction to HDFS and MapReduce
Introduction to HDFS and MapReduceIntroduction to HDFS and MapReduce
Introduction to HDFS and MapReduce
Derek Chen
 
Big data Hadoop
Big data  Hadoop   Big data  Hadoop
Big data Hadoop
Ayyappan Paramesh
 
Hadoop File System.pptx
Hadoop File System.pptxHadoop File System.pptx
Hadoop File System.pptx
AakashBerlia1
 
Big Data Reverse Knowledge Transfer.pptx
Big Data Reverse Knowledge Transfer.pptxBig Data Reverse Knowledge Transfer.pptx
Big Data Reverse Knowledge Transfer.pptx
ssuser8c3ea7
 
Hadoop overview.pdf
Hadoop overview.pdfHadoop overview.pdf
Hadoop overview.pdf
Sunil D Patil
 

Similar to Giraffa - November 2014 (20)

Hadoop - HDFS
Hadoop - HDFSHadoop - HDFS
Hadoop - HDFS
 
Apache hadoop basics
Apache hadoop basicsApache hadoop basics
Apache hadoop basics
 
Topic 9a-Hadoop Storage- HDFS.pptx
Topic 9a-Hadoop Storage- HDFS.pptxTopic 9a-Hadoop Storage- HDFS.pptx
Topic 9a-Hadoop Storage- HDFS.pptx
 
Hadoop data management
Hadoop data managementHadoop data management
Hadoop data management
 
Chapter2.pdf
Chapter2.pdfChapter2.pdf
Chapter2.pdf
 
Dynamic Namespace Partitioning with Giraffa File System
Dynamic Namespace Partitioning with Giraffa File SystemDynamic Namespace Partitioning with Giraffa File System
Dynamic Namespace Partitioning with Giraffa File System
 
Big Data Architecture Workshop - Vahid Amiri
Big Data Architecture Workshop -  Vahid AmiriBig Data Architecture Workshop -  Vahid Amiri
Big Data Architecture Workshop - Vahid Amiri
 
module 2.pptx
module 2.pptxmodule 2.pptx
module 2.pptx
 
Data Analytics presentation.pptx
Data Analytics presentation.pptxData Analytics presentation.pptx
Data Analytics presentation.pptx
 
Big Data and Hadoop - History, Technical Deep Dive, and Industry Trends
Big Data and Hadoop - History, Technical Deep Dive, and Industry TrendsBig Data and Hadoop - History, Technical Deep Dive, and Industry Trends
Big Data and Hadoop - History, Technical Deep Dive, and Industry Trends
 
HDFS Deep Dive
HDFS Deep DiveHDFS Deep Dive
HDFS Deep Dive
 
Big Data and Hadoop - History, Technical Deep Dive, and Industry Trends
Big Data and Hadoop - History, Technical Deep Dive, and Industry TrendsBig Data and Hadoop - History, Technical Deep Dive, and Industry Trends
Big Data and Hadoop - History, Technical Deep Dive, and Industry Trends
 
Hadoop training in bangalore
Hadoop training in bangaloreHadoop training in bangalore
Hadoop training in bangalore
 
HDFS
HDFSHDFS
HDFS
 
Hadoop Distributed File System
Hadoop Distributed File SystemHadoop Distributed File System
Hadoop Distributed File System
 
Introduction to HDFS and MapReduce
Introduction to HDFS and MapReduceIntroduction to HDFS and MapReduce
Introduction to HDFS and MapReduce
 
Big data Hadoop
Big data  Hadoop   Big data  Hadoop
Big data Hadoop
 
Hadoop File System.pptx
Hadoop File System.pptxHadoop File System.pptx
Hadoop File System.pptx
 
Big Data Reverse Knowledge Transfer.pptx
Big Data Reverse Knowledge Transfer.pptxBig Data Reverse Knowledge Transfer.pptx
Big Data Reverse Knowledge Transfer.pptx
 
Hadoop overview.pdf
Hadoop overview.pdfHadoop overview.pdf
Hadoop overview.pdf
 

Recently uploaded

A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMSA SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
IJNSA Journal
 
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesHarnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Christina Lin
 
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECT
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECTCHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECT
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECT
jpsjournal1
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
KrishnaveniKrishnara1
 
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
ihlasbinance2003
 
DfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributionsDfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributions
gestioneergodomus
 
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdfIron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
RadiNasr
 
2. Operations Strategy in a Global Environment.ppt
2. Operations Strategy in a Global Environment.ppt2. Operations Strategy in a Global Environment.ppt
2. Operations Strategy in a Global Environment.ppt
PuktoonEngr
 
Manufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptxManufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptx
Madan Karki
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
MDSABBIROJJAMANPAYEL
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
insn4465
 
ML Based Model for NIDS MSc Updated Presentation.v2.pptx
ML Based Model for NIDS MSc Updated Presentation.v2.pptxML Based Model for NIDS MSc Updated Presentation.v2.pptx
ML Based Model for NIDS MSc Updated Presentation.v2.pptx
JamalHussainArman
 
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
IJECEIAES
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
heavyhaig
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
Aditya Rajan Patra
 
ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
Rahul
 
Heat Resistant Concrete Presentation ppt
Heat Resistant Concrete Presentation pptHeat Resistant Concrete Presentation ppt
Heat Resistant Concrete Presentation ppt
mamunhossenbd75
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
Madan Karki
 
132/33KV substation case study Presentation
132/33KV substation case study Presentation132/33KV substation case study Presentation
132/33KV substation case study Presentation
kandramariana6
 
Question paper of renewable energy sources
Question paper of renewable energy sourcesQuestion paper of renewable energy sources
Question paper of renewable energy sources
mahammadsalmanmech
 

Recently uploaded (20)

A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMSA SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
 
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesHarnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
 
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECT
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECTCHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECT
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECT
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
 
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
 
DfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributionsDfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributions
 
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdfIron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
Iron and Steel Technology Roadmap - Towards more sustainable steelmaking.pdf
 
2. Operations Strategy in a Global Environment.ppt
2. Operations Strategy in a Global Environment.ppt2. Operations Strategy in a Global Environment.ppt
2. Operations Strategy in a Global Environment.ppt
 
Manufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptxManufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptx
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
 
ML Based Model for NIDS MSc Updated Presentation.v2.pptx
ML Based Model for NIDS MSc Updated Presentation.v2.pptxML Based Model for NIDS MSc Updated Presentation.v2.pptx
ML Based Model for NIDS MSc Updated Presentation.v2.pptx
 
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
 
ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
 
Heat Resistant Concrete Presentation ppt
Heat Resistant Concrete Presentation pptHeat Resistant Concrete Presentation ppt
Heat Resistant Concrete Presentation ppt
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
 
132/33KV substation case study Presentation
132/33KV substation case study Presentation132/33KV substation case study Presentation
132/33KV substation case study Presentation
 
Question paper of renewable energy sources
Question paper of renewable energy sourcesQuestion paper of renewable energy sources
Question paper of renewable energy sources
 

Giraffa - November 2014

  • 1. Giraffa A highly available, scalable, distributed file system PLAMEN JELIAZKOV & MILAN DESAI
  • 2. Quick Introduction • Giraffa is a new file system. • Distributes it’s namespace by utilizing features of HDFS and HBase. • Open source project in experimental stage.
  • 3. Design Principals • Linear scalability – more nodes can do more work within the same time. Scale data size and compute resources. • Reliability and availability – 1/1000 probability that a drive will fail today; on a large cluster with thousands of drives there can be several failures. • Move computation to data – minimize expensive data transfers. • Sequential data processing – avoid random reads. [Use HBase for random access].
  • 4. Scalability Limits • Single-master architecture: a constraining resource • Single NameNode limits linear performance growth – a few bad clients / jobs can saturate the NameNode. • Single point of failure – takes entire File System out of service. • NameNode space limit: -- 100 million files and 200 million blocks with 64GB RAM -- Restricts storage capacity to about 20 PB -- Small file problem: block-to-file ratio is shrinking as people store more small files in HDFS. These are Konstantin’s own discoveries as published in “HDFS Scalability: The limits to growth”, USENIX;login: 2010.
  • 5. The Goals for Giraffa • Support millions of concurrent clients - More servers -> higher concurrent connections can be accepted. • Store hundreds of billions of objects - More servers -> higher total memory. • Maintain Exabyte total storage capacity - More servers -> host more slaves -> higher total storage. Sharding the namespace achieves all three goals.
  • 6. What About Federation? 1. HDFS Federation allows independent NameNodes to share a common pool of DataNodes. 2. In Federation, a user sees NameNodes as volumes, or as isolated file systems. Federation is a static approach to Namespace partitioning. We call it static because sub-trees are statically assigned to disjoint volumes. Relocating sub-trees to a new volume requires copying between file systems. A dynamic Namespace partitioning could move sub-trees automatically based on utilization or load-balancing requirements. In some cases, sub-trees could be relocated without copying data blocks.
  • 7. VS
  • 8. Giraffa Requirements Availability – the primary goal - Region splitting leads to load balancing of metadata traffic. - Same data streaming speed to / from DataNodes. - No SPOF. Continuous availability. Scalability - Each RegionServer stores a part of the namespace. Cluster operability - Cost running larger cluster is same as a smaller one. - But, running multiple clusters is more expensive.
  • 9. The Big Picture 1. Use HBase to store HDFS Namespace metadata. 2. DataNodes continue to store HDFS blocks. 3. Introduce coprocessors to act as communication layer between HBase, HDFS, and the file system. 4. Store files and directories as rows in HBase. A Giraffa “shard” consists of: HBase RegionServer HDFS NameNode – to be replaced with Giraffa BlockManager. HDFS DataNode(s) *HBase Master *ZooKeeper(s) * == Not required per shard, but necessary within the network.
  • 10.
  • 11. Giraffa File System • fs.defaultFS = grfa:/// • fs.grfa.impl = org.apache.giraffa.GiraffaFileSystem • Namespace is cached in RegionServer RAM. • Regions lead to dynamic Namespace partitioning. • Block management handled by specialized RegionObserver coprocessor to handle communication to DataNodes -> performs block allocation, replication, deletion, heartbeats, and block reports. • Namespace manipulation handled by specialized coprocessor -> performs all NameNode RPC Server calls.
  • 12. NamespaceAgent Quick run through of this class: 1. Implements ClientProtocol. Not a coprocessor. 2. Replaces NameNode RPC channel for GiraffaClient (which extends DFSClient and is the client used by GiraffaFileSystem class). 3. Has an HBaseClient member that communicates RPC requests to the NamespaceProcessor coprocessor of a RegionServer.
  • 13. Namespace Table Single HBase table called “Namespace” stores: 1. A RowKey: the bytes that identify the row and therefore the file / directory. 2. File attributes: name, owner, group, permissions, access-time, modification-time, block size, replication, length. 3. List of blocks for the file. 4. List of block locations. 5. State of the file: under construction, closed.
  • 14. Row Keys • Files and directories are stored as rows in HBase. • The key bytes of a row determine its sorting in the Namespace table. • Different RowKey definitions change locality of files and directories within the HBase region. • FullPathRowKey is the default implementation. The key bytes of the row are the full source path to the file or directory. -- Problem: Renames may cause row to move to another Region. • Another idea is NumberedRowKey. The key bytes are some decided number. -- Problem: You lose locality within HBase Namespace table.
  • 15. Locality of Reference • Traditional tree structured namespace is flattened into linear array. • Ordered list of files is self-partitioned into regions. • RowKey implementations define sorting of files and directories in the table. • Files in the same directory will belong to the same region (most of the time). -- This leads to an efficient “ls” implementation by purely scanning across a Region.
  • 16. Giraffa Today A lot of work has been done by the current team, the newest to date are: • Introduction of custom Giraffa WebUI. • Atomic in-place rename, non-atomic moves, and non-atomic move failure recovery. • Serializing Exceptions over RPC. • Support for YARN. • (Coming soon) Introduction of Lease management.
  • 17. Neat Futures • Full Hadoop compatibility / HDFS replacement. We are 96% compliant with hadoop/hdfs shell today. Shown by passing bulk of TestHDFSCLI. Missing dfsadmin commands today. • Since file system metadata lives among the same pool as regular data, it is possible to deploy analytics and obtain detailed analysis of your own file system. • Snapshot implementation becomes a matter of increasing the number of versions of a row allowed in HBase. • Extended attributes implementation just mean adding a new column to the file row.
  • 18. History 2009 – Study on scalability limits. 2010 – Konstantin Shvachko works on design with Michael Stack; presentation at HDFS contributors meeting. 2011 – Plamen Jeliazkov implements first POC. 2012 – Presented at Hadoop Summit. Open sourced as Apache Extra’s project. 2013 – Milan Desai and Konstantin Pelykh added as committers. Konstantin Boudnik as a contributor. 2014 – Giraffa Scalability tested – ~46,300 mkdirs / second with 64 RegionServer nodes and 64 client nodes.
  • 19. ?’s
  • 20. DEMO TIME! LINKS TO PROJECT WEBSITE BELOW http://apache-extras.org/p/giraffa/ https://code.google.com /a/apache-extras.org/p/giraffa/