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

Create metric to know the number of reads that happens from memstore

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 3.0.0-alpha-1
    • 3.0.0-alpha-1, 2.3.0, 2.2.6
    • metrics
    • None
    • Hide
      Adds a new metric where we collect the number of read requests (tracked per row) whether the row was fetched completely from memstore or it was pulled from files and memstore.
      The metric is now collected under the mbean for Tables and under the mbean for regions.
      Under table mbean ie.-
      'name": "Hadoop:service=HBase,name=RegionServer,sub=Tables'
      The new metrics will be listed as
      {code}
          "Namespace_default_table_t3_columnfamily_f1_metric_memstoreOnlyRowReadsCount": 5,
       "Namespace_default_table_t3_columnfamily_f1_metric_mixedRowReadsCount": 1,
      {code}
      Where the format is Namespace_<namespacename>_table_<tableName>_columnfamily_<columnfamilyname>_metric_memstoreOnlyRowReadsCount
      Namespace_<namespacename>_table_<tableName>_columnfamily_<columnfamilyname>_metric_mixedRowReadsCount
      {code}

      The same one under the region ie.
      "name": "Hadoop:service=HBase,name=RegionServer,sub=Regions",
      comes as
      {code}
         "Namespace_default_table_t3_region_75a7846f4ac4a2805071a855f7d0dbdc_store_f1_metric_memstoreOnlyRowReadsCount": 5,
          "Namespace_default_table_t3_region_75a7846f4ac4a2805071a855f7d0dbdc_store_f1_metric_mixedRowReadsCount": 1,
      {code}
      where
      Namespace_<namespacename_table_<tableName>_region_<regionName>_store_<storeName>_metric_memstoreOnlyRowReadsCount
      Namespace_<namespacename_table_<tableName>_region_<regionName>_store_<storeName>_metric_mixedRowReadsCount
      This is also an aggregate against every store the number of reads that happened purely from the memstore or it was a mixed read that happened from memstore and file.
      Show
      Adds a new metric where we collect the number of read requests (tracked per row) whether the row was fetched completely from memstore or it was pulled from files and memstore. The metric is now collected under the mbean for Tables and under the mbean for regions. Under table mbean ie.- 'name": "Hadoop:service=HBase,name=RegionServer,sub=Tables' The new metrics will be listed as {code}     "Namespace_default_table_t3_columnfamily_f1_metric_memstoreOnlyRowReadsCount": 5,  "Namespace_default_table_t3_columnfamily_f1_metric_mixedRowReadsCount": 1, {code} Where the format is Namespace_<namespacename>_table_<tableName>_columnfamily_<columnfamilyname>_metric_memstoreOnlyRowReadsCount Namespace_<namespacename>_table_<tableName>_columnfamily_<columnfamilyname>_metric_mixedRowReadsCount {code} The same one under the region ie. "name": "Hadoop:service=HBase,name=RegionServer,sub=Regions", comes as {code}    "Namespace_default_table_t3_region_75a7846f4ac4a2805071a855f7d0dbdc_store_f1_metric_memstoreOnlyRowReadsCount": 5,     "Namespace_default_table_t3_region_75a7846f4ac4a2805071a855f7d0dbdc_store_f1_metric_mixedRowReadsCount": 1, {code} where Namespace_<namespacename_table_<tableName>_region_<regionName>_store_<storeName>_metric_memstoreOnlyRowReadsCount Namespace_<namespacename_table_<tableName>_region_<regionName>_store_<storeName>_metric_mixedRowReadsCount This is also an aggregate against every store the number of reads that happened purely from the memstore or it was a mixed read that happened from memstore and file.

    Description

      A metric to identify number of reads that were served from memstore (atleast if the gets can be accounted for) then it gives a value addition to know if among the reads how much was targeted at the most recent data.
      Currently the existing metric framework at region level should be enough but we can also add a metric per store level. That will be more granular.
      We can also expose this via HbTop.

      Attachments

        1. screenshot_tablevscf.png
          75 kB
          ramkrishna.s.vasudevan
        2. screenshot.png
          406 kB
          ramkrishna.s.vasudevan

        Issue Links

          Activity

            People

              ram_krish ramkrishna.s.vasudevan
              ram_krish ramkrishna.s.vasudevan
              Votes:
              0 Vote for this issue
              Watchers:
              12 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: