如何在物理/逻辑上分离集成层和数据仓库,这是必要的吗?

时间:2014-08-01 17:54:41

标签: database schema etl data-warehouse vertica

在我们的测试DWH服务器上,我们使用的是Vertica Community Edition。我们对ETL流程和查询性能非常满意。

我们从少数来源(Informix,SQL Server,MySQL,Google Docs)导入数据,将其放在一个架构中,前缀为 bussinessProcessName_stage _

在ETL流程结束时,有许多表名为 bussinessProcessName_fact bussinessProcessName_dim_dimName ,而且很少有 shared_dim_dimName

是否需要在不同的模式中分离这些表,或者可能是不同的数据库? 同样的问题是DWH中的数据集市。

我们主要使用星型模式,show-flake几次,甚至还有一个平台设计的数据集市。

1 个答案:

答案 0 :(得分:3)

大多数数据库系统使用数据库级别作为最高逻辑层次结构。但是,Vertica仅允许单个数据库一次运行。这意味着逻辑设计发生在模式级别。例如,传统的数据库系统可能包含customersorders等数据库。在Vertica中,这些将在架构级别进行标识。

逻辑组织和命名约定因组织而异。重要的是它的标准和使用一致。您可能希望查看逻辑上适合的内容,并相应地对表进行分组。例如,每个业务流程名称都可以有自己的架构(business_process_name.fact_table)。明确而不是使用单个模式是一种更好的做法,即使你有很少的表。如果您将来添加其他表格,则会更容易管理。

使用模式的另一个好处是管理。执行备份或维护任务时,可以在架构级别执行它们。