Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-5259

Normalize the RegionLocation in TableInputFormat by the reverse DNS lookup.

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.94.0
    • None
    • None
    • Reviewed

    Description

      Assuming the HBase and MapReduce running in the same cluster, the TableInputFormat is to override the split function which divides all the regions from one particular table into a series of mapper tasks. So each mapper task can process a region or one part of a region. Ideally, the mapper task should run on the same machine on which the region server hosts the corresponding region. That's the motivation that the TableInputFormat sets the RegionLocation so that the MapReduce framework can respect the node locality.

      The code simply set the host name of the region server as the HRegionLocation. However, the host name of the region server may have different format with the host name of the task tracker (Mapper task). The task tracker always gets its hostname by the reverse DNS lookup. And the DNS service may return different host name format. For example, the host name of the region server is correctly set as a.b.c.d while the reverse DNS lookup may return a.b.c.d. (With an additional doc in the end).

      So the solution is to set the RegionLocation by the reverse DNS lookup as well. No matter what host name format the DNS system is using, the TableInputFormat has the responsibility to keep the consistent host name format with the MapReduce framework.

      Attachments

        1. ASF.LICENSE.NOT.GRANTED--D1413.1.patch
          3 kB
          Phabricator
        2. ASF.LICENSE.NOT.GRANTED--D1413.1.patch
          3 kB
          Phabricator
        3. ASF.LICENSE.NOT.GRANTED--D1413.1.patch
          3 kB
          Phabricator
        4. ASF.LICENSE.NOT.GRANTED--D1413.1.patch
          3 kB
          Phabricator
        5. ASF.LICENSE.NOT.GRANTED--D1413.2.patch
          4 kB
          Phabricator
        6. ASF.LICENSE.NOT.GRANTED--D1413.2.patch
          4 kB
          Phabricator
        7. ASF.LICENSE.NOT.GRANTED--D1413.2.patch
          4 kB
          Phabricator
        8. ASF.LICENSE.NOT.GRANTED--D1413.2.patch
          4 kB
          Phabricator
        9. ASF.LICENSE.NOT.GRANTED--D1413.3.patch
          4 kB
          Phabricator
        10. ASF.LICENSE.NOT.GRANTED--D1413.3.patch
          4 kB
          Phabricator
        11. ASF.LICENSE.NOT.GRANTED--D1413.3.patch
          4 kB
          Phabricator
        12. ASF.LICENSE.NOT.GRANTED--D1413.3.patch
          4 kB
          Phabricator
        13. HBASE-5259.patch
          4 kB
          Liyin Tang

        Activity

          People

            liyin Liyin Tang
            liyin Liyin Tang
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: