Data pre-caching method and device and related equipment

By configuring Web Cache scheduling policies on the SDN controller, data precache is implemented for the headquarters and branches of large enterprises, solving the problem of concurrent downloads filling the headquarters' export bandwidth, and improving network response time and cache efficiency.

CN120091065APending Publication Date: 2025-06-03NEW H3C TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411282939.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-13
Publication Date
2025-06-03

AI Technical Summary

Technical Problem

Large documents released by the headquarters of large enterprises cause concurrent downloads of branches, accounting for the export bandwidth of the headquarters, affecting the normal office operation of enterprises.

Method used

Configure the Web Cache scheduling policy through the SDN controller to determine the target file and cache policy to be published, including the branches to be cached, the time information that can be cached, and the size of the exit bandwidth, so as to select the target organization for pre-cache.

Benefits of technology

It effectively reduces the utilization rate of headquarters bandwidth, avoids the impact of sudden large traffic during working hours on the network, and improves response time and cache efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120091065A_ABST
    Figure CN120091065A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of data processing, in particular to a data pre-caching method and device and related equipment. The method comprises the following steps: determining a to-be-released target file; a caching strategy corresponding to the target file is configured, and the caching strategy comprises all second mechanisms needing to cache the target file, time information capable of caching the target file and the first number of the second mechanisms capable of caching the target file at the same time; determining a target mechanism capable of caching the target file at present from the second mechanisms; and issuing the caching strategy to the target mechanism, so that the target mechanism caches the target file based on the time information capable of caching the target file.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of data processing, and particularly to a data pre-caching method, apparatus, and related equipment. Background Art

[0002] With the rapid development of cloud network technology, SDN (Software Defined Network) technology has been widely applied to various fields and various actual user networks. As the brain of the network, the SDN controller controls and orchestrates the issuance of various network operation and maintenance services.

[0003] Web Cache is to cache the content on the Web page of the specified address server accessed by the user through the HTTP / HTTPS protocol locally. When the content accessed by the user is already cached locally, it is directly responded from the local instead of pulling from the remote server, thereby reducing the access traffic from the device to the server, reducing the transmission cost, alleviating the pressure on the destination server, and at the same time improving the user's access speed and response time to the website.

[0004] However, for large enterprises with numerous branches, some large files (such as promotional videos, learning courses) released by the headquarters will cause many branches to access and download simultaneously. These concurrent downloads will fill up the headquarters' egress bandwidth and affect the normal office operations of the enterprise. Summary of the Invention

[0005] This application provides a data pre-caching method, apparatus, and related equipment.

[0006] In a first aspect, this application provides a data pre-caching method, which is applied to a first organization. The method includes:

[0007] Determine a target file to be released;

[0008] Configure a caching policy corresponding to the target file, where the caching policy includes each second organization that needs to cache the target file, the time information for caching the target file, and the first quantity of the second organizations that can cache the target file simultaneously;

[0009] Determine a target organization that can currently cache the target file from the second organizations;

[0010] Send the caching policy to the target organization so that the target organization caches the target file based on the time information for caching the target file.

[0011] Optionally, the time information for caching the target file includes: the date to start caching the target file and the time period for caching the target file every day.

[0012] Optionally, the step of determining, from each of the second institutions, a target institution that can currently cache the target file includes:

[0013] Determine the second quantity of each of the second institutions;

[0014] If the second quantity is less than or equal to the first quantity, determine each of the second institutions as the target institution;

[0015] If the second quantity is greater than the first quantity, select the first quantity of second institutions from each of the second institutions and determine them as the target institutions;

[0016] When it is determined that any target institution has completed caching the target file and there are other second institutions that need to cache the target file, select one second institution from the other second institutions and determine it as the target institution until there are no second institutions that need to cache the target file.

[0017] Optionally, the caching policy includes each of the second institutions that need to cache the target file, the time information that the target file can be cached, and the size of the egress bandwidth used by the first institution to cache the target file;

[0018] The step of determining, from each of the second institutions, a target institution that can currently cache the target file includes:

[0019] Obtain the size of the egress bandwidth used by each of the second institutions to cache the target file;

[0020] Based on the size of the egress bandwidth used by the first institution to cache the target file and the size of the egress bandwidth used by each of the second institutions to cache the target file, select one or more second institutions from each of the second institutions and determine them as the target institutions, where the sum of the egress bandwidths used by each target institution to cache the target file is less than or equal to the size of the egress bandwidth used by the first institution to cache the target file.

