Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-1134

Block level CRCs in HDFS

VotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.14.0
    • None
    • None

    Description

      Currently CRCs are handled at FileSystem level and are transparent to core HDFS. See recent improvement HADOOP-928 ( that can add checksums to a given filesystem ) regd more about it. Though this served us well there a few disadvantages :

      1) This doubles namespace in HDFS ( or other filesystem implementations ). In many cases, it nearly doubles the number of blocks. Taking namenode out of CRCs would nearly double namespace performance both in terms of CPU and memory.

      2) Since CRCs are transparent to HDFS, it can not actively detect corrupted blocks. With block level CRCs, Datanode can periodically verify the checksums and report corruptions to namnode such that name replicas can be created.

      We propose to have CRCs maintained for all HDFS data in much the same way as in GFS. I will update the jira with detailed requirements and design. This will include same guarantees provided by current implementation and will include a upgrade of current data.

      Attachments

        1. readBuffer.java
          1.0 kB
          Raghu Angadi
        2. BlockLevelCrc-07032007.patch
          168 kB
          Raghu Angadi
        3. BlockLevelCrc-07052007.patch
          178 kB
          Raghu Angadi
        4. BlockLevelCrc-07062007.patch
          177 kB
          Raghu Angadi
        5. BlockLevelCrc-07102007.patch
          186 kB
          Raghu Angadi
        6. BlockLevelCrc-07122007.patch
          193 kB
          Raghu Angadi
        7. HADOOP-1134-01.patch
          189 kB
          Raghu Angadi
        8. HADOOP-1134-02.patch
          203 kB
          Raghu Angadi
        9. HADOOP-1134-03.patch
          203 kB
          Raghu Angadi
        10. DfsBlockCrcDesign.htm
          21 kB
          Raghu Angadi
        11. BlockCrcFeatureTestPlan.pdf
          19 kB
          Raghu Angadi

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            rangadi Raghu Angadi
            rangadi Raghu Angadi
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment