IP Library › Granted Patent US 12,346,736
Granted Patent B2
US 12,346,736 · App. 17/662,228 · Granted Jul 1, 2025

Systems and methods for data storage and computing

Inventors: Guobao Feng (Hangzhou, CN); Chengxiang Lu (Hangzhou, CN); Bin Wang (Hangzhou, CN); Songlou Hong (Hangzhou, CN); Jianfeng Cai (Hangzhou, CN)
Assignee: ZHEJIANG DAHUA TECHNOLOGY CO., LTD.
G06F9/505G06F3/0613G06F3/0631G06F3/0638G06F3/067G06F2209/501G06F2209/503
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,346,736
App. No.
17/662,228
Granted
Jul 1, 2025
Kind
B2
Abstract

Systems and methods for data storage are provided. The systems may include one or more storage modules and one or more computing modules. The systems may obtain data to be processed. The systems may determine a required storage bandwidth based on the data to be processed. The systems may determine a distribution mode of a current computing bandwidth of the one or more computing modules based on a current storage bandwidth of the one or more storage modules and the required storage bandwidth.

Claims (68)

1. A system, comprising:

one or more storage modules;

one or more computing modules, wherein the one or more computing modules are configured to process data to be processed;

at least one storage device including a set of instructions; and

at least one processor in communication with the at least one storage device, wherein the at least one processor includes a first processor and a second processor in communication with each other;

the one or more storage modules are connected to the first processor and the second processor respectively via a first connecting component; and

the one or more computing modules are connected to the first processor and

the second processor respectively via a second connecting component; wherein when executing the set of instructions, the at least one processor is directed to cause the system to perform operations including:

obtaining the data to be processed;

determining a required storage bandwidth based on the data to be processed; and

determining a distribution mode of a current computing bandwidth of the one or more computing modules based on a current storage bandwidth of the one or more storage modules and the required storage bandwidth, wherein the current computing bandwidth of the one or more computing modules refers to a currently available computing bandwidth of the one or more computing modules.

2. The system of claim 1 , wherein the required storage bandwidth includes at least one of:

a first storage bandwidth that the data would occupy, or

a second storage bandwidth that an analysis result of the data would occupy.

3. The system of claim 1 , wherein the determining a required storage bandwidth based on the data to be processed includes:

determining the required storage bandwidth based on at least one of a parameter associated with a capture device used to capture the data to be processed or historical data within a predetermined time period.

4. The system of claim 1 , wherein the determining a distribution mode of a current computing bandwidth of the one or more computing modules based on a current storage bandwidth of the one or more storage modules and the required storage bandwidth includes:

determining whether the required storage bandwidth is larger than the current storage bandwidth; and

determining the distribution mode of the current computing bandwidth based on the determination result.

5. The system of claim 4 , wherein the determining the distribution mode of the current computing bandwidth based on the determination result includes:

in response to a determination that the required storage bandwidth is less than or equal to the current storage bandwidth, keeping the distribution mode of the current computing bandwidth of the one or more computing modules unchanged.

6. The system of claim 4 , wherein the determining the distribution mode of the current computing bandwidth based on the determination result includes:

in response to a determination that the required storage bandwidth is larger than the current storage bandwidth, allocating a portion of the current computing bandwidth to be used to compress the data to be processed.

7. The system of claim 4 , wherein the determining the distribution mode of the current computing bandwidth based on the determination result includes:

in response to a determination that the required storage bandwidth is larger than the current storage bandwidth, stopping a portion of the current computing bandwidth, such that an updated required storage bandwidth is no larger than the current storage bandwidth.

8. The system of claim 4 , wherein the determining the distribution mode of the current computing bandwidth based on the determination result includes:

in response to determining that the required storage bandwidth is less than or equal to the current storage bandwidth,

determining a required computing bandwidth based on the data to be processed;

determining whether the current computing bandwidth is greater than the required computing bandwidth; and

in response to a determination that the current computing bandwidth is greater than the required computing bandwidth, allocating a portion of the current computing bandwidth to be used to compress the data to be processed.

9. The system of claim 4 , wherein the determining the distribution mode of the current computing bandwidth based on the determination result includes:

in response to determining that the required storage bandwidth is less than or equal to the current storage bandwidth,

determining a required computing bandwidth based on the data to be processed;

determining whether the current computing bandwidth is greater than the required computing bandwidth; and

in response to a determination that the current computing bandwidth is less than the required computing bandwidth, allocating a computing bandwidth that is previously allocated to be used to compress the data to be processed back to the current computing bandwidth.

10. The system of claim 1 , wherein the data to be processed includes real-time video data.

11. The system of claim 1 , wherein the one or more storage modules and the one or more computing modules are integrated into an integrated storage-computing device.

12. A method implemented on a computing device including at least one processor, one or more storage modules, and one or more computing modules, wherein the at least one processor includes a first processor and a second processor in communication with each other;

the one or more storage modules are connected to the first processor and the second processor respectively via a first connecting component; and

the one or more computing modules are connected to the first processor and the second processor respectively via a second connecting component, the method comprising:

obtaining data to be processed;

determining a required storage bandwidth based on the data to be processed; and

determining a distribution mode of a current computing bandwidth of one or more computing modules based on a current storage bandwidth of one or more storage modules and the required storage bandwidth, wherein the one or more computing modules are configured to process the data to be processed, and

the current computing bandwidth of the one or more computing modules refers to a currently available computing bandwidth of the one or more computing modules.

13. The method of claim 12 , wherein the required storage bandwidth includes at least one of:

a first storage bandwidth that the data would occupy, or

