一种数据查询的方法和装置的制造方法
【专利摘要】本发明公开了一种数据查询的方法和装置,属于互联网技术领域。所述方法包括:接收数据查询指令,其中,所述数据查询指令中携带有目标索引信息;计算所述目标索引信息的特征值,在预先存储的特征值与存储位置的对应关系中,查询所述目标索引信息的特征值对应的目标存储位置,其中,所述对应关系中的各对应关系项按照特征值的大小顺序排列;根据所述目标存储位置,在数据库中,获取所述目标索引信息对应的业务数据。采用本发明,可以提高数据查询的效率。
【专利说明】
一种数据查询的方法和装置
技术领域
[0001] 本发明涉及互联网技术领域,特别涉及一种数据查询的方法和装置。
【背景技术】
[0002] 为实现某种业务需要,服务器可以根据索引信息,查询预先存储的业务数据表,从 中获取相应的业务数据,例如,用户第一次使用YY语音时,可能是通过某在线渠道(微博、百 度广告等)跳转至YY语音,当用户第一次通过在线渠道跳转至YY语音进行注册时,服务器可 以将账户标识与在线渠道对应地存储到业务数据表中,在业务数据表中,账户标识作为在 线渠道的索引信息,为统计每种渠道对应的充值情况,当用户进行充值时,服务器可以根据 账户标识查询上述业务数据表,以获取账户标识对应的在线渠道,进而,基于用户的充值数 额,对该在线渠道的充值总额进行累加,从而,可以实现统计各在线渠道对应的充值情况。
[0003] 目前,服务器根据目标索引信息查询预先存储的业务数据表时,一般是遍历业务 数据表中存储的索引信息,直至遍历到目标索引信息为止,进而,在业务数据表中获取目标 索引信息对应的业务数据。
[0004] 在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
[0005] 基于上述处理方式,一般业务数据表存储的索引信息会比较多,每当查询业务数 据表时,需要对业务数据表的索引信息进行遍历,从而,导致数据查询效率较低。
【发明内容】
[0006] 为了解决现有技术的问题,本发明实施例提供了一种数据查询的方法和装置。所 述技术方案如下:
[0007] 第一方面,提供了 一种数据查询的方法,所述方法包括:
[0008] 接收数据查询指令,其中,所述数据查询指令中携带有目标索引信息;
[0009] 计算所述目标索引信息的特征值,在预先存储的特征值与存储位置的对应关系 中,查询所述目标索引信息的特征值对应的目标存储位置,其中,所述对应关系中的各对应 关系项按照特征值的大小顺序排列;
[0010] 根据所述目标存储位置,在数据库中,获取所述目标索引信息对应的业务数据。
[0011] 可选的,所述存储位置为索引信息和对应的业务数据在所述数据库预设的业务数 据表中的位置;
[0012] 所述根据所述目标存储位置,在数据库中,获取所述目标索引信息对应的数据,包 括:
[0013] 根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应的业 务数据。
[0014] 这样,可以快速找到目标索引信息在业务数据表中的位置,进而,可以快速获取目 标索引信息对应的业务数据,该种方法可以应用于流式运算中,即可以实时对接收到的数 据流进行处理,避免数据积压。
[0015] 可选的,所述方法还包括:
[0016] 接收第一业务数据,其中,所述第一业务数据包含有多个属性标签对应的业务子 数据;
[0017] 在所述第一业务数据中,获取预设属性标签对应的业务子数据,作为第一索引信 息;
[0018] 将所述第一索引信息和所述第一业务数据,对应存储到所述业务数据表中;
[0019] 获取所述第一索引信息和所述第一业务数据在所述业务数据表中的位置,并计算 所述第一索引信息的特征值;
[0020] 将所述第一索引信息和所述第一业务数据在所述业务数据表中的位置,与所述第 一索引信息的特征值,存储到所述特征值与存储位置的对应关系中。
[0021 ]这样,可以便于查询业务数据表时,快速查找到目标索引信息对应的目标存储位 置和业务数据。
[0022] 可选的,所述数据查询指令中还携带有目标属性标签;
[0023] 所述根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应 的业务数据,包括:
[0024] 根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应的业 务数据中所述目标属性标签对应的业务子数据。
[0025]可选的,所述特征值为哈希值。
[0026] 第二方面,提供了 一种数据查询的装置,所述装置包括:
[0027] 第一接收模块,用于接收数据查询指令,其中,所述数据查询指令中携带有目标索 引信息;
[0028] 查询模块,用于计算所述目标索引信息的特征值,在预先存储的特征值与存储位 置的对应关系中,查询所述目标索引信息的特征值对应的目标存储位置,其中,所述对应关 系中的各对应关系项按照特征值的大小顺序排列;
[0029] 第一获取模块,用于根据所述目标存储位置,在数据库中,获取所述目标索引信息 对应的业务数据。
[0030] 可选的,所述存储位置为索引信息和对应的业务数据在所述数据库预设的业务数 据表中的位置;
[0031] 所述第一获取模块,用于:
[0032] 根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应的业 务数据。
[0033] 可选的,所述装置还包括:
[0034] 第二接收模块,用于接收第一业务数据,其中,所述第一业务数据包含有多个属性 标签对应的业务子数据;
[0035] 第二获取模块,用于在所述第一业务数据中,获取预设属性标签对应的业务子数 据,作为第一索引信息;
[0036] 第一存储模块,用于将所述第一索引信息和所述第一业务数据,对应存储到所述 业务数据表中;
[0037] 计算模块,用于获取所述第一索引信息和所述第一业务数据在所述业务数据表中 的位置,并计算所述第一索引信息的特征值;
[0038]第二存储模块,用于将所述第一索引信息和所述第一业务数据在所述业务数据表 中的位置,与所述第一索引信息的特征值,存储到所述特征值与存储位置的对应关系中。 [0039]可选的,所述数据查询指令中还携带有目标属性标签;
[0040] 所述第一获取模块,用于:
[0041] 根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应的业 务数据中所述目标属性标签对应的业务子数据。
[0042]可选的,所述特征值为哈希值。
[0043] 本发明实施例提供的技术方案带来的有益效果是:
[0044] 本发明实施例中,服务器根据目标索引信息在业务数据表中查询业务数据时,首 先可以计算目标索引信息的特征值,然后在按照特征值的大小顺序进行排列的各特征值与 存储位置的对应关系中,快速获取目标索引信息在业务数据表中的目标存储位置,进而,可 以在业务数据表的相应位置获取目标索引信息对应的业务数据。这样,服务器在查询业务 数据表中的业务数据时,无需遍历业务数据表,可以根据目标索引信息的特征值的大小,在 上述对应关系中,快速确定目标索引信息的存储位置,从而,可以提高数据查询的效率。
【附图说明】
[0045] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于 本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他 的附图。
[0046] 图1是本发明实施例提供的一种数据查询的方法流程图;
[0047] 图2是本发明实施例提供的一种建立业务数据表的方法流程图;
[0048]图3是本发明实施例提供的一种交互示意图;
[0049] 图4是本发明实施例提供的一种数据查询的装置结构示意图;
[0050] 图5是本发明实施例提供的一种数据查询的装置结构示意图;
[0051 ]图6是本发明实施例提供的一种服务器的结构示意图。
【具体实施方式】
[0052]本发明实施例提供了一种数据查询的方法,该方法的执行主体为服务器。其中,该 服务器可以是具有统计业务数据功能的服务器,也可以是产生某业务数据的应用程序的后 台服务器,比如,YY语音的后台服务器。服务器中可以设置有处理器、存储器,处理器可以用 于获取目标索引信息对应的业务数据的相关处理,存储器可以用于存储下述处理过程中需 要和产生的数据。还可以设置有收发器,收发器可以用于接收和发送数据。
[0053]下面将结合【具体实施方式】,对图1所示的处理流程进行详细的说明,内容可以如 下:
[0054]步骤101,接收数据查询指令,其中,数据查询指令中携带有目标索引信息。
[0055]在实施中,服务器可以具有统计业务数据的功能,服务器为获取某种业务的统计 情况,可以在接收到该业务数据时,对该业务数据进行统计处理,例如,服务器可以统计在 线渠道对应的充值情况,每当服务器接收到终端发送的携带有账户标识和充值金额的充值 消息时,可以根据充值消息中携带的账户标识,在预设的对应存储有账户标识与在线渠道 的业务数据表中,查询充值消息中携带的账户标识对应的在线渠道(比如,在线渠道可以是 微博),进而,基于充值消息中携带的充值金额,对查询到的在线渠道对应的充值金额进行 累加。下面将对服务器接收到业务数据时查询预设数据表的具体处理进行详细的说明。当 服务器接收到业务数据时,可以触发服务器接收数据查询指令,其中,数据查询指令中可以 携带有服务器将要获取的业务数据对应的索引信息(即目标索引信息),目标索引信息可以 是终端发送的业务数据中的业务子数据,比如,目标索引信息可以是上述举例中的账户标 识等。
[0056]步骤102,计算目标索引信息的特征值,在预先存储的特征值与存储位置的对应关 系中,查询目标索引信息的特征值对应的目标存储位置,其中,对应关系中的各对应关系项 按照特征值的大小顺序排列。
[0057]其中,特征值可以用于表征数据的某种特性,可以通过某种预设算法得到,比如, 可以是哈希值。存储位置可以是业务数据在数据库中的物理存储地址。
[0058]在实施中,服务器中可以预先存储有特征值与存储位置的对应关系,如表1所示, 其中,预先存储的对应关系中的特征值可以是索引信息的特征值,且对应关系中的各对应 关系项按照特征值的大小顺序排列,例如,以上述对应存储有账户标识与在线渠道的业务 数据表为例,服务器中可以预先存储有业务数据表中的各账户标识的特征值与存储位置的 对应关系。服务器接收到目标索引信息后,可以计算目标索引信息的特征值,基于目标索引 信息的特征值的大小,在按照特征值的大小顺序进行排列的各特征值与存储位置的对应关 系中,查找目标索引信息,进而,获取目标索引信息对应的目标存储位置。例如,计算出的目 标索引信息的特征值为2,服务器可以根据特征值2的大小,在如表1所示的对应关系中,找 到特征值2,进而,获取特征值2对应的存储位置B。另外,对应关系中的各对应关系项按照特 征值的大小顺序排列,当该对应关系中需要增加新的对应关系项时,可以根据新的对应关 系项中的特征值的大小,对该对应关系进行更新,其中,更新后的对应关系中的所有对应关 系项依旧是按照特征值的大小顺序排列,例如,当新增加的对应关系项中的特征值为3,对 应的存储位置为D时,可以对表1所示的对应关系进行更新,具体可以将新增加的对应关系 项增加在特征值2和5对应的关系项之间,如表2所示。当新增加的对应关系项中的特征值最 大时,可以在表1所;^的对应关系的最后增加新的对应关系项D
[0063] 步骤103,根据目标存储位置,在数据库中,获取目标索引信息对应的业务数据。
[0064] 在实施中,服务器器的数据库中可以预先对应存储有索引信息与业务数据,例如, 业务数据可以是在线渠道等。服务器查询到目标索引信息对应的目标存储位置后,可以在 数据库中的目标存储位置获取目标索引信息对应的业务数据。
[0065] 可选的,上述对应关系中的存储位置可以是索引信息和对应的业务数据在数据库 预设的业务数据表中的位置。相应的,步骤103的处理过程可以如下:根据目标存储位置,在 业务数据表中,获取目标索引信息对应的业务数据。
[0066] 在实施中,预先存储的特征值和存储位置的对应关系中的各存储位置可以是索引 信息和对应的业务数据在预设的业务数据表中的位置,其中,可以是索引信息和对应的业 务数据在预设的业务数据表中的行数,此种情况下,服务器获取到目标存储位置后,可以在 预设的业务数据表中的相应行数,确定目标索引信息,进而,获取目标索引信息对应的业务 数据。例如,以预设的数据表为对应存储有账户标识与在线渠道的业务数据表为例,服务器 获取到充值消息中携带的账户标识(即目标索引信息)对应的目标存储位置(比如,第五行) 后,可以在预设的业务数据表中的目标存储位置(第五行)找到该账户标识,进而,可以获取 该账户标识在该业务数据表中对应的在线渠道(即业务数据)。
[0067] 可选的,服务器可以获取目标索引信息对应的部分业务数据,相应的,数据查询指 令中可以携带有某种特定属性标签(可以称为目标属性标签),相应的,处理过程可以如下: 根据目标存储位置,在业务数据表中,获取目标索引信息对应的业务数据中目标属性标签 对应的业务子数据。
[0068] 在实施中,除目标索引信息外,数据查询指令中还可以携带有目标属性标签,此种 情况下,服务器确定出目标索引信息对应的目标存储位置后,可以在业务数据表的目标存 储位置处,目标索引信息对应的业务数据中,获取目标属性标签对应的业务子数据。
[0069] 本发明实施例还提供了一种建立业务数据表的方法,如图2所示,该方法可以用于 建立上述步骤101-103中所述的业务数据表,下面将结合实施方式,对图2所示的处理流程 进行详细的说明,内容可以如下:
[0070] 步骤201,接收第一业务数据,其中,第一业务数据包含有多个属性标签对应的业 务子数据。
[0071] 在实施中,为实现某种业务的统计情况,服务器可以对预设的某特定业务数据进 行存储,即当接收到预设的某特定业务数据时,可以按照某种存储原则将其存储到上述业 务数据表中,例如,以统计在线渠道对应的充值情况为例,为实现该目的,当用户第一次通 过在线渠道跳转至YY语音进行注册时,服务器可以将注册消息中携带的账户标识与在线渠 道对应地存储到业务数据表中。具体的,如图3所示,服务器可以接收终端发送的业务数据 (即第一业务数据),其中,第一业务数据可以包含有多个属性标签对应的业务子数据,且各 业务子数据按照预设的顺序进行排列,例如,属性标签可以是游戏中文名、游戏英文名、游 戏服务号等字段名,属性标签对应的业务子数据可以是该属性标签对应的具体的数据,对 应的子数据分别可以是"花千骨"、"MHUA"、"sl38"。此外,当某业务数据不包含某属性标签 对应的数据时,终端发送的业务数据中该属性标签对应的位置可以为空,例如,如果终端发 送的某业务数据中不包含游戏中文名,包含的游戏英文名为"MRXXJ",游戏服务号为 "S134",则终端发送的业务数据中的业务子数据可以分别是'' "MRXXJ"、"sl34"。
[0072]另外,第一业务数据中还可以包含有各业务子数据对应的属性标签,比如第一业 务数据可以包括"游戏中文名":"花千骨"、"游戏英文名" :"MHUA"、"游戏服务号" :"sl38", 此种情况下,无需预先设置业务数据中的属性标签的排列顺序。
[0073]步骤202,在第一业务数据中,获取预设属性标签对应的业务子数据,作为第一索 引信息。
[0074]在实施中,服务器中可以预先设置某些属性标签,当接收到第一业务数据时,服务 器可以从接收到的业务数据中获取预设属性标签对应的业务子数据,并作为第一业务数据 对应的索引信息(可以称为第一索引信息),其中,预设属性标签可以是一个,也可以是多 个,当预设标签是多个时,可以通过连接符(比如T)将多个预设属性标签对应的业务子数 据连接起来,作为第一索引信息,例如,预设属性标签是游戏中文名和游戏服务号,接收到 的第一业务数据中包含有"花千骨"、"MHUA"、"sl38",可以将MHUA| sl38作为第一索引信息。 [0075]步骤203,将第一索引信息和第一业务数据,对应存储到业务数据表中。
[0076]在实施中,服务器获取到第一索引信息和第一业务数据后,可以将第一索引信息 和第一业务数据对应存储到业务数据表中。
[0077]步骤204,获取第一索引信息和第一业务数据在业务数据表中的位置,并计算第一 索引信息的特征值。
[0078]在实施中,服务器将第一索引信息和第一业务数据对应存储到业务数据表中后, 可以获取第一索引信息和第一业务数据在业务数据表中的位置(比如,在表中的行数),并 可以计算第一索引信息的特征值。
[0079]步骤205,将第一索引信息和第一业务数据在业务数据表中的位置,与第一索引信 息的特征值,存储到特征值与存储位置的对应关系中。
[0080] 在实施中,服务器可以将第一索引信息和第一业务数据在业务数据表中的位置, 与第一索引信息的特征值,存储到特征值与存储位置的对应关系中。
[0081] 另外,基于上述建立业务数据表的方法,当服务器接收到第二业务数据(比如,充 值消息中携带的业务数据)后,首先可以根据第二业务数据中的预设属性标签对应的业务 子数据确定出目标索引信息,进而,可以按照上述步骤101-103所述的方法查询该目标索引 信息对应的业务数据,即确定出目标所以信息后,即可触发服务器进行步骤101的处理。 [0082]另,本实施例提供的步骤101-103、步骤201-205所述的方法可以用于进行数据表 查询的任何场景中,比如,可以将本实施例所述的方法应用于流式运算中,这样,可以实时 对接收到的数据流进行处理,避免数据积压。
[0083]本发明实施例中,服务器根据目标索引信息在业务数据表中查询业务数据时,首 先可以计算目标索引信息的特征值,然后在按照特征值的大小顺序进行排列的各特征值与 存储位置的对应关系中,快速获取目标索引信息在业务数据表中的目标存储位置,进而,可 以在业务数据表的相应位置获取目标索引信息对应的业务数据。这样,服务器在查询业务 数据表中的业务数据时,无需遍历业务数据表,可以根据目标索引信息的特征值的大小,在 上述对应关系中,快速确定目标索引信息的存储位置,从而,可以提高数据查询的效率。
[0084]基于相同的技术构思,本发明实施例还提供了一种数据查询的装置,如图4所示, 该装置包括:
[0085]第一接收模块410,用于接收数据查询指令,其中,所述数据查询指令中携带有目 标索引信息;
[0086] 查询模块420,用于计算所述目标索引信息的特征值,在预先存储的特征值与存储 位置的对应关系中,查询所述目标索引信息的特征值对应的目标存储位置,其中,所述对应 关系中的各对应关系项按照特征值的大小顺序排列;
[0087] 第一获取模块430,用于根据所述目标存储位置,在数据库中,获取所述目标索引 信息对应的业务数据。
[0088] 可选的,所述存储位置为索引信息和对应的业务数据在所述数据库预设的业务数 据表中的位置;
[0089]所述第一获取模块430,用于:
[0090] 根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应的业 务数据。
[0091] 可选的,如图5所示,所述装置还包括:
[0092]第二接收模块440,用于接收第一业务数据,其中,所述第一业务数据包含有多个 属性标签对应的业务子数据;
[0093]第二获取模块450,用于在所述第一业务数据中,获取预设属性标签对应的业务子 数据,作为第一索引信息;
[0094]第一存储模块460,用于将所述第一索引信息和所述第一业务数据,对应存储到所 述业务数据表中;
[0095]计算模块470,用于获取所述第一索引信息和所述第一业务数据在所述业务数据 表中的位置,并计算所述第一索引信息的特征值;
[0096]第二存储模块480,用于将所述第一索引信息和所述第一业务数据在所述业务数 据表中的位置,与所述第一索引信息的特征值,存储到所述特征值与存储位置的对应关系 中。
[0097]可选的,所述数据查询指令中还携带有目标属性标签;
[0098]所述第一获取模块430,用于:
[0099] 根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应的业 务数据中所述目标属性标签对应的业务子数据。
[0100] 可选的,所述特征值为哈希值。
[0101] 本发明实施例中,服务器根据目标索引信息在业务数据表中查询业务数据时,首 先可以计算目标索引信息的特征值,然后在按照特征值的大小顺序进行排列的各特征值与 存储位置的对应关系中,快速获取目标索引信息在业务数据表中的目标存储位置,进而,可 以在业务数据表的相应位置获取目标索引信息对应的业务数据。这样,服务器在查询业务 数据表中的业务数据时,无需遍历业务数据表,可以根据目标索引信息的特征值的大小,在 上述对应关系中,快速确定目标索引信息的存储位置,从而,可以提高数据查询的效率。 [0102]需要说明的是:上述实施例提供的数据查询的装置在数据查询时,仅以上述各功 能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能 模块完成,即将服务器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部 分功能。另外,上述实施例提供的数据查询的装置与数据查询的方法实施例属于同一构思, 其具体实现过程详见方法实施例,这里不再赘述。
[0103] 本发明实施例还提供了一种服务器的结构示意图,如图6所示。该服务器1900可因 配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU) 1922(例如,一个或一个以上处理器)和存储器1932,一个或一个以 上存储应用程序1942或数据1944的存储介质1930(例如一个或一个以上海量存储设备)。其 中,存储器1932和存储介质1930可以是短暂存储或持久存储。存储在存储介质1930的程序 可以包括一个或一个以上模块(图示没标出),每个模块可以包括对统计服务器中的一系列 指令操作。更进一步地,中央处理器1922可以设置为与存储介质1930通信,在服务器1900上 执行存储介质1930中的一系列指令操作。
[0104] 服务器1900还可以包括一个或一个以上电源1926,一个或一个以上有线或无线网 络接口 1950,一个或一个以上输入输出接口 1958,一个或一个以上键盘1956,和/或,一个或 一个以上操作系统 1941,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM 等等。
[0105] 服务器1900可以包括有存储器,以及一个或者一个以上的程序,其中一个或者一 个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一 个以上程序包含用于进行以下操作的指令:
[0106] 接收数据查询指令,其中,所述数据查询指令中携带有目标索引信息;
[0107]计算所述目标索引信息的特征值,在预先存储的特征值与存储位置的对应关系 中,查询所述目标索引信息的特征值对应的目标存储位置,其中,所述对应关系中的各对应 关系项按照特征值的大小顺序排列;
[0108] 根据所述目标存储位置,在数据库中,获取所述目标索引信息对应的业务数据。
[0109] 可选的,所述存储位置为索引信息和对应的业务数据在所述数据库预设的业务数 据表中的位置;
[0110] 所述根据所述目标存储位置,在数据库中,获取所述目标索引信息对应的数据,包 括:
[0111] 根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应的业 务数据。
[0112] 可选的,所述方法还包括:
[0113] 接收第一业务数据,其中,所述第一业务数据包含有多个属性标签对应的业务子 数据;
[0114] 在所述第一业务数据中,获取预设属性标签对应的业务子数据,作为第一索引信 息;
[0115] 将所述第一索引信息和所述第一业务数据,对应存储到所述业务数据表中;
[0116]获取所述第一索引信息和所述第一业务数据在所述业务数据表中的位置,并计算 所述第一索引信息的特征值;
[0117]将所述第一索引信息和所述第一业务数据在所述业务数据表中的位置,与所述第 一索引信息的特征值,存储到所述特征值与存储位置的对应关系中。
[0118] 可选的,所述数据查询指令中还携带有目标属性标签;
[0119] 所述根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应 的业务数据,包括:
[0120] 根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应的业 务数据中所述目标属性标签对应的业务子数据。
[0121 ]可选的,所述特征值为哈希值。
[0122] 本发明实施例中,服务器根据目标索引信息在业务数据表中查询业务数据时,首 先可以计算目标索引信息的特征值,然后在按照特征值的大小顺序进行排列的各特征值与 存储位置的对应关系中,快速获取目标索引信息在业务数据表中的目标存储位置,进而,可 以在业务数据表的相应位置获取目标索引信息对应的业务数据。这样,服务器在查询业务 数据表中的业务数据时,无需遍历业务数据表,可以根据目标索引信息的特征值的大小,在 上述对应关系中,快速确定目标索引信息的存储位置,从而,可以提高数据查询的效率。
[0123] 本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件 来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读 存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0124] 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和 原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【主权项】
1. 一种数据查询的方法,其特征在于,所述方法包括: 接收数据查询指令,其中,所述数据查询指令中携带有目标索引信息; 计算所述目标索引信息的特征值,在预先存储的特征值与存储位置的对应关系中,查 询所述目标索引信息的特征值对应的目标存储位置,其中,所述对应关系中的各对应关系 项按照特征值的大小顺序排列; 根据所述目标存储位置,在数据库中,获取所述目标索引信息对应的业务数据。2. 根据权利要求1所述的方法,其特征在于,所述存储位置为索引信息和对应的业务数 据在所述数据库预设的业务数据表中的位置; 所述根据所述目标存储位置,在数据库中,获取所述目标索引信息对应的数据,包括: 根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应的业务数 据。3. 根据权利要求2所述的方法,其特征在于,所述方法还包括: 接收第一业务数据,其中,所述第一业务数据包含有多个属性标签对应的业务子数据; 在所述第一业务数据中,获取预设属性标签对应的业务子数据,作为第一索引信息; 将所述第一索引信息和所述第一业务数据,对应存储到所述业务数据表中; 获取所述第一索引信息和所述第一业务数据在所述业务数据表中的位置,并计算所述 第一索引信息的特征值; 将所述第一索引信息和所述第一业务数据在所述业务数据表中的位置,与所述第一索 引信息的特征值,存储到所述特征值与存储位置的对应关系中。4. 根据权利要求2所述的方法,其特征在于,所述数据查询指令中还携带有目标属性标 签; 所述根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应的业 务数据,包括: 根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应的业务数 据中所述目标属性标签对应的业务子数据。5. 根据权利要求1所述的方法,其特征在于,所述特征值为哈希值。6. -种数据查询的装置,其特征在于,所述装置包括: 第一接收模块,用于接收数据查询指令,其中,所述数据查询指令中携带有目标索引信 息; 查询模块,用于计算所述目标索引信息的特征值,在预先存储的特征值与存储位置的 对应关系中,查询所述目标索引信息的特征值对应的目标存储位置,其中,所述对应关系中 的各对应关系项按照特征值的大小顺序排列; 第一获取模块,用于根据所述目标存储位置,在数据库中,获取所述目标索引信息对应 的业务数据。7. 根据权利要求6所述的装置,其特征在于,所述存储位置为索引信息和对应的业务数 据在所述数据库预设的业务数据表中的位置; 所述第一获取模块,用于: 根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应的业务数 据。8. 根据权利要求7所述的装置,其特征在于,所述装置还包括: 第二接收模块,用于接收第一业务数据,其中,所述第一业务数据包含有多个属性标签 对应的业务子数据; 第二获取模块,用于在所述第一业务数据中,获取预设属性标签对应的业务子数据,作 为第一索引信息; 第一存储模块,用于将所述第一索引信息和所述第一业务数据,对应存储到所述业务 数据表中; 计算模块,用于获取所述第一索引信息和所述第一业务数据在所述业务数据表中的位 置,并计算所述第一索引信息的特征值; 第二存储模块,用于将所述第一索引信息和所述第一业务数据在所述业务数据表中的 位置,与所述第一索引信息的特征值,存储到所述特征值与存储位置的对应关系中。9. 根据权利要求7所述的装置,其特征在于,所述数据查询指令中还携带有目标属性标 签; 所述第一获取模块,用于: 根据所述目标存储位置,在所述业务数据表中,获取所述目标索引信息对应的业务数 据中所述目标属性标签对应的业务子数据。10. 根据权利要求6所述的装置,其特征在于,所述特征值为哈希值。
【文档编号】G06F17/30GK105912679SQ201610229358
【公开日】2016年8月31日
【申请日】2016年4月13日
【发明人】陈武
【申请人】广州华多网络科技有限公司