[ 
https://issues.apache.org/jira/browse/HDFS-8286?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Haohui Mai updated HDFS-8286:
-----------------------------
    Attachment: hdfs-kv-design.pdf

The attachment outlines the architecture of the HDFS namespace over KV store. 
It describes how to encode the current namespace into KV schema, and how to 
implement existing features such as HA and snapshot under the proposed 
architecture.

One thing worth noting is that in the proposed design HDFS still keeps the 
namespace in the memory to smoothen the migration. What it means is that the 
implementation will be based on an in-memory KV store. Our preliminary 
evaluations of our prototype show that the architecture has comparable memory 
usage and performance w.r.t. HDFS today.

This jira can be seen as the Phase I implementation of HDFS-5389. In this jira 
we plan to focus on faithfully implementing the features that are available in 
HDFS today, and focusing on migrating from this architecture toward HDFS-5389 
in a later phase of implementation.

> Scaling out the namespace using KV store
> ----------------------------------------
>
>                 Key: HDFS-8286
>                 URL: https://issues.apache.org/jira/browse/HDFS-8286
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>            Reporter: Haohui Mai
>            Assignee: Haohui Mai
>         Attachments: hdfs-kv-design.pdf
>
>
> Currently the NN keeps the namespace in the memory. To improve the 
> scalability of the namespace, users can scale up by using more RAM or scale 
> out using Federation (i.e., statically partitioning the namespace).
> We would like to remove the limitation of scaling the global namespace. Our 
> vision is that that HDFS should adopt a scalable underlying architecture that 
> allows the global namespace scales linearly.
> We propose to implement the HDFS namespace on top of a key-value (KV) store. 
> Adopting the KV store interfaces allows HDFS to leverage the capability of 
> modern KV store and to become much easier to scale. Going forward, the 
> architecture allows distributing the namespace across multiple machines, or  
> storing only the working set in the memory (HDFS-5389), both of which allows  
> HDFS to manage billions of files using the commodity hardware available today.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to