数据查询方法、装置及系统制造方法及图纸

技术编号:20916147 阅读:16 留言:0更新日期:2019-04-20 09:37
本发明专利技术公开了一种数据查询方法、装置及系统,属于数据库技术领域。所述方法包括:数据库端接收客户端发送的查询请求,查询请求中携带有客户端的业务参数;基于业务参数生成目标字符串,并将目标字符串作为目标行主键;从数据库表中获取目标行主键对应的目标索引行中的索引数据,数据库表包括多个索引行,每个索引行对应一个行主键;向客户端提供目标索引行中的索引数据。本发明专利技术中数据库端可以直接采用行主键通过聚集索引进行数据查询,无需使用非聚集索引,降低了数据查询的时间复杂度,提高了数据查询效率。

Data Query Method, Device and System

The invention discloses a data query method, device and system, which belongs to the technical field of database. The method includes: the database side receives the query request sent by the client side and carries the business parameters of the client side in the query request; generates the target string based on the business parameters and takes the target string as the primary key of the target row; obtains the index data in the target index row corresponding to the primary key of the target row from the database table, and the database table includes multiple index rows, each index row pair. Should be a row primary key; provide the client with index data in the target index row. The database end of the invention can directly use row primary keys to query data through aggregated index without using non-aggregated index, which reduces the time complexity of data query and improves the efficiency of data query.

【技术实现步骤摘要】
数据查询方法、装置及系统
本专利技术涉及数据库
,特别涉及一种数据查询方法、装置及系统。
技术介绍
数据库表是数据库中用于存储数据的对象,数据库表中通常以行和列的形式存储数据,每行数据为一个记录,每列数据存储同一数据类型的所有值,例如在通讯录数据库中,一行数据为一个人的全部信息,某列数据存储所有人的家庭住址。当数据库表中存储的数据量较大时,可以通过建立索引提高数据查询速度。索引是对数据库表中一列或多列的值进行排序的一种存储结构。关系型数据库索引分为聚集索引和非聚集索引(也可称为聚簇索引和非聚簇索引),其中,聚集索引的搜索码通常为数据库表中的主键,非聚集索引的搜索码通常由数据库表中物理顺序不同的多个字段组成,聚集索引用于检索数据行,非聚集索引用于检索主键。相关技术中,通常根据数据库表中字段的访问热度创建非聚集索引,以加快数据查询速度。该数据查询过程包括:先通过非聚集索引检索到主键,再利用该主键通过聚集索引检索到数据行。但是,由于相关技术提供的数据查询方法,既要使用非聚集索引,又要使用聚集索引,导致数据查询的时间复杂度较高。
技术实现思路
本专利技术实施例提供了一种数据查询方法、装置及系统,可以解决相关技术中数据查询的时间复杂度较高的问题。所述技术方案如下:第一方面,提供了一种数据查询方法,用于数据库端,所述方法包括:接收客户端发送的查询请求,所述查询请求中携带有所述客户端的业务参数;基于所述业务参数生成目标字符串,并将所述目标字符串作为目标行主键;从数据库表中获取所述目标行主键对应的目标索引行中的索引数据,所述数据库表包括多个索引行,每个所述索引行对应一个行主键;向所述客户端提供所述目标索引行中的索引数据。可选地,在所述接收客户端发送的查询请求之前,所述方法还包括:接收所述客户端发送的业务信息,所述业务信息中包括业务数据和所述业务参数;根据所述业务信息,建立所述目标行主键与所述目标索引行的对应关系,所述目标行主键基于所述业务参数生成,所述目标索引行用于存储所述业务数据对应的索引数据。可选地,所述业务参数采用十进制字符串形式表示,所述基于所述客户端的业务参数生成目标字符串,包括:将用于表示所述业务参数的十进制字符串转换为三十六进制字符串。可选地,所述业务参数包括应用标识、业务标识、活动标识、用户标识和业务数据产生时间戳中的至少一种。第二方面,提供了一种数据查询方法,用于客户端,所述方法包括:在接收到业务查询指令后,向数据库端发送查询请求,所述查询请求中携带有所述客户端的业务参数;接收所述数据库端提供的索引数据,所述索引数据由所述数据库端从数据库表中目标行主键对应的目标索引行中获取,所述目标行主键由所述数据库端基于所述业务参数生成;其中,所述数据库表包括多个索引行,每个所述索引行对应一个行主键。可选地,在所述向数据库端发送查询请求之前,所述方法还包括:当接收到业务触发指令时,生成业务信息,所述业务信息中包括业务数据和所述业务参数;向所述数据库端发送所述业务信息。可选地,所述业务参数包括应用标识、业务标识、活动标识、用户标识和业务数据产生时间戳中的至少一种。第三方面,提供了一种数据查询装置,用于数据库端,所述装置包括:第一接收模块,用于接收客户端发送的查询请求,所述查询请求中携带有所述客户端的业务参数;生成模块,用于基于所述业务参数生成目标字符串,并将所述目标字符串作为目标行主键;获取模块,用于从数据库表中获取所述目标行主键对应的目标索引行中的索引数据,所述数据库表包括多个索引行,每个所述索引行对应一个行主键;提供模块,用于向所述客户端提供所述目标索引行中的索引数据。可选地,所述装置还包括:第二接收模块,用于接收所述客户端发送的业务信息,所述业务信息中包括业务数据和所述业务参数;关系建立模块,用于根据所述业务信息,建立所述目标行主键与所述目标索引行的对应关系,所述目标行主键基于所述业务参数生成,所述目标索引行用于存储所述业务数据对应的索引数据。可选地,所述业务参数采用十进制字符串形式表示,所述生成模块,用于:将用于表示所述业务参数的十进制字符串转换为三十六进制字符串。可选地,所述业务参数包括应用标识、业务标识、活动标识、用户标识和业务数据产生时间戳中的至少一种。第四方面,提供了一种数据查询装置,用于客户端,所述装置包括:第一发送模块,用于在接收到业务查询指令后,向数据库端发送查询请求,所述查询请求中携带有所述客户端的业务参数;接收模块,用于接收所述数据库端提供的索引数据,所述索引数据由所述数据库端从数据库表中目标行主键对应的目标索引行中获取,所述目标行主键由所述数据库端基于所述业务参数生成;其中,所述数据库表包括多个索引行,每个所述索引行对应一个行主键。可选地,所述装置还包括:生成模块,用于当接收到业务触发指令时,生成业务信息,所述业务信息中包括业务数据和所述业务参数;第二发送模块,用于向所述数据库端发送所述业务信息。可选地,所述业务参数包括应用标识、业务标识、活动标识、用户标识和业务数据产生时间戳中的至少一种。第五方面,提供了一种数据查询系统,所述系统包括:数据库端和至少一个客户端,所述数据库端包括如第三方面任一所述的数据查询装置,所述客户端包括如第四方面任一所述的数据查询装置。第六方面,提供了一种数据查询装置,所述装置包括:存储器和处理器;所述存储器,用于存储计算机程序;所述处理器,用于执行所述存储器上所存储的计算机程序,实现如第一方面和第二方面任一所述的数据查询方法。第七方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有代码指令,所述代码指令由处理器执行时,实现如第一方面和第二方面任一所述的数据查询方法。本专利技术实施例提供的技术方案带来的有益效果包括:客户端向数据库端发送的查询请求中携带有客户端的业务参数,数据库端可以基于该业务参数生成目标行主键,并从数据库表中获取目标行主键对应的目标索引行中的索引数据,以向客户端提供该目标索引行中的索引数据,即数据库端可以直接采用行主键通过聚集索引进行数据查询,与相关技术相比,无需使用非聚集索引,因此降低了数据查询的时间复杂度,提高了数据查询效率。附图说明图1是本专利技术实施例提供的一种数据查询系统的结构示意图;图2是本专利技术实施例提供的一种数据查询方法的流程图;图3是本专利技术实施例提供的另一种数据查询方法的流程图;图4是本专利技术实施例提供的又一种数据查询方法的流程图;图5是本专利技术实施例提供的一种数据查询装置的结构示意图;图6是本专利技术实施例提供的另一种数据查询装置的结构示意图;图7是本专利技术另一实施例提供的一种数据查询装置的结构示意图;图8是本专利技术另一实施例提供的另一种数据查询装置的结构示意图;图9是本专利技术实施例提供的一种数据库端的结构示意图;图10是本专利技术实施例提供一种应用端的结构示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进一步地详细描述。图1是本专利技术实施例提供的一种数据查询系统的结构示意图,如图1所示,该数据查询系统包括数据库端101和至少一个客户端102。参见图1,本专利技术实施例以数据查询系统中包括一个客户端为例进行说明。数据库端101中存储有数据库表,数据库表以行和列的形式存储数据,可以供客户端102进本文档来自技高网...

