IP Library › Granted Patent US 12,730,580
Granted Patent B2
US 12,730,580 · App. 18/888,051 · Granted Sep 8, 2026

Systems and methods for managing storage system monitoring data using predictive compression

Inventor: Carlos Rolo (Lisbon, PT)
Assignee: NetApp, Inc.
G06F3/0653G06F3/0608G06F3/0673
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,730,580
App. No.
18/888,051
Granted
Sep 8, 2026
Kind
B2
Abstract

A monitoring system can generate compressed storage system monitoring data segments using monitoring data obtained from a storage system. The monitoring system can obtain compression information for a compressed segment generated from a segment of storage system monitoring data and generate a predicted portion of storage system monitoring data using the compression information. The monitoring system can obtain an additional portion of storage system monitoring data, the additional portion contiguous to the segment of storage system monitoring data, and determine that the predicted portion matches the additional portion and combining the additional portion and the compressed segment. In response to a user query, the monitoring system can perform at least one of: reconstructing and providing the additional portion using the compressed segment; or providing the compressed segment for reconstruction of the additional portion.

Claims (72)

1 . A storage system monitoring method, comprising:

obtaining compression information associated with a compressed segment generated from a segment of storage system monitoring data;

generating a predicted portion of storage system monitoring data using the compression information;

obtaining an additional portion of storage system monitoring data, the additional portion of the storage system monitoring data contiguous to the segment of storage system monitoring data;

determining the predicted portion of the storage system monitoring data matches the additional portion of the storage system monitoring data and combining the additional portion of the storage system monitoring data and the compressed segment generated from the segment of storage system monitoring data; and

in response to a query, performing at least one of:

reconstructing and providing the additional portion of the storage system monitoring data using the compressed segment generated from the segment of storage system monitoring data; or

providing the compressed segment generated from the segment of storage system monitoring data for reconstruction of the additional portion of the storage system monitoring data.

2 . The storage system monitoring method of claim 1 , wherein:

the additional portion of storage system monitoring data includes a batch of observations.

3 . The storage system monitoring method of claim 1 , wherein:

the generation of the compressed segment preprocessing an obtained original portion of storage system data; and

the method further includes, prior to determining the predicted portion matches the additional portion of the storage system monitoring data, preprocessing the additional portion of storage system monitoring data.

4 . The storage system monitoring method of claim 1 , wherein:

generating the predicted portion of storage system monitoring data using the compression information comprises:

reconstructing the compressed segment using the compression information; and

generating the predicted portion based on the reconstruction of the compressed

segment generated from the segment of storage system monitoring data.

5 . The storage system monitoring method of claim 1 , wherein:

the compression information specifies a parameterized formula that relates compressed segment indices to compressed segment values; and

the predicted portion of storage system monitoring data is generated using the parameterized formula.

6 . The storage system monitoring method of claim 1 , wherein:

determining the predicted portion matches the additional portion of the storage system monitoring data comprises determining a function of a difference between the predicted portion of the storage system monitoring data and the additional portion of the storage system monitoring data.

7 . The storage system monitoring method of claim 6 , wherein:

the function comprises a weighted or unweighted L2 norm, L1 norm, L-infinity norm, mean squared error, or Manhattan distance.

8 . The storage system monitoring method of claim 1 , wherein:

combining the additional portion of the storage system monitoring data and the compressed segment generated from the segment of storage system monitoring data comprises updating time information for the compressed segment generated from the segment of storage system monitoring data to reference the additional portion of the storage system monitoring data.

9 . The storage system monitoring method of claim 1 , wherein:

the storage system monitoring data includes CPU I/O wait time, CPU Guest Usage, CPU usage, System Status, number of connected clients, network usage, memory usage, disk usage, read latency, write latency, or operating system load.

10 . The storage system monitoring method of claim 1 , wherein:

the compression information generated from the segment of storage system monitoring data indicates that the segment of storage system monitoring data was compressed using polynomial approximation, linear predictive coding, or a frequency domain compression technique.

11 . A monitoring system, comprising:

at least one processor; and

at least one non-transitory computer readable medium containing instructions that, when executed by the at least one processor, cause the monitoring system to perform operations comprising:

obtaining compression information associated with a compressed segment generated from a segment of storage system monitoring data;

generating a predicted portion of storage system monitoring data using the compression information;

obtaining an additional portion of storage system monitoring data, the additional portion of the storage system monitoring data contiguous to the segment of storage system monitoring data;

determining the predicted portion of the storage system monitoring data matches the additional portion of the storage system monitoring data and combining the additional portion of the storage system monitoring data and the compressed segment generated from the segment of storage system monitoring data; and

in response to a query, performing at least one of:

reconstructing and providing the additional portion of the storage system monitoring data using the compressed segment generated from the segment of storage system monitoring data; or

