Data downloading method and device, electronic equipment and storage medium
By generating the first data chain and using Service Worker, the problem of unstable data download in the bank data analysis platform was solved, enabling fast and stable data export and adapting to the needs of different network environments.
Patent Information
- Application Number
- CN202511048683.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-29
- Publication Date
- 2025-11-11
AI Technical Summary
Existing data download solutions in bank data analysis platforms result in cache loss after page refresh, poor data persistence, and excessive server load and storage consumption in high-concurrency scenarios, failing to meet users' data export needs.
By generating a first data chain, recording operation logs of resource information changes, and generating download files based on download requests, the Service Worker intercepts download requests, supports offline and online downloads, reduces duplicate server requests, and uses a combination of incremental snapshot chains and operation log chains to generate download files.
It improves data download speed, reduces storage space and memory consumption, ensures the stability of downloaded files and the persistence of data, and adapts to download needs in different network environments.
Smart Images

Figure CN120935159A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data processing technology, and in particular to a data download method, apparatus, electronic device, and storage medium. Background Technology
[0002] In bank data analytics platforms and interactive reporting systems, users often need to explore data details through multi-level drill-down operations. For example, they might need to obtain active user statistics from head office to branches, sub-branches, and outlets. These scenarios place higher demands on the data export functionality. The following requirements must be met: users should be able to export all expanded levels of data identical to what is displayed on the page (including dynamically loaded paginated data); duplicate requests or data processing delays should be avoided to prevent excessive user wait times or page crashes; historical operation data should be exportable even in offline environments; and server load and front-end storage usage should be reduced in high-concurrency scenarios. However, existing data export solutions are not only slow to download data and unable to guarantee data consistency, but also cause rapid memory expansion and insufficient storage space during data download; limited cache capacity leads to low system stability; and reliance on memory or page lifecycle means that cache is lost when the page is refreshed, resulting in poor data persistence. Summary of the Invention
[0003] This invention provides a data download method, apparatus, electronic device, and storage medium to solve the problems of unstable data download, resulting in cache loss after page refresh and poor data persistence.
[0004] According to one aspect of the present invention, a data download method is provided, comprising:
[0005] A first data chain is determined; the first data chain is used to record first data according to a timestamp; the first data is an operation record generated when resource information is modified on the first component; the first component is used to provide corresponding operation services for the resource information modification;
[0006] In response to the download request, the download request is parsed to obtain the first download information; the first download information includes the download information range, the second component identifier, and the download request type; the second component identifier is the identifier of the component that can analyze and organize the resource change information generated by the first component, and can also provide operation services that the first component does not have;
[0007] The download file is determined based on the first download information and the first data link; the download file is a file generated from the operation record indicated by the download request.
[0008] According to another aspect of the present invention, a data downloading apparatus is provided, comprising:
[0009] A first data chain determination module is used to determine a first data chain; the first data chain is used to record first data according to a timestamp; the first data is an operation record generated when resource information is modified on a first component; the first component is used to provide corresponding operation services for the resource information modification.
[0010] The first download information determination module is used to respond to download requests, parse the download requests, and obtain first download information. The first download information includes a download information range, a second component identifier, and a download request type. The second component identifier is the identifier of a component that can analyze and organize resource change information generated by the first component and can also provide operation services that the first component does not have.
[0011] The download file generation module is used to determine the download file based on the first download information and the first data link; the download file is a file generated from the operation record of the download request.
[0012] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising:
[0013] At least one processor; and
[0014] A memory communicatively connected to the at least one processor; wherein,
[0015] The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the data download method according to any embodiment of the present invention.
[0016] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the data download method according to any embodiment of the present invention.
[0017] The technical solution of this invention involves determining a first data chain. Generating the first data chain reduces storage usage while accelerating the generation of downloaded files, thereby increasing download speed. Responding to a download request, the method parses the download request to obtain first download information. Based on the first download information and the first data chain, the method determines the download file, ensuring the stability of the downloaded file and preventing data loss during the download process. This method generates the first data chain by recording the operation records and changes in the resource information. Download files are generated based on different download types in the download request and the first data chain. This eliminates the need for repeated requests to the server, improving download speed. Furthermore, the provision of different download methods meets diverse download needs and adapts to different network environments.
[0018] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description
[0019] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0020] Figure 1 A flowchart of a data download method provided in an embodiment of the present invention;
[0021] Figure 2 A structural diagram of a second data link provided in an embodiment of the present invention;
[0022] Figure 3 A structural diagram of a third data link provided in an embodiment of the present invention;
[0023] Figure 4 A flowchart of an offline download provided in an embodiment of the present invention;
[0024] Figure 5 This is a schematic diagram of the structure of a data download device provided in an embodiment of the present invention;
[0025] Figure 6 A schematic diagram of the structure of an electronic device for implementing the data download method of this embodiment of the invention. Detailed Implementation
[0026] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0027] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0028] Figure 1 This is a flowchart illustrating a data download method provided in an embodiment of the present invention. This embodiment is applicable to downloading bank business records. The method can be executed by a data download device, which can be implemented in hardware and / or software and can be configured in any electronic device with network communication capabilities. Figure 1 As shown, the method includes:
[0029] S110. Determine the first data chain; the first data chain is used to record the first data according to the timestamp; the first data is the operation record generated when the resource information of the first component is changed; the first component is used to provide corresponding operation services for the resource information change.
[0030] The first component is a service component that provides modification services for resource information.
[0031] Furthermore, based on the business requirements that have changed according to the resource information, a first component capable of achieving the corresponding function is matched.
[0032] The first data is the operation record obtained by recording each step of the resource change when the resource information is changed through the first component.
[0033] The operation log can include at least: expanded nodes, filter conditions, and page turning.
[0034] The first data chain is a data chain with the second component as the root node, and the operation records of each first component under the second component are sorted according to the timestamp.
[0035] The second component is the parent component of the first component. It is used to analyze and record the operation records generated by the first component and has operation services that the first component does not have.
[0036] Furthermore, the first data link includes two parts: the second data link and the third data link.
[0037] The second data chain, also known as the operation record chain, is used to record the operation corresponding to each resource information change according to the timestamp.
[0038] For example, such as Figure 2 As shown in the figure, the operation record chain records the operation records of the first component under the second component. It can be seen from the figure that the second component contains four operations, which are sorted in chronological order.
[0039] The third data chain, also known as the incremental snapshot chain, is used to record data changes for each resource information according to timestamps.
[0040] For example, such as Figure 3 As shown, the incremental snapshot chain records the differences between the generated version and the previous version after each operation on the same resource information. As can be seen from the figure, the resource information has been modified three times: adding rows, deleting rows, and modifying fields.
[0041] Specifically, the first component is monitored in real time. When an operation is detected in the first component, the operation record of the first component is recorded. A hash value is generated based on the obtained operation record using an encoding algorithm. The hash value is then bound to the operation record to obtain the first data. The identifier of the second component is determined based on the first component. Starting from the second component identifier, the operation record chain is generated by sorting the data according to the timestamps corresponding to the first data. For resource information modified by the operation record, the difference between each modified and unchanged resource information is recorded, i.e., an incremental snapshot. The difference is sorted according to the timestamps corresponding to each modification to obtain an incremental snapshot chain. The obtained incremental snapshot chain and operation record chain are combined and organized to obtain the first data chain.
[0042] Furthermore, after acquiring the first data chain, the first data chain is permanently stored in VUEX and synchronized to IndexedDB to ensure that the data is not lost after refreshing or closing.
[0043] The above steps, where the first data chain only stores the operations and incremental snapshots of each change to resource information instead of the full data, can reduce storage usage by more than 80%.
[0044] S120. Respond to the download request, parse the download request, and obtain the first download information; the first download information includes the download information range, the second component identifier, and the download request type; the second component identifier is the identifier of the component that can analyze and organize the resource change information generated by the first component, and can also provide operation services that the first component does not have.
[0045] Specifically, the Service Worker intercepts download requests and responds to them, determining the type of the download request. The content within the download request is parsed to obtain the download information range and the second component identifier. The obtained download request type, download information range, and second component identifier are then combined to obtain the first download information.
[0046] S130. Determine the download file based on the first download information and the first data link; the download file is a file generated from the operation record indicated by the download request.
[0047] Specifically, if the download type in the first download information is offline download, then the system matches the historical download operation chain database based on the first download information. If an operation chain consistent with the first download information is found, the matched operation chain is used as a pre-download operation chain, and incremental snapshots are applied to the pre-download operation chain in version order starting from the initial version. The browser's Readable Stream and Writable Stream APIs are used to gradually generate the download file. If no operation chain consistent with the first download information is found, the same download method as online download is used. If the download type is online download, after clicking download, the system searches the indexedDB for a consistent operation trajectory list. If found, the list is selected, its incremental snapshot is loaded, and dynamic data merging is performed to generate the download file. If not found, the first data chain is obtained from the backend, the download file is generated based on the first data chain, and the download file is stored in the indexedDB and the historical download operation chain database.
[0048] For example, a comparative experiment was conducted using the above method, local caching, and full recursive requests to compare the generation of download files from the enterprise-level reporting platform. The experimental results are shown in Tables 1 and 2. The enterprise-level reporting platform covers a 5-level drill-down structure, contains 100,000 rows of basic data, and includes dynamic pagination loading.
[0049] Table 1 Comparison of Memory Usage
[0050]
[0051] Table 2 Comparison of Download Time
[0052]
[0053] Furthermore, as can be seen from the table, the method of this application can improve storage efficiency, reduce storage usage by 84%, reduce memory usage by more than 90%, and increase download speed by 300%.
[0054] Optionally, determine the first data link, including steps A1-A4:
[0055] Step A1: Determine the first data.
[0056] Specifically, the first component is monitored in real time. When a triggered operation is detected in the first component, the operation record of the first component is recorded to obtain the second information. Based on the obtained second information, a hash value is generated using an encoding algorithm. The obtained hash value is bound with the second information to obtain the first data.
[0057] The second piece of information includes at least: the object operation type, the timestamp of each operation, and the operation parameters for each operation. The operation parameters can be one of the following: the first component identifier, the pagination page number, or the filter criteria. The object operation type can be: drilldown.
[0058] The encoding algorithm can be the SHA-256 algorithm. The SHA-256 algorithm is used to convert second information of arbitrary length into a fixed-length hash value, possessing characteristics such as irreversibility and collision resistance. The fixed length is 256 bits, or 32 bytes.
[0059] Step A2: Determine the second data chain based on the first data and the first component; the second data chain is used to describe the operation records generated by the first component under the same second component when making changes to resource information.
[0060] The second data chain consists of operation records generated by all first components under the same second component when modifying resource information, and is sorted according to the timestamps corresponding to the operation records. The second data chain is used to represent the dependencies and execution order between various operations.
[0061] Specifically, the identifier of the second component is obtained based on the first component, and the first data is sorted according to the timestamp of the first data using the second component identifier as the root node to obtain the second data chain.
[0062] Furthermore, after acquiring the second data chain, it is permanently stored in VUEX and synchronized to IndexedDB to ensure that the data is not lost after refreshing or closing.
[0063] For example, such as Figure 2 As shown, under the second component, there are four operation records, which are sorted in chronological order.
[0064] The above steps preserve the dependencies and execution order between operations during the construction of the second data chain, ensuring that the complete business process can be restored during offline playback.
[0065] Step A3: Determine the third data chain based on the first data and the first information; the first information is the change information generated after the first change operation modifies the resource information; the third data chain is used to record the change operations of the same data information under different timestamps; the first change operation is the change operation before the timestamp corresponding to the second change operation, and is the same as the data information changed by the second change operation; the second change operation is the change operation corresponding to the first data.
[0066] The first piece of information can also be referred to as an incremental snapshot.
[0067] Specifically, based on the timestamp corresponding to the first data, the changes in resource information after modifications were made before that timestamp are identified and used as the first information. The third information corresponding to the first data is then compared with the resource information of the previous version using the Myers difference algorithm. Based on the comparison results, difference information is generated. The obtained difference information and the first information are then sorted by timestamp to obtain the second data chain.
[0068] Among them, the resource information of the previous version is the resource information corresponding to the timestamp with the smallest difference between the timestamp corresponding to the first information and the timestamp corresponding to the first data.
[0069] Furthermore, after acquiring the third data chain, the information is stored in IndexedDB in the order of resource information version number, forming a singly linked list structure.
[0070] For example, such as Figure 3 As shown, the change record chain records the differences between the generated version and the previous version after each operation on the same resource information. As can be seen from the figure, the resource information has undergone three changes: adding a row, deleting a row, and changing a field.
[0071] The above steps enable the construction of the third data chain to support rapid backtracking to any historical version.
[0072] Step A4: Generate the first data chain based on the first data chain and the second data chain.
[0073] Specifically, the first data chain and the second data chain are stored according to their timestamps to obtain the first data chain.
[0074] Optionally, determine the first data, including steps B1-B3:
[0075] Step B1: Bind the preset function to the operation identifier configured in the first component, and monitor the triggering of the operation identifier in real time.
[0076] Specifically, the operation services that the first component needs to complete are determined, and the preset functions required to complete these services are identified based on these services. These preset functions are then bound to operation identifiers configured within the first component. After binding, the triggering status of the operation identifiers is monitored in real time.
[0077] For example, a preset function `v-track-drilldown` is registered, and a drill-down button or trigger element is bound to the operation identifier of the first component. The triggering status of the operation identifier of the first component is monitored in real time by listening to the click event of the element.
[0078] Step B2: Obtain the operation record of the first component based on the triggering situation to obtain the second information.
[0079] Specifically, if the trigger condition is triggered, the operation record of the first component of the first component is recorded according to the timestamp to obtain the second information; if the trigger condition is not triggered, monitoring continues.
[0080] The second piece of information includes at least: the object operation type, the timestamp of each operation, and the operation parameters of each operation.
[0081] Step B3: Generate a first identifier based on the second information, and bind the second information and the first identifier to obtain the first data; the first identifier uniquely represents the second information.
[0082] Specifically, a hash value is generated based on the second information using the SHA-256 algorithm, and this hash value is used as the first identifier. The second information is then bound to the first identifier to obtain the first data.
[0083] For example, first, the global directive `v-track-drilldown` is registered, binding a drill-down operation button or trigger element to the operation identifier of the first component. By monitoring the element's click event, the object's operation type, timestamp, and operation parameters are captured. The acquired object operation type, timestamp, and operation parameters are used as second information. The SHA-256 algorithm is used to generate a data hash value from the second information. The hash value is then bound to the current operation record to form the first data.
[0084] Optionally, the second data chain is determined based on the first data and the first component, including steps C1-C2:
[0085] Step C1: Determine the identifier of the second component based on the first component.
[0086] Specifically, the second component is determined based on the subordinate relationship of the first component. The identifier of the second component is then obtained based on the second component.
[0087] The subordinate relationship is used to record the relationship between the second component and the first component.
[0088] Step C2: Sort the first data according to the timestamp of the first data and bind it with the second component identifier to obtain the second data chain.
[0089] Specifically, the second data chain is obtained by sorting the first data according to the timestamp of the first data, with the second component identifier as the root node.
[0090] Optionally, a third data chain is determined based on the first data and the first information, including steps D1-D3:
[0091] Step D1: Determine the third information based on the first data.
[0092] Specifically, the modified resource information is determined based on the first data and used as the third information.
[0093] Step D2: Determine the fourth information based on the third information.
[0094] Specifically, the Myers difference algorithm is used to compare the third information corresponding to the first data with the resource information of the previous version. Based on the comparison results, difference information is generated and the obtained difference information is used as the fourth information.
[0095] Among them, the resource information of the previous version is the resource information corresponding to the timestamp with the smallest difference between the timestamp corresponding to the first information and the timestamp corresponding to the first data.
[0096] Step D3: Generate the third data link based on the fourth information and the first information.
[0097] Specifically, the fourth information is integrated with the first information in ascending order of timestamps to obtain the third data chain.
[0098] Optionally, the download file is determined based on the first download information and the first data link, including steps E1-E3:
[0099] Step E1: Determine the download type based on the first download information; the download type is used to indicate whether the download request is an online download.
[0100] Specifically, the download type corresponding to the download request is obtained from the first download information.
[0101] Step E2: If the download type is offline download, then generate the download file based on the first download information and the first data link.
[0102] Specifically, if the download type is offline download, the system matches the historical download operation chain database based on the first download information. If an operation chain matching the first download information is found, it is used as a pre-download operation chain. Incremental snapshots are applied to the pre-download operation chain starting from the initial version and in version order, and the download files are generated step by step using the browser's Readable Stream and Writable Stream APIs. If no operation chain matching the first download information is found, the same download method as online download is used.
[0103] Furthermore, download files are generated through block-based writing. This involves splitting the pre-download operation chain into multiple blocks and processing them one by one. Then, a streaming conversion writing method is used to convert each data block to the target format, and the converted data is written to disk in blocks, thus freeing up memory. The Service Worker generates download files for each data block in the target format it acquires. Finally, memory usage is monitored in real time, and if it approaches browser limits, it automatically switches to a compression algorithm with lower memory consumption.
[0104] Furthermore, during the process of generating the download file, the hash value contained in the first download information is compared with the hash value corresponding to each record node in the pre-download operation chain. If the match fails, an alarm is triggered, and a prompt is made to indicate whether to continue exporting or to stop downloading.
[0105] Furthermore, the process of generating download files also includes: if the length of the pre-download operation chain is greater than the length required for the first download information, the target operation chain can be quickly located, and only the snapshot corresponding to that version can be merged.
[0106] Step E3: If the download type is online download, retrieve the corresponding data information from the first data link based on the first download information and generate the download file.
[0107] Specifically, if the download type is online download, after clicking download, the system searches the indexedDB for a matching operation trace list. If found, the list is selected, its incremental snapshot is loaded, and dynamic data merging is performed to generate the download file. If not found, the system retrieves the first data chain from the backend, generates the download content based on the first data chain, and stores the download content in the indexedDB.
[0108] The above steps utilize a replay-based approach to generate downloaded files, eliminating the need for repeated server requests and increasing download speed by more than three times. Furthermore, versioned storage and offline support allow for the export of historical version data in offline environments.
[0109] Optionally, a download file is generated based on the first download information and the first data link, including steps F1-F3:
[0110] Step F1: Match the data link from the historical database based on the first download information.
[0111] Specifically, based on the download information range in the first download information, the database is matched to see if a data chain with the corresponding range exists.
[0112] Step F2: If a matching data chain exists, generate a download file from the matched data chain.
[0113] Specifically, if a corresponding data chain exists, the matched operation chain is used as the pre-download operation chain. Incremental snapshots are applied to the pre-download operation chain starting from the initial version and in version order. Download files are generated step by step using the browser's ReadableStream and WritableStream APIs. During the generation of download files, the hash value contained in the first download information is compared with the hash value corresponding to each record node in the pre-download operation chain. If a match fails, an alarm is triggered, prompting whether to continue exporting or abort the download.
[0114] Step F3: If no matching data chain exists, the first data chain is filtered according to the first download information, and a download file is generated.
[0115] Specifically, if no matching data chain exists, after clicking download, the system searches the indexedDB for a consistent operation trajectory list. If found, the list is selected, its incremental snapshot is loaded, and dynamic data merging is performed to generate the download file. If not, the first data chain is retrieved from the backend, the download content is generated based on the first data chain, and the download content is stored in the indexedDB.
[0116] For example, such as Figure 4 As shown, when a download request is detected, the client registers a Service Worker to intercept the download request and monitor the download request initiated by the front end. If an offline state is detected, a data chain consistent with the current download operation is matched from the historical operation chain database. If a consistent data chain exists, IndexedDB returns the operation chain. The Service Worker loads the incremental snapshot in the data chain, merges the differences in the operation chain, and sends it to the differential merger. The differential merger paginates the data chain passed by the Service Worker, splits it into multiple blocks, and sends the data blocks to the streaming writer. The streaming converter converts each data block into the target format and generates the download file.
[0117] The technical solution of this embodiment determines a first data chain. Generating the first data chain reduces storage usage while accelerating the generation of downloaded files, thereby improving download speed. Responding to a download request, the method parses the download request to obtain first download information. Based on the first download information and the first data chain, the method determines the download file, ensuring the stability of the downloaded file and preventing data loss during the download process. This method generates the first data chain by recording the operation records and changes in the resource information. Download files are generated based on different download types in the download request and the first data chain. This eliminates the need for repeated requests to the server, improving download speed. Furthermore, the provision of different download methods meets diverse download needs and adapts to different network environments.
[0118] Figure 5 This is a schematic diagram of a data download device provided in an embodiment of the present invention. This embodiment is applicable to downloading bank business records. The data download device can be implemented in hardware and / or software, and can be configured in any electronic device with network communication capabilities. Figure 5 As shown, the device includes: a first data link determination module 210, a first download information determination module 220, and a download file generation module 230, wherein:
[0119] First data chain determination module 210: used to determine the first data chain; the first data chain is used to record the first data according to the timestamp; the first data is the operation record generated when the resource information of the first component is changed; the first component is used to provide corresponding operation services for the resource information change;
[0120] First Download Information Determination Module 220: Used to respond to download requests, parse download requests, and obtain first download information; the first download information includes download information range, second component identifier, and download request type; the second component identifier is the identifier of a component that can analyze and organize resource change information generated by the first component and can also provide operation services that the first component does not have;
[0121] Download file generation module 230: used to determine the download file based on the first download information and the first data link; the download file is a file generated from the operation record of the download request.
[0122] Optionally, the first data link determination module 210 includes:
[0123] First data determination unit: used to determine the first data;
[0124] Second data link determination unit: used to determine the second data link based on the first data and the first component; the second data link is used to describe the operation record generated by the first component under the same second component when changing resource information;
[0125] The third data chain determination unit is used to determine the third data chain based on the first data and the first information; the first information is the change information generated after the first change operation changes the resource information; the third data chain is used to record the change operations of the same data information under different timestamps; the first change operation is the change operation before the timestamp corresponding to the second change operation, and is the same as the data information changed by the second change operation; the second change operation is the change operation corresponding to the first data.
[0126] First data link determination unit: used to generate the first data link based on the first data link and the second data link.
[0127] Optionally, the first data determining unit includes:
[0128] Trigger determination subunit: used to bind preset functions with operation identifiers configured in the first component, and to monitor the trigger status of operation identifiers in real time;
[0129] The second information determination subunit is used to obtain the operation record of the first component based on the triggering situation to obtain the second information;
[0130] First data determination subunit: used to generate a first identifier based on the second information, and bind the second information and the first identifier to obtain the first data; the first identifier uniquely represents the second information.
[0131] Optionally, the second data link determination unit includes:
[0132] Second component identifier determination subunit: used to determine the second component identifier based on the first component;
[0133] The second data chain determination subunit is used to sort the first data according to the timestamp of the first data and bind it with the second component identifier to obtain the second data chain.
[0134] Optionally, the third data link determination unit includes:
[0135] Third Information Determination Subunit: Used to determine third information based on the first data;
[0136] Fourth Information Determination Subunit: Used to determine the fourth information based on the third information;
[0137] The third data link determination subunit is used to generate the third data link based on the fourth information and the first information.
[0138] Optionally, the download file generation module 230 includes:
[0139] Download type determination subunit: used to determine the download type based on the first download information; the download type is used to characterize whether the download request is an online download.
[0140] Download file generation unit: used to generate a download file based on the first download information and the first data link if the download type is offline download;
[0141] Download file generation unit: If the download type is online download, it retrieves the corresponding data information from the first data link based on the first download information and generates a download file.
[0142] Optional, download file generation includes:
[0143] Matching subunit: used to perform data link matching from the historical database based on the first download information;
[0144] Download file generation subunit: If a matching data chain exists, it generates a download file from the matched data chain.
[0145] Download file generation determination subunit: If no matching data chain exists, it filters the first data chain based on the first download information and generates a download file.
[0146] The data download device provided in this embodiment of the invention can execute the data download method provided in any of the above embodiments of the invention, and has the corresponding functions and beneficial effects of executing the data download method. For details, please refer to the relevant operations of the data download method in the foregoing embodiments.
[0147] Figure 6 This is a schematic diagram of the structure of an electronic device for implementing the data download method of an embodiment of the present invention. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.
[0148] like Figure 6As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 may also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0149] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0150] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as data download methods.
[0151] In some embodiments, the data download method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the data download method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the data download method by any other suitable means (e.g., by means of firmware).
[0152] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0153] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0154] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0155] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0156] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or computing systems that include middleware components (e.g., application servers), or computing systems that include frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0157] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.
[0158] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.
[0159] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. A data download method, characterized in that, include: Determine the first data link; The first data chain is used to record the first data according to the timestamp; The first data is an operation record generated when resource information of the first component is modified; The first component is used to provide corresponding operation services for changes to the resource information; In response to the download request, the download request is parsed to obtain the first download information; the first download information includes the download information range, the second component identifier, and the download request type; the second component identifier is the identifier of the component that can analyze and organize the resource change information generated by the first component, and can also provide operation services that the first component does not have; The download file is determined based on the first download information and the first data link; the download file is a file generated from the operation record indicated by the download request.
2. The method according to claim 1, characterized in that, Determining the first data link includes: Determine the first data; A second data chain is determined based on the first data and the first component; the second data chain is used to describe the operation records generated by the first component under the same second component when resource information is modified. A third data chain is determined based on the first data and the first information; the first information is the change information generated after the first change operation modifies the resource information; the third data chain is used to record change operations of the same data information at different timestamps; the first change operation is the change operation before the timestamp corresponding to the second change operation, and is the same as the data information changed by the second change operation; the second change operation is the change operation corresponding to the first data. A first data chain is generated based on the first data chain and the second data chain.
3. The method according to claim 2, characterized in that, The determination of the first data includes: The preset functions are bound to the operation identifiers configured in the first component, and the triggering of the operation identifiers is monitored in real time. Based on the triggering conditions, the operation records of the first component are obtained to obtain the second information; A first identifier is generated based on the second information, and the second information and the first identifier are bound together to obtain first data; the first identifier uniquely represents the second information.
4. The method according to claim 2, characterized in that, Determining the second data chain based on the first data and the first component includes: The identifier of the second component is determined based on the first component; The first data is sorted according to its timestamp and then bound to the second component identifier to obtain the second data chain.
5. The method according to claim 2, characterized in that, The step of determining the third data chain based on the first data and the first information includes: The third information is determined based on the first data; The fourth information is determined based on the third information; A third data chain is generated based on the fourth information and the first information.
6. The method according to claim 1, characterized in that, The step of determining the download file based on the first download information and the first data link includes: The download type is determined based on the first download information; the download type is used to indicate whether the download request is an online download. If the download type is offline download, then the download file is generated based on the first download information and the first data link; If the download type is online download, the corresponding data information is retrieved from the first data chain based on the first download information, and the download file is generated.
7. The method according to claim 6, characterized in that, The step of generating the download file based on the first download information and the first data link includes: Data chain matching is performed from the historical database based on the first download information; If a matching data chain exists, the matching data chain will be used to generate a download file. If no matching data chain exists, the first data chain is filtered based on the first download information, and a download file is generated.
8. A data download device, characterized in that, include: The first data link determination module is used to determine the first data link; The first data chain is used to record the first data according to the timestamp; The first data is an operation record generated when resource information is modified on the first component; the first component is used to provide corresponding operation services for the resource information modification. The first download information determination module is used to respond to download requests, parse the download requests, and obtain first download information. The first download information includes a download information range, a second component identifier, and a download request type. The second component identifier is the identifier of a component that can analyze and organize resource change information generated by the first component and can also provide operation services that the first component does not have. The download file generation module is used to determine the download file based on the first download information and the first data link; the download file is a file generated from the operation record of the download request.
9. An electronic device, characterized in that, The electronic device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program executable by the at least one processor, which, when executed by the at least one processor, enables the at least one processor to perform the data download method according to any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that, when executed by a processor, implement the data download method according to any one of claims 1-7.