首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >视图还是持久化表?

视图还是持久化表?
EN

Stack Overflow用户
提问于 2015-05-30 18:01:49
回答 2查看 2.2K关注 0票数 4

在构建数据仓库时,我通常看到ETL过程的两种主要方法:

1.视图-.

方法一显然在数据库中,它的优点是您没有那么多冗余数据,但可能会导致性能问题。

2.阶段表(数据副本)-清除表(数据副本)- dwh表(数据副本)-.

第二种方法可以通过存储过程和作业等许多工具或者像SSIS这样的ETL工具来完成。这里的优点是很容易理解这个过程,因为你可以很好地想象它。您通常也有一个非常好的整体ETL-性能和许多预定义的任务等。一个问题可能是,一个过程的改变是更复杂的,因为持久化的表必须改变。

在现实世界中,你通常会看到两者兼而有之,特别是当很多人都在这个过程中工作的时候。当然,它也取决于情况(表的大小,该公司如何设计类似的流程,ETL-流程有多复杂,.)。

我个人更喜欢复制表格,保持ETL进程的简单,如果可能的话,在ETL工具中做所有的事情(在我的例子中通常是SSIS ),这是为此目的而设计的。

但是什么是最佳实践,为什么呢?

EN

回答 2

Stack Overflow用户

发布于 2015-05-30 19:00:15

视图视图不会随着DWH中数据量的增加而缩放。当涉及到dwh时,我的意思是说,我们谈论的是海量的数据。多源数据的集成是dwh的一种常用用法。Stage->tranform->事实/dim是构建dwh存储数据的最常见方式之一。是的,当我们谈到hdfs和其他技术时,这种情况会有所改变,但是视图将无法在dwh中提供所需的性能。我已经看到了许多系统,它们都有一个多步骤的etl过程,您首先从源获取数据到dwh,然后通过ETL/其他模型清理/处理/符合/转换这些数据到您的维度/其他模型。

票数 0
EN

Stack Overflow用户

发布于 2015-05-31 09:41:25

如果您想要了解在维度DW中实现为类型-2或类型-3的实时引用数据关系,您可能不会在源系统中找到这种关系。

garpitmzn提到的尺度问题不仅涉及到数据量,而且还涉及到数据重组和降维分析所需的联接。使用视图(除非物化),您将对每个查询重复潜在的复杂联接。最好在加载维度时只做一次。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30549529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档