[0021] Optionally, the step of selecting one or more second institutions from each of the second institutions and determining them as the target institutions based on the size of the egress bandwidth used by the first institution to cache the target file and the size of the egress bandwidth used by each of the second institutions to cache the target file includes:

[0022] If the sum of the egress bandwidths used by each of the second institutions to cache the target file is less than or equal to the size of the egress bandwidth used by the first institution to cache the target file, determine each of the second institutions as the target institution;

[0023] If the sum of the egress bandwidths of the respective second institutions for caching the target file is greater than the egress bandwidth of the first institution for caching the target file, one or more second institutions are selected from the respective second institutions and determined as target institutions;

[0024] When it is determined that any target institution has completed caching the target file and there are other second institutions that need to cache the target file, one second institution is selected from the other second institutions and determined as the target institution until there are no second institutions that need to cache the target file.

[0025] In a second aspect, the present application provides a data pre-caching device, which is applied to a first institution. The device includes:

[0026] A determination unit, configured to determine a target file to be published;

[0027] A configuration unit, configured to configure a caching policy corresponding to the target file, where the caching policy includes the respective second institutions that need to cache the target file, the time information for caching the target file, and the first quantity of second institutions that can cache the target file simultaneously;

[0028] The determination unit is further configured to determine a target institution that can currently cache the target file from the respective second institutions;

[0029] A distribution unit, configured to distribute the caching policy to the target institution so that the target institution caches the target file based on the time information for caching the target file.

[0030] Optionally, the time information for caching the target file includes: the date when caching the target file starts and the time period for caching the target file every day.

[0031] Optionally, when determining a target institution that can currently cache the target file from the respective second institutions, the determination unit specifically is configured to:

[0032] Determine the second quantity of the respective second institutions;

[0033] If the second quantity is less than or equal to the first quantity, the respective second institutions are determined as target institutions;

[0034] If the second quantity is greater than the first quantity, the first quantity of second institutions are selected from the respective second institutions and determined as target institutions;

[0035] When it is determined that any target institution has completed caching the target file and there are other second institutions that need to cache the target file, one second institution is selected from the other second institutions and determined as the target institution until there are no second institutions that need to cache the target file.

[0036] Optionally, the caching policy includes each second institution that needs to cache the target file, the time information when the target file can be cached, and the size of the egress bandwidth used by the first institution to cache the target file.

[0037] When determining the target institution that can currently cache the target file from the second institutions, the determining unit is specifically configured to:

[0038] Obtain the size of the egress bandwidth used by each second institution to cache the target file;

[0039] Based on the size of the egress bandwidth used by the first institution to cache the target file and the size of the egress bandwidth used by each second institution to cache the target file, select one or more second institutions from the second institutions and determine them as target institutions, where the sum of the egress bandwidths used by each target institution to cache the target file is less than or equal to the size of the egress bandwidth used by the first institution to cache the target file.

[0040] Optionally, when selecting one or more second institutions from the second institutions and determining them as target institutions based on the size of the egress bandwidth used by the first institution to cache the target file and the size of the egress bandwidth used by each second institution to cache the target file, the determining unit is specifically configured to:

[0041] If the sum of the egress bandwidths used by the second institutions to cache the target file is less than or equal to the size of the egress bandwidth used by the first institution to cache the target file, determine the second institutions as target institutions;

[0042] If the sum of the egress bandwidths used by the second institutions to cache the target file is greater than the size of the egress bandwidth used by the first institution to cache the target file, select one or more second institutions from the second institutions and determine them as target institutions;

[0043] When it is determined that any target institution has completed caching the target file and there are other second institutions that need to cache the target file, select one second institution from the other second institutions and determine it as a target institution until there are no second institutions that need to cache the target file.

[0044] In a third aspect, an embodiment of the present application provides a data pre-caching device, and the data pre-caching device includes:

[0045] A memory for storing program instructions;

[0046] A processor for calling the program instructions stored in the memory and executing the steps of the method according to any one of the above first aspects according to the obtained program instructions.

[0047] Fourthly, an embodiment of the present application further provides a computer-readable storage medium storing computer-executable instructions for causing a computer to execute the steps of the method according to any one of the above first aspects.

[0048] In summary, the data pre-caching method provided by the embodiment of the present application determines a target file to be published; configures a caching policy corresponding to the target file, where the caching policy includes each second institution that needs to cache the target file, time information for caching the target file, and a first number of second institutions that can cache the target file simultaneously; determines a target institution that can currently cache the target file from the second institutions; and sends the caching policy to the target institution so that the target institution caches the target file based on the time information for caching the target file.

[0049] By using the data pre-caching method provided by the embodiment of the present application, with the global perspective of the SDN controller, the Web Cache scheduling policy is configured. For different target files, as well as the egress bandwidth size of the headquarters institution for caching the target file and the egress bandwidth size of each branch institution that needs to cache the target file for caching the target file, the tasks and processes of pre-caching Web Cache data by devices within a specific network range in the SDN network are flexibly orchestrated, improving the response time of the Web Cache and reducing the impact of sudden large traffic on the network by the Web Cache. BRIEF DESCRIPTION OF THE DRAWINGS

[0050] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings required to be used in the description of the embodiments of the present application or the prior art. Obviously, the drawings in the following description are only some embodiments recorded in the present application. For those of ordinary skill in the art, other drawings can also be obtained based on these drawings of the embodiments of the present application.

[0051] Figure 1 It is a schematic diagram of the process of configuring a caching rule and obtaining cached data in the related art;

[0052] Figure 2 It is a schematic diagram of the process of each branch institution obtaining a file from the headquarters institution in the related art;

[0053] Figure 3 It is a detailed flowchart of a data pre-caching method provided by an embodiment of the present application;

[0054] Figure 4 It is a schematic timeline diagram of the headquarters uploading a file, branch institutions pre-caching, and publishing the file provided by an embodiment of the present application;

[0055] Figure 5 Schematic diagram of a data pre - caching device provided by an embodiment of the present application;

[0056] Figure 6 Hardware architecture diagram of a data pre - caching device provided by an embodiment of the present application. Detailed implementation manners

[0057] The terms used in the embodiments of the present application are only for the purpose of describing specific embodiments and do not limit the present application. The singular forms "a", "said" and "the" used in the present application and the claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used herein refers to any or all possible combinations of one or more related listed items.

[0058] It should be understood that although terms such as first, second, and third may be used in the embodiments of the present application to describe various information, these information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of the present application, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, in addition, the word "if" used may be interpreted as "when" or "while" or "in response to determining".

[0059] Currently, in a cross - headquarters and branch SDN controller system of a wide - area network, through service orchestration, users can configure Web Cache rules for multiple devices. Due to the convergence of services, a large number of devices will configure the same Web Cache rules. As Figure 1 shown, Spoke1 and Spoke2 will cache content according to the Web Cache rules. When a host obtains http data, when the http data hits the Web Cache rule, if the same data already exists on the Spoke, the data will be directly obtained from the Spoke. Otherwise, the Spoke will obtain the data from the http content server and cache it for the next time the host obtains this content.

[0060] However, for large enterprises with numerous branches, some large files (such as promotional videos, learning courses) released by the headquarters will cause numerous branches to access and download simultaneously. These concurrent downloads will fill up the headquarters' egress bandwidth, affecting the normal office operations of the enterprise. As Figure 2 shown: Each branch accesses with a 200Mbps bandwidth, and only 5 branches will fill up the 1Gbps bandwidth of the headquarters, resulting in the inability to access other network services.

[0061] The embodiment of the present application provides a method for pre-caching Web Cache data. By configuring the data caching policies of each branch through the SDN controller, methods such as batch caching by each branch and pre-caching in advance using the network during holidays or off-peak hours at night are adopted to reduce the bandwidth utilization rate of the headquarters and avoid the impact on the headquarters export network caused by simultaneous caching during working hours.

[0062] Exemplarily, referring to Figure 3 as shown, it is a detailed flowchart of a data pre-caching method provided by the embodiment of the present application. This method is applied to the first organization, and this method includes the following steps:

[0063] Step 300: Determine the target file to be released.

[0064] In the embodiment of the present application, the first organization is taken as the headquarters organization and the second organization is taken as the branch organization for illustration. Preferably, the data pre-caching method provided by the embodiment of the present application can be applied to the SDN controller of the headquarters organization or other management devices used by the headquarters organization to manage file release. In the embodiment of the present application, no specific limitation is made here.

[0065] In practical applications, when the management personnel determine that large files (such as promotional videos, etc.) need to be released to each branch, the large files are uploaded to the file server (such as http server) of the headquarters organization. In the embodiment of the present application, the large files to be released to each branch are the target files to be released.

[0066] Step 310: Configure the caching policy corresponding to the above target file.

[0067] Among them, the above caching policy includes each second organization that needs to cache the above target file, the time information when the above target file can be cached, and the first quantity of the second organization that can cache the above target file simultaneously.

[0068] In the embodiment of the present application, the time information when the above target file can be cached includes: the date when caching of the above target file starts and the time period when the above target file can be cached every day.

