CN107544916B - Caching method and storage device - Google Patents

Caching method and storage device Download PDF

Info

Publication number
CN107544916B
CN107544916B CN201610496658.5A CN201610496658A CN107544916B CN 107544916 B CN107544916 B CN 107544916B CN 201610496658 A CN201610496658 A CN 201610496658A CN 107544916 B CN107544916 B CN 107544916B
Authority
CN
China
Prior art keywords
data
key parameter
internal key
internal
key
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
CN201610496658.5A
Other languages
Chinese (zh)
Other versions
CN107544916A (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.)
Maipu Communication Technology Co Ltd
Original Assignee
Maipu Communication 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 Maipu Communication Technology Co Ltd filed Critical Maipu Communication Technology Co Ltd
Priority to CN201610496658.5A priority Critical patent/CN107544916B/en
Publication of CN107544916A publication Critical patent/CN107544916A/en
Application granted granted Critical
Publication of CN107544916B publication Critical patent/CN107544916B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention provides a caching method and storage equipment, belongs to the field of computer application software, and can update cached data in real time in a scene of caching the data by adopting key values, thereby avoiding repeated data storage and saving memory resources. The method comprises the following steps: the storage equipment receives a data caching request message sent by a client; the data cache request message carries original data and external key parameters corresponding to the original data; the storage device obtains a first internal key parameter of the original data by adopting a preset algorithm; combining the first internal key parameter with the original data to obtain packaging data; the storage device stores the mapping relation between the external key parameter and the first internal key parameter, and stores the mapping relation between the first internal key parameter and the package data.

Description

