[go: up one dir, main page]

CN108984553B - Caching method and device - Google Patents

Caching method and device Download PDF

Info

Publication number
CN108984553B
CN108984553B CN201710403697.0A CN201710403697A CN108984553B CN 108984553 B CN108984553 B CN 108984553B CN 201710403697 A CN201710403697 A CN 201710403697A CN 108984553 B CN108984553 B CN 108984553B
Authority
CN
China
Prior art keywords
query
hotspot
target
time period
cache
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710403697.0A
Other languages
Chinese (zh)
Other versions
CN108984553A (en
Inventor
郑承磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201710403697.0A priority Critical patent/CN108984553B/en
Publication of CN108984553A publication Critical patent/CN108984553A/en
Application granted granted Critical
Publication of CN108984553B publication Critical patent/CN108984553B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The application discloses a caching method and a caching device. One embodiment of the method comprises: extracting a plurality of historical data query requests respectively containing query statements and query time; analyzing the extracted query time to determine a plurality of hotspot time periods; for each hotspot time period in the plurality of hotspot time periods, counting query statements in historical data query requests of which the query time belongs to the hotspot time period, and determining the hotspot query statements matched with the hotspot time period; and extracting the query result corresponding to the determined hotspot query statement, storing the query result corresponding to the hotspot query statement matched with each hotspot time period to a cache server at the starting moment of each hotspot time period, and deleting the query result in the cache server at the ending moment of the hotspot time period. This embodiment improves the flexibility of the caching.

Description

Caching method and device
Technical Field
The application relates to the technical field of computers, in particular to the technical field of internet, and particularly relates to a caching method and device.
Background
With the development of computer technology, the performance of full-text search tools is more and more abundant. In order to improve the efficiency and flexibility of the retrieval, some retrieval result data is generally required to be cached.
However, the existing caching method generally directly uses some specific caching algorithms (e.g., LRU (Least Recently Used) algorithm, LFU (Least Frequently Used page replacement) algorithm, etc.) for caching, and this caching method is relatively simple and has relatively low flexibility in high concurrency.
Disclosure of Invention
An object of the embodiments of the present application is to provide an improved caching method and apparatus, so as to solve the technical problems mentioned in the above background.
In a first aspect, an embodiment of the present application provides a caching method for a proxy server, where the proxy server is in communication connection with a caching server, and the method includes: extracting a plurality of historical data query requests respectively containing query statements and query time; analyzing the extracted query time to determine a plurality of hotspot time periods; for each hotspot time period in the plurality of hotspot time periods, counting query statements in historical data query requests of which the query time belongs to the hotspot time period, and determining the hotspot query statements matched with the hotspot time period; and extracting the query result corresponding to the determined hotspot query statement, storing the query result corresponding to the hotspot query statement matched with each hotspot time period to a cache server at the starting moment of each hotspot time period, and deleting the query result in the cache server at the ending moment of the hotspot time period.
In some embodiments, the method further comprises: analyzing the determined hot spot query statement to generate abstract information; and updating the pre-established summary information index at the starting time and the ending time of each hotspot time period, wherein the summary information index is used for indicating the corresponding relation between the summary information and the query result stored in the cache server.
In some embodiments, the proxy server is also communicatively connected to the search server; and the method further comprises: analyzing the target query statement to generate target abstract information and determining whether the target abstract information exists in the current abstract information index or not in response to receiving a data query request which is sent by a client and contains the target query statement; and responding to the fact that target abstract information does not exist in the current abstract information index, sending a data query request to the search server, receiving data returned by the search server, and sending the data to the client.
In some embodiments, the method further comprises: and responding to the fact that the target abstract information exists in the current abstract information index, obtaining a target query result corresponding to the target abstract information from the caching server, and sending the target query result to the client.
In some embodiments, after responding to receiving a data query request containing a target query statement sent by a client, the method further comprises: determining whether the data query request contains a query identifier for indicating to query the cache data from the cache server; and responding to the determination that the query identification is not contained, sending a data query request to the search server, receiving data returned by the search server, and sending the data to the client.
In some embodiments, the data query request further includes a caching mode identification; and the method further comprises: in response to determining that the target summary information does not exist in the current summary information index, determining whether the caching mode indicated by the caching mode identification is the target caching mode; and in response to determining that the caching mode indicated by the caching mode identification is the target caching mode, determining the data query request as historical data query requests, periodically analyzing each historical query request to re-determine the hotspot time period and the hotspot query statement, and performing storage and deletion operations of the caching server based on the re-determined hotspot time period and hotspot query statement.
In some embodiments, the method further comprises: and in response to determining that the caching mode indicated by the caching mode identification is not the target caching mode, storing the target query result corresponding to the target summary information to a caching server based on the caching mode indicated by the caching mode identification, and establishing a summary information index for indicating the corresponding relation between the target summary information and the target query result.
In some embodiments, after parsing the extracted query time to determine a plurality of hotspot time periods, the method further comprises: extracting the query time consumption corresponding to each historical data query request in the plurality of historical data query requests; determining cache hit rate and query time consumption threshold values of the extracted query statements in each hot spot time period, wherein the query time consumption threshold value of the extracted query statements in each hot spot time period is the minimum value of the query time consumption corresponding to historical data query requests in the hot spot time period in a preset proportion; and displaying the cache hit rate and the query time consumption threshold of the extracted query statement in each hotspot time period.
In a second aspect, an embodiment of the present application provides a caching apparatus for a proxy server, where the proxy server is communicatively connected to the caching server, and the apparatus includes: the device comprises a first extraction unit, a second extraction unit and a third extraction unit, wherein the first extraction unit is used for extracting a plurality of historical data query requests respectively containing query statements and query time; the analysis unit is configured to analyze the extracted query time and determine a plurality of hotspot time periods; the statistical unit is configured to count query statements in the historical data query request of which the query time belongs to the hotspot time period for each hotspot time period in the plurality of hotspot time periods, and determine the hotspot query statements matched with the hotspot time periods; and the first cache unit is configured to extract the query result corresponding to the determined hotspot query statement, store the query result corresponding to the hotspot query statement matched with each hotspot time period to the cache server at the starting moment of each hotspot time period, and delete the query result in the cache server at the ending moment of the hotspot time period.
In some embodiments, the apparatus further comprises: the generating unit is configured to analyze the determined hot spot query statement and generate abstract information; and the updating unit is configured to update the pre-established summary information index at the starting time and the ending time of each hotspot time period, wherein the summary information index is used for indicating the corresponding relation between the summary information and the query result stored in the cache server.
In some embodiments, the proxy server is also communicatively connected to the search server; and the apparatus further comprises: the first determining unit is configured to respond to a received data query request which is sent by a client and contains a target query statement, analyze the target query statement, generate target summary information, and determine whether the target summary information exists in a current summary information index; and the first sending unit is configured to respond to the fact that the target abstract information does not exist in the current abstract information index, send a data query request to the search server, receive data returned by the search server and send the data to the client.
In some embodiments, the apparatus further comprises: and the second sending unit is configured to respond to the fact that the target abstract information exists in the current abstract information index, obtain a target query result corresponding to the target abstract information from the caching server, and send the target query result to the client.
In some embodiments, the apparatus further comprises: a second determination unit configured to determine whether the data query request contains a query identifier indicating that the cache data is queried from the cache server; and the third sending unit is configured to respond to the determination that the query identifier is not contained, send a data query request to the search server, receive data returned by the search server, and send the data to the client.
In some embodiments, the data query request further includes a caching mode identification; and the apparatus further comprises: a third determining unit, configured to determine, in response to determining that the target digest information does not exist in the current digest information index, whether the caching mode indicated by the caching mode identifier is the target caching mode; and the second cache unit is configured to determine the data query request as a historical data query request in response to determining that the cache manner indicated by the cache manner identifier is the target cache manner, periodically analyze each historical query request to re-determine a hotspot time period and a hotspot query statement, and perform storage and deletion operations of the cache server based on the re-determined hotspot time period and hotspot query statement.
In some embodiments, the apparatus further comprises: and the third cache unit is configured to store the target query result corresponding to the target summary information to the cache server based on the cache manner indicated by the cache manner identification in response to determining that the cache manner indicated by the cache manner identification is not the target cache manner, and establish a summary information index for indicating the corresponding relationship between the target summary information and the target query result.
In some embodiments, the apparatus further comprises: the second extraction unit is configured to extract query time consumption corresponding to each historical data query request in the plurality of historical data query requests; a fourth determining unit, configured to determine a cache hit rate and a query time consumption threshold of the extracted query statement in each hot spot time period, where the query time consumption threshold of the extracted query statement in each hot spot time period is a minimum value of query time consumption corresponding to historical data query requests in the hot spot time period in a preset proportion; and the display unit is configured to display the cache hit rate and the query time consumption threshold of the extracted query statement in each hotspot time period.
In a third aspect, an embodiment of the present application provides a proxy server, including: one or more processors; a storage device to store one or more programs that, when executed by one or more processors, cause the one or more processors to implement a method as in any embodiment of a caching method for a proxy server.
According to the caching method and device provided by the embodiment of the application, the query time in the extracted historical data query requests is analyzed so as to determine a plurality of hot spot time periods, then the query statements in the historical data query requests with the query time belonging to the hot spot time periods are counted so as to determine the hot spot query statements, and finally the query results corresponding to the hot spot query statements are determined so as to store the query results corresponding to the corresponding hot spot query statements to the caching server at the starting moment of the hot spot time periods and delete the corresponding query results at the ending moment of the hot spot time periods, so that dynamic cache switching based on the hot spot time periods is realized, and the caching flexibility is improved.
Drawings
Other features, objects and advantages of the present application will become more apparent upon reading of the following detailed description of non-limiting embodiments thereof, made with reference to the accompanying drawings in which:
FIG. 1 is an exemplary system architecture diagram in which the present application may be applied;
FIG. 2 is a flow diagram of one embodiment of a caching method according to the present application;
FIG. 3 is a schematic diagram of an application scenario of a caching method according to the present application;
FIG. 4 is a flow diagram of yet another embodiment of a caching method according to the present application;
FIG. 5 is a schematic diagram of an embodiment of a cache device according to the present application;
FIG. 6 is a schematic block diagram of a computer system suitable for use in implementing a server according to embodiments of the present application.
Detailed Description
The present application will be described in further detail with reference to the following drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the relevant invention and not restrictive of the invention. It should be noted that, for convenience of description, only the portions related to the related invention are shown in the drawings.
It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict. The present application will be described in detail below with reference to the embodiments with reference to the attached drawings.
Fig. 1 illustrates an exemplary system architecture 100 to which the caching method or caching apparatus of the present application may be applied.
As shown in fig. 1, the system architecture 100 may include terminal devices 101, 102, 103, networks 104, 106, a proxy server 105, and a cache server 107. The network 104 serves to provide the medium of a communication link between the terminal devices 101, 102, 103 and the proxy server 105, and the network 106 serves to provide the medium of a communication link between the proxy server 105 and the cache server 107. The networks 104, 106 may include various connection types, such as wired, wireless communication links, or fiber optic cables, among others.
The user may use the terminal devices 101, 102, 103 to interact with the proxy server 105 via the network 104 to receive or send messages or the like, e.g. to send data query requests. The terminal devices 101, 102, 103 may have various communication client applications installed thereon, such as a shopping application, a web browser application, a search application, an instant messaging tool, a mailbox client, social platform software, and the like.
The terminal devices 101, 102, 103 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and the like.
The proxy server 105 may be a server that provides various services, such as a server that stores, analyzes, and the like, data query requests transmitted by the terminal apparatuses 101, 102, 103. The proxy server 105 may use the stored data query request as a historical data query request, analyze, count, and the like information such as a query statement, a query time, and the like in the historical data query request, and interact with the cache server 107 through the network 106 based on a processing result to store or delete information (e.g., a query result corresponding to the query statement) and the like in the cache server 107.
The cache server 107 may be used to store frequently accessed content, such as query results corresponding to query statements. Cache server 107 may manage the stored query results.
It is noted that the exemplary system architecture 100 described above may also include a network 108 and a search server 109. The proxy server 105 may also interact with a search server 109, via a network 108, to receive or send messages or the like,
it should be noted that the caching method provided by the embodiment of the present application is generally executed by the proxy server 105, and accordingly, the caching device is generally disposed in the proxy server 105.
It should be understood that the number of terminal devices, networks, and servers in fig. 1 is merely illustrative. There may be any number of terminal devices, networks, proxy servers, cache servers, and search servers, as desired for implementation.
With continued reference to FIG. 2, a flow 200 of one embodiment of a caching method according to the present application is shown. The caching method comprises the following steps:
step 201, extracting a plurality of historical data query requests respectively containing query statements and query time.
In this embodiment, the electronic device (e.g., the proxy server 105 shown in fig. 1) on which the caching method operates may take a data query request received within a specified period (e.g., the last week, the last day, the last month, etc.) as a historical data query request and extract the historical data query request. Wherein, each historical data query request of the multiple extractions can contain a query statement and a query time. Here, the query sentence may be a sentence including information such as a search word (for example, a character string "cell phone", "sportswear", and the like) and a query condition (for example, a delivery city is beijing, a vendor is an electronic commerce counter, and the like). The query time may be the time at which the historical data query request was received.
In practice, the historical data query request may be stored locally in the electronic device, and in this case, the electronic device may directly extract the historical data query request from the local. In addition, the historical data query request may be stored in another storage device connected to the electronic device, and in this case, the electronic device may extract the historical data query request from the storage device through a wired connection method or a wireless connection method. It should be noted that the wireless connection means may include, but is not limited to, a 3G/4G connection, a WiFi connection, a bluetooth connection, a WiMAX connection, a Zigbee connection, a uwb (ultra wideband) connection, and other wireless connection means now known or developed in the future.
Step 202, analyzing the extracted query time, and determining a plurality of hotspot time periods.
In this embodiment, the electronic device may analyze query times included in the extracted historical data query requests to determine a plurality of hotspot time periods. The hot spot time period may be a time period satisfying a certain condition or certain conditions preset by a technician. As an example, the preset condition may be that the duration of the time period is a preset duration (e.g., 10 minutes) and the number of data query requests in the time period per day is greater than a preset number (e.g., 3000000). The electronic device may perform statistical analysis on the extracted query time, determine a time period satisfying the condition (e.g., 9:30 to 9:40 per day, 20:00 to 20:10 per day, etc.), and determine the determined time period as a hot spot time period.
In some optional implementation manners of this embodiment, after analyzing the query time and determining the plurality of hotspot time periods, the electronic device may further extract a query time consumption corresponding to each historical data query request in the plurality of historical data query requests. The query duration may be a time interval between a time when the electronic device returns a query result to a client (e.g., the terminal devices 101, 102, and 103 shown in fig. 1) and a time when the electronic device receives a history data query request. Then, the electronic device may determine a cache hit rate and a query time consumption threshold of the extracted query statement in each hotspot time period. The cache hit rate of the extracted query statement in each hot spot time period may be a ratio of the number of the query statements in the extracted query statement, which are stored to the cache server in the hot spot time period, to the total number of the extracted query statements. It should be noted that the query time consumption threshold of the extracted query statement in each hot spot time period may be a minimum value of query time consumption corresponding to a preset proportion (e.g., 99%) of historical data query requests in the hot spot time period. Finally, the electronic device may show a cache hit rate and a query time-consuming threshold of the extracted query statement in each hotspot time period.
Step 203, for each of the plurality of hot spot time periods, counting query statements in the historical data query request whose query time belongs to the hot spot time period, and determining the hot spot query statement matched with the hot spot time period.
In this embodiment, for each of the multiple hot spot time periods, the electronic device may perform statistics on query statements in the historical data query request whose query time belongs to the hot spot time period, and determine, based on a statistical result, a hot spot query statement that matches the hot spot time period. It should be noted that the electronic device may determine the hotspot query statement matching the hotspot time period in various ways. As an example, the query statement in each historical data query request whose query time belongs to the hotspot time period may be determined as the hotspot query statement matching the hotspot time period; determining the query statement with the largest occurrence frequency in the historical data query request with the query time belonging to the hotspot time period as the hotspot query statement matched with the hotspot time period; the query statements in the historical data query request with the query time belonging to the hotspot time period may also be sorted in the descending order of the occurrence times, and the sorted query statements with a larger occurrence time and a preset number (e.g., 50, 100, etc.) may be determined as the hotspot query statements matched with the hotspot time period.
In some optional implementation manners of this embodiment, the electronic device may further receive a preset time period sent by the client and a preset query statement matched with the preset time period, where the preset time period and the preset query statement may be set by the user according to a query habit of the user. After receiving the preset time period and the preset query statement, the electronic device may use the preset time period as a hotspot time period to replace the hot spot time period generated after the electronic device analyzes the query time in the historical data query request. In addition, the electronic device may directly use the received preset query statement as a hotspot query statement matched with the hotspot time period.
Step 204, extracting the query result corresponding to the determined hotspot query statement, storing the query result corresponding to the hotspot query statement matched with each hotspot time period to the cache server at the starting moment of each hotspot time period, and deleting the query result in the cache server at the ending moment of the hotspot time period.
In this embodiment, the electronic device may extract a query result corresponding to the determined hotspot query statement. As an example, if a certain hot spot query statement is used to indicate a query for product information of a mobile phone product whose delivery city is beijing, the query result corresponding to the hot spot query statement is the product information of the mobile phone product whose delivery city is beijing. At the starting time of each hotspot time period, the electronic device may store the query result corresponding to the hotspot query statement matched with the time period to a cache server (e.g., the cache server 107 shown in fig. 1) connected to the electronic device, and delete the query result in the cache server at the ending time of the hotspot time period.
With continued reference to fig. 3, fig. 3 is a schematic diagram of an application scenario of the caching method according to the present embodiment. In the application scenario of fig. 3, the proxy server 301 first extracts a plurality of historical data query requests respectively including a query statement 302 and a query time 303; then, the proxy server 301 analyzes the extracted query time 303 to determine a plurality of hotspot time periods 304; then, proxy server 301 determines hotspot query statement 305 matching the hotspot time period based on query statement 302 and hotspot time period 304; finally, the proxy server 301 extracts the query result 306 corresponding to the determined hotspot query statement 305, stores the query result corresponding to the hotspot query statement matched with each hotspot time period to the cache server 307 at the starting time of each hotspot time period, and deletes the corresponding query result in the cache server at the ending time of the hotspot time period.
In the method provided by the above embodiment of the application, the query time in the extracted historical data query request is analyzed to determine a plurality of hotspot time periods, then the query statements in the historical data query request whose query time belongs to the hotspot time periods are counted to determine hotspot query statements, and finally the query result corresponding to the hotspot query statement is determined, so that the query result corresponding to the corresponding hotspot query statement is stored to the cache server at the start time of the hotspot time period, and the corresponding query result is deleted at the end time of the hotspot time period, thereby realizing dynamic cache switching based on the hotspot time periods, and improving the flexibility of the cache.
With further reference to fig. 4, a flow 400 of yet another embodiment of a caching method is shown. The process 400 of the caching method includes the following steps:
step 401, a plurality of historical data query requests respectively including query statements and query time are extracted.
In this embodiment, an electronic device (e.g., the proxy server 105 shown in fig. 1) on which the caching method operates may regard a data query request received within a specified period as a historical data query request and extract the historical data query request. The historical data query request may include a query statement and a query time.
Step 402, analyzing the extracted query time to determine a plurality of hotspot time periods.
In this embodiment, the electronic device may analyze query times included in the extracted historical data query requests to determine a plurality of hotspot time periods. The hot spot time period may be a time period satisfying a certain condition or certain conditions preset by a technician.
Step 403, for each of the multiple hot spot time periods, counting query statements in the historical data query request whose query time belongs to the hot spot time period, and determining the hot spot query statement matched with the hot spot time period.
In this embodiment, for each of the multiple hotspot time periods, the electronic device may perform statistics on query statements in the historical data query request whose query time belongs to the hotspot time period, and based on a statistical result, may determine, in various ways, a hotspot query statement matched with the hotspot time period.
Step 404, extracting the query result corresponding to the determined hotspot query statement, storing the query result corresponding to the hotspot query statement matched with each hotspot time period to the cache server at the starting time of each hotspot time period, and deleting the query result in the cache server at the ending time of the hotspot time period.
In this embodiment, the electronic device may extract a query result corresponding to the determined hotspot query statement. At the starting time of each hotspot time period, the electronic device may store the query result corresponding to the hotspot query statement matched with the time period to a cache server (e.g., the cache server 107 shown in fig. 1) connected to the electronic device, and delete the query result in the cache server at the ending time of the hotspot time period.
It should be noted that the specific operations of the steps 401-404 are substantially the same as the specific operations of the steps 201-204, and are not described herein again.
Step 405, parsing the determined hot spot query statement to generate summary information.
In this embodiment, the electronic device may analyze each determined hotspot query statement by using various abstract algorithms, and determine information generated after the analysis as abstract information of the hotspot query statement. The summary information may be a character string for characterizing and uniquely determining the hot spot query statement, and the summary information of different hot spot query statements is different. It should be noted that the above Digest Algorithm may be a Hash (Hash) Algorithm, MD2(Message Digest Algorithm 2, second edition of Message Digest Algorithm), or the like. It should be noted that the above summary algorithm is a well-known technique widely studied and applied at present, and is not described herein again.
Step 406, updating the pre-established summary information index at the starting time and the ending time of each hotspot time period.
In this embodiment, the electronic device may update a pre-established summary information index at the start time and the end time of each hotspot time period, where the summary information index may be used to indicate a correspondence between the summary information and the query result stored in the cache server. Specifically, the electronic device may add, at the start time of each hotspot time period, the corresponding relationship between the summary information and the query result corresponding to the hotspot query statement of the hotspot time period to the summary information index, and delete, at the end time of the hotspot time period, the corresponding relationship between the summary information and the query result corresponding to the hotspot query statement of the hotspot time period.
Step 407, in response to receiving a data query request containing a target query statement sent by a client, parsing the target query statement to generate target summary information, and determining whether the target summary information exists in the current summary information index.
In this embodiment, in response to receiving a data query request that includes a target query statement and is sent by a client, the electronic device may parse the target query statement, generate target summary information, and determine whether the target summary information exists in a current summary information index. It should be noted that, the electronic device may generate the target summary information by using the same summary algorithm as that in step 405, and details are not described herein again.
It should be noted that, in response to determining that the target summary information exists in the current summary information index, the electronic device may execute step 409; in response to determining that the target summary information does not exist in the current summary information index, the electronic device may perform step 408 and/or step 410.
In some optional implementation manners of this embodiment, after receiving the data query request, the electronic device may further first determine whether the data query request includes a query identifier indicating that cache data is queried from the cache server. Here, the query identification may be a character string composed of various characters. In response to determining that the query identifier is not included, the electronic device may send the data query request to the search server (e.g., the search server 109 shown in fig. 1) connected to the electronic device, to receive data returned by the search server, and send the data to the client. It should be noted that, in response to determining that the query identifier is not included, the electronic device may not perform the step of determining whether the target summary information exists in the current summary information index and step 408 and 412 after sending the data to the client. In response to determining that the query identifier is not included, the steps of generating summary information and determining whether the target summary information exists in the current summary information index may be continued, and then the subsequent steps 408 and 412 are performed.
Step 408, in response to determining that the target summary information does not exist in the current summary information index, sending a data query request to the search server, receiving data returned by the search server, and sending the data to the client.
In this embodiment, in response to determining that the target summary information does not exist in the current summary information index in step 407, the electronic device may send the data query request to the search server to receive data returned by the search server, and send the data to the client.
Step 409, in response to determining that the target summary information exists in the current summary information index, obtaining a target query result corresponding to the target summary information from the caching server, and sending the target query result to the client.
In this embodiment, in response to determining that the target summary information exists in the current summary information index in step 407, the electronic device may obtain a target query result corresponding to the target summary information from the cache server, and send the target query result to the client.
In response to determining that the target summary information does not exist in the current summary information index, step 410 determines whether the caching mode indicated by the caching mode identifier is the target caching mode.
In this embodiment, the data query request may further include a cache manner identifier, where the cache manner identifier may be used to indicate and determine a cache manner. For example, the caching method may be a target caching method, a queue-based caching method, a weight-based caching method, or the like. The target caching mode may be a caching mode of caching according to hotspot time periods and hotspot query statements, that is, a caching mode of storing a query result corresponding to a hotspot query statement matched with each hotspot time period to the cache server at a start time of each hotspot time period, and deleting the query result in the cache server at an end time of the hotspot time period. The queue-based caching method may be used to indicate a caching method for caching a preset amount of data that is accessed most recently. The above-described caching method based on the weight may be used to indicate a caching method in which the accessed data is subjected to weight calculation by any conventional weight calculation method and a preset number of data with a higher weight is cached.
In this embodiment, in response to determining that the target digest information does not exist in the current digest information index in step 407, the electronic device may determine whether the caching method indicated by the caching method identifier is the target caching method. If so, step 411 may be performed, and if not, step 412 may be performed.
Step 411, in response to determining that the caching mode indicated by the caching mode identifier is the target caching mode, determining the data query request as a historical data query request, periodically analyzing each historical query request to re-determine a hotspot time period and a hotspot query statement, and performing storage and deletion operations of the cache server based on the re-determined hotspot time period and hotspot query statement.
In this embodiment, in response to determining that the caching manner indicated by the caching manner identifier is the target caching manner in step 410, the electronic device may determine the data query request as a historical data query request, periodically analyze each historical query request to re-determine a hotspot time period and a hotspot query statement, and perform storage and deletion operations of the cache server based on the re-determined hotspot time period and hotspot query statement. It should be noted that the operation of re-determining the hotspot time period and the hotspot query statement in this step is substantially the same as the operation of the step 402-403, and is not described herein again.
In step 412, in response to determining that the caching manner indicated by the caching manner identifier is not the target caching manner, storing the target query result corresponding to the target summary information to the caching server based on the caching manner indicated by the caching manner identifier, and establishing a summary information index for indicating a corresponding relationship between the target summary information and the target query result.
In this embodiment, in response to determining that the caching method indicated by the caching method identifier is not the target caching method in step 410, the electronic device may store a target query result corresponding to the target summary information to the caching server based on the caching method indicated by the caching method identifier, and establish a summary information index indicating a corresponding relationship between the target summary information and the target query result.
As can be seen from fig. 4, compared with the embodiment corresponding to fig. 2, the flow 400 of the caching method in this embodiment highlights the steps of determining and processing after receiving the data query request. Therefore, the scheme described in this embodiment may not only adopt a mode of dynamically switching the cache based on the hotspot time period, but also perform the cache based on other cache modes, thereby further improving the flexibility of the cache
With further reference to fig. 5, as an implementation of the methods shown in the above-mentioned figures, the present application provides an embodiment of a caching apparatus, where the embodiment of the apparatus corresponds to the embodiment of the method shown in fig. 2, and the apparatus may be specifically applied to a proxy server, and the proxy server is in communication connection with the caching server.
As shown in fig. 5, the cache apparatus 500 according to this embodiment includes: a first extraction unit 501, configured to extract a plurality of historical data query requests respectively including a query statement and a query time; an analysis unit 502 configured to analyze the extracted query time to determine a plurality of hotspot time periods; a counting unit 503, configured to count, for each of the multiple hot spot time periods, query statements in the historical data query request whose query time belongs to the hot spot time period, and determine a hot spot query statement matched with the hot spot time period; the first cache unit 504 is configured to extract a query result corresponding to the determined hotspot query statement, store the query result corresponding to the hotspot query statement matched with each hotspot time period to the cache server at the start time of each hotspot time period, and delete the query result in the cache server at the end time of the hotspot time period.
In this embodiment, the first extraction unit 501 may extract a history data query request by using a data query request received within a specified period as the history data query request. The historical data query request may include a query statement and a query time.
In this embodiment, the parsing unit 502 may parse query times included in the extracted historical data query requests to determine a plurality of hotspot time periods. The hot spot time period may be a time period satisfying a certain condition or certain conditions preset by a technician.
In this embodiment, for each of the multiple hot spot time periods, the statistics unit 503 may perform statistics on the query statement in the historical data query request whose query time belongs to the hot spot time period, and determine the hot spot query statement matched with the hot spot time period based on a statistical result.
In this embodiment, the first caching unit 504 may extract a query result corresponding to the determined hotspot query statement. At the starting time of each hotspot time period, the query result corresponding to the hotspot query statement matched with the time period may be stored in the cache server, and the query result in the cache server may be deleted at the ending time of the hotspot time period.
In some optional implementations of this embodiment, the caching apparatus 500 may further include a generating unit and an updating unit (not shown in the figure). The generating unit may be configured to parse the determined hotspot query statement, and generate summary information. The updating unit may be configured to update a pre-established summary information index at a start time and an end time of each hotspot time period, where the summary information index is used to indicate a correspondence between the summary information and the query result stored in the cache server.
In some optional implementations of this embodiment, the proxy server is further communicatively connected to the search server. The buffering apparatus 500 may further include a first determining unit and a first sending unit (not shown in the figure). The first determining unit may be configured to, in response to receiving a data query request that includes a target query statement and is sent by a client, parse the target query statement, generate target summary information, and determine whether the target summary information exists in a current summary information index. The first sending unit may be configured to send the data query request to the search server, receive data returned by the search server, and send the data to the client in response to determining that the target summary information does not exist in the current summary information index.
In some optional implementations of this embodiment, the buffering apparatus 500 may further include a second sending unit (not shown in the figure). The second sending unit may be configured to, in response to determining that the target digest information exists in the current digest information index, obtain a target query result corresponding to the target digest information from the cache server, and send the target query result to the client.
In some optional implementations of this embodiment, the buffering apparatus 500 may further include a second determining unit and a third sending unit (not shown in the figure). The second determining unit may be configured to determine whether the data query request includes a query identifier indicating that cache data is queried from the cache server. The third sending unit may be configured to send the data query request to the search server in response to determining that the query identifier is not included, receive data returned by the search server, and send the data to the client.
In some optional implementation manners of this embodiment, the data query request further includes a cache manner identifier. The buffer device 500 may further include a third determining unit and a second buffer unit (not shown in the figure). The third determining unit may be configured to determine whether the caching mode indicated by the caching mode identifier is a target caching mode in response to determining that the target digest information does not exist in the current digest information index. The second cache unit may be configured to, in response to determining that the cache manner indicated by the cache manner identifier is the target cache manner, determine the data query request as a historical data query request, periodically parse each historical query request to re-determine a hotspot time period and a hotspot query statement, and perform storage and deletion operations of the cache server based on the re-determined hotspot time period and hotspot query statement.
In some optional implementations of this embodiment, the cache apparatus 500 may further include a third cache unit (not shown in the figure). The third cache unit may be configured to, in response to determining that the cache manner indicated by the cache manner identifier is not the target cache manner, store a target query result corresponding to the target summary information to the cache server based on the cache manner indicated by the cache manner identifier, and establish a summary information index indicating a correspondence between the target summary information and the target query result.
In some optional implementation manners of this embodiment, the cache apparatus 500 may further include a second extracting unit, a fourth determining unit, and a presenting unit (not shown in the figure). The second extracting unit may be configured to extract a query time consumption corresponding to each historical data query request in the plurality of historical data query requests. The fourth determining unit may be configured to determine a cache hit rate and a query time consumption threshold of the extracted query statement in each hotspot time period, where the query time consumption threshold of the extracted query statement in each hotspot time period is a minimum value of query time consumption corresponding to historical data query requests in the hotspot time period in a preset proportion. The presentation unit may be configured to present a cache hit rate and a query time consumption threshold of the extracted query statement in each hotspot time period.
In the apparatus provided in the above embodiment of the application, the parsing unit 502 parses the query time in the historical data query request extracted by the first extraction unit 501 to determine multiple hot spot time periods, then the statistics unit 503 performs statistics on the query statements in the historical data query request whose query time belongs to a hot spot time period to determine hot spot query statements, and finally the first cache unit determines the query result corresponding to a hot spot query statement, so that the query result corresponding to the corresponding hot spot query statement is stored in the cache server at the start time of the hot spot time period, and the corresponding query result is deleted at the end time of the hot spot time period, thereby implementing dynamic cache switching based on the hot spot time period, and improving the flexibility of cache.
Referring now to FIG. 6, a block diagram of a computer system 600 suitable for use in implementing a proxy server of an embodiment of the present application is shown. The proxy server shown in fig. 6 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present application.
As shown in fig. 6, the computer system 600 includes a Central Processing Unit (CPU)601 that can perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM)602 or a program loaded from a storage section 608 into a Random Access Memory (RAM) 603. In the RAM 603, various programs and data necessary for the operation of the system 600 are also stored. The CPU 601, ROM 602, and RAM 603 are connected to each other via a bus 604. An input/output (I/O) interface 605 is also connected to bus 604.
The following components are connected to the I/O interface 605: an input portion 606 including a keyboard, a mouse, and the like; an output portion 607 including a display such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker; a storage section 608 including a hard disk and the like; and a communication section 609 including a network interface card such as a LAN card, a modem, or the like. The communication section 609 performs communication processing via a network such as the internet. The driver 610 is also connected to the I/O interface 605 as needed. A removable medium 611 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 610 as necessary, so that a computer program read out therefrom is mounted in the storage section 608 as necessary.
In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through the communication section 609, and/or installed from the removable medium 611. The computer program performs the above-described functions defined in the method of the present application when executed by a Central Processing Unit (CPU) 601. It should be noted that the computer readable medium described herein can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present application, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In this application, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present application may be implemented by software or hardware. The described units may also be provided in a processor, and may be described as: a processor includes a first fetch unit, a parsing unit, a statistics unit, and a first cache unit. Where the names of the units do not in some cases constitute a limitation on the units themselves, for example, the first extraction unit may also be described as a "unit that extracts a plurality of historical data query requests".
As another aspect, the present application also provides a computer-readable medium, which may be contained in the apparatus described in the above embodiments; or may be present separately and not assembled into the device. The computer readable medium carries one or more programs which, when executed by the apparatus, cause the apparatus to: analyzing the extracted query time to determine a plurality of hotspot time periods; for each hotspot time period in the plurality of hotspot time periods, counting query statements in historical data query requests of which the query time belongs to the hotspot time period, and determining the hotspot query statements matched with the hotspot time period; and extracting the query result corresponding to the determined hotspot query statement, storing the query result corresponding to the hotspot query statement matched with each hotspot time period to a cache server at the starting moment of each hotspot time period, and deleting the query result in the cache server at the ending moment of the hotspot time period.
The above description is only a preferred embodiment of the application and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the invention herein disclosed is not limited to the particular combination of features described above, but also encompasses other arrangements formed by any combination of the above features or their equivalents without departing from the spirit of the invention. For example, the above features may be replaced with (but not limited to) features having similar functions disclosed in the present application.

Claims (18)

1. A caching method for a proxy server, wherein the proxy server is communicatively coupled to a caching server, the method comprising:
extracting a plurality of historical data query requests respectively containing query statements and query time;
analyzing the extracted query time to determine a plurality of hotspot time periods;
for each hotspot time period in the plurality of hotspot time periods, counting query statements in historical data query requests of which the query time belongs to the hotspot time period, and determining the hotspot query statements matched with the hotspot time period;
extracting the query result corresponding to the determined hotspot query statement, storing the query result corresponding to the hotspot query statement matched with each hotspot time period to the cache server at the starting moment of each hotspot time period, and deleting the query result in the cache server at the ending moment of the hotspot time period.
2. The method of claim 1, further comprising:
analyzing the determined hot spot query statement to generate abstract information;
and updating a pre-established summary information index at the starting time and the ending time of each hotspot time period, wherein the summary information index is used for indicating the corresponding relation between the summary information and the query result stored in the cache server.
3. The method of claim 2, wherein the proxy server is further communicatively coupled to a search server; and
the method further comprises the following steps:
in response to receiving a data query request which is sent by a client and contains a target query statement, analyzing the target query statement to generate target summary information, and determining whether the target summary information exists in a current summary information index;
and responding to the fact that the target abstract information does not exist in the current abstract information index, sending the data query request to the search server, receiving data returned by the search server, and sending the data to the client.
4. The method of claim 3, further comprising:
and responding to the target abstract information in the current abstract information index, acquiring a target query result corresponding to the target abstract information from the cache server, and sending the target query result to the client.
5. The method of claim 3, wherein after the response receives a data query request containing a target query statement sent by a client, the method further comprises:
determining whether the data query request contains a query identifier for indicating to query cache data from the cache server;
and responding to the data query request sent by the search server in response to the fact that the query identification is not contained, receiving data returned by the search server, and sending the data to the client.
6. The method of claim 3, wherein the data query request further comprises a cache way identifier; and
the method further comprises the following steps:
in response to determining that the target summary information does not exist in the current summary information index, determining whether the caching mode indicated by the caching mode identification is a target caching mode;
and in response to determining that the caching mode indicated by the caching mode identification is the target caching mode, determining the data query request as historical data query requests, periodically analyzing each historical query request to re-determine a hotspot time period and a hotspot query statement, and performing storage and deletion operations of the caching server based on the re-determined hotspot time period and hotspot query statement.
7. The method of claim 6, further comprising:
in response to determining that the caching mode indicated by the caching mode identifier is not the target caching mode, storing a target query result corresponding to the target summary information to the caching server based on the caching mode indicated by the caching mode identifier, and establishing a summary information index for indicating a corresponding relationship between the target summary information and the target query result.
8. The method of claim 1, wherein after the parsing the extracted query time to determine a plurality of hotspot time periods, the method further comprises:
extracting the query time consumption corresponding to each historical data query request in the plurality of historical data query requests;
determining cache hit rate and query time consumption threshold values of the extracted query statements in each hot spot time period, wherein the query time consumption threshold value of the extracted query statements in each hot spot time period is the minimum value of the query time consumption corresponding to historical data query requests in the hot spot time period in a preset proportion;
and displaying the cache hit rate and the query time consumption threshold of the extracted query statement in each hotspot time period.
9. A caching apparatus for a proxy server, wherein the proxy server is communicatively coupled to a caching server, the apparatus comprising:
the device comprises a first extraction unit, a second extraction unit and a third extraction unit, wherein the first extraction unit is used for extracting a plurality of historical data query requests respectively containing query statements and query time;
the analysis unit is configured to analyze the extracted query time and determine a plurality of hotspot time periods;
the statistical unit is configured to, for each of the plurality of hotspot time periods, perform statistics on query statements in the historical data query request of which the query time belongs to the hotspot time period, and determine a hotspot query statement matched with the hotspot time period;
the first cache unit is configured to extract a query result corresponding to the determined hotspot query statement, store the query result corresponding to the hotspot query statement matched with each hotspot time period to the cache server at the starting time of each hotspot time period, and delete the query result in the cache server at the ending time of the hotspot time period.
10. The apparatus of claim 9, further comprising:
the generating unit is configured to analyze the determined hot spot query statement and generate abstract information;
and the updating unit is configured to update a pre-established summary information index at the starting time and the ending time of each hotspot time period, wherein the summary information index is used for indicating the corresponding relation between the summary information and the query result stored in the cache server.
11. The apparatus of claim 10, wherein the proxy server is further communicatively coupled to a search server; and
the device further comprises:
the first determining unit is configured to respond to a received data query request which is sent by a client and contains a target query statement, analyze the target query statement, generate target summary information, and determine whether the target summary information exists in a current summary information index;
and the first sending unit is configured to send the data query request to the search server, receive data returned by the search server and send the data to the client in response to determining that the target summary information does not exist in the current summary information index.
12. The apparatus of claim 11, further comprising:
and the second sending unit is configured to respond to the fact that the target abstract information exists in the current abstract information index, obtain a target query result corresponding to the target abstract information from the cache server, and send the target query result to the client.
13. The apparatus of claim 11, further comprising:
a second determining unit, configured to determine whether the data query request contains a query identifier for indicating to query cache data from the cache server;
and the third sending unit is configured to respond to the determination that the query identifier is not included, send the data query request to the search server, receive data returned by the search server, and send the data to the client.
14. The apparatus of claim 11, wherein the data query request further comprises a cache way identifier; and
the device further comprises:
a third determining unit, configured to determine, in response to determining that the target digest information does not exist in the current digest information index, whether the caching mode indicated by the caching mode identifier is a target caching mode;
and the second cache unit is configured to determine the data query request as a historical data query request in response to determining that the cache manner indicated by the cache manner identifier is the target cache manner, periodically analyze each historical query request to re-determine a hotspot time period and a hotspot query statement, and perform storage and deletion operations of the cache server based on the re-determined hotspot time period and hotspot query statement.
15. The apparatus of claim 14, further comprising:
a third cache unit, configured to, in response to determining that the cache manner indicated by the cache manner identifier is not the target cache manner, store a target query result corresponding to the target summary information to the cache server based on the cache manner indicated by the cache manner identifier, and establish a summary information index for indicating a correspondence between the target summary information and the target query result.
16. The apparatus of claim 9, further comprising:
the second extraction unit is configured to extract query time consumption corresponding to each historical data query request in the plurality of historical data query requests;
a fourth determining unit, configured to determine a cache hit rate and a query time consumption threshold of the extracted query statement in each hot spot time period, where the query time consumption threshold of the extracted query statement in each hot spot time period is a minimum value of query time consumption corresponding to historical data query requests in the hot spot time period in a preset proportion;
and the display unit is configured to display the cache hit rate and the query time consumption threshold of the extracted query statement in each hotspot time period.
17. A proxy server, comprising:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement the method of any one of claims 1-8.
18. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1 to 8.
CN201710403697.0A 2017-06-01 2017-06-01 Caching method and device Active CN108984553B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710403697.0A CN108984553B (en) 2017-06-01 2017-06-01 Caching method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710403697.0A CN108984553B (en) 2017-06-01 2017-06-01 Caching method and device

Publications (2)

Publication Number Publication Date
CN108984553A CN108984553A (en) 2018-12-11
CN108984553B true CN108984553B (en) 2022-02-01

Family

ID=64502645

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710403697.0A Active CN108984553B (en) 2017-06-01 2017-06-01 Caching method and device

Country Status (1)

Country Link
CN (1) CN108984553B (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111324604A (en) * 2020-01-19 2020-06-23 拉扎斯网络科技(上海)有限公司 Database table processing method and device, electronic equipment and storage medium
CN113139002A (en) * 2020-01-19 2021-07-20 上海静客网络科技有限公司 Hot spot data caching method based on Redis
CN113535769B (en) * 2020-04-15 2023-11-03 北京京东振世信息技术有限公司 Method and device for inquiring information
CN112163001A (en) * 2020-09-25 2021-01-01 同程网络科技股份有限公司 High concurrent query method, intelligent terminal and storage medium
CN112487326B (en) * 2020-11-27 2024-03-19 杭州安恒信息技术股份有限公司 Data caching methods, systems, storage media and equipment
CN113064860B (en) * 2020-12-08 2024-06-21 上海金融期货信息技术有限公司 Dynamic data caching system and method
CN113032430B (en) * 2021-03-25 2023-12-19 杭州网易数之帆科技有限公司 Data processing method, device, medium and computing equipment
CN113220684A (en) * 2021-05-12 2021-08-06 北京马赫谷科技有限公司 Data packet storage and query method, device, system and storage medium

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102722589A (en) * 2012-06-15 2012-10-10 青岛海信传媒网络技术有限公司 Data querying method and system based on tri-networks integration
CN104378295A (en) * 2013-08-12 2015-02-25 中兴通讯股份有限公司 Table item management device and table item management method
CN105072172A (en) * 2015-07-31 2015-11-18 网宿科技股份有限公司 Content delivery network based hot spot statistic and pushing method and system
CN105637506A (en) * 2013-10-03 2016-06-01 华为技术有限公司 Method for optimizing query execution on a data store
CN106372156A (en) * 2016-08-30 2017-02-01 福建天晴数码有限公司 Data caching method and system
CN106547773A (en) * 2015-09-21 2017-03-29 北京国双科技有限公司 The method and device of adjustment event opening speed
CN106550047A (en) * 2016-11-25 2017-03-29 上海爱数信息技术股份有限公司 Document fast access system and method based on content distribution mechanism
CN106570174A (en) * 2016-11-10 2017-04-19 中广热点云科技有限公司 Big data analysis method and system running on CMMB super hotspot service platform
CN106649691A (en) * 2016-12-19 2017-05-10 雷桦松 Stream data storage method and device
CN106708833A (en) * 2015-08-03 2017-05-24 腾讯科技(深圳)有限公司 Position information-based data obtaining method and apparatus
CN106789861A (en) * 2016-03-11 2017-05-31 新华三技术有限公司 A kind of message processing method and device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070282537A1 (en) * 2006-05-26 2007-12-06 The Ohio State University Rapid characterization of post-translationally modified proteins from tandem mass spectra
US10251382B2 (en) * 2013-08-21 2019-04-09 Navico Holding As Wearable device for fishing
GB201516553D0 (en) * 2015-09-18 2015-11-04 Microsoft Technology Licensing Llc Inertia audio scrolling

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102722589A (en) * 2012-06-15 2012-10-10 青岛海信传媒网络技术有限公司 Data querying method and system based on tri-networks integration
CN104378295A (en) * 2013-08-12 2015-02-25 中兴通讯股份有限公司 Table item management device and table item management method
CN105637506A (en) * 2013-10-03 2016-06-01 华为技术有限公司 Method for optimizing query execution on a data store
CN105072172A (en) * 2015-07-31 2015-11-18 网宿科技股份有限公司 Content delivery network based hot spot statistic and pushing method and system
CN106708833A (en) * 2015-08-03 2017-05-24 腾讯科技(深圳)有限公司 Position information-based data obtaining method and apparatus
CN106547773A (en) * 2015-09-21 2017-03-29 北京国双科技有限公司 The method and device of adjustment event opening speed
CN106789861A (en) * 2016-03-11 2017-05-31 新华三技术有限公司 A kind of message processing method and device
CN106372156A (en) * 2016-08-30 2017-02-01 福建天晴数码有限公司 Data caching method and system
CN106570174A (en) * 2016-11-10 2017-04-19 中广热点云科技有限公司 Big data analysis method and system running on CMMB super hotspot service platform
CN106550047A (en) * 2016-11-25 2017-03-29 上海爱数信息技术股份有限公司 Document fast access system and method based on content distribution mechanism
CN106649691A (en) * 2016-12-19 2017-05-10 雷桦松 Stream data storage method and device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于热点行搜索的低功耗数据高速缓存;仇径等;《电子学报》;20160115;第44卷(第1期);110-114 *

Also Published As

Publication number Publication date
CN108984553A (en) 2018-12-11

Similar Documents

Publication Publication Date Title
CN108984553B (en) Caching method and device
CN107172151B (en) Method and device for pushing information
CN108804447B (en) Method and system for responding to data request by using cache
CN108572990B (en) Information pushing method and device
CN108846753B (en) Method and apparatus for processing data
CN112527649A (en) Test case generation method and device
EP4080383A1 (en) Method and apparatus for presenting information, electronic device, storage medium, and program product
CN111966887B (en) Dynamic caching method and device, electronic equipment and storage medium
CN108540508B (en) Method, device and equipment for pushing information
US12177310B2 (en) Method and apparatus for processing notification trigger message
CN113781133A (en) Order data processing method and device
CN110648216A (en) Wind control method and device
CN110866040A (en) User portrait generation method, device and system
CN107357794B (en) Method and device for optimizing data storage structure of key value database
CN113761565B (en) Data desensitization method and device
CN107291835B (en) Search term recommendation method and device
US20220107949A1 (en) Method of optimizing search system
CN110019393A (en) A kind of method and apparatus of fuzzy query
CN112784139B (en) Query method, device, electronic equipment and computer readable medium
CN113676531B (en) E-commerce flow peak clipping method and device, electronic equipment and readable storage medium
CN113326416B (en) Method for searching data, method and device for sending search data to client
CN113177173B (en) Data access method, device, equipment and storage medium
CN107920100B (en) Information pushing method and device
CN113362097B (en) User determination method and device
CN114449031A (en) Information acquisition method, device, equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TG01 Patent term adjustment
TG01 Patent term adjustment