IP Library › Granted Patent US 12,271,591
Granted Patent B2
US 12,271,591 · App. 18/150,420 · Granted Apr 8, 2025

Data reduction method and apparatus

Inventors: Hui Xing (Shanghai, CN); Zengshi Huang (Shenzhen, CN)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
G06F3/0608G06F3/0641G06F3/0671G06F16/1744
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,271,591
App. No.
18/150,420
Granted
Apr 8, 2025
Kind
B2
Abstract

A data reduction method and apparatus are provided to improve data reduction performance. In the method a storage device obtains a first service type of first data stored in a first logical unit. The storage device processes the first data based on a first data reduction manner that matches the first service type. The storage device obtains a second service type of second data stored in a second logical unit. The second service type is different from the first service type. The storage device processes the second data based on a second data reduction manner that matches the second service type. The first data reduction manner includes data compression and/or data deduplication. The second data reduction manner includes data compression and/or data deduplication. The first data reduction manner is different from the second data reduction manner.

Claims (50)

1. A data reduction method applied to a storage device comprising at least a first logical unit and a second logical unit, the first logical unit and the second logical unit are configured to provide storage space for an application, the method comprising:

obtaining a first service type of first data stored in the first logical unit;

processing the first data based on a first data reduction method for the first service type, wherein the first data reduction method comprises data compression and/or data deduplication;

obtaining a second service type of second data stored in the second logical unit, wherein the second service type is different from the first service type;

processing the second data based on a second data reduction method for the second service type, wherein the second data reduction method comprises data compression and/or data deduplication, wherein

the first data reduction method is different from the second data reduction method;

obtaining a front part of data of the first logical unit;

extracting a feature value of a second feature of the front part of the data, wherein the second feature is of a third service type; and

if the feature value of the second feature meets a constraint of the third service type, determining that the third service type is any service type comprised in a virtual application type.

2. The method according to claim 1 , wherein the first data comprises a plurality of first data blocks, and obtaining the first service type of the first data comprises:

obtaining at least two sample data blocks of the plurality of first data blocks; and

determining the first service type of the first data based on a service type of the at least two sample data blocks.

3. The method according to claim 2 , wherein, when the service type of the at least two sample data blocks is a same service type, determining the first service type of the first data comprises:

determining that the first service type of the first data is consistent with the service type of the at least two sample data blocks.

4. The method according to claim 2 , wherein determining the first service type of the first data comprises:

if the service type of the at least two sample data blocks comprises a plurality of service types, determining the first service type of the first data based on proportions of the plurality of service types and a preset rule.

5. The method according to claim 4 , wherein if the first logical unit provides storage space for a database, the preset rule comprises:

determining a service type of the plurality of service types with a highest proportion as the first service type of the first data.

6. The method according to claim 4 , wherein if the first logical unit provides storage space for a virtual machine, the preset rule comprises:

determining a service type of the plurality of service types whose proportion is greater than a threshold as the first service type of the first data.

7. The method according to claim 2 further comprising:

extracting a feature value of a first feature of a first sample data block, wherein the first feature is of the third service type, and the first sample data block is any sample data block in the at least two sample data blocks; and

if the feature value of the first feature meets a constraint of the third service type, determining that a service type of the first sample data block is the third service type.

8. The method according to claim 1 , wherein the first service type comprises one or more of a Sqlserver database type, an Oracle database type, a Mongodb database type, a My-innodb database type, a VDI type, and a VSI type; and

the second service type comprises one or more of the Sqlserver database type, the Oracle database type, the Mongodb database type, the My-innodb database type, the VDI type, and the VSI type.

9. The method according to claim 1 , wherein the virtual application type is one or more of a virtual desktop infrastructure VDI type and a virtual server infrastructure VSI type.

10. An apparatus comprising:

a first logical unit and a second logical unit, the first logical unit and the second logical unit being configured to provide storage space for an application; and

a processor configured to:

obtain a first service type of first data stored in the first logical unit;

process the first data based on a first data reduction method for the first service type, wherein the first data reduction method comprises data compression and/or data deduplication;

obtain a second service type of second data stored in the second logical unit, wherein the second service type is different from the first service type; and

process the second data based on a second data reduction method for the second service type, wherein the second data reduction method comprises data compression and/or data deduplication, wherein

the first data reduction method is different from the second data reduction method;

obtaining a front part of data of the first logical unit;

extracting a feature value of a second feature of the front part of the data, wherein the second feature is of a third service type; and

if the feature value of the second feature meets a constraint of the third service type, determining that the third service type is any service type comprised in a virtual application type.

11. The apparatus according to claim 10 , wherein the first data comprises a plurality of first data blocks, and the processor is configured to:

obtain at least two sample data blocks in the plurality of first data blocks; and

determine the first service type of the first data based on a service type of the at least two sample data blocks.

12. The apparatus according to claim 11 , wherein the processor is configured to determine that the first service type of the first data is consistent with the service type of the at least two sample data blocks if the service type of the at least two sample data blocks is a same service type.

13. The apparatus according to claim 11 , wherein if the service type of the at least two sample data blocks comprises a plurality of service types, the processor is configured to determine the first service type of the first data based on proportions of the plurality of service types and a preset rule.