Caching method and storage device
Technical Field
The invention relates to the field of computer application software, in particular to a caching method and storage equipment.
Background
With the popularization of networks, application software enters a high-speed development stage, but the essence of the application software lies in the processing of data no matter how the application software develops. Particularly, internet products have a very high requirement on data processing delay, and under the scenario, a higher requirement is put forward on a data caching technology.
The current technology for caching data usually adopts key value pair- (key, value) to cache data, and the main purpose of the technology is to cache data in a memory of a computer, reduce the query of a hard disk database by a service, and improve the query speed. In general business processing, a cached key (key) is easy to find when updating cached data, for example: the user data is cached with the user id as a key (key) and the user data as a value (value), and stored in the cache in a corresponding form of (user id, user data). When the user data is updated, the key (key) corresponding to the updated data, i.e. the user id, can be easily found out, and then (the user id, the user data) is cached in the memory.
However, in some services, for example, when a query condition is used as a key (key), the key (key) is not easy to find when updating the cache data. For example: and inquiring user data in a paging mode, and inquiring the user data by taking the user name fuzzy matching, the current page and the paging size as inquiry conditions. At this time, the same user data corresponds to a lot of query conditions, and the computer does not know which query conditions the user data corresponds to, so that it is difficult to find keys (keys) corresponding to updated data when updating the user data, and it is also difficult to update the cache data in a key value pair manner in real time.
To update the cached data, it is necessary to fetch data from a data source (e.g. a hard disk database) that is stored persistently, and cache the data in the memory again by the same key (key), which is equivalent to storing two copies of data, one original copy of data and one updated copy of data by the same key (key). This defeats the purpose of using a data caching system, which results in a reduction in query performance of the system. In a usage scenario in which the query condition is a key (key), the queried data is usually a set of data. The data are stored in this way, so that the problem that the data are stored repeatedly exists, and the repeatedly stored data volume is inevitably increased along with the dynamic change of the query condition, so that the memory resource is seriously occupied.
Disclosure of Invention
The embodiment of the invention provides a caching method and storage equipment, which can update the cached data in real time in a scene of caching the data by using key values, avoid repeatedly storing the data and save memory resources.
In order to achieve the above purpose, the embodiment of the invention adopts the following technical scheme:
in a first aspect, a caching method is disclosed, which includes:
the storage equipment receives a data caching request message sent by a client; the data cache request message carries original data and external key parameters corresponding to the original data; the foreign key parameter is defined by the client;
the storage device obtains a first internal key parameter of the original data by adopting a preset algorithm; combining the first internal key parameter with the original data to obtain packaging data;
the storage device stores the mapping relation between the external key parameter and the first internal key parameter, and stores the mapping relation between the first internal key parameter and the package data.
With reference to the first aspect, in a first possible implementation manner of the first aspect, the obtaining, by the storage device, the first internal key parameter of the raw data by using a preset algorithm specifically includes:
serializing the original data to obtain a data sequence of the original data;
and performing MD5 hash calculation on the data sequence to obtain the first internal key parameter uniquely corresponding to the original data.
With reference to the first aspect or the first possible implementation manner of the first aspect, in a second possible implementation manner of the first aspect, after the storing, by the storage device, the mapping relationship between the external key parameter and the first internal key parameter, and storing the mapping relationship between the first internal key parameter and the wrapper data, the method further includes:
the storage equipment receives a data query request message sent by the client; the data query request message carries the external key parameters;
inquiring the mapping relation between the locally stored external key parameters and the first internal key parameters, and determining the first internal key parameters corresponding to the external key parameters;
inquiring the mapping relation between the locally stored first internal key parameter and the packaging data, and determining the packaging data corresponding to the first internal key parameter;
and taking out the original data in the package data and sending the original data to the client.
With reference to the first aspect or the first possible implementation manner of the first aspect, in a third possible implementation manner of the first aspect, after the storing, by the storage device, the mapping relationship between the external key parameter and the first internal key parameter, and storing the mapping relationship between the first internal key parameter and the wrapper data, the method further includes:
the storage equipment receives a data updating request message sent by the client; the data updating request message carries the original data, the external key parameters and updating data;
obtaining a second internal key parameter of the updated data by adopting the preset algorithm; combining the update data and the second internal key parameters to obtain update package data;
obtaining a first internal key parameter of the original data by adopting the preset algorithm;
and searching and deleting the mapping relation between the locally stored first internal key parameter and the package data according to the first internal key parameter, and storing the mapping relation between the first internal key parameter and the updated package data.
With reference to the third possible implementation manner of the first aspect, in a fourth possible implementation manner of the first aspect, the method further includes:
receiving a data query request message sent by the client; the data query request message carries the external key parameters;
inquiring the mapping relation between the locally stored external key parameters and the first internal key parameters, and determining the first internal key parameters corresponding to the external key parameters;
inquiring the mapping relation between the locally stored first internal key parameter and the updating package data, and determining the updating package data corresponding to the first internal key parameter;
and taking out the update data in the update package data and sending the update data to the client.
With reference to the fourth possible implementation manner of the first aspect, in a fifth possible implementation manner of the first aspect, before the retrieving and sending the update data in the update package data to the client, the method further includes:
judging whether the second internal key parameter in the updated package data is the same as the first internal key parameter;
and if the first internal key parameter is different from the second internal key parameter, updating the first internal key parameter to the second internal key parameter.
With reference to the first aspect or the first possible implementation manner of the first aspect, in a first possible implementation manner of the first aspect, after the storing, by the storage device, the mapping relationship between the external key parameter and the first internal key parameter, and storing the mapping relationship between the first internal key parameter and the wrapper data, the method further includes:
receiving a data deletion request message sent by the client; the data deleting request message carries the original data;
calculating the first internal key parameter of the original data by adopting the preset algorithm;
and inquiring the mapping relation between the locally stored first internal key parameter and the package data, determining the original data corresponding to the first internal key parameter, and deleting the original data.
In a second aspect, a storage device is disclosed, comprising:
the receiving unit is used for receiving a data caching request message sent by a client; the data cache request message carries original data and external key parameters corresponding to the original data; the foreign key parameter is defined by the client;
the computing unit is used for obtaining a first internal key parameter of the original data by adopting a preset algorithm;
the data packaging unit is used for combining the first internal key parameter and the original data to obtain packaging data;
and the storage unit is used for storing the mapping relation between the external key parameter and the first internal key parameter and storing the mapping relation between the first internal key parameter and the packaging data.
With reference to the second aspect, in a first possible implementation manner of the second aspect, the calculating unit is specifically configured to serialize the raw data to obtain a data sequence of the raw data;
and performing MD5 hash calculation on the data sequence to obtain the first internal key parameter uniquely corresponding to the original data.
With reference to the second aspect or the first possible implementation manner of the second aspect, in a second possible implementation manner of the second aspect, the method further includes a first querying unit, a first sending unit,
the receiving unit is further configured to receive a data query request message sent by the client after the storage unit stores the mapping relationship between the external key parameter and the first internal key parameter, and stores the mapping relationship between the first internal key parameter and the package data; the data query request message carries the external key parameters;
the first query unit is configured to query the locally stored mapping relationship between the external key parameter and the first internal key parameter, and determine the first internal key parameter corresponding to the external key parameter; inquiring the mapping relation between the locally stored first internal key parameter and the packaging data, and determining the packaging data corresponding to the first internal key parameter;
the first sending unit is used for taking out the original data in the package data and sending the original data to the client.
With reference to the second aspect or the first possible implementation manner of the second aspect, in a third possible implementation manner of the second aspect, the method further includes an updating unit,
the receiving unit is further configured to receive a data update request message sent by the client after the storage unit stores the mapping relationship between the external key parameter and the first internal key parameter, and stores the mapping relationship between the first internal key parameter and the package data; the data updating request message carries the original data, the external key parameters and updating data;
the computing unit is used for obtaining a second internal key parameter of the updated data by adopting the preset algorithm;
the data packaging unit is used for combining the updating data and the second internal key parameters to obtain updating packaging data;
the computing unit is further used for obtaining a first internal key parameter of the original data by adopting the preset algorithm;
the updating unit is used for searching and deleting the mapping relation between the locally stored first internal key parameter and the package data according to the first internal key parameter calculated by the calculating unit, and storing the mapping relation between the first internal key parameter and the updated package data.
With reference to the third possible implementation manner of the second aspect, in a fourth possible implementation manner of the second aspect, the method further includes a second querying unit, a second sending unit,
the receiving unit is further configured to receive a data query request message sent by the client; the data query request message carries the external key parameters;
the second query unit is configured to query the locally stored mapping relationship between the external key parameter and the first internal key parameter, and determine the first internal key parameter corresponding to the external key parameter; inquiring the mapping relation between the locally stored first internal key parameter and the updating package data, and determining the updating package data corresponding to the first internal key parameter;
the second sending unit is configured to take out the update data in the update package data and send the update data to the client.
With reference to the fourth possible implementation manner of the second aspect, in a fifth possible implementation manner of the second aspect, the apparatus further includes a determining unit,
the judging unit is configured to judge whether the second internal key parameter in the update package data is the same as the first internal key parameter before the second sending unit takes out the update data in the update package data and sends the update data to the client;
the updating unit is further configured to update the first internal key parameter to the second internal key parameter if the second internal key parameter is different from the first internal key parameter.
With reference to the second aspect or the first possible implementation manner of the second aspect, in a sixth possible implementation manner of the second aspect, the apparatus further includes a deleting unit,
the receiving unit is further configured to receive a data deletion request message sent by the client after the storage unit stores the mapping relationship between the external key parameter and the first internal key parameter, and stores the mapping relationship between the first internal key parameter and the package data; the data deleting request message carries the original data;
the calculation unit is used for deleting the first internal key parameter of the original data calculated by the preset algorithm;
the deleting unit is used for inquiring the mapping relation between the locally stored first internal key parameter and the package data, determining the original data corresponding to the first internal key parameter, and deleting the original data.
The caching method and the storage device provided by the invention receive external key parameters and original data transmitted by a client, generate unique internal key parameters for the original data, and combine the internal key parameters and the original data to generate packaging data. The mapping relation of (foreign key parameter, home key parameter) and (home key parameter, package data) is stored. The internal key parameters and the package data always keep a one-to-one mapping relation, the external key parameters are only associated with the internal key parameters, and the external key parameters can be indirectly associated with the package data as long as the external key parameters are mapped with the internal key regardless of the change of the external key parameters. When the original data changes, the cached original data is easily updated through the relationship of (internal key parameters, package data), and the external key is not sensed, so that the coupling relationship between the external key and the data is greatly reduced. When the data is updated, the external key corresponding to the updated data does not need to be searched, and the cache data can be updated in real time no matter the user ID or the query condition is used as the external key, so that repeated data storage is avoided, and memory resources are saved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a block diagram of a conventional data caching system;
FIG. 2 is an architecture diagram of a data caching system according to an embodiment of the present invention;
fig. 3 is a schematic flowchart of a data caching method according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of a storage principle provided by an embodiment of the present invention;
fig. 5 is another schematic flow chart of a data caching method according to an embodiment of the present invention;
fig. 6 is another schematic flow chart of a data caching method according to an embodiment of the present invention;
fig. 7 is another schematic flow chart of a data caching method according to an embodiment of the present invention;
fig. 8 is another schematic flow chart of a data caching method according to an embodiment of the present invention;
fig. 9 is a block diagram of a storage device according to an embodiment of the present invention;
fig. 10 is another block diagram of a memory device according to an embodiment of the present invention;
fig. 11 is another block diagram of a memory device according to an embodiment of the present invention;
fig. 12 is another block diagram of a memory device according to an embodiment of the present invention;
fig. 13 is another block diagram of a memory device according to an embodiment of the present invention;
fig. 14 is another structural block diagram of the storage device according to the embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
With the high-speed development of application software, higher requirements are also put forward on data processing and data caching technologies. As shown in fig. 1, current data storage systems include a storage device and at least one client. Specifically, the client may store data into the storage device, query the storage device for the data stored by the client, or delete or change the data stored by the client in the storage device. The storage device comprises a hard disk database and a cache.
Currently, data is mainly cached by an object caching system, such as: memcached systems. Such a cache system generally employs key-value pair cache data, and its main purpose is to cache data in a memory, reduce the query of the data in a database by a service, and improve the query speed. In the business logic in the normal case, the key (key) of the cache is easy to find when updating the cache data.
But in some services, such as: the query condition is used as a key (key) which is not easy to find when updating the cache data. For example, the query conditions are: and (4) paging inquiry user data or user name fuzzy matching user data, and storing in a cache by key value pairs (paging inquiry user data, user data paging result), (user name fuzzy matching user data, user data matching result). When some subdata in the user data is updated, the subdata stored in each key value pair in the cache needs to be updated. However, the storage device does not know which query conditions correspond to the user data, and therefore, when the user data is updated, it is difficult to find keys (keys) corresponding to updated subdata, and it is also difficult to update the cache data in a key value pair manner in real time.
To update the cached data, the data needs to be fetched from the hard disk database of the storage device, and the updated data is cached in the memory again by the same key (key), which is equivalent to that two copies of data are stored by the same key (key), one copy of original data and one copy of updated data cause serious memory resource occupation, and real-time update of the cached data cannot be performed, and both adverse factors have great influence on the performance of the product.
For convenience of understanding, the following description is made of key terms to which the present invention relates:
1. key-value pair: i.e., (key, value), is a commonly used data storage structure, often referred to as a dictionary or map, and each value (value) stored in the data structure corresponds to a globally unique key (key).
2. A client: refers to a caller of a cache interface of a storage device.
MD 5: the message digest algorithm, version 5, is used primarily to ensure the integrity and consistency of information transmission and is commonly used for digital signatures. The predetermined algorithm of the present invention may be MD 5.
4. And the external key caches keys in the key-value pair model, namely the external key parameters. The value of this key is determined by the client and passed into the system as a parameter.
5. Original data: values (value) in the key-value pair model are cached, which are provided by the present system to the original data values provided by the client.
6. The internal key is also a key in the cached key-value pair model, i.e. the first internal key parameter or the second internal key parameter described in the present invention. The value of the key is obtained by performing MD5 hash calculation on the original data value provided by the client inside the system.
7. Packaging data: and combining the internal key and the original data to form a data structure.
Based on the data caching system shown in fig. 1, an embodiment of the present invention provides a data caching system. Specifically, referring to fig. 2, the storage device includes: a processing system and a cache system. The processing system comprises: the device comprises a cache interface module, an internal key parameter calculation module, a data processing logic module, a cache data access module and a cache access adaptation module. The cache system is a system for storing data in a key value pair (key, value) manner, typically a memcached system.
A buffer interface module: the method mainly comprises the steps that an interface for cache data access is provided for a client, and the client transmits key value pairs (external key parameters and original data) through the interface to perform data cache; the cached original data is queried through the interface incoming key (foreign key parameter).
An inside key parameter calculation module: the unique value of the internal key parameter corresponding to the data is calculated by performing MD5 hash value after serialization according to the transmitted original data.
A data processing logic module: incoming data is mostly disassembled and encapsulated. And for the aggregate data, disassembling the aggregate data into single data and packaging the single data into packaging data. For example: and taking out each single data User from the List < User > set data, respectively calculating respective internal key parameters, and packaging each original data and the corresponding internal key parameters into packaging data.
A cache data access module: the (external key parameters, internal key parameters) and (internal key parameters, package data) are mainly stored and read.
The cache access adaptation module: the key value pair cache system is mainly adapted to the actual cache data so as to access the data by using different key value pair cache systems.
Example 1:
an embodiment of the present invention provides a data caching method, as shown in fig. 3, the method includes the following steps:
101. the storage equipment receives a data caching request message sent by a client; the data cache request message carries original data and external key parameters corresponding to the original data; the foreign key parameters are defined by the client.
In specific implementation, the client transmits (external key, original data) to the storage device through a cache interface module of the storage device. The external key, i.e. the external key parameter, may be a user ID or a query condition, such as: and inquiring user data in a paging mode, and inquiring the user data by taking the user name fuzzy matching, the current page and the paging size as inquiry conditions.
102. The storage device obtains a first internal key parameter of the original data by adopting a preset algorithm; and combining the first internal key parameter and the original data to obtain packaging data.
Specifically, the raw data is serialized to obtain a data sequence of the raw data. Taking JAVA language as an example, the raw data implements a serialization interface, i.e., Serializable interface, and the byte array output stream is used to output the raw data as a byte array, i.e., a data sequence of the raw data.
And performing MD5 hash calculation on the data sequence to obtain the first internal key parameter uniquely corresponding to the original data. Specifically, the data sequence, i.e., the byte array after the original data serialization, is used as a parameter, and MD5 calculation is performed to obtain a 32-bit length character string, i.e., the first internal key parameter uniquely corresponding to the original data.
Specifically, referring to fig. 4, on the basis of the existing key-value pair storage model, an internal key (first internal key parameter) is added, and the strong dependency relationship between the key and the value in the key-value pair storage model is decoupled. The storage mode of the method is changed from original (external key, original data) to a set of (external key, internal key) and (internal key, packaging data), the packaging data packages the original data and the internal key together to form packaging data, and the packaging data is also used for storing the original data.
To achieve a one-to-one mapping of the inside key to the wrapper data, the inside key needs to be a unique value throughout the system. In addition, in order to not change the use habit of the cache client and reduce the operation difficulty of the client, the internal key needs to be transparent to the client, so that the unique value of the internal key needs to be calculated in the system. The value of the internal key may be calculated in a number of ways, for example: the hash value of the original data is calculated, but the hash value is provided by the original data object (namely, the client corresponding to the original data), so that the method is high in invasiveness. Otherwise, the hash value changes after the memory addresses of different object instances change, the same data may correspond to a plurality of internal key values, and the internal key values are not unique. In the scheme, the internal key unique value is obtained by performing MD5 hashing on the serialized data, the unique value is in one-to-one correspondence with the data, and the data stored in the cache is required to be serialized, so that the data is not invaded in the mode.
103. The storage device stores the mapping relation between the external key parameter and the first internal key parameter, and stores the mapping relation between the first internal key parameter and the package data.
In a specific implementation, the two sets of mapping relationships are stored in the form of (external key parameter, first internal key parameter), (first internal key parameter, packing data).
In this way, the internal key and the wrapping data always keep a one-to-one mapping relationship, the external key is only associated with the internal key, and the external key can be indirectly associated with the wrapping data as long as the external key is mapped with the internal key regardless of the change of the external key. The data size of the internal key is far smaller than that of the original data, and the original data is only stored in the memory, so that the occupation of the storage space is greatly reduced; because the internal key and the packaging data have a one-to-one mapping relationship, when the original data changes, the cached original data is easily updated through the relationship of the (internal key and the packaging data), and the external key is not sensed, so that the coupling relationship between the external key and the data is greatly reduced. When the data is updated, the external key corresponding to the updated data does not need to be searched, and the cache data can be updated in real time no matter the user ID or the query condition is used as the external key, so that repeated data storage is avoided, and memory resources are saved.
Further, in a preferred embodiment of the present invention, after the storage device stores the mapping relationship between the external key parameter and the first internal key parameter, and the mapping relationship between the first internal key parameter and the wrapping data is stored, the method further includes:
the storage equipment receives a data query request message sent by the client; the data query request message carries the external key parameters.
And inquiring the mapping relation between the locally stored external key parameters and the first internal key parameters, and determining the first internal key parameters corresponding to the external key parameters.
And inquiring the mapping relation between the locally stored first internal key parameter and the package data, and determining the package data corresponding to the first internal key parameter.
And taking out the original data in the package data and sending the original data to the client.
In another preferred embodiment of the present invention, after the storage device stores the mapping relationship between the external key parameter and the first internal key parameter, and stores the mapping relationship between the first internal key parameter and the wrapping data, the method further includes:
the storage equipment receives a data updating request message sent by the client; the data updating request message carries the original data, the external key parameters and updating data;
obtaining a second internal key parameter of the updated data by adopting the preset algorithm; combining the update data and the second internal key parameters to obtain update package data;
obtaining a first internal key parameter of the original data by adopting the preset algorithm;
and searching and deleting the mapping relation between the locally stored first internal key parameter and the package data according to the first internal key parameter, and storing the mapping relation between the first internal key parameter and the updated package data.
Further, after updating the data, the method further includes:
receiving a data query request message sent by the client; the data query request message carries the external key parameters;
inquiring the mapping relation between the locally stored external key parameters and the first internal key parameters, and determining the first internal key parameters corresponding to the external key parameters;
inquiring the mapping relation between the locally stored first internal key parameter and the updating package data, and determining the updating package data corresponding to the first internal key parameter;
and taking out the update data in the update package data and sending the update data to the client.
In addition, before the storage device takes out and sends the update data in the update package data to the client, it may also be determined whether the second internal key parameter in the update package data is the same as the first internal key parameter; and if the first internal key parameter is different from the second internal key parameter, updating the first internal key parameter to the second internal key parameter. That is, two sets of mapping relationships (external key parameter, second internal key parameter), (second internal key parameter, update package data) are already stored at this time.
In another preferred embodiment of the present invention, after storing the mapping relationship between the first internal key parameter and the wrapping data, the method further comprises:
receiving a data deletion request message sent by the client; the data deleting request message carries the original data;
calculating the first internal key parameter of the original data by adopting the preset algorithm;
and inquiring the mapping relation between the locally stored first internal key parameter and the package data, determining the original data corresponding to the first internal key parameter, and deleting the original data.
Further, referring to the cache system shown in fig. 2, each module of the storage system is taken as an execution subject, and the data caching method provided by the present invention is described in detail by taking the stored data as an example, as shown in fig. 5, the method includes the following steps:
201. the client calls a cache interface module of the cache system to input a key value (external key, original data).
In a specific implementation, a client sends a data caching request message to a caching interface module of a caching system, wherein the data caching request message carries an external key (key) and original data.
202. The cache interface module calls the data processing logic module to store the received key value pair (external key, original data).
203. And the data processing logic module judges whether the original data is the set data, and if the original data is the set data, each data in the set is taken out.
204. And the data processing logic module calls the internal key parameter calculation module to calculate the internal key of the original data.
Specifically, if the original data is single data, the data is serialized, and the serialized byte array is calculated using the MD5 hash algorithm, and the calculated hash value is taken as an internal key. If the original data is the set data, the steps are executed on each disassembled single data, and the internal key of each single data is calculated.
205. The inside key parameter calculation module returns an inside key.
206. And the data processing logic module encapsulates the original data and the internal key to generate packaging data.
And if the original data is the set data, packaging each single data and the key inside the single data into a packaged data to obtain a packaged data set.
207. The data processing logic module calls the cache data access module to store (external key, internal key) and (internal key, wrapper data).
If the original data is aggregated data, the key-value pair of each individual data in the data aggregation is stored. For example, the original data is set data { a, b }, the external key of the data a is ax, and the internal key is ay; the external key of the data b is bx, and the internal key is by. The data processing logic stores (ax, ay) (ay, ay + a) and (bx, by) (by, by + b).
208. The cache data access module calls the cache access adaptation module to store (external key, internal key) and (internal key, wrapper data).
209. The cache access adaptation module finds a suitable key-value pair cache system, and stores the two sets of mapping relations (external key, internal key) and (internal key, packing data) through an interface provided by the key-value pair cache system.
And then, returning the storage result according to the calling sequence, which is not described herein.
Further, each module of the storage system is taken as an execution subject, and the data caching method provided by the present invention is described in detail by taking the updated data as an example, as shown in fig. 6, the method includes the following steps:
301. the client calls a cache interface module of the cache system to modify the cached data and transmits the modified data (external key, original data old, original data new).
The stored data, i.e. the original data old, is the original data described in the present invention. The modified data, i.e. the original data new, is the updated original data described in the present invention.
302. The cache interface module calls the data processing logic module to modify (external key, original data old, original data new).
303. The data processing logic module calls an internal key parameter calculation module to calculate an internal key parameter-internal key _ new of the original data new (updated original data), namely the second internal key parameter of the invention.
Specifically, the original data new is serialized, the serialized byte array is calculated using the MD5 hash algorithm, and the calculated hash value is used as the internal key _ new, since only one data is modified here, there is no data disassembly action.
304. The inside key parameter calculation module returns the inside key _ new.
305. The data processing logic module encapsulates the original data new, and packages the original data new and the internal key _ new in a data object to generate packaged data new (update packaged data).
Here, the new wrapper data is the updated wrapper data according to the present invention.
306. The data processing logic module calls the internal key parameter calculation module, serializes the original data old, calculates the serialized byte array by using the MD5 hash algorithm, and takes the calculated hash value as the internal key _ old.
The internal key _ old is an internal key of the original data, i.e. a first internal key parameter.
307. The inside key parameter calculation module returns the inside key _ old.
308. The data processing logic module calls (external key, internal key) and (internal key, packing data) stored by the cache data access module.
Here, the inside key is an inside key _ old.
309. The cache data access module calls the cache access adaptation module to store (internal key _ old, wrapper data new).
That is to say, (inside key _ old, wrapped data old) recorded originally is deleted, and the mapping relation of (inside key _ old, wrapped data new) cached originally is replaced by the mapping relation of (inside key _ old, wrapped data old).
310. The cache access adaptation module finds the appropriate key-value pair cache system and stores it through the interface provided by the key-value pair cache system (internal key _ old, wrapper data new).
The following flow returns the update result according to the calling sequence, which is not described herein.
Further, each module of the storage system is taken as an execution subject, and the data caching method provided by the present invention is described in detail by taking the deletion of data as an example, as shown in fig. 7, the method includes the following steps:
first, the deletion described herein refers to the deletion of the mapping relationship between the internal key and the wrapper data in the key-value cache system, and does not include the deletion of the mapping relationship between the external key and the internal key. The deletion of the mapping relationship between the external key and the internal key is relatively simple and will not be described again.
401. And calling a cache interface module of the cache system by the client to delete the cached data and transmitting the original data.
That is, the client transmits a data deletion request message to the storage device, where the data deletion request message carries original data to be deleted.
402. And the cache interface module calls the data processing logic module to delete the original data.
403. The data processing logic module judges whether the original data is the set data, and if the original data is the set data, each data in the set is taken out.
404. The data processing logic module calls the internal key parameter calculation module, serializes the single data, calculates the serialized byte array by using the MD5 hash algorithm, and takes the calculated hash value as the internal key.
405. The inside key parameter calculation module returns the inside key.
406. And the data processing logic module calls the cache data access module to delete the original data corresponding to the internal key.
Namely, the data deletion request message is transmitted to the cache data access module, and the deletion of the original data corresponding to the internal key is indicated.
407. And the cache data access module calls the cache access adaptation module to delete the original data corresponding to the internal key.
And in the same way, the cache data access module transmits a data deletion request message to the cache access adaptation module to indicate that the original data corresponding to the internal key is deleted.
408. The cache access adaptation module finds a proper key value pair cache system and deletes the original data corresponding to the internal key through an interface provided by the key value pair cache system.
In specific implementation, the cache access adaptation module receives the data deletion request message, and an interface provided by the key value pair cache system deletes the original data corresponding to the internal key cached by the system.
The following flow returns the deletion result in the calling order, which is not described again.
Further, referring to the cache system shown in fig. 2, each module of the storage system is taken as an execution subject, and a data caching method provided by the present invention is described in detail by taking query data as an example, as shown in fig. 8, the method includes the following steps:
501. and calling a cache interface module of the cache system by the client to inquire the cached data, and transmitting an external key as an inquiry condition.
Namely, the client transmits a data query request message carrying an external key, namely, the external key parameter of the present invention.
502. And the cache interface module calls the data processing logic module to inquire the cached data and transmits the data to an external key as an inquiry condition.
503. And the data processing logic module calls the cache data access module to inquire the cached data and transmits the cached data into an external key as an inquiry condition.
504. And the cache data access module calls the cache access adaptation module to inquire the cached data and transmits an external key as an inquiry condition.
505. The cache access adaptation module finds a proper key value pair cache system, inquires cached data through an interface provided by the key value pair cache system, and transmits the cached data into an external key as an inquiry condition.
506. And the key value pair cache system returns the inquired internal key set to the cache access adaptation module.
507. And the cache access adaptation module returns the inquired internal key set to the cache data access module.
508. And the cache data access module returns the inquired internal key set to the data processing logic module.
509. And the data processing logic module takes out the internal keys one by one as query conditions according to the queried internal key set to query the cached data from the cache data access module.
510. The cache data access module calls the cache access adaptation module to inquire the cached data and transmits the cached data into the internal key to serve as an inquiry condition.
511. The cache access adaptation module finds a proper key value pair cache system, inquires cached data through an interface provided by the key value pair cache system, and transmits the cached data into an internal key as an inquiry condition.
512. And the key value pair cache system returns the packaging data corresponding to the inquired internal key to the cache access adaptation module.
513. And the cache access adaptation module returns the packaging data corresponding to the inquired internal key to the cache data access module.
514. And the cache data access module returns the packaging data corresponding to the inquired internal key to the data processing logic module.
Further, the data processing logic module judges the internal key packaged in the packaging data according to the queried packaging data, if the internal key in the packaging data is inconsistent with the internal key serving as a query condition, the original data is modified, at this time, the internal key in the packaging data is used for replacing the internal key corresponding to query, and the cache mapping relation between the external key and the internal key set is updated. That is, when the data is updated, what is queried according to the internal key is update package data including the internal key of the update data (i.e., the second internal key parameter), and thus, the queried internal key may be replaced with the internal key of the update data, and the (external key, internal key) may be updated to the (external key, internal key of the update data) mapping relationship.
It should be noted that the updating action may also be unified and updated once after all the internal keys have queried the packed data, and the updating process is as follows: the data processing logic module calls the cache data access module to update (external key, internal key) to (external key, internal key for updating data); the cache data access module calls the cache access adaptation module to update (external key, internal key of the updated data) to (external key, internal key of the updated data), the cache access adaptation module finds a proper key value pair cache system, updates (external key, internal key) to (external key, internal key of the updated data) through an interface provided by the key value pair cache system, and then returns an update result step by step.
And the data processing logic module judges whether the original data in the packaging data is null or not according to the inquired packaging data, namely whether the original data exists in the packaging data or not. If the number is null, it indicates that there is no data corresponding to the internal key, and the system determines that the data has been deleted, in which case the query data list cached at that point is invalid, and the data needs to be retrieved from the database. Here, the cache mapping relationship between the external key and the internal key set is deleted, and the deletion process is as follows: the data processing logic module calls the cache data access module to delete the mapping relation of the external key and the internal key, the cache data access module calls the cache access adaptation module to delete the mapping relation of the external key and the internal key, the cache access adaptation module finds a proper key value pair cache system, deletes the mapping relation of the external key and the internal key through an interface provided by the key value pair cache system, and then returns a deletion result step by step.
The caching method provided by the invention receives external key parameters and original data transmitted by a client, generates unique internal key parameters for the original data, and combines the internal key parameters and the original data to generate packaging data. The mapping relation of (foreign key parameter, home key parameter) and (home key parameter, package data) is stored. The internal key parameters and the package data always keep a one-to-one mapping relation, the external key parameters are only associated with the internal key parameters, and the external key parameters can be indirectly associated with the package data as long as the external key parameters are mapped with the internal key regardless of the change of the external key parameters. When the original data changes, the cached original data is easily updated through the relationship of (internal key parameters, package data), and the external key is not sensed, so that the coupling relationship between the external key and the data is greatly reduced. When the data is updated, the external key corresponding to the updated data does not need to be searched, and the cache data can be updated in real time no matter the user ID or the query condition is used as the external key, so that repeated data storage is avoided, and memory resources are saved.
Example 2:
an embodiment of the present invention provides a storage device, as shown in fig. 9, where the storage device includes: a receiving unit 601, a calculating unit 602, a data encapsulating unit 603, and a storage unit 604.
A receiving unit 601, configured to receive a data caching request message sent by a client; the data cache request message carries original data and external key parameters corresponding to the original data; the foreign key parameters are defined by the client.
A calculating unit 602, configured to obtain a first internal key parameter of the raw data by using a preset algorithm.
A data packaging unit 603, configured to combine the first internal key parameter and the original data to obtain package data.
A storage unit 604, configured to store the mapping relationship between the external key parameter and the first internal key parameter, and store the mapping relationship between the first internal key parameter and the package data.
The calculating unit 602 is specifically configured to serialize the raw data to obtain a data sequence of the raw data; and performing MD5 hash calculation on the data sequence to obtain the first internal key parameter uniquely corresponding to the original data.
As shown in fig. 10, the storage device further includes a first query unit 605 and a first sending unit 606.
The receiving unit 601 is further configured to receive a data query request message sent by the client after the storage unit stores the mapping relationship between the external key parameter and the first internal key parameter, and stores the mapping relationship between the first internal key parameter and the package data; the data query request message carries the external key parameters.
The first query unit 605 is configured to query the mapping relationship between the external key parameter and the first internal key parameter stored locally, and determine the first internal key parameter corresponding to the external key parameter; and inquiring the mapping relation between the locally stored first internal key parameter and the package data, and determining the package data corresponding to the first internal key parameter.
The sending first sending unit 606 is configured to take out the original data in the package data and send the original data to the client.
As shown in fig. 11, the storage device further includes an update unit 607.
The receiving unit 601 is further configured to receive a data update request message sent by the client after the storage unit stores the mapping relationship between the external key parameter and the first internal key parameter, and stores the mapping relationship between the first internal key parameter and the package data; and the data updating request message carries the original data, the external key parameters and the updating data.
The calculating unit 602 is configured to obtain a second internal key parameter of the updated data by using the preset algorithm.
The data packaging unit 603 is configured to combine the update data and the second internal key parameter to obtain update package data.
The calculating unit 602 is further configured to obtain a first internal key parameter of the raw data by using the preset algorithm.
The updating unit 607 is configured to search for and delete the mapping relationship between the locally stored first internal key parameter and the package data according to the first internal key parameter calculated by the calculating unit 602, and store the mapping relationship between the first internal key parameter and the updated package data.
As shown in fig. 12, the storage device further includes a second querying unit 608 and a second sending unit 609.
The receiving unit 601 is further configured to receive a data query request message sent by the client; the data query request message carries the external key parameters.
The second query unit 608 is configured to query the mapping relationship between the external key parameter and the first internal key parameter stored locally, and determine the first internal key parameter corresponding to the external key parameter; and inquiring the mapping relation between the locally stored first internal key parameter and the updating package data, and determining the updating package data corresponding to the first internal key parameter.
The second sending unit 609 is configured to take out the update data in the update package data and send the update data to the client.
As shown in fig. 13, the storage device further includes a judgment unit 610.
The determining unit 610 is configured to determine whether the second internal key parameter in the update package data is the same as the first internal key parameter before the second sending unit takes out the update data in the update package data and sends the update data to the client.
The updating unit 607 is further configured to update the first internal key parameter to the second internal key parameter if the second internal key parameter is different from the first internal key parameter. That is, two sets of mapping relationships (external key parameter, second internal key parameter), (second internal key parameter, update package data) are already stored at this time.
As shown in fig. 14, the storage apparatus further includes a deletion unit 611.
The receiving unit 601 is further configured to receive a data deletion request message sent by the client after the storage unit stores the mapping relationship between the external key parameter and the first internal key parameter, and stores the mapping relationship between the first internal key parameter and the package data; and the data deleting request message carries the original data.
The calculating unit 602 is configured to delete the first internal key parameter calculated by using the preset algorithm.
The deleting unit 611 is configured to query a locally stored mapping relationship between the first internal key parameter and the package data, determine the original data corresponding to the first internal key parameter, and delete the original data.
The storage device provided by the invention receives external key parameters and original data transmitted by a client, generates unique internal key parameters for the original data, and combines the internal key parameters and the original data to generate packaging data. The mapping relation of (foreign key parameter, home key parameter) and (home key parameter, package data) is stored. The internal key parameters and the package data always keep a one-to-one mapping relation, the external key parameters are only associated with the internal key parameters, and the external key parameters can be indirectly associated with the package data as long as the external key parameters are mapped with the internal key regardless of the change of the external key parameters. When the original data changes, the cached original data is easily updated through the relationship of (internal key parameters, package data), and the external key is not sensed, so that the coupling relationship between the external key and the data is greatly reduced. When the data is updated, the external key corresponding to the updated data does not need to be searched, and the cache data can be updated in real time no matter the user ID or the query condition is used as the external key, so that repeated data storage is avoided, and memory resources are saved.
It should be noted that the receiving unit 601 may be a cache interface module of the storage device shown in fig. 2. The calculation unit 602 may be an internal key parameter calculation unit of the storage device shown in fig. 2, and the functions of the data encapsulation unit 603 and the storage unit 604 may interact with the key-value pair cache system through a data processing logic module, a cache data access module, and a cache access adaptation module of the storage device shown in fig. 2, store data in the form of external key parameters, internal key parameters) and (internal key parameters, package data), and store mapping relationships.
Through the above description of the embodiments, it is clear to those skilled in the art that, for convenience and simplicity of description, the foregoing division of the functional modules is merely used as an example, and in practical applications, the above function distribution may be completed by different functional modules according to needs, that is, the internal structure of the device may be divided into different functional modules to complete all or part of the above described functions. For the specific working process of the device described above, reference may be made to the corresponding process in the foregoing method embodiment, which is not described herein again.
The modules described as separate parts may or may not be physically separate, and parts displayed as modules may be one physical module or a plurality of physical modules, may be located in one place, or may be distributed in a plurality of different places. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment. In addition, functional modules in the embodiments of the present invention may be integrated into one processing module, or each of the modules may exist alone physically, or two or more modules are integrated into one module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode.
The integrated module, if implemented in the form of a software functional module and sold or used as a stand-alone product, may be stored in a readable storage medium. Based on such understanding, the technical solution of the present invention may be substantially implemented or contributed to by the prior art, or all or part of the technical solution may be embodied in the form of a software product, where the software product is stored in a storage medium and includes several instructions to enable a device (which may be a single chip, a chip, or the like) or a processor (processor) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
The above description is only for the specific embodiments of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present invention, and all the changes or substitutions should be covered within the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (12)