[0069] In the embodiment of the present application, the caching policy may include: caching policy name, list of files to be cached, date when the branch can start caching, caching policy scope (i.e., list of branch devices that need to cache files), time period used for caching every day, concurrency (number of branch devices that can cache files simultaneously, configured according to the actual situation. For example, if the headquarters bandwidth is very large, a larger value can be configured for the concurrency).

[0070] When it is determined that the target file needs to be published, configure the caching policy corresponding to the target file according to the actual caching requirements. The caching policy is used for each branch office (the egress device of the branch office) to cache the target file from the head office (the file server of the head office).

[0071] Step 320: Determine the target organization that can currently cache the target file from the above-mentioned second organizations.

[0072] In the embodiment of the present application, when determining the target organization that can currently cache the target file from the above-mentioned second organizations, a preferred implementation method is as follows:

[0073] Determine the second quantity of the above-mentioned second organizations; if the second quantity is less than or equal to the first quantity, determine the above-mentioned second organizations as the target organizations; if the second quantity is greater than the first quantity, select the first quantity of second organizations from the above-mentioned second organizations and determine them as the target organizations; when it is determined that any target organization has completed caching the target file and there are other second organizations that need to cache the target file, select one second organization from the above-mentioned other second organizations and determine it as the target organization until there are no second organizations that need to cache the target file.

[0074] In the embodiment of the present application, in a scenario where the available bandwidth sizes for each branch office to cache the target file are the same, the first quantity of branch offices that can simultaneously cache the target file can be directly defined in the configuration file based on the egress bandwidth size of the head office for caching the target file and the available bandwidth size of the branch office for caching the target file.

[0075] For example, assume that the egress bandwidth of the head office is 1G, the egress bandwidth size for caching the target file is 900M (the remaining egress bandwidth is used for other services), and the egress bandwidth size of the branch office for caching the target file is 300M. Then, the first quantity of branch offices that can simultaneously cache the target file can be directly defined as 3 in the configuration file.

[0076] In the embodiment of the present application, if the branch offices that need to cache the target file are determined to be Branch Office 1 and Branch Office 2, that is, the second quantity of the branch offices that need to cache the target file is 2, then when determining the branch offices for caching the target file for the first batch, Branch Office 1 and Branch Office 2 are determined as the target branch offices.

[0077] If the branch offices that need to cache the target file are determined to be Branch Office 1, Branch Office 2, Branch Office 3,..., Branch Office 5, that is, the second quantity of the branch offices that need to cache the target file is 5, then when determining the branch offices for caching the target file for the first batch, 3 branch offices are determined from the 5 branch offices as the target branch offices. For example, Branch Office 1, Branch Office 2, and Branch Office 3 are determined as the target branch offices.

[0078] In practical applications, the events of each branch caching the target file are independent, and the speeds at which each branch caches the target file are different. After determining that any one of Branch 1, Branch 2, or Branch 3 (e.g., Branch 3) has finished caching the target file, one of Branch 4 and Branch 5 is randomly selected as the target branch. Then, after any one of Branch 1, Branch 2, and Branch 4 (e.g., Branch 1) has finished caching the target file, Branch 5 is determined as the target branch until Branch 2, Branch 4, and Branch 5 have completed caching the target file, at which point the target file caching process ends.

[0079] In an embodiment of the present application, another preferred implementation is that the above caching policy includes the time information that each second institution that needs to cache the above target file can cache the above target file and the size of the egress bandwidth used by the above first institution to cache the above target file.

[0080] When determining the target institution that can currently cache the above target file from the above second institutions, a preferred implementation is as follows:

[0081] Obtain the size of the egress bandwidth used by each second institution to cache the above target file; based on the size of the egress bandwidth used by the above first institution to cache the above target file and the size of the egress bandwidth used by each second institution to cache the above target file, select one or more second institutions from the above second institutions and determine them as the target institutions, where the sum of the egress bandwidths used by each target institution to cache the above target file is less than or equal to the size of the egress bandwidth used by the above first institution to cache the above target file.

[0082] That is to say, in an embodiment of the present application, in a scenario where the available bandwidth sizes of each branch for caching the target file are not completely the same, the size of the egress bandwidth used by the first institution to cache the above target file can be defined in the configuration file corresponding to the target file.

[0083] Then, when the headquarters institution determines the target institution that can currently cache the above target file, it obtains the available bandwidth sizes of each branch for caching the target file. Then, based on the available bandwidths of each branch for caching the target file and its own available bandwidth size for caching the target file, it selects one or more branches from each branch whose sum of the bandwidth sizes for caching the target file is less than or equal to its own available bandwidth size for caching the target file, and determines the one or more branches as the target branches.

[0084] Specifically, in the embodiments of the present application, when determining one or more second institutions as target institutions from the above-mentioned second institutions based on the egress bandwidth size of the first institution for caching the target file and the egress bandwidth size of each of the above-mentioned second institutions for caching the target file, a preferred implementation method is as follows:

[0085] If the sum of the egress bandwidths of each of the above-mentioned second institutions for caching the target file is less than or equal to the egress bandwidth of the first institution for caching the target file, then determine each of the above-mentioned second institutions as the target institution.

[0086] For example, each branch includes Branch 1, Branch 2, and Branch 3. The bandwidth size of Branch 1 for caching the target file is 100M, the bandwidth size of Branch 2 for caching the target file is 200M, the bandwidth size of Branch 3 for caching the target file is 400M, and the egress bandwidth size of the headquarters institution for caching the target file is 800M. Since the sum of the bandwidth sizes of Branch 1, Branch 2, and Branch 3 for caching the target file is 100M + 200M + 400M = 700M, and 700M is less than 800M, Branch 1, Branch 2, and Branch 3 can be determined as the target institutions.

[0087] If the sum of the egress bandwidths of each of the above-mentioned second institutions for caching the target file is greater than the egress bandwidth of the first institution for caching the target file, then select one or more second institutions from the above-mentioned second institutions and determine them as the target institutions.

[0088] For example, each branch includes Branch 1, Branch 2, Branch 3, Branch 4, and Branch 5. The bandwidth size of Branch 1 for caching the target file is 100M, the bandwidth size of Branch 2 for caching the target file is 200M, the bandwidth size of Branch 3 for caching the target file is 400M, the bandwidth size of Branch 4 for caching the target file is 350M, and the bandwidth size of Branch 5 for caching the target file is 250M. The egress bandwidth size of the headquarters institution for caching the target file is 800M. At this time, the sum of the bandwidth sizes of each branch for caching the target file is 1300M, and 1300M is greater than 800M. Branch 1, Branch 2, and Branch 3 can be determined as the target branches, and the sum of the egress bandwidths of Branch 1, Branch 2, and Branch 3 for caching the target file is 700M, and 700M is less than 800M. Of course, Branch 1, Branch 3, and Branch 5 can also be determined as the target branches, and the sum of the egress bandwidths of Branch 1, Branch 3, and Branch 5 for caching the target file is 750M, which is less than 800M.

[0089] When it is determined that any target institution has completed caching the target file and there are other second institutions that need to cache the target file, select one second institution from the other second institutions and determine it as the target institution until there are no second institutions that need to cache the target file.

[0090] As can be seen from the above, assuming that Branch 1, Branch 2, and Branch 3 in each branch are determined as the target branches, the current remaining available egress bandwidth for caching the target file in the headquarters institution is 800M - 700M = 100M. Branch 1, Branch 2, and Branch 3 respectively cache the target file from the headquarters institution and report the progress of caching the target file to the headquarters institution. When the headquarters institution determines that any target branch has completed caching the target file, calculate the current remaining available egress bandwidth for caching the target file. For example, after Branch 1 has completed caching the target file, the remaining available egress bandwidth for caching the target file in the headquarters institution is 100M + 100M = 200M. At this time, since the bandwidth sizes for Branch 4 and Branch 5 to cache the target file are both greater than 200M, continue to wait. When Branch 2 has also completed caching the target file, the remaining available egress bandwidth for caching the target file in the headquarters institution is 200M + 200M = 400M, which is greater than the bandwidth sizes for Branch 4 and Branch 5 to cache the target file. At this time, Branch 4 or Branch 5 can be determined as the target branch.

[0091] Step 330: Send the above caching policy to the above target institution so that the target institution caches the target file based on the time information when the target file can be cached.

[0092] After the headquarters institution determines a target institution, it sends the caching policy corresponding to the target file to the target institution. The target institution caches the target file from the headquarters institution to the local according to the information related to the target file in the caching policy.

[0093] After the target institution has cached the target file, if it receives a request from the user to obtain the target file, it directly reads the target file cached locally and sends it to the user.

[0094] The following details the file pre-caching method provided by the embodiments of the present application in combination with specific application scenarios. The large file is published to the headquarters http server. The caching policy is configured on the SDN controller according to the actual caching requirements. After the configuration is completed, the SDN controller selects the first batch (<= concurrency) of devices according to the caching policy, and distributes the caching policy configuration to the first batch of devices. These devices start pre-caching data according to the policy, and will report the progress to the controller regularly. If the controller monitors that a device has completed caching, it will record the device as completed and select a new device as the next caching device according to the available time period, and distribute the caching policy to the new device. This process is repeated until all branch devices have completed caching. The overall process is as follows:

[0095] Step 1: Calculate the caching start time of the first batch of devices based on the current time, the cacheable start date, and the daily available time period. The calculation logic is to take a time point 30 minutes later, after the cacheable date, and within the available time period. For example, if the current time is 2024-05-21 20:08:12, the cacheable start date is 2024-05-20, and the cacheable time period is 18:00~23:59, then the first batch of caching start time is 2024-05-21 20:38:12.

[0096] Step 2: Determine the first batch of devices to be cached. If the number of devices to be cached is less than or equal to the concurrency, the first batch of devices is all devices to be cached; if the number of devices to be cached is greater than the concurrency, then select devices with the number equal to the concurrency as the first batch of caching devices.

[0097] Step 3: Distribute the caching policy to the first batch of cached devices.

[0098] Step 4: When the date of the caching policy on the device arrives, the device will automatically cache the corresponding file, and at the same time report the caching result to the controller.

[0099] Step 5: When the controller receives the notification that the device has completed caching, it will query whether there are devices to be cached; if not, it will end; otherwise, it will select a device, calculate the caching start time of this device again, and then distribute the caching policy to this device.

[0100] Step 6: Keep looping Step 5 until there are no devices to be cached, and then the whole process ends.

[0101] As can be seen from the above, when the start time of the cache policy on the branch device arrives, the corresponding file will be automatically cached from the headquarters. Since the concurrency is controlled, there will not be a situation where a large number of devices are cached at the same time. When the file is released, users of each branch office will automatically download it from the branch device when they access it at the same time, without having to access the headquarters. This can effectively reduce the bandwidth utilization of the headquarters equipment outlet, improve response time, and avoid the impact of sudden large traffic on the network. Taking the concurrency of 1 as an example, the timeline of the headquarters uploading files, the branch office pre-caching, and publishing files is as follows: Figure 4 shown.

[0102] Based on the same inventive concept as the above-mentioned embodiment of the invention, for example, refer to Figure 5 FIG. 1 is a schematic diagram of a data pre-caching device provided in an embodiment of the present application, the device comprising:

[0103] A determination unit 50, used to determine a target file to be published;

[0104] A configuration unit 51 is used to configure a cache strategy corresponding to the target file, wherein the cache strategy includes each second mechanism that needs to cache the target file, time information that can cache the target file, and a first number of second mechanisms that can cache the target file simultaneously;

[0105] The determination unit 50 is further configured to determine, from among the second institutions, a target institution that can currently cache the target file;

[0106] The issuing unit 52 is used to issue the cache strategy to the target organization, so that the target organization caches the target file based on the time information when the target file can be cached.

[0107] Optionally, the time information for caching the target file includes: a date for starting to cache the target file and a time period for caching the target file every day.

[0108] Optionally, when determining the target organization that can currently cache the target file from the second organizations, the determining unit 50 is specifically configured to:

[0109] determining a second number of the second mechanisms;

[0110] If the second number is less than or equal to the first number, determining each second institution as a target institution;

[0111] If the second number is greater than the first number, selecting the first number of second institutions from the second institutions as target institutions;

[0112] When it is determined that any target institution has completed caching the target file and there are other second institutions that need to cache the target file, select one second institution from the other second institutions and determine it as the target institution until there are no second institutions that need to cache the target file.

[0113] Optionally, the caching policy includes each second institution that needs to cache the target file, the time information when the target file can be cached, and the size of the egress bandwidth used by the first institution to cache the target file;

[0114] When determining the target institution that can currently cache the target file from each of the second institutions, the determining unit 50 is specifically configured to:

[0115] Obtain the size of the egress bandwidth used by each second institution to cache the target file;

[0116] Based on the size of the egress bandwidth used by the first institution to cache the target file and the size of the egress bandwidth used by each of the second institutions to cache the target file, select one or more second institutions from each of the second institutions and determine them as target institutions, where the sum of the egress bandwidths used by each target institution to cache the target file is less than or equal to the size of the egress bandwidth used by the first institution to cache the target file.

[0117] Optionally, when selecting one or more second institutions from each of the second institutions and determining them as target institutions based on the size of the egress bandwidth used by the first institution to cache the target file and the size of the egress bandwidth used by each of the second institutions to cache the target file, the determining unit 50 is specifically configured to:

[0118] If the sum of the egress bandwidths used by each of the second institutions to cache the target file is less than or equal to the size of the egress bandwidth used by the first institution to cache the target file, then determine each of the second institutions as the target institution;

