[发明专利]一种报表自动更新的方法和装置有效
申请号: | 201210392895.9 | 申请日: | 2012-10-16 |
公开(公告)号: | CN103729385B | 公开(公告)日: | 2017-05-03 |
发明(设计)人: | 李小健 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京润泽恒知识产权代理有限公司11319 | 代理人: | 苏培华 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 报表 自动更新 方法 装置 | ||
技术领域
本申请涉及数据库技术领域,特别是涉及一种报表自动更新的方法和装置。
背景技术
数据仓库是一个独立的数据环境,通过抽取过程将数据从联机事务处理环境、外部数据源和脱机的数据存储介质(例如数据库)导入到数据仓库中,将不同数据源的数据分离出来,形成统一、有效的数据集,并最终加工、转换为适合于各类报表(report)提取的数据表(table)。
数据仓库通过调度系统来管理数据仓库的任务(task),如图5给出的报表生成的示意图。数据仓库调度系统开始启动任务之前都会生成当天的调度任务,用于管理多个task的执行,每个task产出一个或多个table,每个task依赖于一个或者多个前置task,当一个task的前置task完成后,调度下一个task运行起来,进而生成最终的结果table。
Report由报表工具(例如,SAP公司的报表工具SAP Business Objects)依据关联的数据仓库的多个table生成,可以向相关的业务部门提供了大量的信息以供分析参考和决策,例如,产品部门通过Report查看市场消费变动情况,运营部门通过report了解消费群体分布情况等。
Table是由数据仓库调度系统管理生成的,而report是由报表工具管理生成的,两个系统相互独立、互不相关。当业务部门想要查看某个report的最新数据时,并不清楚report依赖的数据仓库table是否完成,所以获取数据时,必须手动去刷新报表,以获得最近的数据。
以上现有技术中存在的问题是,如果一个report使用到了多个大数据量的table做关联,那么刷新一次report的时间会很长,同时消耗大量的计算资源;而且当有多人同时查看一个或多个report时,打开每个report都需要重新刷新,大量的刷新会加重报表服务器的负载,使得其它报表的访问变慢,甚至可能导致服务器资源不足,影响系统的正常运行。
因此,目前需要本领域技术人员解决的一个技术问题就是,提供一种报表自动更新的机制,以实现无需手动刷新就可以获取最新的数据,减轻服务器的负载。
发明内容
本申请所要解决的技术问题是提供一种报表自动更新的方法,以实现无需手动刷新就可以获取最新的数据,减轻服务器的负载。
本申请还提供了一种报表自动更新的装置,用以保证上述方法在实际中的应用及实现。
为了解决上述问题,本申请公开了一种报表自动更新的方法,包括:
收集报表和数据仓库中各个任务的依赖关系;
调度执行数据仓库中的各个任务,并依据所述依赖关系,判断各报表所依赖的任务是否均执行完毕;
若是,则触发报表应用端刷新相应的报表。
优选的,所述收集报表和数据仓库中各个任务的依赖关系的步骤包括:
在报表应用端提取报表与数据表的依赖关系;
针对各报表,在数据仓库中查找各数据表所依赖的数据表所对应的任务,得到各报表所依赖的任务。
优选的,所述在报表应用端提取报表与数据表的依赖关系的步骤包括:
调用报表应用端的API接口,提取生成各报表的SQL语句;
针对各报表,解析对应的SQL语句得到相应的数据表。
优选的,解析所述SQL语句还得到相应的视图,所述在报表应用端提取报表与数据表的依赖关系的步骤还包括:
递归查找所述视图对应的数据表。
优选的,所述调度执行数据仓库中的各个任务的步骤包括:
调度系统依据所述报表和数据仓库中各个任务的依赖关系,以及各个任务之间的依赖关系,建立调度计划;
按照所述调度计划,执行数据仓库中的各个任务。
优选的,所述依据依赖关系,判断各报表所依赖的任务是否均执行完毕的步骤为:
在接收到任务执行后返回的完成信息时,针对该任务所对应的报表,判断所依赖的各个任务是否均执行完毕。
优选的,所述触发报表应用端刷新相应的报表的步骤包括:
向报表应用端发送预设的执行完毕标识和相应的报表的标识信息。
优选的,所述触发报表应用端刷新相应的报表的步骤包括:
将相应的报表的标识信息发送到报表应用端,同时调用报表应用端API接口。
优选的,所述触发报表应用端刷新相应的报表的步骤还包括:
报表应用端依据报表的标识信息,确定对应的生成该报表的SQL语句;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210392895.9/2.html,转载请声明来源钻瓜专利网。