a second storage bandwidth that an analysis result of the data would occupy.

14. The method of claim 12 , wherein the determining a distribution mode of a current computing bandwidth of the one or more computing modules based on a current storage bandwidth of the one or more storage modules and the required storage bandwidth includes:

determining whether the required storage bandwidth is larger than the current storage bandwidth; and

determining the distribution mode of the current computing bandwidth based on the determination result.

15. The method of claim 14 , wherein the determining the distribution mode of the current computing bandwidth based on the determination result includes:

in response to a determination that the required storage bandwidth is less than or equal to the current storage bandwidth, keeping the distribution mode of the current computing bandwidth of the one or more computing modules unchanged.

16. The method of claim 14 , wherein the determining the distribution mode of the current computing bandwidth based on the determination result includes:

in response to a determination that the required storage bandwidth is larger than the current storage bandwidth,

allocating a portion of the current computing bandwidth to be used to compress the data to be processed, or

stopping a portion of the current computing bandwidth, such that an updated required storage bandwidth is no larger than the current storage bandwidth.

17. The method of claim 14 , wherein the determining the distribution mode of the current computing bandwidth based on the determination result includes:

in response to determining that the required storage bandwidth is less than or equal to the current storage bandwidth,

determining a required computing bandwidth based on the data to be processed;

determining whether the current computing bandwidth is greater than the required computing bandwidth; and

in response to a determination that the current computing bandwidth is greater than the required computing bandwidth, allocating a portion of the current computing bandwidth to be used to compress the data to be processed or allocating a computing bandwidth that is previously allocated to be used to compress the data to be processed back to the current computing bandwidth.

18. A non-transitory computer readable medium, comprising executable instructions that, when executed by a computing device including at least one processor, one or more storage modules, and one or more computing modules wherein the at least one processor includes a first processor and a second processor in communication with each other;

the one or more storage modules are connected to the first processor and the second processor respectively via a first connecting component; and

the one or more computing modules are connected to the first processor and the second processor respectively via a second connecting component, direct the at least one processor to perform a method, the method comprising:

obtaining data to be processed;

determining a required storage bandwidth based on the data to be processed; and

determining a distribution mode of a current computing bandwidth of one or more computing modules based on a current storage bandwidth of one or more storage modules and the required storage bandwidth, wherein the one or more computing modules are configured to process the data to be processed, and

the current computing bandwidth of the one or more computing modules refers to a currently available computing bandwidth of the one or more computing modules.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2022
From: FENG, GUOBAO; LU, CHENGXIANG; WANG, BIN; HONG, SONGLOU; CAI, JIANFENG
To: ZHEJIANG DAHUA TECHNOLOGY CO., LTD.
Reel/Frame 061077/0684 →
Priority Claims (2)
CN 202011288120.8 · Nov 17, 2020 · national
CN 202110069514.2 · Jan 19, 2021 · national
Continuity (2)
Continuation PCTCN2021122992 · Oct 11, 2021
Related Publication 20220261175A1 · Aug 18, 2022
References Cited (36)
US 9172396B1 · Jung et al. · 2015 [cited by applicant]
US 10635336B1 · He et al. · 2020 [cited by applicant]
US 12056579B1 · Mattar · 2024 [cited by examiner]
US 20120185648A1 · Benhase et al. · 2012 [cited by applicant]
US 20160248676A1 · Thanasekaran · 2016 [cited by applicant]
US 20180004447A1 · Oohira · 2018 [cited by examiner]
US 20180081581A1 · Miyamoto · 2018 [cited by examiner]
US 20180129425A1 · Park et al. · 2018 [cited by applicant]
US 20200133533A1 · Zhao et al. · 2020 [cited by applicant]
US 20210049042A1 · Suh · 2021 [cited by examiner]
US 20210173824A1 · Chen · 2021 [cited by applicant]
US 20210374319A1 · Gibson · 2021 [cited by examiner]
US 20210389886A1 · Purushothaman · 2021 [cited by examiner]
US 20220121361A1 · Kamran · 2022 [cited by examiner]
US 20220131931A1 · Bikumala · 2022 [cited by examiner]
US 20220147269A1 · Feng et al. · 2022 [cited by applicant]
US 20220147401A1 · Wigglesworth · 2022 [cited by examiner]
CN 104461396A · 2015 [cited by applicant]
CN 105138289A · 2015 [cited by applicant]
CN 105159610A · 2015 [cited by applicant]
CN 109656855A · 2019 [cited by applicant]
CN 109683827A · 2019 [cited by applicant]
CN 109787638A · 2019 [cited by applicant]
CN 110837343A · 2020 [cited by applicant]
CN 111158907A · 2020 [cited by applicant]
CN 111443870A · 2020 [cited by applicant]
CN 111737062A · 2020 [cited by applicant]
CN 111831452A · 2020 [cited by applicant]
CN 112181293A · 2021 [cited by applicant]
CN 112394882A · 2021 [cited by applicant]
CN 112948300A · 2021 [cited by applicant]
International Search Report in PCT/CN2021/122992 mailed on Jan. 14, 2022, 4 pages. [cited by applicant]
Written Opinion in PCT/CN2021/122992 mailed on Jan. 14, 2022, 5 pages. [cited by applicant]
First Office Action in Chinese Application No. 202011288120.8 mailed on Dec. 14, 2021, 9 pages. [cited by applicant]
First Office Action in Chinese Application No. 202110069514.2 mailed on Jul. 20, 2022, 16 pages. [cited by applicant]
The Extended European Search Report in European Application No. 21887859.3 mailed on Jan. 24, 2023, 8 pages. [cited by applicant]