[0119] If the sum of the egress bandwidths used by each of the second institutions to cache the target file is greater than the size of the egress bandwidth used by the first institution to cache the target file, then select one or more second institutions from each of the second institutions and determine them as target institutions;

[0120] When it is determined that any target institution has completed caching the target file and there are other second institutions that need to cache the target file, select one second institution from the other second institutions and determine it as the target institution until there are no second institutions that need to cache the target file.

[0121] The above units may be one or more integrated circuits configured to implement the above methods. For example: one or more Application Specific Integrated Circuits (ASICs), or, one or more digital signal processors (DSPs), or, one or more Field Programmable Gate Arrays (FPGAs), etc. Again, when a certain unit above is implemented in the form of a processing element scheduler code, the processing element may be a general-purpose processor, such as a Central Processing Unit (CPU) or other processors that can call program code. Again, these units may be integrated together and implemented in the form of a system-on-a-chip (SOC).

[0122] Furthermore, for the data pre-caching device provided in the embodiments of the present application, from a hardware perspective, the schematic diagram of the hardware architecture of the data pre-caching device can be seen in Figure 6 as shown. The data pre-caching device may include: a memory 60 and a processor 61,

[0123] The memory 60 is used to store program instructions; the processor 61 calls the program instructions stored in the memory 60 and executes the above method embodiments according to the obtained program instructions. The specific implementation manners and technical effects are similar and will not be elaborated here.

[0124] Optionally, the present application further provides a data pre-caching device, including at least one processing element (or chip) for executing the above method embodiments.

[0125] Optionally, the present application further provides a program product, such as a computer-readable storage medium, which stores computer-executable instructions for causing the computer to execute the above method embodiments.

[0126] Here, the machine-readable storage medium may be any electronic, magnetic, optical, or other physical storage device that can contain or store information, such as executable instructions, data, etc. For example, the machine-readable storage medium may be: RAM (Random Access Memory), volatile memory, non-volatile memory, flash memory, storage drives (such as hard disk drives), solid-state drives, any type of storage disk (such as optical discs, DVDs, etc.), or similar storage media, or a combination thereof.

[0127] The systems, devices, modules or units described in the above embodiments can be specifically implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer, and the specific form of the computer can be a personal computer, laptop computer, cellular phone, camera phone, smart phone, personal digital assistant, media player, navigation device, email transceiver, game console, tablet computer, wearable device, or a combination of any several of these devices.

[0128] For convenience of description, when describing the above devices, various units are described separately according to their functions. Of course, when implementing the present application, the functions of each unit can be implemented in the same or multiple software and / or hardware.

[0129] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, system, or computer program product. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the embodiments of the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0130] The present application is described with reference to the flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each flow and / or block in the flowchart and / or block diagram, as well as the combination of flows and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing device to generate a machine, such that the instructions executed by the processor of the computer or other programmable data processing device generate a device for implementing the functions specified in Figure 1 one or more flows and / or Figure 1 blocks.

[0131] Moreover, these computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, such that the instructions stored in the computer-readable memory generate a manufactured article including an instruction device that implements the functions specified in Figure 1 one or more flows and / or Figure 1 blocks.

[0132] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus, so that a series of operation steps are executed on the computer or other programmable apparatus to generate a computer-implemented process, thereby providing instructions for implementing the steps specified in one process or multiple processes and / or blocks Figure 1 one process or multiple processes and / or blocks Figure 1 or steps for implementing the functions specified in one block or multiple blocks.

[0133] The foregoing are only preferred embodiments of the present application and are not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present application shall be included within the scope of protection of the present application.

Claims

1. A data pre-caching method, characterized in that: Applied to a first institution, the method comprises: Determine the target file to be published; Configuring a cache strategy corresponding to the target file, wherein the cache strategy includes each second mechanism that needs to cache the target file, time information that can cache the target file, and a first number of second mechanisms that can cache the target file simultaneously; Determining a target organization that can currently cache the target file from among the second organizations; The cache strategy is issued to the target organization, so that the target organization caches the target file based on the time information when the target file can be cached.

2. The method according to claim 1, characterized in that The time information for caching the target file includes: the date for starting to cache the target file and the time period for caching the target file every day.

3. The method according to claim 1 or 2, characterized in that The step of determining a target mechanism that can currently cache the target file from the second mechanisms comprises: determining a second number of the second mechanisms; If the second number is less than or equal to the first number, determining each second institution as a target institution; If the second number is greater than the first number, selecting the first number of second institutions from the second institutions as target institutions; When it is determined that any target organization has completed caching the target file and there are other second organizations that need to cache the target file, a second organization is selected from the other second organizations to be determined as the target organization until there is no second organization that needs to cache the target file.

