org.apache.ignite

## Interface DataRegionMetrics

- Deprecated.
  Check the `ReadOnlyMetricRegistry` with "name=io.dataregion.{data_region_name}" instead.

      @Deprecated
      public interface DataRegionMetrics

  This interface provides page memory related metrics of a specific Apache Ignite node. The overall page memory architecture is covered in `DataStorageConfiguration`.

  Since there are can be several memory regions configured with `DataRegionConfiguration` on an individual Apache Ignite node, the metrics for every region will be collected and obtained separately.

  There are two ways to get the metrics of an Apache Ignite node.

  1. First, a collection of the metrics can be obtained through `Ignite.dataRegionMetrics()` method. Note that the method returns data region metrics snapshots rather than just in time memory state.
  2. Second, all `DataRegionMetrics` of a local Apache Ignite node are visible through JMX interface. Refer to JMX bean with the name "name=io.dataregion.{data_region_name}" for more details.

  Data region metrics collection is not a free operation and might affect performance of an application. This is the reason why the metrics are turned off by default. To enable the collection you can use both `DataRegionConfiguration.setMetricsEnabled(boolean)` configuration property.

  See Also:
    `ReadOnlyMetricManager`, `ReadOnlyMetricRegistry`, `JmxMetricExporterSpi`, `MetricExporterSpi`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `float` | `getAllocationRate()` Deprecated. Gets pages allocation rate of a memory region.
    `long` | `getCheckpointBufferSize()` Deprecated. Gets checkpoint buffer size in bytes.
    `long` | `getDirtyPages()` Deprecated. Gets the number of dirty pages (pages which contents is different from the current persistent storage state).
    `float` | `getEvictionRate()` Deprecated. Gets eviction rate of a given memory region.
    `float` | `getLargeEntriesPagesPercentage()` Deprecated. Gets percentage of pages that are fully occupied by large entries that go beyond page size.
    `String` | `getName()` Deprecated. A name of a memory region the metrics are collected for.
    `long` | `getOffHeapSize()` Deprecated. Total offheap size in bytes.
    `long` | `getOffheapUsedSize()` Deprecated. Total used offheap size in bytes.
    `float` | `getPagesFillFactor()` Deprecated. Returns the ratio of space occupied by user and system data to the size of all pages that contain this data.
    `int` | `getPageSize()` Deprecated. Gets memory page size.
    `long` | `getPagesRead()` Deprecated. The number of read pages from last restart.
    `float` | `getPagesReplaceAge()` Deprecated. Gets average age (in milliseconds) for the pages being replaced from the disk storage.
    `long` | `getPagesReplaced()` Deprecated. The number of replaced pages from last restart .
    `float` | `getPagesReplaceRate()` Deprecated. Gets rate (pages per second) at which pages get replaced with other pages from persistent storage.
    `long` | `getPagesWritten()` Deprecated. The number of written pages from last restart.
    `long` | `getPhysicalMemoryPages()` Deprecated. Gets total number of pages currently loaded to the RAM.
    `long` | `getPhysicalMemorySize()` Deprecated. Gets total size of pages loaded to the RAM.
    `long` | `getTotalAllocatedPages()` Deprecated. Gets a total number of allocated pages related to the data region.
    `long` | `getTotalAllocatedSize()` Deprecated. Gets a total size of memory allocated in the data region.
    `long` | `getTotalUsedPages()` Deprecated. Gets a total number of pages used for storing the data.
    `long` | `getTotalUsedSize()` Deprecated. Returns the total amount of bytes occupied by the non-empty pages.
    `long` | `getUsedCheckpointBufferPages()` Deprecated. Gets used checkpoint buffer size in pages.
    `long` | `getUsedCheckpointBufferSize()` Deprecated. Gets used checkpoint buffer size in bytes.

