数据仓库—stg层在数据仓库架构设计中扮演什么角色?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1941个文字,预计阅读时间需要8分钟。
随着数据仓库经过多年的发展,其架构设计也经历了多次调整。在架构调整的过程中,无论是在写入层还是Lambda层,都没有对数据写入进行抽象化处理。Lambda层架构设计也随框架调整而多次修改。
数据仓库经过多年的发展仓库架构设计也随之多次调整框架调整的过程中写入层上Lambda没有对数据写入进行抽象仓库架构设计也随之多次调整框架调整的过程中写入层上Lambda 没有对数据写入进行抽象而是将双写流批系统的一致性问题反推给了写入数据的上层应用
存储上以 HDFS 为代表的master dataset 不支持数据更新持续更新的数据源只能以定期拷贝全量 snapshot 到 HDFS 的方式保持数据更新数据延迟和成本比较大
计算逻辑需要分别在流批框架中实现和运行而在类似 Storm 的流计算框架和Hadoop MR 的批处理框架做 job 开发、调试、问题调查都是比较复杂的
结果视图需要支持低延迟的查询分析通常还需要将数据派生到列存分析系统并保证成本可控。
传统仓库的架构设计
根据多年的传统仓库实践经验基本的框架如上图所示左边一列表示各个源系统经过数据交换管理平台处理后进入数据仓库的STG。数据交换管理其实就是仓库的ETL过程目前常用的方案是使用NAS公共服务管理中间数据。
管理的公共数据除了数据共享以外还可以作为数据质量管理的基础关于数据质量平台就是通过一系列的检查逻辑检查数据的合理性完备性规范性目前一般关于这部分的检查都在使用数据仓库的资源来进行的比如分配到STG层PDM层甚至集市层验证数据质量这样导致的后果是比较占用数据仓库的资源。关于数据质量这块其实最大的问题还是换行符特殊字符等等的检测一个比较好的拆分是使用ETL服务器的资源计算数据质量的情况。
本文共计1941个文字,预计阅读时间需要8分钟。
随着数据仓库经过多年的发展,其架构设计也经历了多次调整。在架构调整的过程中,无论是在写入层还是Lambda层,都没有对数据写入进行抽象化处理。Lambda层架构设计也随框架调整而多次修改。
数据仓库经过多年的发展仓库架构设计也随之多次调整框架调整的过程中写入层上Lambda没有对数据写入进行抽象仓库架构设计也随之多次调整框架调整的过程中写入层上Lambda 没有对数据写入进行抽象而是将双写流批系统的一致性问题反推给了写入数据的上层应用
存储上以 HDFS 为代表的master dataset 不支持数据更新持续更新的数据源只能以定期拷贝全量 snapshot 到 HDFS 的方式保持数据更新数据延迟和成本比较大
计算逻辑需要分别在流批框架中实现和运行而在类似 Storm 的流计算框架和Hadoop MR 的批处理框架做 job 开发、调试、问题调查都是比较复杂的
结果视图需要支持低延迟的查询分析通常还需要将数据派生到列存分析系统并保证成本可控。
传统仓库的架构设计
根据多年的传统仓库实践经验基本的框架如上图所示左边一列表示各个源系统经过数据交换管理平台处理后进入数据仓库的STG。数据交换管理其实就是仓库的ETL过程目前常用的方案是使用NAS公共服务管理中间数据。
管理的公共数据除了数据共享以外还可以作为数据质量管理的基础关于数据质量平台就是通过一系列的检查逻辑检查数据的合理性完备性规范性目前一般关于这部分的检查都在使用数据仓库的资源来进行的比如分配到STG层PDM层甚至集市层验证数据质量这样导致的后果是比较占用数据仓库的资源。关于数据质量这块其实最大的问题还是换行符特殊字符等等的检测一个比较好的拆分是使用ETL服务器的资源计算数据质量的情况。

