数据仓库中大对象集合表的访问方法及装置制造方法及图纸

技术编号:5979884 阅读:249 留言:0更新日期:2012-04-11 18:40
本申请公开了一种数据仓库中大对象集合表的访问方法及装置,以减轻由大对象集合表所导致的数据仓库的输入输出负担,提升数据仓库的性能和响应速度。所述访问方法,包括:新建大对象集合表的建立过程,具体包括:针对每一个业务周期,根据各业务流水表中当前业务周期内的业务流水记录,确定当前业务周期内发生业务活动的对象的标识信息;根据确定出的对象的标识信息,生成与当前业务周期内发生业务活动的对象相关联的原大对象集合表的分表,并将生成的分表合并到按照业务周期分区的新建大对象集合表中;新建大对象集合表的访问过程,具体包括:确定指定的时间段所对应的业务周期信息;以及访问新建大对象集合表中确定的业务周期信息所对应的分区。

【技术实现步骤摘要】

本申请涉及数据存储领域,尤其涉及一种数据仓库中大对象集合表的访问方法及装置
技术介绍
数据仓库(DataWarehouse, DW)是面向主题(Subject Oriented)的、集成的 (Integrated)、相对稳定的(Non-volatile)、反映历史变化(Time Variant)的数据集合, 用于支持企业、组织或网站的决策分析处理。数据仓库通常用于存储历史数据,并通过ETL (Extraction-Transformation-Loading,数据抽取、转换和加载)任务执行过程,产生业务 报表等。ETL程序负责将分布式、异构数据源中的数据例如关系数据、平面数据文件等抽取 到临时中间层后进行清洗、转换、集成,最后装载到数据仓库中,成为业务报表、联机分析处 理、数据挖掘的基础。ETL程序一般在夜间运行,处理企业的大批量数据,形成KPI (关键运 营指标)装载到业务报表中。通常情况下,如一些电子商务网站,数据仓库中存储有用户表和商品表,用户表是 网站在数据仓库中保存所有用户的属性信息的表,每一条记录对应一个用户,每一个字段 对应用户的某种属性,用户表一般是数据仓库中最大的表之一;商品表是网站在数据仓库 中保存所有商品(各网站的商品形态并不相同)的属性信息的表,每一条记录对应一种商 品,每一个字段对应商品的某种属性,商品表一般是数据仓库中最大的表之一。网站的用户 表和商品表中包括大量记录,存储空间一般达到TB级。数据仓库超过一半的后续任务都会 访问用户表和商品表,获取表中相关对象的某些属性信息。由于这两个表过于巨大(各网 站的用户表和商品表的实际大小可能不同),对于所配备的硬件资源会是一个沉重的负担。 同时用户表和商品表的特点使得表中包括所有对象的全集,且永久存在,在ETL任务执行 过程中,ETL程序一般会整表扫描用户表和商品表,当多个任务同时整表扫描用户表和商品 表时,数据仓库的输入输出负担较重,导致数据仓库的性能降低、响应迟缓。申请内容本申请提供一种数据仓库中大对象集合表的访问方法及装置,用以减轻由大对象 集合表所导致的数据仓库的输入输出负担,提升数据仓库的性能和响应速度。本申请提供的第一种数据仓库中大对象集合表的访问方法,包括新建大对象集合表的建立过程,具体包括针对每一个业务周期,根据各业务流水表中当前业务周期内的业务流水记录,确 定当前业务周期内发生业务活动的对象的标识信息;根据确定出的对象的标识信息,生成与当前业务周期内发生业务活动的对象相关 联的原大对象集合表的分表,并将生成的分表合并到按照业务周期分区的新建大对象集合 表中;新建大对象集合表的访问过程,具体包括确定指定的时间段所对应的业务周期信息;以及4访问新建大对象集合表中确定的业务周期信息所对应的分区。较佳的,所述根据各业务流水表中当前业务周期内的业务流水记录,确定当前业 务周期内发生业务活动的对象的标识信息,具体包括从各业务流水表当前业务周期内的业务流水记录中提取对象的标识信息;并对提取出的所述对象的标识信息进行去重操作,确定出当前业务周期内发生业务 活动的对象的标识信息。其中,所述原大对象集合表的分表中,包括确定出的标识信息对应对象的记录,且 每一条记录包括业务周期信息、以及在原大对象集合表中该对象的各属性值。其中,所述对象的标识信息包括对象标识符ID或者对象名称。具体实施中,所述原大对象集合表可以为商品表,相应的,所述对象为商品;所述 原大对象集合表还可以为用户表,相应的,所述对象为用户。较佳的,所述新建大对象集合表中的每一个分区对应一块硬盘。较佳的,所述新建大对象集合表的访问过程为数据抽取、转换和加载ETL任务执 行过程,具体包括确定ETL任务指定的时间段所对应的业务周期信息;以及访问新建大对象集合表中确定的业务周期信息所对应的分区。本申请提供的第一种数据仓库中大对象集合表的访问装置,包括确定模块,用于针对每一个业务周期,根据各业务流水表中当前业务周期内的业 务流水记录,确定当前业务周期内发生业务活动的对象的标识信息;建立模块,用于根据确定出的对象的标识信息,生成与当前业务周期内发生业务 活动的对象相关联的原大对象集合表的分表,并将生成的分表合并到按照业务周期分区的 新建大对象集合表中;新建大对象集合表访问模块,用于确定指定的时间段所对应的业务周期信息,以 及访问新建大对象集合表中确定的业务周期信息所对应的分区。较佳的,所述确定模块,具体包括提取子模块,用于针对每一个业务周期,从各业务流水表当前业务周期内的业务 流水记录中提取对象的标识信息;去重子模块,用于对提取出的所述对象的标识信息进行去重操作,确定出当前业 务周期内发生业务活动的对象的标识信息。其中,所述建立模块生成的原大对象集合表的分表中,包括确定出的标识信息对 应对象的记录,且每一条记录包括业务周期信息、以及在原大对象集合表中该对象的各属 性值。其中,所述新建大对象集合表访问模块具体为数据抽取、转换和加载ETL程序模 块,用于在ETL任务执行过程中,确定ETL任务指定的时间段所对应的业务周期信息,以及 访问新建大对象集合表中确定的业务周期信息所对应的分区。本申请提供的第二种数据仓库中大对象集合表的访问方法,包括原大对象集合表的分表的生成过程,具体包括针对每一个业务周期,根据各业务流水表中当前业务周期内的业务流水记录,确 定当前业务周期内发生业务活动的对象的标识信息;根据确定出的标识信息,生成与当前业务周期内发生业务活动的对象相关联的原大对象集合表的分表,并将生成的分表与当前的业务周期信息相对应;原大对象集合表的访问过程,具体包括确定指定的时间段所对应的业务周期信息;以及访问确定的业务周期信息所对应的分表。本申请提供的第二种数据仓库中大对象集合表的访问装置,包括确定模块,用于针对每一个业务周期,根据各业务流水表中当前业务周期内的业 务流水记录,确定当前业务周期内发生业务活动的对象的标识信息;生成模块,用于根据确定出的标识信息,生成与当前业务周期内发生业务活动的 对象相关联的原大对象集合表的分表,并将生成的分表与当前的业务周期信息相对应;原大对象集合表访问模块,用于确定指定的时间段所对应的业务周期信息,以及 访问确定的业务周期信息所对应的分表。本申请提供的第一种数据仓库中大对象集合表的访问方法及装置,根据当前业务 周期内的业务流水记录,确定当前业务周期内发生业务活动的对象,并生成与当前业务周 期内发生业务活动的对象相关联的原大对象集合表的分表,再将生成的分表合并到按照业 务周期分区的新建大对象集合表中,从而使得不存在分区的原大对象集合表可以按照业务 周期分区存储。基于按照业务周期分区的新建大对象集合表,在ETL任务执行过程中,ETL 程序仅需访问指定的时间段所对应业务周期的分区,减轻了由大对象集合表所导致的数据 仓库的输入输出负担,从而提升了数据仓库的性能和响应速度。本申请提供的第二种数据仓库中大对象集合表的访问方法及装置,根据当前业务 周期内的业务流水记录,确定当前业务周期内发生业务活动的对象,并生成与当前业务周 期内发生业务活动的对象相关联的原大对象集合表的分表,从而使得不存在分区的原大对 象集合表可以按照业务周期划分为多个分表。基于按照本文档来自技高网...

【技术保护点】
1.一种数据仓库中大对象集合表的访问方法,其特征在于,包括:新建大对象集合表的建立过程,具体包括:针对每一个业务周期,根据各业务流水表中当前业务周期内的业务流水记录,确定当前业务周期内发生业务活动的对象的标识信息;根据确定出的对象的标识信息,生成与当前业务周期内发生业务活动的对象相关联的原大对象集合表的分表,并将生成的分表合并到按照业务周期分区的新建大对象集合表中;新建大对象集合表的访问过程,具体包括:确定指定的时间段所对应的业务周期信息;以及访问新建大对象集合表中确定的业务周期信息所对应的分区。

【技术特征摘要】

【专利技术属性】
技术研发人员:刘敏戌
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:KY[开曼群岛]

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

1