【技术保护点】
1.一种数据查询方法,其特征在于,用于数据库端,所述方法包括:接收客户端发送的查询请求,所述查询请求中携带有所述客户端的业务参数;基于所述业务参数生成目标字符串,并将所述目标字符串作为目标行主键;从数据库表中获取所述目标行主键对应的目标索引行中的索引数据,所述数据库表包括多个索引行,每个所述索引行对应一个行主键;向所述客户端提供所述目标索引行中的索引数据。

【技术特征摘要】
1.一种数据查询方法,其特征在于,用于数据库端,所述方法包括:接收客户端发送的查询请求,所述查询请求中携带有所述客户端的业务参数;基于所述业务参数生成目标字符串,并将所述目标字符串作为目标行主键;从数据库表中获取所述目标行主键对应的目标索引行中的索引数据,所述数据库表包括多个索引行,每个所述索引行对应一个行主键;向所述客户端提供所述目标索引行中的索引数据。2.根据权利要求1所述的方法,其特征在于,在所述接收客户端发送的查询请求之前,所述方法还包括:接收所述客户端发送的业务信息,所述业务信息中包括业务数据和所述业务参数;根据所述业务信息,建立所述目标行主键与所述目标索引行的对应关系,所述目标行主键基于所述业务参数生成,所述目标索引行用于存储所述业务数据对应的索引数据。3.根据权利要求1所述的方法,其特征在于,所述业务参数采用十进制字符串形式表示,所述基于所述客户端的业务参数生成目标字符串,包括:将用于表示所述业务参数的十进制字符串转换为三十六进制字符串。4.根据权利要求1至3任一所述的方法,其特征在于,所述业务参数包括应用标识、业务标识、活动标识、用户标识和业务数据产生时间戳中的至少一种。5.一种数据查询方法,其特征在于,用于客户端,所述方法包括:在接收到业务查询指令后,向数据库端发送查询请求,所述查询请求中携带有所述客户端的业务参数;接收所述数据库端提供的索引数据,所述索引数据由所述数据库端从数据库表中目标行主键对应的目标索引行中获取,所述目标行主键由所述数据库端基于所述业务参数生成;其中,所述数据库表包括多个索引行,每个所述索引行对应一个行主键。6.根据权利要求5所述的方法,其特征在于,在所述向数据库端发送查询请求之前,所述方...

【专利技术属性】
技术研发人员:陈锴杨子国周健兴
申请(专利权)人:广州华多网络科技有限公司
类型:发明
国别省市:广东,44

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

1