Demystifying DHT in GlusterFS
Submitted by Ankit Raj (@a4nkit) on Monday, 10 April 2017
Section: Full talk of 40 mins duration Technical level: Intermediate
DHT is one of the core part of GlusterFS. The defining feature of any scale-out system is its ability to distribute work or data among many servers. And GlusterFS is the perfect porject when it comes to scale-out system. Here in DHT all operations are driven by the clients which are all equal. There are no metadata servers or special nodes which have any additional information about where the files are present or should go. Any additional information about file or directories are stored in the extended attributes or xattrs. Xattrs are filesystem features that enable users to associate files/dirs with metadata. They store information as key-value pairs. Proper distribution of data across the nodes is required which is solved by DHT.
Also, here we will discuss on how we manage scalabilty in GlusteFS.
In this talk I will cover the DHT major functions like layout distribution, placement of files, rebalancing, renaming operation. The main aim of this talk is to make folks familiar about the internal operations of DHT, why they need DHT and how DHT solve their problem.
What is GlusterFS?
How DHT solve the problem?
Major DHT fops.
How we managing scalability in GlusterFS?
How to contribute GlusterFS?
Ankit is an engineer by degree. Hustler by choice & storyteller by default. He has been working at Red Hat from last 8 months. Since then, he is contributing actively in DHT module of GLusterFS. He is working with Open Source community from his college days by contributing to Ruby, Ruby on Rails community. He was also the student contributor for GSoC-2015.