一种海量数据查询方法及系统技术方案

技术编号:2832416 阅读:219 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种海量数据查询方法及系统,涉及数据处理领域,能够解决现有方法在查询海量数据时所带来的查询无结果和影响系统性能的问题。所述方法包括:判断待查询数据总量是否与服务器端记录的数据总量一致,若不一致,则自动校正所述待查询数据总量;对应所述客户端待查询数据,查询服务器端记录的数据;判断服务器端记录的数据总量是否与实际数据总量一致,若不一致,自动校正服务器端记录的数据总量和待查询数据总量,重新查询服务器端记录的数据;返回查询结果。本发明专利技术提供的方法通过自动校正查询页码,避免将空白的页面显示给用户,从而给用户带来更好的使用体验;通过自动校正记录的数据总量,避免实时查询数据总量带来的系统性能问题。

【技术实现步骤摘要】

本专利技术涉及数据处理领域,特别是涉及一种海量数据的查询方法和系统。技术背景各种网络应用系统在发展到一定阶段后,系统数据量大增,从而会带来很 多技术上的难题,如数据存储、数据更新、数据显示等。在数据显示方面,网 络用户经常碰到的问题是点击某网页链接后,在浏览器中显示网页信息已过期 或显示空白页面,系统的数据显示功能并没有及时更新显示数据,造成用户不 能及时浏览最新信息,给用户带来极大不便。尤其是在存储大数据量以及数据 更新频繁的系统中,更容易造成数据显示问题。当前海量数据的显示, 一般采用分页查询技术,即将要显示的数据分成若 干页,每页显示一定的数据量,系统根据每页显示的数据量和查询页码来查找 定位当前要显示的数据,并显示给用户。目前较常用的一种分页查询方法是直接根据查询页码显示数据,例如用户在浏览论坛帖子时点击第8页,系统直接 查找定位后将第8页的数据显示出来。所述方法存在的问题是如果删除了某 网页而没有及时更新查询页码,就会出现查询页码超过实际数据的总页码,则 系统以空白页面的形式不显示任何数据。尤其对于高访问量的WEB应用系统, 数据变更非常频繁,会经常导致分页查询无结果。还有一种分页查询方法是实时查询数据总量,并根据查询结果及时调整查 询页码,从而避免上述第一种方法带来的查询无结果问题。但是,这种方法又 带来一个新的问题由于查询的数据量巨大,实时查询会占用系统资源,影响 系统的运行速度及其他性能。上述两种分页查询方法不仅适用于数据显示方面,还适用于其他以分页或 分块等在逻辑上顺序存储的海量数据查询。因此,在^4居数据查询结果进行具 体应用处理的过程中,都会存在查询无结果或影响系统性能的问题。
技术实现思路
本专利技术所要解决的技术问题是提供一种海量数据查询方法或系统,以解决 现有方法在查询海量数据时所带来的查询无结果和影响系统性能的问题。 为解决上述技术问题,本专利技术提供了一种海量数据查询方法,包括判断客户端待查询的数据总量是否与服务器端记录的数据总量一致,若不一致,则自动校正所述待查询的数据总量;对应所述客户端待查询数据,查询服务器端记录的数据; 判断服务器端记录的数据总量是否与实际的数据总量一致,若不一致,自动校正服务器端记录的数据总量和待查询数据总量,重新查询服务器端记录的数据;返回查询结果。其中,按照以下步骤判断客户端待查询的数据总量是否与服务器端记录的 数据总量一致根据查询页码和每页包含的数据量计算起始位置;判断所述起 始位置对应的数据量是否大于服务器端的数据总量,若大于,则客户端待查询 的数据总量与服务器端记录的数据总量不一致。其中,按照以下步骤判断服务器端记录的数据总量是否与实际的数据总量 一致判断查询结果是否为空,若为空,则服务器端记录的数据总量与实际的 数据总量不一致。其中,按照以下步骤对应所述客户端待查询数据,查询服务器端记录的数 据根据查询页码和每页包含的数据量计算查询的起始位置;在服务器端记录 的数据中查询所述起始位置,根据所述起始位置和每页包含的数据量确定查询 结果。本专利技术还提供了一种海量数据查询系统,包括 记录单元,用于记录服务器端的数据总量;自动校正单元,用于判断客户端待查询的数据总量是否与记录单元记录的 服务器端数据总量一致,若不一致,则自动校正所述待查询的数据总量;判断 记录单元记录的服务器端数据总量是否与实际的数据总量一致,若不一致,自 动校正所述记录单元的数据总量和待查询数据总量;查询单元,用于对应所述客户端待查询数据,查询服务器端记录的数据, 并返回查询结果。其中,所述海量数据按照分页形式提供给客户端,每页包含相同的数据量。 其中,所述自动校正单元按照以下步骤判断客户端待查询的数据总量是否 与记录单元记录的服务器端数据总量一致根据查询页码和每页包含的数据量计算起始位置;判断所述起始位置对应的数据量是否大于服务器端的数据总 量,若大于,则客户端待查询的数据总量与记录单元记录的服务器端数据总量 不一致。其中,所述自动校正单元按照以下步骤判断记录单元记录的服务器端数据总量是否与实际的凝:据总量一致判断查询单元的查询结果是否为空,若为空, 则记录单元记录的服务器端数据总量与实际的数据总量不一致。其中,所述查询单元按照以下步骤对应所述客户端待查询数据,查询服务 器端记录的数据根据查询页码和每页包含的数据量计算查询的起始位置;在 服务器端数据中查询所述起始位置,根据所述起始位置和每页包含的数据量确 定查询结果。与现有技术相比,本专利技术具有以下优点在分页查询流程中,当计算的查询起始位置超过记录的数据总量,则需要 校正所有的查询页码,并根据校正的查询页码重新计算起始位置,然后进行查 询;如果校正查询页码后查询结果仍为空,则需要校正记录的数据总量,并调 整查询页码,再重新计算起始位置进行查询,就能得到正确的查询结果。本发 明在查询范围超过数据总量时,自动校正查询范围,避免将空白的页面显示给 用户,从而给用户带来更好的使用体验;而且,通过记录数据总量,在发现记 录的数据总量与实际的数据总量出现偏差时,自动校正记录的数据总量,从而 避免实时查询数据总量带来的系统性能问题。 附图说明图l是本专利技术所述一种海量数据查询方法的步骤流程图; 图2是本专利技术所述一种海量数据查询系统结构图。具体实施方式为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。本专利技术应用在海量数据显示方面,对于分页查询显示的数据,能够将正确 的查询结果显示给用户,以下内容将以数据显示为例进行说明。参照图l,是本专利技术所述一种海量数据查询方法的步骤流程图。对于分页 显示的海量数据,数据总量指数据的总条数,例如数据共有1000条,每页显示相同数量的数据IOO条,则分页页码共10页。当用户点击某页的链接时,服务器系统执行以下步骤,将对应页码的数据显示给客户端用户。步骤IOI,根据查询页码计算查询的起始位置,所述查询的起始位置指从第几条数据开始显示,所述查询页码即为客户端要显示的数据页码。查询起始位置的计算公式是(查询页码-1) x每页显示数+i。在上例中,如果查询页 码是6,按照公式计算(6 - 1 ) x 100+1 = 501,则从第501条开始显示数据, 即当前要显示的第6页数据是总数据中的第501条到第600条。 步骤102 ~步骤105:步骤102,判断所述起始位置是否大于记录的数据总量,若大于,则执行 步骤103;若小于或等于,则执行步骤105。当查询的起始位置超过记录的数 据总条数,则表示分页查询的查询页码超过了数据的总页码,即提供给客户端 显示的数据总量与服务器记录的数据总量出现偏差,需执行步骤103根据记录 的数据总页码校正查询页码到最后一页。然后执行步骤104,按照上述公式, 根据新的查询页码重新计算查询的起始位置,再执行步骤105查询记录的数据 中所述新起始位置所在的条数。而当分页查询的查询页码未超过数据的总页 码,即提供给客户端显示的数据总量与服务器记录的数据总量一致时,直接执 行步骤1Q5查询记录。导致上述客户端待查询显示的数据总量与服务器记录的数据总量不一致 的原因是在某客户端浏览某网页的时候,管理员或其他客户端用户删除了部 分数据,虽然本文档来自技高网
...

【技术保护点】
一种海量数据查询方法,其特征在于,包括:    判断客户端待查询的数据总量是否与服务器端记录的数据总量一致,若不一致,则自动校正所述待查询的数据总量;    对应所述客户端待查询数据,查询服务器端记录的数据;    判断服务器端记录的数据总量是否与实际的数据总量一致,若不一致,自动校正服务器端记录的数据总量和待查询数据总量,重新查询服务器端记录的数据;    返回查询结果。

【技术特征摘要】
1、一种海量数据查询方法,其特征在于,包括判断客户端待查询的数据总量是否与服务器端记录的数据总量一致,若不一致,则自动校正所述待查询的数据总量;对应所述客户端待查询数据,查询服务器端记录的数据;判断服务器端记录的数据总量是否与实际的数据总量一致,若不一致,自动校正服务器端记录的数据总量和待查询数据总量,重新查询服务器端记录的数据;返回查询结果。2、 根据权利要求1所述的方法,其特征在于,按照以下步骤判断客户端 待查询的数据总量是否与服务器端记录的数据总量一致根据查询页码和每页包含的数据量计算起始位置; 判断所述起始位置对应的数据量是否大于服务器端的数据总量,若大于, 则客户端待查询的数据总量与服务器端记录的数据总量不一致。3、 根据权利要求1所述的方法,其特征在于,按照以下步骤判断服务器 端记录的数据总量是否与实际的数据总量一致判断查询结果是否为空,若为 空,则服务器端记录的数据总量与实际的数据总量不一致。4、 根据权利要求1所述的方法,其特征在于,按照以下步骤对应所述客 户端待查询数据,查询服务器端记录的数据根据查询页码和每页包含的数据量计算查询的起始位置; 在服务器端记录的数据中查询所述起始位置,根据所述起始位置和每页包 含的数据量确定查询结果。5、 一种海量数据查询系统,其特征在于,包括 记录单元,用于记录服务器端的数据总量;自动校正单元,用于判断客户端待查询的数据总...

【专利技术属性】
技术研发人员:陈波马云峰
申请(专利权)人:阿里巴巴公司
类型:发明
国别省市:KY[开曼群岛]

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

1