1. A caching method, comprising:
the storage equipment receives a data caching request message sent by a client; the data cache request message carries original data and external key parameters corresponding to the original data; the foreign key parameter is defined by the client;
the storage device obtains a first internal key parameter of the original data by adopting a preset algorithm; combining the first internal key parameter with the original data to obtain packaging data;
the storage device stores the mapping relation between the external key parameter and the first internal key parameter, and stores the mapping relation between the first internal key parameter and the package data.
2. The method according to claim 1, wherein the obtaining, by the storage device, the first internal key parameter of the raw data by using a preset algorithm specifically includes:
serializing the original data to obtain a data sequence of the original data;
and performing MD5 hash calculation on the data sequence to obtain the first internal key parameter uniquely corresponding to the original data.
3. The method of claim 1 or 2, wherein the storage device stores the external key parameter and the first internal key parameter mapping, and after storing the mapping of the first internal key parameter and the wrapping data, the method further comprises:
the storage equipment receives a data query request message sent by the client; the data query request message carries the external key parameters;
inquiring the mapping relation between the locally stored external key parameters and the first internal key parameters, and determining the first internal key parameters corresponding to the external key parameters;
inquiring the mapping relation between the locally stored first internal key parameter and the packaging data, and determining the packaging data corresponding to the first internal key parameter;
and taking out the original data in the package data and sending the original data to the client.
4. The method of claim 1 or 2, wherein the storage device stores the external key parameter and the first internal key parameter mapping, and after storing the mapping of the first internal key parameter and the wrapping data, the method further comprises:
the storage equipment receives a data updating request message sent by the client; the data updating request message carries the original data, the external key parameters and updating data;
obtaining a second internal key parameter of the updated data by adopting the preset algorithm; combining the update data and the second internal key parameters to obtain update package data;
obtaining a first internal key parameter of the original data by adopting the preset algorithm;
and searching and deleting the mapping relation between the locally stored first internal key parameter and the package data according to the first internal key parameter, and storing the mapping relation between the first internal key parameter and the updated package data.
5. The method of claim 4, further comprising:
receiving a data query request message sent by the client; the data query request message carries the external key parameters;
inquiring the mapping relation between the locally stored external key parameters and the first internal key parameters, and determining the first internal key parameters corresponding to the external key parameters;
inquiring the mapping relation between the locally stored first internal key parameter and the updating package data, and determining the updating package data corresponding to the first internal key parameter;
and taking out the update data in the update package data and sending the update data to the client.
6. The method according to claim 5, wherein before the retrieving and sending the update data in the update package data to the client, the method further comprises:
judging whether the second internal key parameter in the updated package data is the same as the first internal key parameter;
and if the first internal key parameter is different from the second internal key parameter, updating the first internal key parameter to the second internal key parameter.
7. A storage device, comprising:
the receiving unit is used for receiving a data caching request message sent by a client; the data cache request message carries original data and external key parameters corresponding to the original data; the foreign key parameter is defined by the client;
the computing unit is used for obtaining a first internal key parameter of the original data by adopting a preset algorithm;
the data packaging unit is used for combining the first internal key parameter and the original data to obtain packaging data;
and the storage unit is used for storing the mapping relation between the external key parameter and the first internal key parameter and storing the mapping relation between the first internal key parameter and the packaging data.
8. The storage device according to claim 7, wherein the computing unit is specifically configured to serialize the raw data to obtain a data sequence of the raw data;
and performing MD5 hash calculation on the data sequence to obtain the first internal key parameter uniquely corresponding to the original data.
9. The storage device according to claim 7 or 8, further comprising a first query unit, a first sending unit,
the receiving unit is further configured to receive a data query request message sent by the client; the data query request message carries the external key parameters;
the first query unit is configured to query the locally stored mapping relationship between the external key parameter and the first internal key parameter, and determine the first internal key parameter corresponding to the external key parameter; inquiring the mapping relation between the locally stored first internal key parameter and the packaging data, and determining the packaging data corresponding to the first internal key parameter;
the first sending unit is used for taking out the original data in the package data and sending the original data to the client.
10. The storage device according to claim 7 or 8, further comprising an update unit,
the receiving unit is further configured to receive a data update request message sent by the client; the data updating request message carries the original data, the external key parameters and updating data;
the computing unit is used for obtaining a second internal key parameter of the updated data by adopting the preset algorithm;
the data packaging unit is used for combining the updating data and the second internal key parameters to obtain updating packaging data;
the computing unit is further used for obtaining a first internal key parameter of the original data by adopting the preset algorithm;
the updating unit is used for searching and deleting the mapping relation between the locally stored first internal key parameter and the package data according to the first internal key parameter calculated by the calculating unit, and storing the mapping relation between the first internal key parameter and the updated package data.
11. The storage device of claim 10, further comprising a second query unit, a second send unit,
the receiving unit is further configured to receive a data query request message sent by the client; the data query request message carries the external key parameters;
the second query unit is configured to query the locally stored mapping relationship between the external key parameter and the first internal key parameter, and determine the first internal key parameter corresponding to the external key parameter; inquiring the mapping relation between the locally stored first internal key parameter and the updating package data, and determining the updating package data corresponding to the first internal key parameter;
the second sending unit is configured to take out the update data in the update package data and send the update data to the client.
12. The storage device according to claim 11, further comprising a judging unit,
the judging unit is configured to judge whether the second internal key parameter in the update package data is the same as the first internal key parameter before the second sending unit takes out the update data in the update package data and sends the update data to the client;
the updating unit is further configured to update the first internal key parameter to the second internal key parameter if the second internal key parameter is different from the first internal key parameter.
CN201610496658.5A 2016-06-29 2016-06-29 Caching method and storage device Active CN107544916B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610496658.5A CN107544916B (en) 2016-06-29 2016-06-29 Caching method and storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610496658.5A CN107544916B (en) 2016-06-29 2016-06-29 Caching method and storage device

Publications (2)

Publication Number Publication Date
CN107544916A CN107544916A (en) 2018-01-05
CN107544916B true CN107544916B (en) 2020-04-24

Family

ID=60966134

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610496658.5A Active CN107544916B (en) 2016-06-29 2016-06-29 Caching method and storage device

Country Status (1)

Country Link
CN (1) CN107544916B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110109954B (en) * 2018-01-22 2023-05-26 腾讯科技(深圳)有限公司 Data processing method, system, electronic device and storage medium
CN108647304B (en) * 2018-05-09 2023-11-21 中国平安人寿保险股份有限公司 Report display system, method, computer device and storage medium
US11636035B2 (en) * 2020-07-31 2023-04-25 Microsoft Technology Licensing, Llc Persisted data cache service

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7900020B2 (en) * 2005-04-14 2011-03-01 Arm Limited Correction of incorrect cache accesses
CN103455631A (en) * 2013-09-22 2013-12-18 广州中国科学院软件应用技术研究所 Method, device and system for processing data
CN104951480A (en) * 2014-03-31 2015-09-30 杭州迪普科技有限公司 Resource storage indexing device and method in CDN system
CN105141672A (en) * 2015-08-03 2015-12-09 广州神马移动信息科技有限公司 Method, device and system for data storage

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7900020B2 (en) * 2005-04-14 2011-03-01 Arm Limited Correction of incorrect cache accesses
CN103455631A (en) * 2013-09-22 2013-12-18 广州中国科学院软件应用技术研究所 Method, device and system for processing data
CN104951480A (en) * 2014-03-31 2015-09-30 杭州迪普科技有限公司 Resource storage indexing device and method in CDN system
CN105141672A (en) * 2015-08-03 2015-12-09 广州神马移动信息科技有限公司 Method, device and system for data storage

Also Published As

Publication number Publication date
CN107544916A (en) 2018-01-05

Similar Documents

Publication Publication Date Title
US11176099B2 (en) Lockless synchronization of LSM tree metadata in a distributed system
US8352680B2 (en) Method and system for file-system based caching
US11093472B2 (en) Using an LSM tree file structure for the on-disk format of an object storage platform
CN111190928A (en) Cache processing method and device, computer equipment and storage medium
US20120084346A1 (en) Page Loading Optimization Using Page-Maintained Cache
US20200201821A1 (en) Synchronization of index copies in an lsm tree file system
JP2008027450A (en) Cache-efficient object loader
CN110928904A (en) Data query method and device and related components
CN110334297A (en) Loading method, terminal, server and the storage medium of terminal page
CN107544916B (en) Caching method and storage device
US9928178B1 (en) Memory-efficient management of computer network resources
WO2020177536A1 (en) Transaction deduplication method, transaction construction method, device and storage medium
WO2014161261A1 (en) Data storage method and apparatus
CN109753306A (en) A kind of big data processing method of because precompiled function caching engine
CN113157609A (en) Storage system, data processing method, data processing device, electronic device, and storage medium
US6654867B2 (en) Method and system to pre-fetch compressed memory blocks using pointers
EP3935520A1 (en) Distributed data processing
CN114756509B (en) File system operation method, system, device and storage medium
JP6406254B2 (en) Storage device, data access method, and data access program
US10616291B2 (en) Response caching
CN110908996A (en) Data processing method and device
CN113612869A (en) Short network address generation method, terminal and storage medium
CN110909029A (en) Method and medium for realizing cache based on Nosql
CN113157629A (en) Data processing method and device, electronic equipment and storage medium
CN112052234A (en) Service data processing method and device, storage medium and electronic device

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