数据存储和查找方法及装置制造方法及图纸

技术编号:15499973 阅读:95 留言:0更新日期:2017-06-03 22:02
本发明专利技术公开了一种数据存储和查找方法及装置,所述方法包括:接收数据存储请求,确定请求存储的数据的数据类型;若请求存储的数据的数据类型为链表,则将数据以数据键值对的方式按照链表顺序进行存储;数据键值对包含数据键和数据值,接收数据查找请求,确定请求查找的数据的数据类型;若请求查找的数据的数据类型为链表,则根据链表顺序,获取对应的数据值。利用本方案,通过将数据类型为链表的数据按照数据键值对的方式以链表顺序进行存储,以便在查找时,可以根据链表顺序进行查找。利用链表本身具有顺序的特性,极大的提高了查找的速度,节省查找时花费的时间和终端设备的开销。

Data storage and searching method and device

The invention discloses a data storage and search method and device, the method includes receiving a request for data storage, data storage request to determine the data type; if the request data stored in the data type for the list, then the data with data on key mode according to the chain table in order to contain the key data storage; key data and data receiving data search request, determine the request to find the data type; if the request to find data type list, according to the order list, to obtain the corresponding data values. By using the scheme, the data in the data type list is stored in the order of the chained list according to the key value of the data, so that the lookup can be carried out according to the order of the linked list. The use of the list itself has sequential characteristics, greatly improving the speed of search, saving time spent searching and the overhead of terminal equipment.

【技术实现步骤摘要】
数据存储和查找方法及装置
本专利技术涉及计算机软件领域,具体涉及一种数据存储和查找方法及装置。
技术介绍
在处理数据时,涉及到对数据的存储、查找等多方面的相关操作。数据的存储方式会影响到数据查找时的速度、效率等。尤其在数据量比较大的情况下,在大量的存储数据中进行数据查找时,会花费更多的时间和处理器的开销,以及影响到后续的数据处理等操作。例如,将数据按照在已存储数据的末尾追加存储的方式进行存储。在查找时,需要将数据按照存储的顺序从头至尾进行查找,若存储的数据有5000个时,最差的情况可能需要进行5000次的查找,才能找到数据。花费的时间和处理器的开销会非常大,查找的速度慢,效率低下。因此,需要一种数据存储和查找方法,有效的提高数据查找的速度和效率。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的数据存储和查找方法及装置。根据本专利技术的一个方面,提供了一种数据存储和查找方法,其包括:接收数据存储请求,确定请求存储的数据的数据类型;若请求存储的数据的数据类型为链表,则将数据以数据键值对的方式按照链表顺序进行存储,数据键值对包含数据键和数据值;接收数据查找请求,确定请求查找的数据的数据类型;若请求查找的数据的数据类型为链表,则根据链表顺序,获取对应的数据值。根据本专利技术的另一方面,提供了一种数据存储和查找装置,其包括:存储请求模块,适于接收数据存储请求,确定请求存储的数据的数据类型;存储模块,适于若请求存储的数据的数据类型为链表,则将数据以数据键值对的方式按照链表顺序进行存储,数据键值对包含数据键和数据值;查找请求模块,适于接收数据查找请求,确定请求查找的数据的数据类型;查找模块,适于若请求查找的数据的数据类型为链表,则根据链表顺序,获取对应的数据值。根据本专利技术提供的数据存储和查找方法及装置,接收数据存储请求,确定请求存储的数据的数据类型;若请求存储的数据的数据类型为链表,则将数据以数据键值对的方式按照链表顺序进行存储。接收数据查找请求,确定请求查找的数据的数据类型;若请求查找的数据的数据类型为链表,则根据链表顺序,获取对应的数据值。通过将数据类型为链表的数据按照数据键值对方式以链表顺序进行存储,以便在查找时,可以根据链表顺序进行查找。利用链表本身具有顺序的特性,极大的提高了查找的速度,节省查找时花费的时间和终端设备的开销。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了根据本专利技术一个实施例的数据存储和查找方法的流程示意图;图2示出了根据本专利技术另一个实施例的数据存储和查找方法的流程示意图;图3示出了根据本专利技术一个实施例的数据存储和查找装置的功能框图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。图1示出了根据本专利技术一个实施例的数据存储和查找方法的流程示意图。如图1所示,数据存储和查找方法具体包括如下步骤:步骤S101,接收数据存储请求,确定请求存储的数据的数据类型。接收数据存储请求后,先确定该请求存储的数据的数据类型。请求存储的数据的数据类型可能存在多种多样,如链表数据类型、哈希数据类型、set数据类型、zset数据类型、key-value数据类型、超时key-value数据类型等。其中,链表数据类型的数据与其他各种数据类型不同之处在于链表数据类型的数据具有前后顺序,而其他各种数据类型不具有前后顺序。本专利技术主要针对数据类型为链表数据类型的数据存储请求进行处理。步骤S102,判断请求存储的数据的数据类型是否为链表。在确定请求存储的数据的数据类型后,判断请求存储的数据的数据类型是否为链表,若是,执行步骤S103。否则,本方法结束,不做处理。步骤S103,将数据以数据键值对的方式按照链表顺序进行存储。存储时,将请求存储的数据以数据键值对的方式进行存储。其中,数据键值对中包含了数据键和数据值,即Key和Value。数据值为链表中的数据,数据键可以为链表中的顺序,如1、2、3、4等;或者还可以为预先设置的用于标识链表中数据的特定值,此处不做限定。同时,在存储时,数据存储的顺序按照链表本身的前后顺序进行存储。为记录链表顺序,在数据键中除记录当前数据的数据键,还记录当前数据的前一数据的数据键、当前数据的后一数据的数据键。如当前数据的数据键为3,当前数据的前一数据的数据键为2,当前数据的后一数据的数据键为4,当前数据的数据键可以记录为3-2-4;通过数据键可以很清楚的了解到数据的顺序为2、3、4;或者当前数据的数据键为1,当前数据没有前一数据,当前数据的后一数据的数据键为2,当前数据的数据键可以记录为1-X-2;通过数据键可以很清楚的了解到数据的顺序为1、2;或者当前数据的数据键为5,当前数据没有后一数据,当前数据的前一数据的数据键为4,当前数据的数据键可以记录为5-4-X;通过数据键可以很清楚的了解到数据的顺序为4、5。上述举例说明中,数据键第一位为当前数据的数据键,第二位为当前数据的前一数据的数据键,第三位为当前数据的后一数据的数据键,之间通过“-”进行连接,当前一数据的数据键或后一数据的数据键不存在时,用“X”代替。在具体记录时,关于当前数据的数据键、当前数据的数据键的前一数据的数据键和后一数据的数据键的记录方式、连接方式等,可以根据实施情况进行设置,此处不做限定。步骤S104,接收数据查找请求,确定请求查找的数据的数据类型。接收数据查找请求,确定请求查找的数据的数据类型。请求查找的数据可以为如链表数据类型、哈希数据类型、set数据类型、zset数据类型、key-value数据类型、超时key-value数据类型等。此处的数据类型均为广义的数据类型,即符合该数据类型特点的数据,而不是仅仅限定为数据类型定义为具体的如List、HashTable等的数据类型。步骤S105,判断请求查找的数据的数据类型是否为链表。在确定请求查找的数据的数据类型后,判断请求查找的数据的数据类型是否为链表,若是,执行步骤S106。否则,本方法结束,不做处理。本专利技术主要针对数据类型为链表数据类型的数据查找请求进行处理。此处所指的链表为广义的链表,即符合链表特征,数据间具有顺序限定的所有数据类型。如步骤S103存储方式的链表类型。数据间通过数据键标明了数据间的顺序。这种数据的数据类型也符合本步骤判断的链表。步骤S106,根据链表顺序,获取对应的数据值。由于链表数据类型本身的顺序特性,数据间具有前后顺序关系。因此根据链表顺序,可以快速的获取到对应的数据值。根据请求查找的数据中的顺序关系和接收到的数据查找请求,如请求本文档来自技高网...
数据存储和查找方法及装置

【技术保护点】
一种数据存储和查找方法,包括:接收数据存储请求,确定请求存储的数据的数据类型;若所述请求存储的数据的数据类型为链表,则将数据以数据键值对的方式按照链表顺序进行存储,所述数据键值对包含数据键和数据值;接收数据查找请求,确定请求查找的数据的数据类型;若所述请求查找的数据的数据类型为链表,则根据链表顺序,获取对应的数据值。

【技术特征摘要】
1.一种数据存储和查找方法,包括:接收数据存储请求,确定请求存储的数据的数据类型;若所述请求存储的数据的数据类型为链表,则将数据以数据键值对的方式按照链表顺序进行存储,所述数据键值对包含数据键和数据值;接收数据查找请求,确定请求查找的数据的数据类型;若所述请求查找的数据的数据类型为链表,则根据链表顺序,获取对应的数据值。2.根据权利要求1所述的方法,其中,所述数据键记录有:当前数据的数据键,以及前一数据的数据键和/或后一数据的数据键。3.根据权利要求1或2所述的方法,其中,所述数据查找请求携带有待查找数据的数据键;所述根据链表顺序,获取对应的数据值进一步包括:根据链表顺序,执行向前或向后查找的操作,以获取待查找数据的数据键及其对应的数据值。4.根据权利要求1所述的方法,其中,所述数据查找请求携带有待查找数据的链表顺序序号;所述根据链表顺序,获取对应的数据值进一步包括:根据待查找数据的链表顺序序号,获取待查找数据的数据键及其对应的数据值。5.根据权利要求1-4任一项所述的方法,若所述请求存储的数据的数据类型为链表,所述方法还包括:统计请求存储的数据的元信息,将元信息以数据键值对的方式进行存...

【专利技术属性】
技术研发人员:陈宗志
申请(专利权)人:北京奇虎科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1