The embodiment of the invention discloses a data matching method, a data inquiry method and a device thereof. Including the data matching method: application server sends to the database query and carry the default value M query; database application server end back M to be set based on the data, one by one the set set of data and target data; the data set is the database according to the query query to; if the target data set is not completed, the application server based on database in M after the return match N to return the data set data, one by one the matching data and the target data set; 1 = N = M. In the premise of avoiding the memory overflow of the application server, the application of the utility model avoids multiple query actions and causes great load on the database end.
【技术实现步骤摘要】
数据撮合方法、数据查询方法及装置
本申请涉及数据库技术,特别涉及一种数据撮合方法、数据查询方法及装置。
技术介绍
目前,在诸多场景中均存在将数据进行撮合的需求。一般地,上述数据撮合过程是:根据数据a的特征和数据集Q中每个数据b的特征,将上述数据a逐一与数据b进行匹配。在数据撮合的场景中,一般可以通过执行数据库查询语句的数据库查询动作来得到待处理数据,如:通过SQL(StructuredQueryLanguage,结构化查询语言)进行查询。现有技术中,应用于数据撮合场景中的数据库查询方式主要包括全量查询方式和分页查询方式。全量查询方式一般通过执行一次SQL语句的查询动作,得到包含符合查询语句的所有待撮合数据的结果集,最终将结果集中的所有待撮合数据一次性写入到计算机内存中,并逐一将待撮合数据与目标数据进行撮合。然而,由于计算机的内存容量有限,上述全量查询方式一般容易导致计算机的内存溢出。分页查询方式则可以避免计算机内存溢出的问题。在分页查询方式中,通过执行SQL语句的查询动作,将查询得到的结果集进行分页(即每页包含一定数量的待撮合数据),这样,数据库端可以每次只将一页内的待撮合数据返回给应用服务器,并由应用服务器基于上述一页的待撮合数据,进行与目标数据的撮合,从而避免一次性返回过多数据而可能导致应用服务器的内存溢出的问题。在现有的分页查询方式中,在数据库端将查询得到的结果集中的第x页内(x≥1)的k(k≥1)条待撮合数据返回到应用服务器之后,数据库端与应用服务器间的连接便被释放了,此后,需要再次连接数据库端并执行相同的SQL语句的查询动作,并将查询到的结果集中 ...
【技术保护点】
一种数据撮合方法,其特征在于,包括:应用服务器向数据库端发送携带查询语句和预设数值M的查询请求;应用服务器基于数据库端返回的M条待撮合数据,逐一将所述待撮合数据与目标数据进行撮合;所述待撮合数据是数据库端根据所述查询语句查询到的;若所述目标数据未撮合完毕,应用服务器基于数据库端在返回上述M条待撮合数据之后返回的N条待撮合数据,逐一将所述待撮合数据与所述目标数据进行撮合;1≤N≤M。
【技术特征摘要】
2016.03.28 CN 20161018469291.一种数据撮合方法,其特征在于,包括:应用服务器向数据库端发送携带查询语句和预设数值M的查询请求;应用服务器基于数据库端返回的M条待撮合数据,逐一将所述待撮合数据与目标数据进行撮合;所述待撮合数据是数据库端根据所述查询语句查询到的;若所述目标数据未撮合完毕,应用服务器基于数据库端在返回上述M条待撮合数据之后返回的N条待撮合数据,逐一将所述待撮合数据与所述目标数据进行撮合;1≤N≤M。2.如权利要求1所述的方法,其特征在于,在应用服务器基于数据库端在返回上述M条待撮合数据之后返回的N条待撮合数据,逐一将所述待撮合数据与所述目标数据进行撮合之前,所述方法还包括:应用服务器判断数据库端查询到的待撮合数据是否全部返回;则若所述目标数据未撮合完毕,应用服务器基于数据库端返回的处于上述M条待撮合数据之后的N条待撮合数据,逐一将所述待撮合数据与所述目标数据进行撮合,具体包括:若数据库端查询到的待撮合数据未全部返回且所述目标数据未撮合完毕,应用服务器基于数据库端在返回上述M条待撮合数据之后返回的N条待撮合数据,逐一将所述待撮合数据与所述目标数据进行撮合。3.如权利要求2所述的方法,其特征在于,应用服务器向数据库端发送携带查询语句和预设数值M的查询请求之前,所述方法还包括:应用服务器建立与数据库端的连接;则所述方法还包括:若所述目标数据撮合完毕或数据库端查询到的待撮合数据全部返回,应用服务器释放与数据库端的连接。4.如权利要求1所述的方法,其特征在于,所述预设数值M等于所述应用服务器的内存中至多能够存放的待撮合数据的条数。5.一种数据撮合方法,其特征在于,包括:应用服务器向数据库端发送携带查询语句和预设数值M的查询请求;应用服务器基于数据库端返回的M条预约单数据,逐一将所述预约单数据与预设产品数据进行撮合;所述预约单数据是数据库端根据所述查询语句查询到的,所述预约单数据包含与产品属性对应的条件信息,所述撮合是将所述预设产品数据的产品属性与所述条件信息进行匹配;若所述预设产品数据未撮合完毕,应用服务器基于数据库端在返回上述M条预约单数据之后返回的N条预约单数据,逐一将所述预约单数据与所述预设产品数据进行撮合;1≤N≤M。6.一种数据查询方法,其特征在于,包括:数据库端接收应用服务器发送的携带查询语句和预设数值M的查询请求;数据库端向应用服务器返回M条待撮合数据;所述待撮合数据是数据库端根据所述查询语句查询到的,所述待撮合数据用于逐一与目标数据进行撮合;若所述目标数据未撮合完毕,数据库端在向应用服务器返回上述M条待撮合数据之后,向应用服务器返回的处于上述M条待撮合数据之后的N条待撮合数据;1≤N≤M。7.一种数据查询方法,其特征在于,包括:数据库端接收应用服务器发送的携带查询语句和预设数值M的查询请求;数据库端向应用服务器返回M条预约单数据;所述预约单数据是数据库端根据所述查询语句查询到的,所述预约单数据用于逐一与产品数据进行撮合;所述预约单数据包含与产品属性对应的条件信息,所述撮合是将所述预设产品数据的产...
【专利技术属性】
技术研发人员:瞿建华,黄家骏,岑英岚,周杰,刘清富,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。