当前位置:首页 > ETL-- 事实表
4 最小化物理更新。在表中更新记录操作需要耗用 DBMS 很多资源,最大的原因是数据库要生成回滚日志。要最小化对回滚日志的操作,可以采用批量的加载数据。如何处理那些需要更新的数据呢?很多情况下,最佳的方式是删除要更新的记录,然后批量的加载所有的数据。由于要做更新的数据和总的数据量的比率会极大的影响优化方式的选择,因此需要一些反复测试来判断针对具体情况的最终加载策略。 5 在数据库外进行聚合。在数据库之外进行排序,合并和聚合要比在 DBMS 内使用SQL 语句,使用 COUNT 和 SUM 函数,GROUP BY 和 ORGER BY 关键字高效的多。ETL 过程需要将巨大数量的数据进行排序、合并放在进入关系型数据库准备区之前完成。很多 ETL 工具提供这些功能,但是专门的工具在操作系统级别执行排序/合并意味着为处理大数据集进行额外的投资。
更新和纠正事实记录
1 消除事实
这种方法是创建一个完整的错误的资料库,当发生某种错误的时候查找此资料库,从中找出该种错误事实的纠正信息。
2 删除事实
有两种方法:
1 从物理直接删除,比较不推荐,当然了能够确保事实的参考完整性约束的话,删除最为简单;
2 在事实表中添加一个flag字段,初始化此字段,值为:TRUE,FALSE,TRUE为不删除,FALSE为删除。
无事实的事实表
每个事实表的粒度是一个事件量测。在某些情况下,事件可以发生,但是没有具体的测量值。例如一个事实表用来记录交通事故事件。每个事件的发生是无可质疑的,维度设计是强制性且非常直接的。
聚合:
提高大型数据仓库性能最重要的手段是在基础记录上建立一组适当的聚合记录。聚合可以显著的提高性能,一些情况下,查询的性能可以提高 100 倍,甚至 1000 倍。没有其他的方法可以获得如此的性能提升。在BIEE中可以看到,当我们在逻辑层中给某个字段的聚合方式加入count之后,在展现的时候变能够通过count的字段的其他字段进行分组计数了。
共分享92篇相关文档