[发明专利]数据获取方法和装置在审

专利信息
申请号: 201210147823.8 申请日: 2012-05-11
公开(公告)号: CN103390007A 公开(公告)日: 2013-11-13
发明(设计)人: 胡恒铭 申请(专利权)人: 阿里巴巴集团控股有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 北京康信知识产权代理有限责任公司 11240 代理人: 吴贵明;江舟
地址: 英属开曼群岛大开*** 国省代码: 开曼群岛;KY
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 数据 获取 方法 装置
【说明书】:

技术领域

本申请涉及计算机领域,具体而言,涉及一种数据获取方法和装置。

背景技术

在企业应用系统中需要处理和存储大量的业务数据,但是由于目前计算机内存容量的限制,在某些业务需求下无法一次性全部处理这些数据,因此需要使用分页技术来把所要处理的数据分割成计算机内存能够容纳的若干小块,然后分别以小块为单位来处理这些数据,直到处理完毕。

分页显示作为一种常见的浏览和显示大量数据的方法被广泛使用,现有的分页技术中,将数据库中的结果集人为的分段来显示,其中,分页技术中包含四个参数:PageSize(页面大小,表示每页显示的数据的条数),TotalRecord(结果集中记录的总条数),PageIndex(当前页面数),TotalPage(页面总数),该方法包括如下步骤:

(1)获取数据库中满足某种条件的数据的总条数TotalRecord;

(2)根据程序中已经设定的PageSize计算出页面总数TotalPage的值;

(3)使用PageIndex循环分页显示结果集中的数据。

然而,目前这种分页技术主要用于前台显示数据,当应用于后台处理数据时,目前这种分页技术存在以下缺陷:

一、使用业务场景受限

在企业应用系统中,每天都会产生大量的业务数据。在处理这些数据的过程中,有些数据不会发生结果集大小的变化,而有些数据的结果集大小却在处理过程中动态改变。现有技术要求数据结果集大小在处理期间不能发生变化,现有的分页技术在处理这种数据结果集大小发生变化的数据时,可能会存在一些错误,如漏取等,下面结合具体示例对现有技术中处理过程可能存在的错误进行进一步描述:

在系统后台做结算项目时,所需获取的数据的结果集往往是动态变化的,如在进行打款时,获取打款小计的条件有两个:打款状态为“Paying”,并且原始记录的更新状态为“NOTBEENSETTLED”,当打款成功完成后要更新打款状态为“PayFinished”,这就导致了结果集动态变化的问题,下面具体举例来说明:

假设数据库中目前符合打款条件的记录有6条,页面大小为3条,那么这6条记录会分为2个页面来处理,这2个页面分别为第0页和第1页,具体如表一所示:

表一

现有的分页处理过程,首先取出第0页进行打款,打款成功后分别更新ID为001、002、003的打款状态为“PayFinished”,然后再取第1页进行处理。由于在对分页操作进行初始化操作时,系统根据参数PageSize和TotalRecord已经计算出了TotalPage,然后又根据PageIndex计算出了每页上的开始游标startPos和结束游标endPos。以表一为例,在对分页操作进行初始化操作时,系统已经根据PageSize=3和TotalRecord=6计算出了TotalPage=2,然后根据PageIndex=0计算出第0页上的startPos为1,endPos为3,根据PageIndex=1计算出第1页上的startPos为4,endPos为6。

在实际操作中,按照第0页至第TotalPage-1页的顺序从表一进行数据获取。当取出第0页数据并处理完后,ID为001、002、003的打款状态已被修改为“PayFinished”,这时,由于表一记录的是打款状态为“Paying”的数据,因此,在取出第0页数据并处理完后,表一中的数据发生了动态变化,如表二所示。

表二

然而,在面对表二中的数据时,系统仍然按照初始化操作得到的第1页上的startPos为4,endPos为6来获取第1页上的数据,此时由于表二中的ROWNUM已更改为1至3,从而使得无法获取到ROWNUM为4至6的数据,使得无法获取第1页上的数据,返回结果为空,也就不再进行打款了,两轮循环后打款结束,但此时ID为004、005、006的小计在本次任务中没有被执行打款操作,这就造成了ID为004、005、006小计的漏打。

二、页面总数参数TotalPage的计算方法繁琐不通用

现有技术在使用TotalRecord参数和PageSize参数计算页面总数参数TotalPage时,针对PageSize参数能被TotalRecord参数整除和不能整除两种场景提供了两种不同的计算方法,使得计算方法较为繁琐。

三、因某条数据处理时发生异常导致其他数据无法处理发生饿死现象

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201210147823.8/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top