热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

数据仓库分层ODSDWDDWS,数据仓库分层四层

1.2主要特点面向主题:操作型数据库组织面向事务处理任务,而数据仓库中的数据是按照一定的主题域进行组织。数据仓库源头系统的数据表通常会原封不动的存储一份,这称为ODS层,是后续数据


数据仓库分层1 .数据仓库DW1.1概述1.2主要特点1.3与数据库比较2 .数据分层2.1数据运营层(ODS ) 2.2数据仓库层(DW ) 2.3数据服务层/APP应用层(ADS ) )


作者: AmyZYX来源: http://www.cnblogs.com/amyzhu/


1 .数据仓库DW 1.1简介数据仓库(简称dw或震荡猫)数据仓库是在数据库已经大量存在的情况下,为进一步挖掘数据资源、做出决策而生成的,etl 数据仓库方案建设的目的是以前端查询和分析为基础,主要应用于在线分析(OLAP ),支持复杂的分析操作,侧重于决策支持,提供直观易懂的查询结果流行的有AWS Redshift、Greenplum、Hive等。


1.2主要特点面向主题:


基于操作的数据库组织面向事务性任务,数据仓库中的数据按照特定的主题域进行组织。


主题是用户在使用数据仓库进行决策时所关注的重要方面,一个主题涉及多个操作信息系统。


整合


需要对源数据进行加工融合和统一整合


为了确保数据仓库中的信息在整个企业中具有一致的全局信息,在加工过程中必须消除源数据的不一致性。 (相关关系)


不可修改


DW数据不是最新的,而是来自其他数据源


数据仓库主要为决策分析提供数据,相关操作主要是数据的查询


与时间相关


决策所需的数据仓库中的数据必须指定时间属性


1.3数据库对比DW:专门设计用于数据分析,涉及大量读取数据以了解数据之间的关系和趋势


数据库:用于捕获和存储数据


特性数据仓库事务数据库适当的工作负载分析、报告和大数据事务数据源从多个源收集,并从单个标准化数据源(如事务系统)捕获数据通过根据计划批处理调度执行连续写入操作,可以最大限度地提高事务吞吐量的数据标准化/非标准化模式,从而进行了优化。 例如,星型架构和雪花架构高度标准化的静态架构数据存储使用列存储进行了优化。 数据访问经过优化,可实现简单的访问和快速的查询性能,并对单行物理块执行高吞吐量写入操作。大量小型读取操作2 .数据分层数据分层数据分层数据访问经过优化,可最小化I/O,最大化数据吞吐量不同的企业根据不同的业务需求分为不同的层次,但最基本的层次化思想在理论上可分为三个。在此基础层次的基础上,重新提出信息层次以满足不同的业务需求。


2.1数据运营层(ODS ) ODS :操作数据存储数据准备区。 也称为粘贴源层。 数据仓库源系统中的数据表通常按原样保存数据表(称为ODS层),作为后续数据仓库中加工数据的源。


ODS层数据源方法:


业务库


经常使用sqoop提取。 例如,每天定时提取。


认为实时通过canal拦截mysql的binlog并实时访问即可。


填积分日志


日志通常保存为文件,也可以通过flume进行计划同步


可以通过spark streaming或Flink实时访问


kafka也可以


消息队列:即来自ActiveMQ、Kafka的数据等。


2.2数据仓库层(DW ) DW数据层,自下而上为DWD、DWB、DWS。


dwd :数据仓库详细信息数据层是业务层和数据仓库的隔离层。 主要对ODS数据层进行一些数据清洗和规范的操作。


数据清洗:空值、脏数据、超出极限范围


dwb :数据仓库数据基础层。 它存储了客观数据,普遍用作中间层,可以认为是大量指标的数据层。


DWS:data warehouse service数据服务层集成为基于DWB上的基础数据对某个主题域进行分析的服务数据层,一般为宽表。 用于提供后续业务查询、OLAP分析、数据发布等。


用户行为,轻度聚合


主要对ODS/DWD层数据进行轻度汇总。


2.3数据服务层/APP应用层(ADS )应用程序数据服务APP应用程序数据服务。 该层主要提供数据产品和用于数据分析的数据,一般存储在ES、mysql等系统中用于在线系统。


我们说的报告数据,或者那么大幅度的表格,一般都放在这里。


3 .附录ETL


ETL :提取转换加载。 描述从源端提取、转换和将数据加载到目标端的过程。


宽敞的钟表


含义:指字段多的数据库表。 通常是与业务主体相关联的指标、纬度、属性相关联的数据库表。


特点:


