Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-7504

Eviction, Ejection, working set management

    XMLWordPrintable

Details

    • Improvement
    • Resolution: Fixed
    • Blocker
    • None
    • 2.0
    • None
    • Security Level: Public
    • None

    Description

      Need more content here:

      http://www.couchbase.com/docs/couchbase-manual-2.0/couchbase-introduction-architecture-eviction.html

      -Describe new logic for eviction as of 2.0
      -Tie into Access Logs topic
      -Any command line which impacts this behavior

      Input from Liang:

      -ejection vs eviction: eviction a concept from memcached, it means the entire items (key, metadata and value) removed from RAM. Ejection is what we do now for 1.8 and 2.0: the value is removed but the keys and metadata still in memory
      -warmup process - two iterations occur: firs tkeys and metadata loaded, then values for keys in access log. See info added on disk warmup on access scanner.
      -expiry pager: remove expired items from memory. A disk cleanup process
      -item pager: eject items if high water mark reached, eject hose that are not dirty or need to be replicated to node in cluster. High water mark configurable

      -item pager: looks at NRU or if high water still breached, eject random, use % active vs replica. Also configurable via cbepctl
      -goal improve memory efficiency, maintain balance of active/replica data.

      defaults ejection % 40% for active with 50% cap, One parameter - adjust two items: active/replica-as-remainder

      goal reach low water mark, but if under HWM, timer pager stops. if not repeats until under.
      -NRU - replicated. if mutation on item, set to true. this true value replicated to other node in cluster. 1 bit.
      -access scanner - adds all NRU true to access log, then sets all items to false after pass, thereby influencing item pager
      -(percentage memory to be free) = (total memory - lwm)/ total memory

      -config hwm at each node? Must be reset after node failure. Config are in memory on node.
      -high active ratio reduce cache miss,
      -too low replica% - if replica node promoted, will experience cache misses - post rebalance, post rebalance

      Input from Jin on Configurations:

      -Hi, you can change the default water marks by "flush_param [mem_high_wat/mem_low_wat] value" via cbepctl.

      You can change the default percentage of active vbuckets being ejected items by item pager by
      "flush_param pager_active_vb_pcnt value" where value is btwn 0 and 50%.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            kzeller kzeller
            kzeller kzeller
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty