Uploaded image for project: 'Phoenix'
  1. Phoenix
  2. PHOENIX-5069

Use asynchronous refresh to provide non-blocking Phoenix Stats Client Cache

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 5.1.0, 4.14.2, 5.0.1
    • None
    • None

    Description

      The current Phoenix Stats Cache uses TTL based eviction policy. A cached entry will expire after a given amount of time (900s by default) passed since the entry's been created. This will lead to cache miss when Compiler/Optimizer fetches stats from cache at the next time. As you can see from the above graph, fetching stats from the cache is a blocking operation — when there is cache miss, it has a round trip over the wire to scan the SYSTEM.STATS Table and to get the latest stats info, rebuild the cache and finally return the stats to the Compiler/Optimizer. Whenever there is a cache miss, this blocking call causes significant performance penalty and see periodic spikes.

      This Jira suggests to use asynchronous refresh mechanism to provide a non-blocking cache. For details, please see the linked design document below.

      karanmehta93 twdsilva@gmail.com dbwong elserj ankit@apache.org sergey soldatov 

      Attachments

        1. PHOENIX-5069.4.x-HBase-1.3.001.patch
          28 kB
          Bin Shi
        2. PHOENIX-5069.4.x-HBase-1.4.001.patch
          28 kB
          Bin Shi
        3. PHOENIX-5069.master.001.patch
          28 kB
          Bin Shi
        4. PHOENIX-5069.master.002.patch
          29 kB
          Bin Shi
        5. PHOENIX-5069.master.003.patch
          29 kB
          Bin Shi
        6. PHOENIX-5069.master.004.patch
          28 kB
          Bin Shi
        7. PHOENIX-5069.patch
          26 kB
          Bin Shi
        8. PHOENIX-5069-4.14.1-hbase-1.3-phoenix-stats.001.patch
          29 kB
          Bin Shi
        9. PHOENIX-5069-4.14.1-hbase-1.3-phoenix-stats.002.patch
          28 kB
          Bin Shi

        Activity

          People

            Bin Shi Bin Shi
            Bin Shi Bin Shi
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 7h
                7h