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.一种数据查询方法,其特征在于,用于数据库端,所述方法包括:接收客户端发送的查询请求,所述查询请求中携带有所述客户端的业务参数;基于所述业务参数生成目标字符串,并将所述目标字符串作为目标行主键;从数据库表中获取所述目标行主键对应的目标索引行中的索引数据,所述数据库表包括多个索引行,每个所述索引行对应一个行主键;向所述客户端提供所述目标索引行中的索引数据。
【技术特征摘要】
1.一种数据查询方法,其特征在于,用于数据库端,所述方法包括:接收客户端发送的查询请求,所述查询请求中携带有所述客户端的业务参数;基于所述业务参数生成目标字符串,并将所述目标字符串作为目标行主键;从数据库表中获取所述目标行主键对应的目标索引行中的索引数据,所述数据库表包括多个索引行,每个所述索引行对应一个行主键;向所述客户端提供所述目标索引行中的索引数据。2.根据权利要求1所述的方法,其特征在于,在所述接收客户端发送的查询请求之前,所述方法还包括:接收所述客户端发送的业务信息,所述业务信息中包括业务数据和所述业务参数;根据所述业务信息,建立所述目标行主键与所述目标索引行的对应关系,所述目标行主键基于所述业务参数生成,所述目标索引行用于存储所述业务数据对应的索引数据。3.根据权利要求1所述的方法,其特征在于,所述业务参数采用十进制字符串形式表示,所述基于所述客户端的业务参数生成目标字符串,包括:将用于表示所述业务参数的十进制字符串转换为三十六进制字符串。4.根据权利要求1至3任一所述的方法,其特征在于,所述业务参数包括应用标识、业务标识、活动标识、用户标识和业务数据产生时间戳中的至少一种。5.一种数据查询方法,其特征在于,用于客户端,所述方法包括:在接收到业务查询指令后,向数据库端发送查询请求,所述查询请求中携带有所述客户端的业务参数;接收所述数据库端提供的索引数据,所述索引数据由所述数据库端从数据库表中目标行主键对应的目标索引行中获取,所述目标行主键由所述数据库端基于所述业务参数生成;其中,所述数据库表包括多个索引行,每个所述索引行对应一个行主键。6.根据权利要求5所述的方法,其特征在于,在所述向数据库端发送查询请求之前,所述方...
【专利技术属性】
技术研发人员:陈锴,杨子国,周健兴,
申请(专利权)人:广州华多网络科技有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。