IP Library Granted Patent US 11,687,240
Granted Patent B2
US 11,687,240 · App. 17/351,442 · Granted Jun 27, 2023

Method, electronic device, and computer program product for data compression

Inventors: Tao Chen (Beijing, CN); Geng Han (Beijing, CN); Bing Liu (Tianjin, CN)
Assignee: EMC IP HOLDING COMPANY LLC
G06F3/0608G06F3/0659G06F3/0673H03M7/30H04L69/04
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 11,687,240
App. No.
17/351,442
Granted
Jun 27, 2023
Kind
B2
Abstract

Embodiments of the present disclosure provide a method, an electronic device, and a computer program product for data compression. The method includes: comparing the size of a first data packet to be compressed with a first threshold size; if the size of the first data packet is greater than the first threshold size, determining at least two second data packets from the first data packet, wherein the size of each second data packet is less than a second threshold size; and respectively compressing the at least two second data packets. In this way, the delay of data compression can be shortened.

Claims (54)

1. A method for data compression, comprising:

comparing a size of a first data packet to be compressed with a first threshold size, the first threshold size being determined based on at least a processing delay caused by compressing the first data packet;

if the size of the first data packet is greater than the first threshold size, determining at least two second data packets from the first data packet, wherein a size of each second data packet is less than or equal to a second threshold size; and

respectively compressing the at least two second data packets.

2. The method according to claim 1 , further comprising:

receiving a compression request containing the first data packet; and

determining the size of the first data packet in the compression request.

3. The method according to claim 2 , wherein determining the at least two second data packets from the first data packet comprises:

dividing the compression request into at least two compression sub-requests, each of which contains a corresponding second data packet.

4. The method according to claim 3 , wherein respectively compressing the at least two second data packets comprises:

sending the at least two compression sub-requests to a compressor of a storage system, so that the compressor sequentially compresses the corresponding second data packet contained in each compression sub-request.

5. The method according to claim 1 , further comprising:

determining a first relationship between a first delay caused by compressing the first data packet and the size of the first data packet;

determining a second relationship between a second delay caused by respectively compressing the at least two second data packets and the size of the first data packet; and

determining the first threshold size based on the first relationship and the second relationship.

6. The method according to claim 5 , wherein the first delay and the second delay respectively comprise a third delay related to a real-time overhead of a storage system.

7. The method according to claim 5 , wherein determining the first relationship and the second relationship comprises:

determining a compression level used; and

based on the compression level, obtaining first parameters and second parameters to respectively determine the first relationship and the second relationship.

8. The method according to claim 1 , wherein comparing the size of the first data packet to be compressed with the first threshold size comprises:

obtaining a real-time overhead of a storage system; and

if the real-time overhead is less than a threshold overhead, comparing the size of the first data packet to be compressed with the first threshold size.

9. The method according to claim 1 , wherein each of the at least two second data packets has the same size.

10. An electronic device, comprising: a processor; and

a memory coupled to the processor and having instructions stored therein, which when executed by the processor, cause the electronic device to perform actions, the actions comprising:

comparing a size of a first data packet to be compressed with a first threshold size, the first threshold size being determined based on at least a processing delay caused by compressing the first data packet;

if the size of the first data packet is greater than the first threshold size, determining at least two second data packets from the first data packet, wherein a size of each second data packet is less than or equal to a second threshold size; and

respectively compressing the at least two second data packets.

11. The device according to claim 10 , wherein the actions further comprise:

receiving a compression request containing the first data packet; and

determining the size of the first data packet in the compression request.

12. The device according to claim 11 , wherein determining the at least two second data packets from the first data packet comprises:

dividing the compression request into at least two compression sub-requests, each of which contains a corresponding second data packet.

13. The device according to claim 12 , wherein respectively compressing the at least two second data packets comprises:

sending the at least two compression sub-requests to a compressor of a storage system, so that the compressor sequentially compresses the corresponding second data packet contained in each compression sub-request.

14. The device according to claim 10 , wherein the actions further comprise:

determining a first relationship between a first delay caused by compressing the first data packet and the size of the first data packet;

determining a second relationship between a second delay caused by respectively compressing the at least two second data packets and the size of the first data packet; and

determining the first threshold size based on the first relationship and the second relationship.

15. The device according to claim 14 , wherein the first delay and the second delay respectively comprise a third delay related to a real-time overhead of a storage system.

16. The device according to claim 14 , wherein determining the first relationship and the second relationship comprises:

determining a compression level used; and

based on the compression level, obtaining first parameters and second parameters to respectively determine the first relationship and the second relationship.

17. The device according to claim 10 , wherein comparing the size of the first data packet to be compressed with the first threshold size comprises:

obtaining a real-time overhead of a storage system; and

if the real-time overhead is less than a threshold overhead, comparing the size of the first data packet to be compressed with the first threshold size.

18. The device according to claim 10 , wherein each of the at least two second data packets has the same size.

19. A computer program product tangibly stored in a non-transitory computer-readable medium and comprising machine-executable instructions, which when executed by a machine, cause the machine to perform a method, the method comprising:

comparing a size of a first data packet to be compressed with a first threshold size, the first threshold size being determined based on at least a processing delay caused by compressing the first data packet;

if the size of the first data packet is greater than the first threshold size, determining at least two second data packets from the first data packet, wherein a size of each second data packet is less than or equal to a second threshold size; and

respectively compressing the at least two second data packets.

20. The computer program product according to claim 19 , wherein the method further comprises:

receiving a compression request containing the first data packet; and

determining the size of the first data packet in the compression request.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2021
From: CHEN, TAO; HAN, GENG; LIU, BING
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 056583/0794 →
Priority Claims (1)
CN 202110431811.7 · Apr 21, 2021 · national
Continuity (1)
Related Publication 20220342554A1 · Oct 27, 2022