4. The method according to claim 1 or 2, characterized in that: The cache strategy includes each second mechanism that needs to cache the target file, time information of the target file that can be cached, and the size of the egress bandwidth of the first mechanism used to cache the target file; The step of determining a target mechanism that can currently cache the target file from the second mechanisms comprises: Obtaining the size of the egress bandwidth of each second mechanism for caching the target file; Based on the egress bandwidth size of the first mechanism for caching the target file and the egress bandwidth size of each second mechanism for caching the target file, one or more second mechanisms are selected from the second mechanisms to be determined as target mechanisms, wherein the sum of the egress bandwidths of each target mechanism for caching the target file is less than or equal to the egress bandwidth of the first mechanism for caching the target file.

5. The method according to claim 4, characterized in that Based on the egress bandwidth size of the first mechanism for caching the target file and the egress bandwidth size of each second mechanism for caching the target file, the step of selecting one or more second mechanisms from the second mechanisms to be determined as the target mechanism comprises: If the sum of the egress bandwidths of the second institutions for caching the target file is less than or equal to the egress bandwidth of the first institution for caching the target file, then determining the second institutions as target institutions; If the sum of the egress bandwidths of the second institutions for caching the target file is greater than the egress bandwidth of the first institution for caching the target file, one or more second institutions are selected from the second institutions to be determined as the target institution; When it is determined that any target organization has completed caching the target file and there are other second organizations that need to cache the target file, a second organization is selected from the other second organizations to be determined as the target organization until there is no second organization that needs to cache the target file.

6. A data pre-caching device, characterized in that: Applied to the first mechanism, the device comprises: A determination unit, used for determining a target file to be published; A configuration unit, configured to configure a cache strategy corresponding to the target file, wherein the cache strategy includes each second mechanism that needs to cache the target file, time information that can cache the target file, and a first number of second mechanisms that can cache the target file simultaneously; The determining unit is further used to determine a target organization that can currently cache the target file from among the second organizations; The issuing unit is used to issue the cache strategy to the target organization, so that the target organization caches the target file based on the time information when the target file can be cached.

7. The device according to claim 6, characterized in that When determining the target organization that can currently cache the target file from the second organizations, the determining unit is specifically configured to: determining a second number of the second mechanisms; If the second number is less than or equal to the first number, determining each second institution as a target institution; If the second number is greater than the first number, selecting the first number of second institutions from the second institutions as target institutions; When it is determined that any target organization has completed caching the target file and there are other second organizations that need to cache the target file, a second organization is selected from the other second organizations to be determined as the target organization until there is no second organization that needs to cache the target file.

8. The device according to claim 6, characterized in that The cache strategy includes each second mechanism that needs to cache the target file, time information of the target file that can be cached, and the size of the egress bandwidth of the first mechanism for caching the target file; When determining the target organization that can currently cache the target file from the second organizations, the determining unit is specifically configured to: Obtaining the size of the egress bandwidth of each second mechanism for caching the target file; Based on the egress bandwidth size of the first mechanism for caching the target file and the egress bandwidth size of each second mechanism for caching the target file, one or more second mechanisms are selected from the second mechanisms to be determined as target mechanisms, wherein the sum of the egress bandwidths of each target mechanism for caching the target file is less than or equal to the egress bandwidth of the first mechanism for caching the target file.

9. The device according to claim 8, characterized in that When one or more second institutions are selected from the second institutions as target institutions based on the egress bandwidth size of the first institution for caching the target file and the egress bandwidth sizes of the second institutions for caching the target file, the determining unit is specifically configured to: If the sum of the egress bandwidths of the second institutions for caching the target file is less than or equal to the egress bandwidth of the first institution for caching the target file, then determining the second institutions as target institutions; If the sum of the egress bandwidths of the second institutions for caching the target file is greater than the egress bandwidth of the first institution for caching the target file, one or more second institutions are selected from the second institutions to be determined as the target institution; When it is determined that any target organization has completed caching the target file and there are other second organizations that need to cache the target file, a second organization is selected from the other second organizations to be determined as the target organization until there is no second organization that needs to cache the target file.

10. A data pre-caching device, characterized in that: The data pre-caching device comprises: A memory for storing program instructions; A processor is used to call the program instructions stored in the memory, and execute the steps of the method according to any one of claims 1 to 5 according to the obtained program instructions.

11. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to enable the computer to execute the steps of the method according to any one of claims 1 to 5.