WO2012034470A1 - 一种基于哈希算法的数据存储方法及装置 - Google Patents
一种基于哈希算法的数据存储方法及装置 Download PDFInfo
- Publication number
- WO2012034470A1 WO2012034470A1 PCT/CN2011/078564 CN2011078564W WO2012034470A1 WO 2012034470 A1 WO2012034470 A1 WO 2012034470A1 CN 2011078564 W CN2011078564 W CN 2011078564W WO 2012034470 A1 WO2012034470 A1 WO 2012034470A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- key value
- primary key
- data
- stored
- storage module
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9014—Indexing; Data structures therefor; Storage structures hash tables
Definitions
- the present invention relates to computer data storage technology, and in particular, to a data storage method and apparatus based on a hash algorithm. Background of the invention
- IM Instant Messaging
- the instant messaging client often adopts a hash algorithm, and uses a hash table to implement fast data storage.
- the hash algorithm generally includes: a CRC (Cyclic Redundancy Check) algorithm 32, Message-Digest Algorithm (5) and Secure Hash Algorithm (SHA), which uses a hash algorithm to digitize a data string to generate a primary key (ey). Value, and then use the Key value to take a larger prime M, so that the data can be evenly distributed on the M-size hash table.
- CRC Cyclic Redundancy Check
- SHA Secure Hash Algorithm
- FIG. 1 is a schematic diagram of a data storage structure based on a hash algorithm in the prior art.
- Md5 digitizes the data, takes a first 8 bytes to generate a Key value, and takes the Key value to a predetermined larger prime number M, and then the data and the data thereof.
- the corresponding Key value is stored in the hash table of the remainder mapping, and M can be determined according to actual needs and the Key value obtained by hashing the data.
- the data to be queried is processed by using a hash algorithm to obtain a Key value, and then the prime number M used in the stored hash table is used to locate the position of the data in the Hash table, and then located in the location.
- the location query linked list if the data stored in the linked list matches the data to be queried, obtains the data corresponding to the Key value and returns corresponding information to the user.
- the Hash table is in the form of a linked list. For storage, each data has the same primary key value, which makes subsequent query and read difficulties. For the data corresponding to the primary key value that does not conflict, you need to reserve the conflicting primary key value for the hash table.
- the corresponding storage space, and the traversal in the hash table using the prime number M, to determine that there is no identical data can be stored, so that the storage efficiency is low; further, for the non-conflicting data stored in the Hash table
- the complexity (efficiency) of the query is related to the prime number M used in the hash table, and the complexity of the query data is O(n) for the conflicting data stored in the hash table. Where n is the number of data stored in the conflicting list, for example, by querying the data datalll in FIG.
- the main object of the present invention is to provide a data storage method based on a hash algorithm, which reduces storage device requirements and improves storage efficiency.
- Another object of the present invention is to provide a data storage device based on a hash algorithm, which reduces storage device requirements and improves storage efficiency.
- the present invention provides a data storage method based on a hash algorithm, the method comprising:
- the data in the Hash table preset by the backend storage module is not stored, and the data to be stored and the corresponding primary key value are stored.
- the determining that the data to be stored is not stored in the Hash table preset by the backend storage module, and storing the data to be stored and the corresponding primary key value specifically includes:
- the step of performing the step of determining whether the primary key value corresponding to the data to be stored is stored in the hash table set in advance by the backend storage module is returned.
- the preset step size is multiplied by the number of preset steps, and the multiplied product is subjected to a modulo operation on the number of back-end memory modules, and the remainder obtained by performing the modulo operation is 0.
- the method further includes: expanding the number of the backend storage modules in a manner of doubling each time. Further includes:
- the obtaining the primary key value corresponding to the query request according to the query request specifically includes:
- Obtaining a query request determining whether the query request carries data or an already-identified primary key value; if it is data, calculating a primary key value corresponding to the data, and using the calculated primary key value as a primary key value corresponding to the query request; If it is an already identified primary key value, the identified primary key value is used as the primary key value corresponding to the query request.
- the searching for the hash table and obtaining the data to be queried specifically include:
- the searching the hash table and obtaining the data to be queried specifically include:
- a data storage device based on a hash algorithm comprising: a plurality of backend storage modules, a mapping relationship storage module, a primary key value calculation module, and a modulo operation unit, wherein
- mapping relationship storage module configured to store a mapping relationship between the backend storage module identifier and the modulo L operation, where L is the number of the backend storage modules;
- a primary key value calculation module configured to calculate a primary key value of the data to be stored according to the Hash algorithm, and output the signal to the modulo operation unit;
- the modulo operation unit is configured to: according to the number of the backend storage modules, modulate the obtained primary key value, obtain the backend storage module identifier of the remainder mapping of the modulo from the mapping relationship storage module according to the remainder of the modulo, and perform the modulo operation
- the primary key value and the corresponding data are output to the corresponding identified backend storage module;
- the backend storage module is configured to determine that the pre-set hash table does not store the to-be-stored data, and stores the to-be-stored data and the corresponding primary key value.
- the backend storage module is a random access memory, a flash memory, a rewritable memory, or a hard disk.
- the backend storage module includes: a primary key value query unit, a hash table storage unit, a data matching unit, and a primary key value conflict processing unit, where
- the primary key value query unit is configured to sequentially determine whether the data pair to be stored is stored in the hash table. The primary key value of the response, if not, output the primary key value and the data corresponding to the primary key value to
- the Hash table is stored; if yes, the primary key value and the data corresponding to the primary key value are output to the data matching unit;
- a data matching unit configured to match the received data with the data stored in the Hash table, if the same is the same, no processing; otherwise, setting a conflict flag on the stored data, and outputting the primary key value to the primary key value conflict processing unit ;
- a primary key value conflict processing unit configured to add the received primary key value to a preset step size, determine whether the number of times of the preset step size exceeds a preset threshold, and if yes, do not process; otherwise, add The primary key value of the preset step size is output to the primary key value query unit.
- the data storage method and device based on the hash algorithm provided by the present invention pre-set the mapping relationship between the L backend storage modules and the backend storage module identifier and the modulo L operation; according to the Hash algorithm Calculating the primary key value of the data to be stored; performing the modulo operation on the number of the storage module at the end of the acquired primary key value, and performing the mapping of the backend storage module identifier and the modulo L operation, and performing the primary key value of the modulo L operation and The corresponding data is output to the corresponding identified backend storage module.
- the data stored in the Hash table preset by the backend storage module is not stored, and the data to be stored and the corresponding primary key value are stored. In this way, by using a distributed storage method and setting a plurality of back-end storage modules, the storage device requirements can be reduced, the time required for storage is effectively reduced, and the storage efficiency is improved.
- FIG. 2 is a schematic flowchart of a data storage method based on a hash algorithm according to an embodiment of the present invention.
- FIG. 3 is a schematic diagram of selecting a backend storage module for storing data according to a data primary key value and a number of backend storage modules according to an embodiment of the present invention.
- FIG. 4 is a schematic structural diagram of a hash table according to an embodiment of the present invention.
- FIG. 5 is a schematic diagram of a process for determining that a data to be stored, a data to be stored, and a corresponding primary key value are not stored in a hash table preset by the backend storage module according to an embodiment of the present invention.
- FIG. 6 is a schematic flowchart of querying data according to an embodiment of the present invention.
- FIG. 7 is a schematic structural diagram of a data storage device based on a hash algorithm according to an embodiment of the present invention. Mode for carrying out the invention
- FIG. 2 is a schematic flowchart of a data storage method based on a hash algorithm according to an embodiment of the present invention. Referring to Figure 2, the process includes:
- Step 201 pre-setting L back-end storage modules and a back-end storage module identifier that is mapped to the modulo L;
- the backend storage module may be a storage unit built in the client, such as a random access memory, a flash memory, a rewritable memory, a hard disk, or the like, or may be a storage unit in an external independent server.
- the number of the back-end storage modules is a prime number (L), for example, L is a prime number 3, and the corresponding back-end storage module identifiers are mapped to the modulo L for the set three back-end storage modules. Can be set to 0, 1, 2, respectively.
- the mapping relationship between the backend storage module identifier and the modulo L operation may be: if the remainder of the operation with the modulo L is 0, the corresponding storage is stored to the backend storage module whose backend storage module identifier is 0, and the remainder of the operation with the modulo L For 1 data, Corresponding to the back-end storage module stored to the back-end storage module ID 1, and so on.
- Step 202 calculating a primary key value KEY of the data to be stored according to the Hash algorithm
- Step 203 Perform a modulo operation on the obtained primary key value by using L as a modulo, and output the primary key value and the corresponding data of the modulo L operation to the corresponding identified backend storage module according to the mapping relationship;
- the modulo operation is performed by using the number of back-end storage modules (L), that is, the obtained primary key value KEY, and the number of the back-end storage modules is used as a modulus, and the KEY is passed.
- L the number of back-end storage modules
- MOD L obtains the backend storage module identifier mapped to the modulo L, thereby selecting the corresponding backend storage module.
- FIG. 3 is a schematic diagram of selecting a backend storage module for storing data according to a data primary key value and a number of backend storage modules according to an embodiment of the present invention.
- Module 2
- Step 204 Determine that the to-be-stored data is not stored in the Hash table preset by the back-end storage module, and store the to-be-stored data and the corresponding primary key value.
- the number of Hash tables preset in the backend storage module is a prime number.
- the prime number can take a larger value.
- the Hash table uses multiple Hash buckets side by side according to the preset prime number.
- FIG. 4 is a schematic structural diagram of a hash table according to an embodiment of the present invention.
- FIG. 5 is a schematic diagram of the process of determining that the data to be stored and the data to be stored and the corresponding primary key value are not stored in the Hash table preset by the backend storage module according to the embodiment of the present invention.
- the process includes:
- Step 501 judging whether the primary key value corresponding to the data to be stored is stored in the Hash table preset by the backend storage module, if not, executing step 502, otherwise, performing step 503;
- Step 502 Store the primary key value and data corresponding to the primary key value.
- the next column in which the data is last stored in the hash table stores the primary key value and The data corresponding to the primary key value.
- the primary key value is stored in the hash table, indicating that the data corresponding to the primary key value has been stored in the hash table, it is necessary to further determine whether the primary key value corresponds to the stored data and the data to be stored. If the match is the same as the primary key value corresponding to the data to be stored, The primary key value corresponding to the stored data is reset to uniquely identify the data to be stored, and the primary key value is added to the preset step size and the matching is continued. At the same time, in conflict with the data to be stored A conflict flag flag is placed in the stored data structure to indicate that the stored data has ever collided. 504. Determine whether the number of times the preset step is added exceeds a preset threshold, and if yes, end the process, otherwise, return to step 501.
- the product of the preset step size and the preset number of steps and the preset number of back-end memory modules N have a remainder of 0.
- the pre-set step size is multiplied by the preset number of steps, and the multiplied product is subjected to a modulo operation on the number of back-end memory modules.
- the remainder obtained by performing the modulo operation is 0, and the calculation formula is:
- Key is the primary key value corresponding to the data to be stored
- N is the number of backend storage modules
- n is the number of preset steps
- Step is the preset step size.
- the storage method is such that each stored data has a unique primary key value, and can ensure that in a distributed system, conflicting data can be deployed on the same back-end storage module for subsequent query and reading;
- the depth of the bucket in the Hash table is the number of steps set, which effectively reduces the space required for the storage of the hash table.
- the step size can be determined.
- the parallel expansion scheme of the data storage can be determined, which can effectively meet the requirements in the case of parallel expansion.
- FIG. 6 is a schematic flowchart of querying data according to an embodiment of the present invention. See Figure 6, the process includes:
- Step 600 obtaining a query request, determining whether the data is carried in the query request or the primary key value that has been identified, if the data is ,, step 601 is performed, if it is the primary key value that has been identified, step 611 is performed;
- Step 601 Calculate a primary key value of the data to be queried according to the Hash algorithm
- Step 602 Obtain a backend storage module corresponding to the primary key value.
- the primary key value is used to obtain the backend storage module identifier, and the mapping relationship between the backend storage module identifier and the modulo operation is obtained, thereby obtaining the main The backend storage module address stored by the data corresponding to the key value.
- Step 603 sequentially search the Hash table for the primary key value corresponding to the data to be queried, if not, go to step 604, otherwise, go to step 605;
- Step 604 returning the query request failure information, and ending the process
- Step 605 Determine whether a conflicting flag is set in the data structure corresponding to the stored primary key value. Note, if not, go to step 606, otherwise, go to step 607;
- Step 606 returning the query request success information, carrying the data corresponding to the primary key value;
- step 608 it is judged whether the number of times of the preset step is more than a preset threshold. If yes, go to step 609, otherwise, go back to step 603.
- Step 609 returning the query request failure information, and ending the process
- Step 611 Perform a modulo operation on the number of the storage modules at the end of the identified primary key value, and obtain a backend storage module corresponding to the primary key value according to the mapping relationship between the identifier of the backend storage module and the modulo operation;
- Step 612 searching for a primary key value in the hash table, if not, executing step 613, otherwise, performing step 614;
- Step 613 returning the query request failure information, and ending the process
- Step 614 returning the query request success information, and carrying the data corresponding to the identifierd primary key value.
- FIG. 7 is a schematic structural diagram of a data storage device based on a hash algorithm according to an embodiment of the present invention. Referring to FIG. 7, the device includes: a plurality of backend storage modules, a mapping relationship storage module, a primary key value calculation module, and a modulo operation unit, where
- mapping relationship storage module configured to store a mapping relationship between the backend storage module identifier and the modulo L operation
- a primary key value calculation module configured to calculate a primary key value KEY of the data to be stored according to the Hash algorithm, and output the signal to the modulo operation unit;
- the modulo operation unit is configured to: according to the number of the backend storage modules, modulate the obtained primary key value, obtain the backend storage module identifier of the remainder mapping of the modulo from the mapping relationship storage module according to the remainder of the modulo, and perform the modulo operation
- the primary key value and the corresponding data are output to the corresponding identified backend storage module;
- the backend storage module is configured to determine that the pre-set hash table does not store the to-be-stored data, and stores the to-be-stored data and the corresponding primary key value.
- the backend storage module may be a random access memory, a flash memory, a rewritable memory, or a hard disk.
- the backend storage module includes: a primary key value query unit, a hash table storage unit, a data matching unit, and a primary key value conflict processing unit, where
- the primary key value query unit is configured to sequentially determine whether the primary key value corresponding to the data to be stored is stored in the Hash table storage unit Hash table, and if not, output the primary key value and the data corresponding to the primary key value to the hash table. Store; if yes, output the primary key value and the data corresponding to the primary key value to the data matching unit;
- a data matching unit configured to match the received data with the data stored in the Hash table storage unit Hash table, if the same, no processing; otherwise, set a conflict flag on the stored data, and output the primary key value to the primary key value Conflict handling unit;
- a primary key value conflict processing unit configured to add the received primary key value to a preset step size, It is judged whether the number of times of the preset step is more than a preset threshold, and if so, no processing is performed; otherwise, the primary key value added with the preset step size is output to the primary key value query unit.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
Claims
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| RU2013114990/08A RU2586010C2 (ru) | 2010-09-13 | 2011-08-18 | Способ и устройство для сохранения данных с использованием хэширования |
| US13/610,876 US9104676B2 (en) | 2010-09-13 | 2012-09-12 | Hash algorithm-based data storage method and system |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201010281747.0A CN102402394B (zh) | 2010-09-13 | 2010-09-13 | 一种基于哈希算法的数据存储方法及装置 |
| CN201010281747.0 | 2010-09-13 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US13/610,876 Continuation US9104676B2 (en) | 2010-09-13 | 2012-09-12 | Hash algorithm-based data storage method and system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2012034470A1 true WO2012034470A1 (zh) | 2012-03-22 |
Family
ID=45830998
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2011/078564 Ceased WO2012034470A1 (zh) | 2010-09-13 | 2011-08-18 | 一种基于哈希算法的数据存储方法及装置 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US9104676B2 (zh) |
| CN (1) | CN102402394B (zh) |
| RU (1) | RU2586010C2 (zh) |
| WO (1) | WO2012034470A1 (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105681414A (zh) * | 2016-01-14 | 2016-06-15 | 深圳市博瑞得科技有限公司 | 一种避免Hbase数据热点的方法及系统 |
Families Citing this family (47)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102821138B (zh) * | 2012-07-09 | 2015-06-24 | 广州鼎鼎信息科技有限公司 | 一种适用于云存储系统的元数据分布式存储方法 |
| CN103905332B (zh) * | 2012-12-31 | 2017-06-09 | 华为技术有限公司 | 一种确定缓存策略的方法及设备 |
| CN104298687B (zh) * | 2013-07-18 | 2018-04-03 | 阿里巴巴集团控股有限公司 | 一种哈希分区管理方法及装置 |
| CN104376025B (zh) * | 2013-08-16 | 2017-10-10 | 华为技术有限公司 | 分布式数据库的数据存储方法和装置 |
| CN103593477A (zh) | 2013-11-29 | 2014-02-19 | 华为技术有限公司 | 一种哈希数据库的配置方法和装置 |
| CN104077374B (zh) * | 2014-06-24 | 2018-09-11 | 华为技术有限公司 | 一种实现ip盘文件存储的方法及装置 |
| US9846642B2 (en) * | 2014-10-21 | 2017-12-19 | Samsung Electronics Co., Ltd. | Efficient key collision handling |
| CN105530162A (zh) * | 2014-10-21 | 2016-04-27 | 中兴通讯股份有限公司 | 离线消息处理方法及装置 |
| CN104461817B (zh) * | 2014-11-26 | 2017-08-11 | 华为技术有限公司 | 一种检测键的方法和服务器 |
| CN104361119B (zh) * | 2014-12-02 | 2018-03-06 | 中国农业银行股份有限公司 | 一种数据清理的方法及系统 |
| CN104539660B (zh) * | 2014-12-09 | 2018-09-11 | 珠海金山网络游戏科技有限公司 | 一种系统扩容时零数据迁移的数据分布存储方法及系统 |
| CN104461920B (zh) * | 2014-12-09 | 2019-04-12 | 杭州华为数字技术有限公司 | 一种存储数据的方法及装置 |
| CN104503708B (zh) * | 2014-12-29 | 2018-05-22 | 成都极驰科技有限公司 | 数据散列存储的方法及装置 |
| CN106991088B (zh) * | 2016-01-20 | 2021-02-09 | 创新先进技术有限公司 | 数据获取方法和装置 |
| CN106777178A (zh) * | 2016-12-22 | 2017-05-31 | 上海大汉三通无线通信有限公司 | 一种手机号码的存储方法及查询方法 |
| US10785193B2 (en) * | 2017-03-30 | 2020-09-22 | Seagate Technology Llc | Security key hopping |
| CN107707346A (zh) * | 2017-04-10 | 2018-02-16 | 浙江九州量子信息技术股份有限公司 | 一种基于数据库的密钥存储、获取方法 |
| JP6934068B2 (ja) * | 2017-06-08 | 2021-09-08 | ヒタチ ヴァンタラ コーポレーションHitachi Vantara Corporation | 分散されたイレイジャーコーディングされたオブジェクトの重複排除 |
| US10540370B2 (en) | 2017-06-26 | 2020-01-21 | Huawei Technologies Co., Ltd. | Self-balancing binary search capable distributed database |
| CN107562775B (zh) * | 2017-07-14 | 2020-04-24 | 创新先进技术有限公司 | 一种基于区块链的数据处理方法及设备 |
| CN107579814A (zh) * | 2017-08-03 | 2018-01-12 | 北京比特大陆科技有限公司 | 工作量证明的计算方法的装置、计算芯片、挖矿机 |
| CN108064374B (zh) * | 2017-08-10 | 2021-04-09 | 华为技术有限公司 | 一种数据访问方法、装置和系统 |
| CN107798257B (zh) * | 2017-11-17 | 2020-04-03 | 郑州云海信息技术有限公司 | 一种md5值存储方法及存储系统 |
| CN110019275A (zh) * | 2017-12-31 | 2019-07-16 | 中国移动通信集团安徽有限公司 | 主键生成方法、装置、设备及介质 |
| CN120952783A (zh) * | 2018-02-28 | 2025-11-14 | 海峡小鹿有限公司 | 工作量证明的计算方法和系统、电子设备、程序和介质 |
| CN108376121B (zh) * | 2018-03-01 | 2021-10-22 | 曲阜师范大学 | 一种Flash存储器的数据存储方法 |
| CN110399530A (zh) * | 2018-04-20 | 2019-11-01 | 杭州海康威视数字技术股份有限公司 | 数据匹配方法、装置及计算机设备 |
| CN110750529B (zh) * | 2018-07-04 | 2022-09-23 | 百度在线网络技术(北京)有限公司 | 数据处理方法、装置、设备及存储介质 |
| CN109558423A (zh) * | 2018-10-31 | 2019-04-02 | 深圳壹账通智能科技有限公司 | 一种基于键值对的数据查找方法、装置及设备 |
| US10992563B2 (en) * | 2019-04-30 | 2021-04-27 | Google Llc | Systems and methods of monitoring network devices |
| CN110489405B (zh) * | 2019-07-12 | 2024-01-12 | 平安科技(深圳)有限公司 | 数据处理的方法、装置和服务器 |
| EP3859551A4 (en) * | 2019-07-24 | 2021-11-24 | Huawei Technologies Co., Ltd. | METHOD AND DEVICE FOR INDEX DETERMINING DATA |
| CN110457324A (zh) * | 2019-08-09 | 2019-11-15 | 泰康保险集团股份有限公司 | 数据存储方法和装置 |
| CN110727702B (zh) * | 2019-09-16 | 2024-01-26 | 平安科技(深圳)有限公司 | 数据查询方法、装置、终端和计算机可读存储介质 |
| CN110716965B (zh) * | 2019-09-25 | 2022-02-25 | 蚂蚁区块链科技(上海)有限公司 | 一种块链式账本中的查询方法、装置及设备 |
| CN111078132B (zh) * | 2019-10-15 | 2024-09-13 | 中国平安财产保险股份有限公司 | 基于Redis集群的数据均匀缓存方法、装置、终端及存储介质 |
| CN110968265B (zh) * | 2019-11-05 | 2023-08-08 | 北京字节跳动网络技术有限公司 | 分片扩容方法、装置及电子设备 |
| CN111078672B (zh) * | 2019-12-20 | 2023-06-02 | 中国建设银行股份有限公司 | 数据库的数据对比方法及装置 |
| CN115136562A (zh) | 2020-02-11 | 2022-09-30 | 哲库科技有限公司 | 硬件实现的表以及使用该表对数据包进行分类和冲突解决的方法 |
| CN111552695A (zh) * | 2020-06-04 | 2020-08-18 | 支付宝(杭州)信息技术有限公司 | 数据存储和查询的方法、装置以及机器可读存储介质 |
| CN111881317B (zh) * | 2020-07-31 | 2021-08-20 | 北京达佳互联信息技术有限公司 | 基于键值系统的数据存储方法、装置、电子设备及介质 |
| US11375013B2 (en) | 2020-09-25 | 2022-06-28 | Microsoft Technology Licensing, Llc | Deterministic mapping and uniform routing of items to physical resources using hash values |
| CN112235104B (zh) * | 2020-10-23 | 2022-12-23 | 苏州浪潮智能科技有限公司 | 一种数据加密传输方法、系统、终端及存储介质 |
| CN113111127B (zh) * | 2021-04-15 | 2025-08-26 | 深圳市腾讯网络信息技术有限公司 | 数据存储的方法、装置、电子设备和可读介质 |
| CN113609130B (zh) * | 2021-07-30 | 2023-06-13 | 中电金信软件有限公司 | 获取网关接入数据的方法、装置、电子设备及存储介质 |
| CN113810477A (zh) * | 2021-08-30 | 2021-12-17 | 深圳壹账通智能科技有限公司 | 一种文件上传方法、装置、设备及存储介质 |
| CN115757406A (zh) * | 2022-11-15 | 2023-03-07 | 北京爱奇艺科技有限公司 | 数据存储方法、装置、电子设备及存储介质 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060143168A1 (en) * | 2004-12-29 | 2006-06-29 | Rossmann Albert P | Hash mapping with secondary table having linear probing |
| CN101140592A (zh) * | 2007-09-30 | 2008-03-12 | 华为技术有限公司 | 关键字存储、查找方法和设备 |
| CN101331496A (zh) * | 2005-12-15 | 2008-12-24 | 国际商业机器公司 | 用于在数据处理系统中将安全信息与信息对象关联起来的系统和方法 |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5914938A (en) * | 1996-11-19 | 1999-06-22 | Bay Networks, Inc. | MAC address table search unit |
| AU754166B2 (en) * | 1997-03-21 | 2002-11-07 | Nagra France Sas | Broadcast and reception system, and conditional access system therefor |
| US5960434A (en) * | 1997-09-26 | 1999-09-28 | Silicon Graphics, Inc. | System method and computer program product for dynamically sizing hash tables |
| US7185041B1 (en) * | 2001-10-05 | 2007-02-27 | Unisys Corporation | Circuit and method for high-speed execution of modulo division |
| US7606916B1 (en) * | 2003-11-10 | 2009-10-20 | Cisco Technology, Inc. | Method and apparatus for load balancing within a computer system |
| US8219637B2 (en) * | 2004-05-14 | 2012-07-10 | Pixar | Storage management for renderfarm |
| US7370048B2 (en) * | 2005-05-27 | 2008-05-06 | International Business Machines Corporation | File storage method and apparatus |
| US20070083531A1 (en) * | 2005-10-12 | 2007-04-12 | Daniar Hussain | Data storage method and apparatus utilizing evolution and hashing |
| US7827146B1 (en) * | 2007-03-30 | 2010-11-02 | Symantec Operating Corporation | Storage system |
| CN100561482C (zh) * | 2008-01-29 | 2009-11-18 | 北京北方烽火科技有限公司 | 一种嵌入式系统数据库的实现方法 |
| CN101247349A (zh) * | 2008-03-13 | 2008-08-20 | 华耀环宇科技(北京)有限公司 | 一种网络流量快速分配方法 |
-
2010
- 2010-09-13 CN CN201010281747.0A patent/CN102402394B/zh active Active
-
2011
- 2011-08-18 RU RU2013114990/08A patent/RU2586010C2/ru active
- 2011-08-18 WO PCT/CN2011/078564 patent/WO2012034470A1/zh not_active Ceased
-
2012
- 2012-09-12 US US13/610,876 patent/US9104676B2/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060143168A1 (en) * | 2004-12-29 | 2006-06-29 | Rossmann Albert P | Hash mapping with secondary table having linear probing |
| CN101331496A (zh) * | 2005-12-15 | 2008-12-24 | 国际商业机器公司 | 用于在数据处理系统中将安全信息与信息对象关联起来的系统和方法 |
| CN101140592A (zh) * | 2007-09-30 | 2008-03-12 | 华为技术有限公司 | 关键字存储、查找方法和设备 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN105681414A (zh) * | 2016-01-14 | 2016-06-15 | 深圳市博瑞得科技有限公司 | 一种避免Hbase数据热点的方法及系统 |
| CN105681414B (zh) * | 2016-01-14 | 2019-01-01 | 深圳市博瑞得科技有限公司 | 一种避免Hbase数据热点的方法及系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| US9104676B2 (en) | 2015-08-11 |
| US20130007008A1 (en) | 2013-01-03 |
| CN102402394A (zh) | 2012-04-04 |
| RU2013114990A (ru) | 2014-10-20 |
| RU2586010C2 (ru) | 2016-06-10 |
| CN102402394B (zh) | 2014-10-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2012034470A1 (zh) | 一种基于哈希算法的数据存储方法及装置 | |
| CN108153757B (zh) | 一种哈希表管理的方法和装置 | |
| CN102682116B (zh) | 基于哈希表的表项处理方法及其装置 | |
| CN104572983B (zh) | 基于内存的散列表的构建方法、文本查找方法及相应装置 | |
| CN107330047B (zh) | 一种基于完美哈希算法的fpga训练及查询电路实现方法 | |
| US11182365B2 (en) | Systems and methods for distributed storage of data across multiple hash tables | |
| CN107783980B (zh) | 索引数据生成及数据查询方法及装置、存储和查询系统 | |
| WO2008119269A1 (en) | Method and engine device for storing and looking up information | |
| US20100070698A1 (en) | Content addressable storage systems and methods employing searchable blocks | |
| CN106326309B (zh) | 一种数据查询方法和装置 | |
| CN104866502A (zh) | 数据匹配的方法及装置 | |
| CN110597852B (zh) | 数据处理方法、装置、终端及存储介质 | |
| CN105426408A (zh) | 一种多索引的数据处理方法及装置 | |
| CN110769079A (zh) | 一种检索ip对应地理位置的方法及装置 | |
| CN109830285B (zh) | 一种医学影像文件处理方法和装置 | |
| CN109165222A (zh) | 一种基于协处理器的HBase二级索引创建方法以及系统 | |
| WO2009046669A1 (en) | Method and device for storing and searching keyword | |
| WO2017012243A1 (zh) | 语音识别方法、装置、终端设备及存储介质 | |
| CN107567621A (zh) | 用于执行数字搜索的方法、系统和计算机程序产品 | |
| WO2023165272A1 (zh) | 数据存储及查询 | |
| CN110019054B (zh) | 日志去重方法和系统、内容分发网络系统 | |
| WO2020024446A1 (zh) | 数据的存储方法及装置、存储介质、计算机设备 | |
| CN102467458A (zh) | 建立数据区块的索引方法 | |
| JP2019512143A5 (zh) | ||
| CN116775701A (zh) | 数据存储方法、装置及设备 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 11824540 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| ENP | Entry into the national phase |
Ref document number: 2013114990 Country of ref document: RU Kind code of ref document: A |
|
| 32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 250713) |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 11824540 Country of ref document: EP Kind code of ref document: A1 |