- - ### Method Detail

    - #### getName

          String getName()

      Deprecated.
      A name of a memory region the metrics are collected for.
      Returns:
        Name of the memory region.

    - #### getTotalAllocatedPages

          long getTotalAllocatedPages()

      Deprecated.
      Gets a total number of allocated pages related to the data region. When persistence is disabled, this metric shows the total number of pages in memory. When persistence is enabled, this metric shows the total number of pages in memory and on disk.
      Returns:
        Total number of allocated pages.

    - #### getTotalAllocatedSize

          long getTotalAllocatedSize()

      Deprecated.
      Gets a total size of memory allocated in the data region. When persistence is disabled, this metric shows the total size of pages in memory. When persistence is enabled, this metric shows the total size of pages in memory and on disk.
      Returns:
        Total size of memory allocated, in bytes.

    - #### getTotalUsedPages

          long getTotalUsedPages()

      Deprecated.
      Gets a total number of pages used for storing the data. It includes allocated pages except of empty pages that are not used yet or pages that can be reused.

      E. g. data region contains 1000 allocated pages, and 200 pages are used to store some data, this metric shows 200 used pages. Then the data was partially deleted and 50 pages were totally freed, hence this metric should show 150 used pages.

      Returns:
        Total number of used pages.

    - #### getTotalUsedSize

          long getTotalUsedSize()

      Deprecated.
      Returns the total amount of bytes occupied by the non-empty pages. This value is directly tied to the `getTotalUsedPages()` and does not take page fragmentation into account (i.e. if some data is removed from a page, but it is not completely empty, it will still show the whole page bytes as being occupied).
      Returns:
        Total amount of bytes occupied by the non-empty pages

    - #### getAllocationRate

          float getAllocationRate()

      Deprecated.
      Gets pages allocation rate of a memory region.
      Returns:
        Number of allocated pages per second.

    - #### getEvictionRate

          float getEvictionRate()

      Deprecated.
      Gets eviction rate of a given memory region.
      Returns:
        Number of evicted pages per second.

    - #### getLargeEntriesPagesPercentage

          float getLargeEntriesPagesPercentage()

      Deprecated.
      Gets percentage of pages that are fully occupied by large entries that go beyond page size. The large entities are split into fragments in a way so that each fragment can fit into a single page.
      Returns:
        Percentage of pages fully occupied by large entities.

    - #### getPagesFillFactor

          float getPagesFillFactor()

      Deprecated.
      Returns the ratio of space occupied by user and system data to the size of all pages that contain this data.

      This metric can help to determine how much space of a data page is occupied on average. Low fill factor can indicate that data pages are very fragmented (i.e. there is a lot of empty space across all data pages).

      Returns:
        Ratio of space occupied by user and system data to the size of all pages that contain ant data.

    - #### getDirtyPages

          long getDirtyPages()

      Deprecated.
      Gets the number of dirty pages (pages which contents is different from the current persistent storage state). This metric is enabled only for Ignite nodes with enabled persistence.
      Returns:
        Current number of dirty pages.

    - #### getPagesReplaceRate

          float getPagesReplaceRate()

      Deprecated.
      Gets rate (pages per second) at which pages get replaced with other pages from persistent storage. The rate effectively represents the rate at which pages get 'evicted' in favor of newly needed pages. This metric is enabled only for Ignite nodes with enabled persistence.
      Returns:
        Pages per second replace rate.

    - #### getPagesReplaceAge

          float getPagesReplaceAge()

      Deprecated.
      Gets average age (in milliseconds) for the pages being replaced from the disk storage. This number effectively represents the average time between the moment when a page is read from the disk and the time when the page is evicted. Note that if a page is never evicted, it does not contribute to this metric. This metric is enabled only for Ignite nodes with enabled persistence.
      Returns:
        Replaced pages age in milliseconds.

    - #### getPhysicalMemoryPages

          long getPhysicalMemoryPages()

      Deprecated.
      Gets total number of pages currently loaded to the RAM. When persistence is disabled, this metric is equal to `getTotalAllocatedPages()`.
      Returns:
        Total number of pages loaded to RAM.

    - #### getPhysicalMemorySize

          long getPhysicalMemorySize()

      Deprecated.
      Gets total size of pages loaded to the RAM. When persistence is disabled, this metric is equal to `getTotalAllocatedSize()`.
      Returns:
        Total size of pages loaded to RAM in bytes.

    - #### getUsedCheckpointBufferPages

          long getUsedCheckpointBufferPages()

      Deprecated.
      Gets used checkpoint buffer size in pages.
      Returns:
        Checkpoint buffer size in pages.

    - #### getUsedCheckpointBufferSize

          long getUsedCheckpointBufferSize()

      Deprecated.
      Gets used checkpoint buffer size in bytes.
      Returns:
        Checkpoint buffer size in bytes.

    - #### getCheckpointBufferSize

          long getCheckpointBufferSize()

      Deprecated.
      Gets checkpoint buffer size in bytes.
      Returns:
        Checkpoint buffer size in bytes.

    - #### getPageSize

          int getPageSize()

      Deprecated.
      Gets memory page size.
      Returns:
        Page size in bytes.

    - #### getPagesRead

          long getPagesRead()

      Deprecated.
      The number of read pages from last restart.
      Returns:
        The number of read pages from last restart.

    - #### getPagesWritten

          long getPagesWritten()

      Deprecated.
      The number of written pages from last restart.
      Returns:
        The number of written pages from last restart.

    - #### getPagesReplaced

          long getPagesReplaced()

      Deprecated.
      The number of replaced pages from last restart .
      Returns:
        The number of replaced pages from last restart .

    - #### getOffHeapSize

          long getOffHeapSize()

      Deprecated.
      Total offheap size in bytes.
      Returns:
        Total offheap size in bytes.

    - #### getOffheapUsedSize

          long getOffheapUsedSize()

      Deprecated.
      Total used offheap size in bytes.
      Returns:
        Total used offheap size in bytes.

${current.year} Copyright © Apache Software Foundation
| Follow @ApacheIgnite
Ignite Database and Caching Platform | : ver. 2.15.0
Release Date | : April 25 2023