Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-7285 Erasure Coding Support inside HDFS
  3. HDFS-7339

Representing striped block groups in NameNode with hierarchical naming protocol

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • None
    • None
    • None
    • Reviewed

    Description

      All erasure codec operations center around the concept of block group; they are formed in initial encoding and looked up in recoveries and conversions. A lightweight class BlockGroup is created to record the original and parity blocks in a coding group, as well as a pointer to the codec schema (pluggable codec schemas will be supported in HDFS-7337). With the striping layout, the HDFS client needs to operate on all blocks in a BlockGroup concurrently. Therefore we propose to extend a file’s inode to switch between contiguous and striping modes, with the current mode recorded in a binary flag. An array of BlockGroups (or BlockGroup IDs) is added, which remains empty for “traditional” HDFS files with contiguous block layout.

      The NameNode creates and maintains BlockGroup instances through the new ECManager component; the attached figure has an illustration of the architecture. As a simple example, when a {Striping+EC} file is created and written to, it will serve requests from the client to allocate new BlockGroups and store them under the INodeFile. In the current phase, BlockGroups are allocated both in initial online encoding and in the conversion from replication to EC. ECManager also facilitates the lookup of BlockGroup information for block recovery work.

      Attachments

        1. HDFS-7339-001.patch
          21 kB
          Zhe Zhang
        2. HDFS-7339-002.patch
          25 kB
          Zhe Zhang
        3. HDFS-7339-003.patch
          73 kB
          Zhe Zhang
        4. HDFS-7339-004.patch
          73 kB
          Zhe Zhang
        5. HDFS-7339-005.patch
          73 kB
          Zhe Zhang
        6. HDFS-7339-006.patch
          76 kB
          Zhe Zhang
        7. HDFS-7339-007.patch
          22 kB
          Zhe Zhang
        8. HDFS-7339-008.patch
          21 kB
          Zhe Zhang
        9. Meta-striping.jpg
          146 kB
          Zhe Zhang
        10. NN-stripping.jpg
          462 kB
          Zhe Zhang

        Activity

          People

            zhz Zhe Zhang
            zhz Zhe Zhang
            Votes:
            0 Vote for this issue
            Watchers:
            12 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: