CN104915435A - 数据查询方法和装置 - Google Patents

数据查询方法和装置 Download PDF

Info

Publication number
CN104915435A
CN104915435A CN201510354984.8A CN201510354984A CN104915435A CN 104915435 A CN104915435 A CN 104915435A CN 201510354984 A CN201510354984 A CN 201510354984A CN 104915435 A CN104915435 A CN 104915435A
Authority
CN
China
Prior art keywords
data
record identification
tables
querying condition
query
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.)
Pending
Application number
CN201510354984.8A
Other languages
English (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.)
Nubia Technology Co Ltd
Original Assignee
Nubia 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 Nubia Technology Co Ltd filed Critical Nubia Technology Co Ltd
Priority to CN201510354984.8A priority Critical patent/CN104915435A/zh
Publication of CN104915435A publication Critical patent/CN104915435A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据查询方法,在接收到数据查询条件时,获取各个数据表中满足所述查询条件的数据对应的记录标识;将获取的记录标识写入缓存中;在接收到基于所述记录标识输入的选择指令时,确定所述选择指令对应的记录标识在所述数据表中的位置信息;根据所述位置信息在所述数据表中提取相应的数据作为查询结果。本发明还公开了一种数据查询装置。本发明通过数据查询条件获取满足查询条件的记录标识,并通过记录标识的选择指令定位到数据表中的位置以实现数据的查询,提高了数据查询的速度。

Description

数据查询方法和装置
技术领域
本发明涉及数据库技术领域,尤其涉及一种数据查询方法和装置。
背景技术
随着网络技术的高速发展,人们利用计算机等终端设备与服务器进行交互越来越频繁,而网络交互过程中产生的数据量也与日俱增,一般情况下,在查询数据时,终端设备或服务器要将满足查询条件的数据写入缓存中,并根据用户的选择在缓存中提取相应的数据作为查询结果,而随着数据量的不断增加,在查询数据过程中,如果将满足查询条件的数据全部写入缓存,耗费的存储资源会越来越大,导致数据的查询速度也越来越慢。
发明内容
本发明的主要目的在于提出一种数据查询方法和装置,旨在解决数据量增加的情况下占用的缓存资源大,导致数据查询速度慢的技术问题。
为实现上述目的,本发明提供的一种数据查询方法,所述数据查询方法包括以下步骤:
在接收到数据查询条件时,获取各个数据表中满足所述查询条件的数据对应的记录标识;
将获取的记录标识写入缓存中;
在接收到基于所述记录标识输入的选择指令时,确定所述选择指令对应的记录标识在所述数据表中的位置信息;
根据所述位置信息在所述数据表中提取相应的数据作为查询结果。
优选地,将获取的记录标识写入缓存中的步骤包括:
判断各个记录标识对应的数据与所述查询条件的匹配度;
按照匹配度从高到低的顺序依次排列各个记录标识;
将排列后的各个记录标识写入缓存中。
优选地,所述在接收到数据查询条件时,获取各个数据表中满足所述查询条件的数据对应的记录标识的步骤之前,所述数据查询方法包括:
将数据库中的数据按照预设的数量进行分表,以生成各个数据表;
根据各个数据表的生成时间依次排列各个数据表。
优选地,在接收到数据查询条件时,获取各个数据表中满足所述查询条件的数据对应的记录标识的步骤之后,所述数据查询方法还包括:
将获取到的各个记录标识与对应的查询条件关联存储;
所述数据查询方法还包括步骤:
在接收到所述查询条件时,且存储有记录标识与查询条件之间的关联关系时,将所述查询条件对应的记录标识写入缓存中。
此外,为实现上述目的,本发明还提出一种数据查询装置,所述数据查询装置包括:
获取模块,用于在接收到数据查询条件时,获取各个数据表中满足所述查询条件的数据对应的记录标识;
第一处理模块,用于将获取的记录标识写入缓存中;
确定模块,用于在接收到基于所述记录标识输入的选择指令时,确定所述选择指令对应的记录标识在所述数据表中的位置信息;
第二处理模块,用于根据所述位置信息在所述数据表中提取相应的数据作为查询结果。
优选地,所述第一处理模块包括:
判断单元,用于判断各个记录标识对应的数据与所述查询条件的匹配度;
排列单元,用于按照匹配度从高到低的顺序依次排列各个记录标识;
处理单元,用于将排列后的各个记录标识写入缓存中。
优选地,所述数据查询装置还包括:
分表模块,用于将数据库中的数据按照预设的数量进行分表,以生成各个数据表;
排列模块,用于根据各个数据表的生成时间依次排列各个数据表。
优选地,所述数据查询装置还包括:
存储模块,用于将获取到的各个记录标识与对应的查询条件关联存储;
所述第一处理模块,还用于在接收到所述查询条件时,且存储有记录标识与查询条件之间的关联关系时,将所述查询条件对应的记录标识写入缓存中。
本发明提出的数据查询方法和装置,在数据查询过程中,将满足查询条件的记录标识写入缓存中,并根据用户的选择指令在缓存中提取相应的数据作为查询结果以实现数据的查询,而不是在查询数据时,将满足查询条件的数据全部写入缓存,再基于用户的选择从缓存的数据提取出相应的数据作为查询结果,通过缓存数据的记录标识,减小了数据查询时所占用的存储资源,提高了数据查询的速度。
附图说明
图1为本发明数据查询方法第一实施例的流程示意图;
图2为本发明将获取的记录标识缓存写入缓存中第一实施例的流程示意图;
图3为本发明数据查询方法第四实施例的流程示意图;
图4为本发明数据查询装置第一实施例的功能模块示意图;
图5为图4中第一处理模块的细化功能模块示意图;
图6为本发明数据查询装置第四实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
现在将参考附图描述实现本发明各个实施例的移动终端。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,“模块”与“部件”可以混合地使用。
移动终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。下面,假设终端是移动终端。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
参照图1,本发明数据查询方法第一实施例的流程示意图。
本实施例提出一种数据查询方法,所述数据查询方法包括:
步骤S10,在接收到数据查询条件时,获取各个数据表中满足所述查询条件的数据对应的记录标识;
在本实施例中,优选将数据库中的所有数据进行分表以生成各个数据表,使得数据库中的数据得到有序归类,并且在查询数据时,各个数据表同时进行数据的查询,从而提高了数据的查询速度,所述各个数据表分表的具体实施方式在下文实施例中详述。
在本实施例中,在接收到数据查询条件时,先分析所述数据查询条件对应的信息,并通过所述数据查询条件遍历查询数据库中各个数据表的数据,也就是将数据查询条件对应的信息与数据库中各个数据表的数据进行比对,若查询到各个数据表中存在符合所述数据查询条件的数据时,获取满足查询条件的数据对应的记录标识。在本实施例中,所述各个数据表中的数据符合所述数据查询条件的数据的条件优选为,当各个数据表中的数据与所述查询条件对应的信息的相似度达到预设阈值时,所述匹配度的确定方式优选为:各个数据中与所述查询条件对应的信息相同的字段占总字段的比例达到预设比例(如80%)时,认为数据与所述查询条件对应的信息相似,并根据数据与所述查询条件对应的信息的相似度达到预设阈值,可认为各个数据表中的数据符合所述数据查询条件,所述阈值可根据数据的内存值定义:a、当数据库中的数据是字符串或者大数据时,即存储值较大的数据时,可将预设阈值设置为50%;b、当数据库中的数据是字符或小数据时,即存储值较小的数据时,此时可将预设阈值设置为80%。可以理解的是,所述预设阈值也可根据具体需要设置为其它的值。
在本实施例中,所述记录标识优选包括:各个数据表中满足查询条件的记录条数分别为24条和10条记录,或者是个数据表中满足查询条件的数据标识信息排列为1-24的记录和25-35的记录。
步骤S20,将获取的记录标识写入缓存中;
在本实施例中,将获取的记录标识缓存写入缓存中,可以将获取的记录标识归纳起来,并进一步地,按照预设的方式排列所述记录标识,如按照记录标识对应的数据的先后时间排、按照记录标识对应的数据表的时间先后顺序排列,或者按照记录标识对应的数据与查询条件的匹配度排列,并将排列后的记录标识缓存写入缓存中,以便于数据的快速查询定位。
步骤S30,在接收到基于所述记录表输入的选择指令时,确定所述选择指令对应的记录标识在所述数据表中的位置信息;
在本实施例中,所述步骤S30的实施方式包括:
1)方式一,当所述选择指令为具体的数据条目时,如所述选择指令对应的记录标识为第10条记录标识时,根据所述选择指令,即可定位到所述数据表中的位置。
2)方式二,当所述选择指令为预设的数据数目范围时,如所述选择指令对应的记录标识为10-20的记录标识时,根据所述选择指令,即可定位到数据表中的起止位置。
3)方式三,当所述数据选择指令预设的查询信息,如:数据单页显示数为10,要显示的页码为13时,所述根据单页显示的记录数和页码,计算出记录表中待查询记录标识的起始位置,并根据起始位置求得起始分表,然后从起始的分表开始进行具体的查询和排序,确定取出单页的记录,例如,一个数据库中包括5个数据表,5个数据表满足查询条件的记录标识分别是表A为100、表B为0、表C为23、表D为32和表E为5,则根据所述选择指令,确定出起始记录标识为121,求得起始表为分表3,起始位置为21,并根据所述起始位置,确定待取出数据的数据表为表B和表C,取出的数据为10条数据。
步骤S40,根据所述位置信息在所述数据表中提取相应的数据作为查询结果。
在本实施例中,优选方案为在接收到移动终端发送的数据查询条件时,服务器获取各个数据表中满足所述查询条件的数据对应的记录标识,并将获取的记录标识写入缓存中;在接收到所述记录标识的选择指令时,确定所述选择指令对应的记录标识在所述数据表中的位置信息;根据所述位置信息在所述数据表中提取相应的数据作为查询结果,并发送给终端,以实现服务器与移动终端的交互过程,本领域技术人员可以理解的是,也跟根据具体需要设置为其他的交互方式,如移动终端与外界的交互。
本实施例提出的数据查询方法,在数据查询过程中,将满足查询条件的记录标识写入缓存中,并根据用户的选择指令在缓存中提取相应的数据作为查询结果以实现数据的查询,而不是在查询数据时,将满足查询条件的数据全部写入缓存,用户再基于缓存的数据提取出相应的数据以实现数据的查询,通过缓存数据的记录标识减小了数据查询时所占用的存储资源,提高了数据查询的速度。
进一步地,为了提高数据查询的准确性,参照图2,基于第一实施例提出本发明数据查询方法第二实施例,在本实施例中,所述步骤S20包括:
步骤S21,判断各个记录标识对应的数据与所述查询条件的匹配度;
步骤S22,按照匹配度从高到低的顺序依次排列各个记录标识;
步骤S23,将排列后的各个记录标识写入缓存中。
在本实施例中,优选根据各个记录标识对应的数据与所述查询条件的匹配度排列各个记录标识,并按照匹配度从高到低的顺序进行排列,有利于查询数据时,与用户要查询的条件相近的记录标识优先排列在前面,更有助于快速的查询到数据。
进一步地,为了提高数据查询的准确性,基于第一实施例提出本发明数据查询方法第三实施例,在本实施例中,所述步骤S20包括:
步骤A,提取记录标识对应的数据的参数;
步骤B,按照提取的参数的预设顺序排列获取到的各个记录标识;
步骤C,将排列后的各个记录标识写入缓存中。
在本实施例中,所述按照提取的参数的预设顺序排列获取到的各个记录标识的方式包括:
1)方式一,按照各个记录标识对应的数据内存值从大到小的顺序进行排列,即将数据内存值大的记录标识排在最开始位置,并按照内存值从大到小依次排列其它各个记录标识。
2)方式二,按照各个记录标识对应的数据文件名首字母的先后顺序进行排列,即将数据文件名的首字母为A的记录标识排在最开始位置,并按照首字母的顺序依次排列其它各个记录标识。
3)方式三、按照各个数据表的先后顺序先排列各个数据表中对应的记录标识,如数据表A的记录标识排在第一位,数据表B的记录标识排在第二位,进一步地,各个数据表中的各条记录标识可按照数据生成时间的先后顺序依次排列,如数据表A有20条记录标识,每条记录标识对应的数据时间有生成时间的先后顺序,则可根据各个数据的时间先后顺序依次排列各个记录标识。
以上所列举出的三种按照提取的参数的预设顺序排列获取到的各个记录标识的方式仅仅为示例性的,本领域技术人员利用本发明的技术思想,根据其具体需求所提出的其他各种按照提取的参数的预设顺序排列获取到的各个记录标识的方式均在本发明的保护范围内,在此不进行一一穷举。
本领域技术人员可以理解的是,按照预设的顺序排列获取到的各个记录标识,并将排列的各个记录标识写入缓存中,有助于查询数据时,有条理性的定位到相应的位置,而不是各个记录标识中随机排布而无法准确定位到待查询数据的位置,提高了数据查询定位的准确性。
进一步地,为提高数据查询的灵活性,参照图3,基于第一实施例提出本发明数据查询方法第四实施例,在本实施例中,所述步骤S10之前,所述数据查询方法包括:
步骤S50,将数据库中的数据按照预设的数量进行分表,以生成各个数据表;
在数据查询过程中,随着数据量的不断增大,数据查询速度越来越慢,且一次查询操作所耗费的内存资源也越来越大,当数据量达到一定的量时,经常会出现数据溢出的异常,因此,在本实施例中,优选在数据库在写入数据时,将数据按照一定的量进行分表,比如每10万个数据分成一个数据表,以生成各个数据表,可以理解的是,也可根据具体需要划分为数据页。
步骤S60,根据各个数据表的生成时间依次排列各个数据表。
在本实施例中,为防止数据分表时,出现数据溢出的异常情况,优选按照各个数据表的生成时间依次排列各个数据表,且控制各个数据表的起始时间不一样,即让每个数据表的起始时间不交叠。进一步地,本实施例中的预设时间顺序可包含时间顺序和时间逆序,即将数据库中的各个数据表按照时间从大到小或者从小到大的顺序进行排列。
进一步地,为提高数据查询的灵活性,在接收到数据查询条件时,获取各个数据表中满足所述查询条件的数据对应的记录标识的步骤之后,所述数据查询方法还包括:
将获取到的各个记录标识与对应的查询条件关联存储;
所述数据查询方法还包括步骤:
在接收到所述查询条件时,且存储有记录标识与查询条件之间的关联关系时,将所述查询条件对应的记录标识写入缓存中。
在本实施例中,将获取到的各个记录标识与对应的查询条件关联存储,以便于再次输入同样的数据查询条件,且数据库中没有新增的数据时,根据所述关联存储的关系,即可直接在存储的记录中获取存储的记录标识,并直接将所述记录标识写入缓存中显示,使得数据查询更加方便。
本发明进一步提供一种数据查询装置。
参照图4,图4为本发明数据查询装置第一实施例的功能模块示意图。
需要强调的是,对本领域的技术人员来说,图4所示功能模块图仅仅是一个较佳实施例的示例图,本领域的技术人员围绕图4所示的数据查询装置的功能模块,可轻易进行新的功能模块的补充;各功能模块的名称是自定义名称,仅用于辅助理解该数据查询装置的各个程序功能块,不用于限定本发明的技术方案,本发明技术方案的核心是,各自定义名称的功能模块所要达成的功能。
本实施例提出一种数据查询装置,所述数据查询装置包括:
获取模块10,用于在接收到数据查询条件时,获取各个数据表中满足所述查询条件的数据对应的记录标识;
在本实施例中,优选将数据库中的所有数据进行分表以生成各个数据表,使得数据库中的数据得到有序归类,并且在查询数据时,各个数据表同时进行数据的查询,从而提高了数据的查询速度,所述各个数据表分表的具体实施方式在下文实施例中详述。
在本实施例中,在接收到数据查询条件时,先分析所述数据查询条件对应的信息,并通过所述数据查询条件遍历查询数据库中各个数据表的数据,也就是将数据查询条件对应的信息与数据库中各个数据表的数据进行比对,若查询到各个数据表中存在符合所述数据查询条件的数据时,所述获取模块10获取满足查询条件的数据对应的记录标识。在本实施例中,所述各个数据表中的数据符合所述数据查询条件的数据的条件优选为,当各个数据表中的数据与所述查询条件对应的信息的相似度达到预设阈值时,所述匹配度的确定方式优选为:各个数据中与所述查询条件对应的信息相同的字段占总字段的比例达到预设比例(如80%)时,认为数据与所述查询条件对应的信息相似,并根据数据与所述查询条件对应的信息的相似度达到预设阈值,可认为各个数据表中的数据符合所述数据查询条件,所述阈值可根据数据的内存值定义:a、当数据库中的数据是字符串或者大数据时,即存储值较大的数据时,可将预设阈值设置为50%;b、当数据库中的数据是字符或小数据时,即存储值较小的数据时,此时可将预设阈值设置为80%。可以理解的是,所述预设阈值也可根据具体需要设置为其它的值。
在本实施例中,所述记录标识优选包括:各个数据表中满足查询条件的记录条数分别为24条和10条记录,或者是个数据表中满足查询条件的数据标识信息排列为1-24的记录和25-35的记录。
第一处理模块20,用于将获取的记录标识写入缓存中;
在本实施例中,所述第一处理模块20将所述获取模块10获取的记录标识缓存写入缓存中,可以将获取的记录标识归纳起来,并进一步地,按照预设的方式排列所述记录标识,如按照记录标识对应的数据的先后时间排、按照记录标识对应的数据表的时间先后顺序排列,或者按照记录标识对应的数据与查询条件的匹配度排列,并且所述第一处理模块20将排列后的记录标识缓存写入缓存中,以便于数据的快速查询定位。
确定模块30,用于在接收到基于所述记录标识输入的选择指令时,确定所述选择指令对应的记录标识在所述数据表中的位置信息;
在本实施例中,所述确定模块30确定所述选择指令对应的记录标识在所述记录表的位置的实施方式包括:
1)方式一,当所述选择指令为具体的数据条目时,如所述选择指令对应的记录标识为第10条记录标识时,所述确定模块30根据所述选择指令,即可定位到所述数据表中的位置。
2)方式二,当所述选择指令为预设的数据数目范围时,如所述选择指令对应的记录标识为10-20的记录标识时,所述确定模块30根据所述选择指令,即可定位到数据表中的起止位置。
3)方式三,当所述数据选择指令预设的查询信息,如:数据单页显示数为10,要显示的页码为13时,所述根据单页显示的记录数和页码,计算出记录表中待查询记录标识的起始位置,并根据起始位置求得起始分表,然后从起始的分表开始进行具体的查询和排序,以供所述确定模块30确定取出单页的记录,例如,一个数据库中包括5个数据表,5个数据表满足查询条件的记录标识分别是表A为100、表B为0、表C为23、表D为32和表E为5,则所述确定模块30根据所述选择指令,确定出起始记录标识为121,求得起始表为分表3,起始位置为21,并根据所述起始位置,确定待取出数据的数据表为表B和表C,取出的数据为10条数据。
第二处理模块40,用于根据所述位置信息在所述数据表中提取相应的数据作为查询结果。
在本实施例中,优选方案为在接收到移动终端发送的数据查询条件时,服务器获取各个数据表中满足所述查询条件的数据对应的记录标识,并将获取的记录标识写入缓存中;在接收到所述记录标识的选择指令时,确定所述选择指令对应的记录标识在所述数据表中的位置信息;根据所述位置信息在所述数据表中提取相应的数据作为查询结果,并发送给终端,以实现服务器与移动终端的交互过程,本领域技术人员可以理解的是,也跟根据具体需要设置为其他的交互方式,如移动终端与外界的交互。
本实施例提出的数据查询装置,在数据查询过程中,将满足查询条件的记录标识写入缓存中,并根据用户的选择指令在缓存中提取相应的数据作为查询结果以实现数据的查询,而不是在查询数据时,将满足查询条件的数据全部写入缓存,用户再基于缓存的数据提取出相应的数据以实现数据的查询,通过缓存数据的记录标识减小了数据查询时所占用的存储资源,提高了数据查询的速度。
进一步地,为了提高数据查询的准确性,参照图5,基于第一实施例提出本发明数据查询装置第二实施例,在本实施例中,所述第一处理模块20包括:
判断单元21,用于判断各个记录标识对应的数据与所述查询条件的匹配度;
排列单元22,用于按照匹配度从高到低的顺序依次排列各个记录标识;
处理单元23,用于将排列后的各个记录标识写入缓存中。
在本实施例中,优选排列单元22根据各个记录标识对应的数据与所述查询条件的匹配度排列各个记录标识,并按照匹配度从高到低的顺序进行排列,有利于查询数据时,与用户要查询的条件相近的记录标识优先排列在前面,更有助于快速的查询到。
进一步地,为了提高数据查询的准确性,基于第一实施例提出本发明数据查询方法第三实施例,在本实施例中,所述第一处理模块20还包括:
提取单元,用于提取记录标识对应的数据的参数;
所述排列单元22,还用于按照提取的参数的预设顺序排列获取到的各个记录标识;
所述处理单元23,还用于将排列后的各个记录标识缓存写入记录表中
在本实施例中,所述排列单元22按照提取的参数的预设顺序排列获取到的各个记录标识的方式包括:
1)方式一,按照各个记录标识对应的数据内存值从大到小的顺序进行排列,即所述排列单元22将数据内存值大的记录标识排在最开始位置,并按照内存值从大到依次排列其它各个记录标识。
2)方式二,按照各个记录标识对应的数据文件名首字母的先后顺序进行排列,即所述排列单元22将数据文件名的首字母为A的记录标识排在最开始位置,并按照首字母的顺序依次排列其它各个记录标识。
3)方式三、按照各个数据表的先后顺序先排列各个数据表中对应的记录标识,如数据表A的记录标识排在第一位,数据表B的记录标识排在第二位,进一步地,各个数据表中的各条记录标识也按照时间的先后顺序依次排列,如数据表A有20条记录标识,每条记录标识对应的数据时间有时间先后顺序,则可根据各个数据的时间先后顺序依次排列各个记录标识。
以上所列举出的三种按照提取的参数的预设顺序排列获取到的各个记录标识仅仅为示例性的,本领域技术人员利用本发明的技术思想,根据其具体需求所提出的其他各种按照提取的参数的预设顺序排列获取到的各个记录标识均在本发明的保护范围内,在此不进行一一穷举。
本领域技术人员可以理解的是,按照预设的顺序排列获取到的各个记录标识,并将排列的各个记录标识写入缓存中,有助于查询数据时,有条理性的定位到相应的位置,而不是各个记录标识中随机排布而无法准确定位到待查询数据的位置,提高了数据查询定位的准确性。
进一步地,为提高数据查询的灵活性,参照图6,基于第一实施例提出本发明数据查询装置第四实施例,在本实施例中,所述数据查询装置还包括:
分表模块50,用于将数据库中的数据按照预设的数量进行分表,以生成各个数据表;
在数据查询过程中,随着数据量的不断增大,数据查询速度越来越慢,且一次查询操作所耗费的内存资源也越来越大,当数据量达到一定的量时,经常会出现数据溢出的异常,因此,在本实施例中,优选在数据库在写入数据时,所述分表模块50将数据按照一定的量进行分表,比如每10万个数据分成一个数据表,以生成各个数据表,可以理解的是,也可根据具体需要划分为数据页。
排列模块60,用于根据各个数据表的生成时间依次排列各个数据表。
在本实施例中,为防止数据分表时,出现数据溢出的异常情况,优选所述排列模块60按照各个数据表的生成时间依次排列各个数据表,且控制各个数据表的起始时间不一样,即让每个数据表的起始时间不交叠。进一步地,本实施例中的预设时间顺序可包含时间顺序和时间逆序,即将数据库中的各个数据表按照时间从大到小或者从小到大的顺序进行排列。
进一步地,为提高数据查询的灵活性,所述数据查询装置还包括:
存储模块,用于将获取到的各个记录标识与对应的查询条件关联存储;
所述第一处理模块20,还用于在接收到所述查询条件时,且存储有记录标识与查询条件之间的关联关系时,将所述查询条件对应的记录标识写入缓存中。
在本实施例中,所述存储模块将所述获取模块10获取到的各个记录标识与对应的查询条件关联存储,以便于再次输入同样的数据查询条件,且数据库中没有新增的数据时,所述第一处理模块20根据所述关联存储的关系,即可直接在存储的记录中获取存储的记录标识,并将所述记录标识写入缓存中,使得数据查询更加方便。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (8)

1.一种数据查询方法,其特征在于,所述数据查询方法包括以下步骤:
在接收到数据查询条件时,获取各个数据表中满足所述查询条件的数据对应的记录标识;
将获取的记录标识写入缓存中;
在接收到基于所述记录标识输入的选择指令时,确定所述选择指令对应的记录标识在所述数据表中的位置信息;
根据所述位置信息在所述数据表中提取相应的数据作为查询结果。
2.如权利要求1所述的数据查询方法,其特征在于,将获取的记录标识写入缓存中的步骤包括:
判断各个记录标识对应的数据与所述查询条件的匹配度;
按照匹配度从高到低的顺序依次排列各个记录标识;
将排列后的各个记录标识写入缓存中。
3.如权利要求1所述的数据查询方法,其特征在于,所述在接收到数据查询条件时,获取各个数据表中满足所述查询条件的数据对应的记录标识的步骤之前,所述数据查询方法包括:
将数据库中的数据按照预设的数量进行分表,以生成各个数据表;
根据各个数据表的生成时间依次排列各个数据表。
4.如权利要求1-3任一项所述的数据查询方法,其特征在于,在接收到数据查询条件时,获取各个数据表中满足所述查询条件的数据对应的记录标识的步骤之后,所述数据查询方法还包括:
将获取到的各个记录标识与对应的查询条件关联存储;
所述数据查询方法还包括步骤:
在接收到所述查询条件时,且存储有记录标识与查询条件之间的关联关系时,将所述查询条件对应的记录标识写入缓存中。
5.一种数据查询装置,其特征在于,所述数据查询装置包括:
获取模块,用于在接收到数据查询条件时,获取各个数据表中满足所述查询条件的数据对应的记录标识;
第一处理模块,用于将获取的记录标识写入缓存中;
确定模块,用于在接收到基于所述记录标识输入的选择指令时,确定所述选择指令对应的记录标识在所述数据表中的位置信息;
第二处理模块,用于根据所述位置信息在所述数据表中提取相应的数据作为查询结果。
6.如权利要求5所述的数据查询装置,其特征在于,所述第一处理模块包括:
判断单元,用于判断各个记录标识对应的数据与所述查询条件的匹配度;
排列单元,用于按照匹配度从高到低的顺序依次排列各个记录标识;
处理单元,用于将排列后的各个记录标识写入缓存中。
7.如权利要求5所述的数据查询装置,其特征在于,所述数据查询装置还包括:
分表模块,用于将数据库中的数据按照预设的数量进行分表,以生成各个数据表;
排列模块,用于根据各个数据表的生成时间依次排列各个数据表。
8.如权利要求5-7任一项所述的数据查询装置,其特征在于,所述数据查询装置还包括:
存储模块,用于将获取到的各个记录标识与对应的查询条件关联存储;
所述第一处理模块,还用于在接收到所述查询条件时,且存储有记录标识与查询条件之间的关联关系时,将所述查询条件对应的记录标识写入缓存中。
CN201510354984.8A 2015-06-24 2015-06-24 数据查询方法和装置 Pending CN104915435A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510354984.8A CN104915435A (zh) 2015-06-24 2015-06-24 数据查询方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510354984.8A CN104915435A (zh) 2015-06-24 2015-06-24 数据查询方法和装置

Publications (1)

Publication Number Publication Date
CN104915435A true CN104915435A (zh) 2015-09-16

Family

ID=54084498

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510354984.8A Pending CN104915435A (zh) 2015-06-24 2015-06-24 数据查询方法和装置

Country Status (1)

Country Link
CN (1) CN104915435A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106339183A (zh) * 2016-08-29 2017-01-18 东软集团股份有限公司 数据检索的方法及服务器
CN107391749A (zh) * 2017-08-15 2017-11-24 杭州安恒信息技术有限公司 一种查询分表数据实现瀑布流的方法
CN111368006A (zh) * 2020-03-31 2020-07-03 中国工商银行股份有限公司 海量数据带条件集中抽取系统及方法
CN111597235A (zh) * 2020-05-21 2020-08-28 北京学之途网络科技有限公司 数据处理方法、装置和电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101158976A (zh) * 2007-11-21 2008-04-09 金蝶软件(中国)有限公司 一种数据库记录查询预处理的方法和系统
CN101216840A (zh) * 2008-01-21 2008-07-09 金蝶软件(中国)有限公司 一种数据查询方法和一种数据查询系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101158976A (zh) * 2007-11-21 2008-04-09 金蝶软件(中国)有限公司 一种数据库记录查询预处理的方法和系统
CN101216840A (zh) * 2008-01-21 2008-07-09 金蝶软件(中国)有限公司 一种数据查询方法和一种数据查询系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
尚展垒 等: ""分裂大表技术在查询中的应用"", 《科技信息:科学教研》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106339183A (zh) * 2016-08-29 2017-01-18 东软集团股份有限公司 数据检索的方法及服务器
CN106339183B (zh) * 2016-08-29 2020-02-11 东软集团股份有限公司 数据检索的方法及服务器
CN107391749A (zh) * 2017-08-15 2017-11-24 杭州安恒信息技术有限公司 一种查询分表数据实现瀑布流的方法
CN111368006A (zh) * 2020-03-31 2020-07-03 中国工商银行股份有限公司 海量数据带条件集中抽取系统及方法
CN111368006B (zh) * 2020-03-31 2023-03-17 中国工商银行股份有限公司 海量数据带条件集中抽取系统及方法
CN111597235A (zh) * 2020-05-21 2020-08-28 北京学之途网络科技有限公司 数据处理方法、装置和电子设备
CN111597235B (zh) * 2020-05-21 2024-03-08 北京明略昭辉科技有限公司 数据处理方法、装置和电子设备