14. The apparatus according to claim 13 , wherein if the first logical unit provides storage space for a database, the preset rule comprises determining a service type with a highest proportion as the first service type of the first data.

15. The apparatus according to claim 13 , wherein if the first logical unit provides storage space for a virtual machine, the preset rule comprises determining a service type whose proportion is greater than a threshold as the first service type of the first data.

16. The apparatus according to claim 11 , wherein the processor is further configured to:

extract a feature value of a first feature of a first sample data block, wherein the first feature is of the third service type, and the first sample data block is any sample data block in the at least two sample data blocks; and

if the feature value of the first feature meets a constraint of the third service type, determine that a service type of the first sample data block is the third service type.

17. The apparatus according to claim 10 , wherein the first service type comprises one or more of a Sqlserver database type, an Oracle database type, a Mongodb database type, a My-innodb database type, a VDI type, and a VSI type; and

the second service type comprises one or more of the Sqlserver database type, the Oracle database type, the Mongodb database type, the My-innodb database type, the VDI type, and the VSI type.

18. The apparatus according to claim 10 , wherein the virtual application type is one or more of a virtual desktop infrastructure VDI type and a virtual server infrastructure VSI type.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 2, 2023
From: XING, HUI; HUANG, ZENGSHI
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 064460/0834 →
Priority Claims (1)
CN 202010671816.2 · Jul 9, 2020 · national
Continuity (2)
Continuation PCTCN2021097715 · Jun 1, 2021
Related Publication 20230152974A1 · May 18, 2023
References Cited (53)
US 6348881B1 · Buer · 2002 [cited by examiner]
US 7079051B2 · Storer · 2006 [cited by examiner]
US 7236528B1 · Nie · 2007 [cited by examiner]
US 8396841B1 · Janakiraman · 2013 [cited by examiner]
US 8732403B1 · Nayak · 2014 [cited by examiner]
US 9584620B1 · Iyengar · 2017 [cited by applicant]
US 9715434B1 · Xu · 2017 [cited by examiner]
US 9733836B1 · Garg · 2017 [cited by examiner]
US 10108543B1 · Duggal · 2018 [cited by examiner]
US 10108544B1 · Duggal · 2018 [cited by examiner]
US 10228858B1 · Stoakes · 2019 [cited by examiner]
US 10303655B1 · Bigman · 2019 [cited by examiner]
US 10346076B1 · Jonnala · 2019 [cited by examiner]
US 10664165B1 · Faibish · 2020 [cited by examiner]
US 10719301B1 · Dasgupta · 2020 [cited by examiner]
US 10795812B1 · Duggal · 2020 [cited by examiner]
US 20080144079A1 · Pandey · 2008 [cited by examiner]
US 20090089483A1 · Tanaka · 2009 [cited by examiner]
US 20090204650A1 · Wong · 2009 [cited by examiner]
US 20100077013A1 · Clements · 2010 [cited by examiner]
US 20100082672A1 · Kottomtharayil · 2010 [cited by examiner]
US 20100088296A1 · Periyagaram · 2010 [cited by examiner]
US 20100125553A1 · Huang · 2010 [cited by examiner]
US 20100174881A1 · Anglin · 2010 [cited by examiner]
US 20100281081A1 · Stager · 2010 [cited by examiner]
US 20100333116A1 · Prahlad · 2010 [cited by examiner]
US 20130114701A1 · Lim · 2013 [cited by examiner]
US 20130166861A1 · Takano · 2013 [cited by examiner]
US 20140049413A1 · Agarwal · 2014 [cited by examiner]
US 20140114932A1 · Mallaiah · 2014 [cited by examiner]
US 20140143517A1 · Jin · 2014 [cited by examiner]
US 20150095553A1 · Walls · 2015 [cited by examiner]
US 20150205816A1 · Periyagaram · 2015 [cited by examiner]
US 20150261776A1 · Attarde · 2015 [cited by examiner]
US 20160350324A1 · Wang · 2016 [cited by examiner]
US 20170038978A1 · Li · 2017 [cited by examiner]
US 20170308557A1 · Cassidy et al. · 2017 [cited by applicant]
US 20180095674A1 · Alameldeen · 2018 [cited by examiner]
US 20180138921A1 · Arelakis · 2018 [cited by examiner]
US 20180314727A1 · Epstein · 2018 [cited by examiner]
US 20190205704A1 · Zhu · 2019 [cited by examiner]
US 20190235778A1 · Jin · 2019 [cited by examiner]
US 20200034040A1 · Garman · 2020 [cited by examiner]
US 20200097571A1 · Mathur · 2020 [cited by examiner]
US 20200133783A1 · Kumar · 2020 [cited by examiner]
US 20200310686A1 · Truong · 2020 [cited by examiner]
US 20210036714A1 · Martin · 2021 [cited by examiner]
US 20210374021A1 · Santhakumar · 2021 [cited by examiner]
CN 110175169A · 2019 [cited by applicant]
CN 110196848A · 2019 [cited by applicant]
CN 110941598A · 2020 [cited by applicant]
WO WO2013157103A1 · 2013 [cited by examiner]
Julie Watson, “What is VDI? How Does Virtual Desktop Infrastructure Work?”, Aug. 17, 2018, pp. 1-17, https://www.acecloudhosting.com/blog/what-is-vdi-how-it-work/ (Year: 2018). [cited by examiner]