Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-9725

Make capacity of centralized cache dynamic

    XMLWordPrintableJSON

Details

    • Wish
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 2.6.0
    • None
    • caching, datanode, namenode
    • None

    Description

      Currently in centralized cache, Datanode uses mlock to keep blocks in memory, with limit of maximum amount of bytes specified by dnConf.maxLockedMemory.
      In general deployment, each machine run both Datanode and Nodemanager. In this case, statically specified memory capacity either potentially causes OOM, or hurts memory utilization.
      That is, if one specify a large capacity for caching (permitted by ulimit as prerequisite), Datanode may have gone too far to reserve any memory for new container process to launch from NodeManager. On the other hand, specifying a small value may leave memory insufficiently used.

      A simple idea is: perhaps it is better to make cache capacity dynamic. Adjusting its capacity corresponding to current (or future, ideally) memory usage to avoid problems above.

      Any suggestions or comments?

      Attachments

        Activity

          People

            He Tianyi He Tianyi
            He Tianyi He Tianyi
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated: