mirror of
https://github.com/apache/impala.git
synced 2025-12-20 10:29:58 -05:00
This adds two sets of metrics. The first is per-partition metrics to track the performance of the underlying filesystem for the data cache. It keeps histograms of read, write, and eviction latency for each data cache partition along with another metric recording the path for the partition. These are exposed as the following metrics: impala-server.io-mgr.remote-data-cache-partition-$0.path impala-server.io-mgr.remote-data-cache-partition-$0.read-latency impala-server.io-mgr.remote-data-cache-partition-$0.write-latency impala-server.io-mgr.remote-data-cache-partition-$0.eviction-latency This also adds metrics to keep counts of hits, misses, and entries in the data cache. Since reducing the latency of IO is an important feature of the data cache, the absolute count of hits and misses is as important as the hit bytes and miss bytes. This adds the following metrics: impala-server.io-mgr.remote-data-cache-hit-count impala-server.io-mgr.remote-data-cache-miss-count impala-server.io-mgr.remote-data-cache-num-entries To track metrics around inserts, this also adds the following metrics: impala-server.io-mgr.remote-data-cache-num-inserts impala-server.io-mgr.remote-data-cache-dropped-entries impala-server.io-mgr.remote-data-cache-instant-evictions An instant eviction happens when inserting an entry into the cache fails and the entry is immediately evicted during insert. This is currently only possible for LIRS when the entry's size is larger than the unprotected capacity. This manifests when the cache size is very small. For example, for an 8MB entry, this would manifest when a cache shard is smaller than 160MB. This metric is primarily for debugging. Testing: - Hand testing to verify the per-partition latency histograms - Modified custom_cluster/test_data_cache.py to also test the counts. Change-Id: I56a57d75ff11f00ebc85b85bcaf104fb8108c478 Reviewed-on: http://gerrit.cloudera.org:8080/15382 Reviewed-by: Thomas Tauber-Marshall <tmarshall@cloudera.com> Tested-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>
8.2 KiB
8.2 KiB