由于宽表将所有不同的内容放在同一个表中,因此宽表已经不符合3范式的模型设计规范。


缺点:有大量数据

冗余
好处:查询性能的提高和便捷
宽表的设计广泛应用于数据挖掘模型训练前的数据准备,通过把相关字段放在同一张表中,可以大大提供数据挖掘模型训练过程中迭代计算的消息问题。

数据库设计三范式

为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式时符合某一种设计要求的总结。

第一范式:确保每列保持原子性,即要求数据库表中的所有字段值都是不可分解的原子值。
第二范式:确保表中的每列都和主键相关。也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中。
作用:减少了数据库的冗余
第三范式:确保每列都和主键列直接相关,而不是间接相关。

赛车每天赚1000的方法p>


DWS:data warehouse service数据服务层集成为基于DWB上的基础数据对某个主题域进行分析的服务数据层,一般为宽表。 用于提供后续业务查询、OLAP分析、数据发布等。


用户行为,轻度聚合


主要对ODS/DWD层数据进行轻度汇总。


2.3数据服务层/APP应用层(ADS )应用程序数据服务APP应用程序数据服务。 该层主要提供数据产品和用于数据分析的数据,一般存储在ES、mysql等系统中用于在线系统。


我们说的报告数据,或者那么大幅度的表格,一般都放在这里。


3 .附录ETL


ETL :提取转换加载。 描述从源端提取、转换和将数据加载到目标端的过程。


宽敞的钟表


含义:指字段多的数据库表。 通常是与业务主体相关联的指标、纬度、属性相关联的数据库表。


特点:


由于宽表将所有不同的内容放在同一个表中,因此宽表已经不符合3范式的模型设计规范。


缺点:有大量数据

冗余
好处:查询性能的提高和便捷
宽表的设计广泛应用于数据挖掘模型训练前的数据准备,通过把相关字段放在同一张表中,可以大大提供数据挖掘模型训练过程中迭代计算的消息问题。

数据库设计三范式

为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式时符合某一种设计要求的总结。

第一范式:确保每列保持原子性,即要求数据库表中的所有字段值都是不可分解的原子值。
第二范式:确保表中的每列都和主键相关。也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中。
作用:减少了数据库的冗余
第三范式:确保每列都和主键列直接相关,而不是间接相关。


推荐阅读
  • 架构升级给DolphScheduler带来2~3倍性能提升
     引言大数据任务调度作为大数据建设中的核心基础设施,在经过社区用户们长期的使用中,不少用户对调度也提出了很多新的要求,为此,ApacheDolphinScheduler(Incub ... [详细]
  • sqlserver触发器写法_技术书籍荐读不可错过的SQL Server数据库书单来袭!
    朱熹读书之法,在循序渐进,熟读而精思。2019年转眼就要过去了,这一年,你读了哪些书,得到了哪些收获ÿ ... [详细]
  • MySQL数据 实时同步到KafkaBinlog canal、Maxwell、Kafka Connect 实现MySQL增量同步
    一、需求分析早期业务借助Sqoop将Mysql中的数据同步到Hive、hdfs来进行数据分析,使用过程中也带来了一些问题:虽然Sqoop支持增量同步但还属于粗粒度的离线同步,无法满 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • ubuntu用sqoop将数据从hive导入mysql时,命令: ... [详细]
  • 本文介绍了将mysql从5.6.15升级到5.7.15的详细步骤,包括关闭访问、备份旧库、备份权限、配置文件备份、关闭旧数据库、安装二进制、替换配置文件以及启动新数据库等操作。 ... [详细]
  • 解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法
    本文介绍了解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法,包括检查location配置是否正确、pass_proxy是否需要加“/”等。同时,还介绍了修改nginx的error.log日志级别为debug,以便查看详细日志信息。 ... [详细]
  • 基于Socket的多个客户端之间的聊天功能实现方法
    本文介绍了基于Socket的多个客户端之间实现聊天功能的方法,包括服务器端的实现和客户端的实现。服务器端通过每个用户的输出流向特定用户发送消息,而客户端通过输入流接收消息。同时,还介绍了相关的实体类和Socket的基本概念。 ... [详细]
  • 前言本文隶属于专栏《1000个问题搞定大数据技术体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出, ... [详细]
  • hadoop常用操作命令https:www.cnblogs.comcerofangp10460494.htmlday3_day6https:www.cnblogs.comcerof ... [详细]
  • [root@cloud4conf]#sqoopexport--connectjdbc:mysql:192.168.56.1:3306hive--usernameroot--pas ... [详细]
author-avatar
TT0852_235
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有