请教数据仓库设计--数据更新记录怎么处理?

yxinzju 2015-10-19 10:44:37
需求描述:
现有业务表一张:产品批次表batchTable,字段包括ID,产品ID pid,产品数量count,批次状态status,创建时间ctime,更新时间utime。
其中,产品数量,批次状态都可能更新,每次更新时同时更新utime记录。

统计任务:
因为涉及到多个系统集成,所以统计需要在数据仓库中进行。需要统计的数据包括以下几个:
1.从某一时刻 t 开始计算,最新的产品总数量
2.从某一时刻 t 开始计算,最新的各状态下批次总数量

公司可用的技术:
hadoop,hive,spark

问题:
1、当业务数据库中某一条批次记录的数量或状态发生更新后,数据怎么载入数据仓库?是将数据仓库中原记录进行更新还是新插入一条记录?如果是更新的话,因为要更新的数据占总数据的比例实在太低,在数据量大的情况效率很低。
2.、如果每次数据更新后新数据都作为一个快照新插入数据仓库的话,那每天的统计任务都要按全量数据进行统计才行,因为需要对数据仓库中的数据进行去重后拿到最新的数据进行统计,这样的话随着数据的积累,统计任务耗时会越来越长。

针对这种情况,数据仓库应该怎么设计才能满足任务需求同时又执行效率比较高?
...全文
2027 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
tul163 2016-05-04
  • 打赏
  • 举报
回复
针对问题的回答: 1、建议以创建时间ctime和更新时间utime做增量标识,每天增量更新(如果按ETL时间做分区就更容易导入,而且不易影响历史数据) 因为要回到任意t时刻,所以这种方式能够满足需求。 2、如果想回到任意时刻,对历史全量的扫描是不可避免的,如果只是要看t时刻之后的数据1中的增量方式可以避免全量扫描 3、建议以增量抽取,然后t时刻计算的结果表来满足需求
yu5358979 2015-10-25
  • 打赏
  • 举报
回复
建议通过阿里的开源框架canal做一个ODS层,把业务数据的所有变化关键节点(例如:下单时间,付账时间,都对应某个表的字段status等)都记录下来,并且记载变更时间。然后数据少可以gp,多了的话可以hive
数据库系统的认识 这学期我们开了数据库系统这门课,开课近五周的时间,虽然只学习到第二章,但 是从绪论中我就已经感受到了数据库的强大,有关数据库的内容老师也给我们讲解了很 多,接下来我想来谈谈我对数据库的认识,还望老师批评指正。 我们都知道数据库是数据管理的最新技术,是计算机科学的重要分支。而且对于一个国家 来说,数据库的建模,数据库信息量的大小和使用频度的已成为衡量这个国家信息化程 度的高低的重要标志。所以,数据库系统这门2课时及其重要的,学好它很必要。 数据库最常用的术语有数据(Data)、数据库(DB)、数据库管理系统(DBMS)、数据 库系统(DBS)等,以下是我对它们的理解: 数据(Data):数据数据库中存储的基本对象。数据的种类很多,文字,图形,图 像,声音,学生的档案记录,货物的运输情况等,这些都是数据。可以对数据做如下定 义:描述事物的符号记录称为数据数据库(DB):数据库,顾名思义,是存放数据的仓库。只不过这个仓库是在计算机 存储设备上,而且数据是按一定的格式存放的。所谓数据库是指长期存储在计算机内的 ,有组织的,可共享的数据集合; 数据库管理系统(DBMS):数据库管理系统是位于用户与操作系统之间的一层数据 管理软件。它的主要功能包括:数据定义功能,数据操纵功能,数据库的运行管理,数 据库的建立和维护功能等; 数据库系统(DBS):数据库系统是指在计算机系统中引入数据库后的系统,一般由 数据库,数据库管理系统,应用系统,数据库管理原和用户构成。 数据库管理技术的产生和发展共经历了三个阶段:人工管理阶段(20世纪50年代中 期以前),文件系统阶段(20世纪50年代后期到60年代中期),数据库系统阶段(20世 纪60年代后期以后)。其特点经历了从数据不能保存,不能共享,不具有独立性,到数 据结构化,共享性高,冗余度低,易扩充,独立性高,由DBMS统一管理和控制的逐步优 化。 数据模型分为两类,一类是概念模型,主要用于数据设计,一类是逻辑模型和物 理模型,主要用于DBMS的实现。数据模型通常由数据结构、数据操作和完整性约束三部 分组成。 数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级组成, 数据库管理系统在这三级模式之间还提供了两层映像,这样的系统结构保证了数据库系 统中能够具有较高的逻辑独立性和物理独立性。 通过对这些内容的学习,我深刻认识到作为一名计算机专业的学生学好这门课的重 要性与必要性,在接下来的学习中,更会严格要求自己,紧跟老师步伐,下课多加复习 ,遇到不懂的问题将会及时查阅资料或者向老师同学请教。 ----------------------- 对数据库系统的认识全文共2页,当前为第1页。 对数据库系统的认识全文共2页,当前为第2页。
数据库技术课程设计》第17-18周实训大纲 一、学时、学分 总学时:80 实训学分:2 二、实训对象 信息管理(本)1001,本实训为必修课程。 三、实训目的 在掌握课本所讲授的理论知识的基础上,通过一个自选项目的实训,将课本理论知识与 实际操作应用相结合,使学生对数据库应用开发过程有个全面的认识,提高学生的实际操 作能力,为以后从事数据库开发方面的工作打下基础. 四、实训条件 硬件:人手一台PC机,要求能够连接到Internet。 软件: sql server2005 五、实训总体要求 1. 实训过程中听从老师安排,遵守实验室的规定。 2. 按时考勤,不迟到,不早退。 3. 独立按时完成作业,如有不懂的问题可向知道老师及同学请教,不得抄袭别人作业。 4. 实训过程中严格要求自己,高质量完成试验要求的同时,利用网络搜集资料,拓展应用 自己所学知识,提高自己解决实际问题的能力。 六、实训内容及学时分配 (1)实训内容 要求学生自由选择一个数据库应用开发系统(例如,学生成绩管理系统、人事管理系 统、物流管理系统等)为项目课题进行开发。可参考附件中的课题。 完成所选系统的数据设计,前台界面不需要实现。 数据库系统设计中包括有数据库系统概述、需求分析(文字描述、数据流程图、数据 字典)、概念结构设计、逻辑结构设计、系统优化(规范化)、物理实现(用DDL定义每 个基本表并录入基本的数据信息)、数据库管理(加入适当的视图、索引、存储过程、 触发器)、测试(根据系统功能写出问题,并用相应的语句功能解决)、数据库维护( 数据库备份) (2)学时分配 "时间 "项目内容 "任务要求 "学时 " "12.12 "项目背景 "选题,根据所选题目书写项目背景说明 "8 " "12.13-"需求分析 "对实际系统功能进行需求分析,做出数据流图及"16 " "12.14 " "数据字典 " " "12.15-"概念结构设 "结合需求分析绘制相应的实体—联系模型,并对 "16 " "12.16 "计 "其优化 " " "12.19-"逻辑结构设 "实体—联系模型转换为关系模型 "16 " "12.20 "计 " " " "12.21-"物理结构设 "设计和创建数据库表,包括数据完整性设计 "24 " "12.23 "计 " " " "总计 "80 " 七、作业要求 两个人为一小组,以小组为单位,相互协作,完成以下作业 作业一:实训报告。 实训报告内容包括:详细介绍所选项目的数据库系统开发过程,结构完整,叙 述详实。 作业二:数据库原文件(数据文件、日志文件) 要求:(1)实训报告均用稿纸书写,纸张完整,书写工整整洁。 (2)注明班级、姓名、学号。 (3)作业一、二完成后,实训报告交给老师,数据库原文件上传到ftp://192.168.130 .167实训文件夹下。 (4)作业上交时间为12月23日最后一节课,逾期不再接收。 八、实训成绩评定、考核办法 由指导教师根据学生完成实训任务的情况(实训过程中的工作态度30%,作业一20%, 作业二50%)综合打分。成绩评定实行优秀、良好、中等、及格和不及格五个等级。其中 工作态度考核内容包括: 是否按时到场;是否听从统一安排和要求;是否按进度要求完成实训科目;是否保持实 训设备完好无损等。 附件:参考课题 "序号"课题 "主要功能及基本要求 " " "名称 " " "1 "企业 "1.原料基本信息维护 " " "原料 "2.供应商基本信息维护 " " "出入 "3. 仓库信息维护 " " "库管 "4.原料入库管理 " " "理 "5.原料出库管理 " " " "6. 入库信息查询、出库信息查询、库存信息查询 " " " "所有管理包括(增加、删除、修改、查询) " "2 "医院 "药品分类代码表,药品库存表,供货商信息表,采" " "药品 "购信息表等等。 " " "进销 "新药品的入库。 " " "存系 "过期药品的出库登记、处理记录。 " " "统 "药品库存检索。 " " " "供货商信息检索。 " " " "药品采购记录管理。 " " " "药品用药说明信息管理。 " " " "输出相应的数据报表。 " " " "具有数据备份和数据恢复功能。 " "3 "企业 "1.客户可以查询商品目录、价格和商品介绍,不 " " "进销 "同的订货量有不同的折扣,客户向销售部门发出订" " "存管 "单 " " "理系 "2.销售部门负责处理订单,检查客户有无欠账, " " "统 "并且决定是否批准订单,如批准,负责发货,并且" " " "收取货款 " " " "3.采购部门根据需要从不同的厂家进不同的货物 " " " ",货物放置在仓库内,每种商品都有最低库存量," " " "当库存低于最低库存量时,自动向采购部

7,388

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 数据仓库
社区管理员
  • 数据仓库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