providing the compressed segment generated from the segment of storage system monitoring data for reconstruction of the additional portion of the storage system monitoring data.

12 . The system of claim 11 , wherein:

the generation of the compressed segment includes preprocessing an obtained original portion of storage system data; and

the operations further include, prior to determining the predicted portion matches the additional portion of the storage system monitoring data, preprocessing the additional portion of storage system monitoring data.

13 . The system of claim 11 , wherein:

generating the predicted portion of storage system monitoring data using the compression information comprises:

reconstructing the compressed segment generated from the segment of storage system monitoring data using the compression information; and

generating the predicted portion of the storage system monitoring data based on the reconstruction of the compressed segment generated from the segment of storage system monitoring data.

14 . The system of claim 11 , wherein:

the compression information specifies a parameterized formula that relates compressed segment indices to compressed segment values; and

the predicted portion of storage system monitoring data is generated using the parameterized formula.

15 . The system of claim 11 , wherein:

determining the predicted portion generated from the segment of storage system monitoring data matches the additional portion generated from the segment of storage system monitoring data comprises determining a function of a difference between the predicted portion generated from the segment of storage system monitoring data and the additional portion generated from the segment of storage system monitoring data, the function comprising a weighted or unweighted L2 norm, L1 norm, L-infinity norm, mean squared error, or Manhattan distance.

16 . The system of claim 11 , wherein:

combining the additional portion of the storage system monitoring data and the compressed segment generated from the segment of storage system monitoring data comprises updating time information for the compressed segment generated from the segment of storage system monitoring data to reference the additional portion of the storage system monitoring data.

17 . The system of claim 11 , wherein:

the storage system monitoring data includes a table metric channel, a message metric channel, a streaming metric channel, a compaction metric channel, a commit log metric channel, a storage metric channel, a hint metric channel, an index metric channel, a buffer pool metric channel, a client management metric channel, a batch metric channel, or a virtual machine metric channel.

18 . A non-transitory, computer-readable medium containing instructions that, when executed by at least one processor of a system, cause the system to perform operations comprising:

obtaining compression information associated with a compressed segment generated from a segment of storage system monitoring data;

generating a predicted portion of storage system monitoring data using the compression information;

obtaining an additional portion of storage system monitoring data, the additional portion of the storage system monitoring data including a batch of observations and being contiguous to the segment of storage system monitoring data;

determining the predicted portion of the storage system monitoring data matches the additional portion of the storage system monitoring data and combining the additional portion of the storage system monitoring data and the compressed segment generated from the segment of storage system monitoring data; and

in response to a query, performing at least one of:

reconstructing and providing the additional portion of the storage system monitoring data using the compressed segment generated from the segment of storage system monitoring data; or

providing the compressed segment generated from the segment of storage system monitoring data for reconstruction of the additional portion of the storage system monitoring data.

19 . The non-transitory, computer-readable medium of claim 18 , wherein:

the segment of storage system monitoring data is compressed using polynomial approximation, linear predictive coding, or frequency domain compression, the compression information specifies a parameterized formula that relates compressed segment indices to compressed segment values; and

the predicted portion of storage system monitoring data is generated using the parameterized formula.

20 . The non-transitory, computer-readable medium of claim 18 , wherein:

determining the predicted portion of the storage system monitoring data matches the additional portion of the storage system monitoring data comprises determining a function of a difference between the predicted portion of the storage system monitoring data and the additional portion of the storage system monitoring data, the function comprising a weighted or unweighted L2 norm, L1 norm, L-infinity norm, mean squared error, or Manhattan distance.

21 . The non-transitory, computer-readable medium of claim 18 , wherein:

combining the additional portion of the storage system monitoring data and the compressed segment comprises updating time information for the compressed segment generated from the segment of storage system monitoring data to reference the additional portion.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2026
From: ROLO, CARLOS
To: NETAPP, INC.
Reel/Frame 073455/0119 →
Continuity (3)
Continuation In Part 18646559 · Apr 25, 2024
Continuation In Part 18424368 · Jan 26, 2024
Related Publication 20250244911A1 · Jul 31, 2025
References Cited (54)
US 5473742A · Polyakov et al. · 1995 [cited by applicant]
US 7437003B1 · Gorbatov et al. · 2008 [cited by applicant]
US 8122196B2 · Chang · 2012 [cited by examiner]
US 8742959B1 · Efros et al. · 2014 [cited by applicant]
US 10120893B1 · Rocamora et al. · 2018 [cited by applicant]
US 10156993B1 · Armangau et al. · 2018 [cited by applicant]
US 10360251B1 · Bairavasundaram · 2019 [cited by examiner]
US 11138200B1 · Mantzouratos et al. · 2021 [cited by applicant]
US 20080301256A1 · McWilliams et al. · 2008 [cited by applicant]
US 20110314356A1 · Grube et al. · 2011 [cited by applicant]
US 20140040276A1 · Chen et al. · 2014 [cited by applicant]
US 20140195498A1 · Asher et al. · 2014 [cited by applicant]
US 20190296963A1 · Bonnell · 2019 [cited by applicant]
US 20190319642A1 · Abdellatif · 2019 [cited by examiner]
US 20200091930A1 · Nag et al. · 2020 [cited by applicant]
US 20200133583A1 · Xiao et al. · 2020 [cited by applicant]
US 20200177443A1 · Asghar et al. · 2020 [cited by applicant]
US 20200272605A1 · More · 2020 [cited by applicant]
US 20200279219A1 · Desai et al. · 2020 [cited by applicant]
US 20200366315A1 · Sun et al. · 2020 [cited by applicant]
US 20210149905A1 · Luo et al. · 2021 [cited by applicant]
US 20210191658A1 · Mizushima · 2021 [cited by examiner]
US 20210223982A1 · Prado et al. · 2021 [cited by applicant]
US 20210233549A1 · Kamamoto et al. · 2021 [cited by applicant]
US 20210271675A1 · Kornmeier · 2021 [cited by examiner]
US 20230057444A1 · Djukic et al. · 2023 [cited by applicant]
US 20230176790A1 · Dhuse et al. · 2023 [cited by applicant]
US 20230315691A1 · Ritika · 2023 [cited by examiner]
US 20240063814A1 · Shalikashvili et al. · 2024 [cited by applicant]
US 20240104397A1 · Sasaki · 2024 [cited by applicant]
US 20240259034A1 · Gill et al. · 2024 [cited by applicant]
US 20250156074A1 · Fay · 2025 [cited by examiner]
US 20250244910A1 · Rolo · 2025 [cited by applicant]
US 20250245112A1 · Rolo · 2025 [cited by applicant]
US 20250245117A1 · Rolo · 2025 [cited by applicant]
US 20250245209A1 · Rolo · 2025 [cited by applicant]
US 20250245227A1 · Rolo · 2025 [cited by applicant]
CN 111930751A · 2020 [cited by applicant]
GB 2585513A · 2021 [cited by applicant]
Cheng H., “Compressing Time Series Data,” Technical Report, TDEngine, Oct. 2022, pp. 1-7. [cited by applicant]
Ding R., et al., “Yading: Fast Clustering of Large-scale Time Series Data,” Proceedings of the VLDB Endowment, 2015, vol. 8(5), pp. 473-484. [cited by applicant]
Eichinger F., et al., “A Time-series Compression Technique and Its Application to the Smart Grid,” The VLDB Journal, 2015, vol. 24, pp. 193-218. [cited by applicant]
Gomes R.D., “Time Series Compression Algorithms and their Applications,” Technical Report, DZone, Sep. 2022, pp. 1-8. [cited by applicant]
Hawkins III S.E., et al., “Algorithm for Compressing Time-series Data,” Technical Report, Johns Hopkins University Applied Physics Laboratory for Goddard Space Flight Center, Jun. 2012, pp. 1-2. [cited by applicant]
Lockerman J., et al., “Time Series Compression Algorithms Explained,” Technical Report, Timescale, Apr. 2020, pp. 1-18. [cited by applicant]
Pelkonen T., et al., “Gorilla: A Fast, Scalable, in-memory Time Series Database,” Proceedings of the VLDB Endowment, 2015, vol. 8(12), pp. 1816-1827. [cited by applicant]
Peng X., et al., “Monitoring Data Reduction in Data Centers: A Correlation-Based Approach,” Smart Cities, Green Technologies, and Intelligent Transport Systems: Smartgreens, Springer International Publishing, Cham, 2017… [cited by applicant]
Valialkin A., “VictoriaMetrics: Achieving Better Compression than Gorilla for Time Series Data,” Technical Report, Victoriametrics, May 2019, pp. 1-11. [cited by applicant]
Van Beurden M., “Free Lossless Audio Codec,” Technical Report, IETF, Jun. 2017, pp. 1-60. [cited by applicant]
Non-Final Office Action mailed on Mar. 14, 2025 for U.S. Appl. No. 18/424,368, filed Jan. 16, 2024, 50 pages. [cited by applicant]
Non-Final Office Action mailed on Dec. 12, 2025 for U.S. Appl. No. 18/888,043, filed Sep. 17, 2024, 24 pages. [cited by applicant]
Non-Final Office Action mailed on Jan. 16, 2026 for U.S. Appl. No. 18/888,025, filed Sep. 17, 2024, 13 pages. [cited by applicant]
Final Office Action mailed on Nov. 19, 2025 for U.S. Appl. No. 18/424,368, filed Jan. 26, 2024, 53 pages. [cited by applicant]
Non-Final Office Action mailed on Oct. 2, 2025 for U.S. Appl. No. 18/646,559, filed Apr. 25, 2024, 21 pages. [cited by applicant]