Similar Documents

Publication Publication Date Title
CN102253936B (zh) 记录用户访问商品信息的方法及搜索方法和服务器
CN102567329B (zh) 一种数据查询方法及系统
US20150278359A1 (en) Method and apparatus for generating a recommendation page
CN103136228A (zh) 一种图片搜索方法以及图片搜索装置
CN106326243B (zh) 一种数据处理方法及装置
CN104077407A (zh) 一种智能数据搜索系统及方法
CN104915435A (zh) 数据查询方法和装置
CN108038135A (zh) 电子装置、多表关联查询的方法及存储介质
CN103034680A (zh) 针对终端设备的数据交互方法及装置
CN110457346A (zh) 数据查询方法、装置及计算机可读存储介质
CN102750366A (zh) 基于自然交互输入的视频搜索系统及方法和视频搜索服务器
CN104778271A (zh) 一种视频数据的缓存方法及装置
CN103365928A (zh) 一种信息推荐方法及装置
CN105550206A (zh) 结构化查询语句的版本控制方法及装置
CN108427700B (zh) 电子装置、用户分群的方法及计算机可读存储介质
CN104199977A (zh) 一种基于数据库中数据创建信息搜索的方法
CN104102704A (zh) 系统控件展示方法和装置
CN104866425A (zh) 一种数据库压力测试的方法
CN110647577A (zh) 数据立方体的分区方法、装置、计算机设备及存储介质
CN111858581B (zh) 一种分页查询的方法、装置、存储介质和电子设备
CN108228802B (zh) 一种输入联想的推荐方法及装置
CN110737662A (zh) 一种数据分析方法、装置、服务器及计算机存储介质
CN107908724B (zh) 一种数据模型匹配方法、装置、设备及存储介质
CN114372071A (zh) 一种表数据删除方法、装置、计算机设备及存储介质
CN105991400B (zh) 一种群组搜索方法及其设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20150916

RJ01 Rejection of invention patent application after publication