1、OLTP和OLAP

      OLTP的全称是 Online Transaction Processing, OLTP主要用传统的关系型数据库来进行事务处理。OLTP最核心的需求是单条记录的高效快速处理,索引技术、

    分库分表等最根本的诉求就是解决此问题。

      OLAP的全称是 Online Analytical Processing,OLAP能够处理和统计大量的数据,不像OLTP数据库需要考虑数据的增删改查和并发控制等,OLAP数据一般只需要处理数据查询请求,

    数据导入批量导入的,因此通过列存储,列压缩和位图索引等技术可以大大加快响应请求的速度。

  2、OLTP和OLAP数据的简单对比

    

  3、数据仓库逻辑架构设计

    离线数据仓库通常基于维度建模理论来构建,离线数据仓库通常从逻辑上进行分层,分词主要出于以下考虑:

    1、隔离性:用户使用的应该是数据团队精心加工后的数据,而不是来自于业务系统的原始数据,这样做的好处一是,用户使用的是精心准备过的、规范的、干净的、从业务视角的数据。

          非常容易理解和使用。二是如果上游业务系统发生变革甚至重构(比如表结构、字段、业务含义等),数据团队会负责处理所有这些变化,最小化对下游用户的影响。

    2、性能和可为维护性: 专业的人做专业的事,数据分层使得数据的加工基本都在数据团队,从而相同的业务逻辑不用重复执行,节省了相应的存储和计算开销。

          此外数据分层也使得数据仓库的维护变得清晰和便捷,每层只负责各自的任务,某层的数据加工出现问题,只需要修改该层即可。

    3、规范性:对于一个公司和组织来说,数据的口径非常重要,大家谈论一个指标的时候,必须基于一个明确的、公认i的口径,此外表、字段以及指标必须进行规范。

    4、ODS层:数据仓库源头系统的数据表通常会原封不动地存储一份,这称为ODS(Operation Data Store)层, ODS层也经常会被称为准备区(Staging area),

          它们是后续数据仓库层(即基于Kimball维度建模生成的事实表和维度表层,以及基于这些事实表和明细表加工的汇总层数据)加工数据的来源,

          同时ODS层也存储着历史的增量数据或全量数据。

    5、DWD和DWS层:数据仓库明细层(Data Warehouse Detail , DWD)和数据仓库汇总层(Data Warehouse Summary, DWS)是数据仓库的主题内容。

          DWD和DWS层的数据是ODS层经过ETL清洗、转换、加载生成的,而且它们通常都是基于Kimball的维度建模理论来构建的,并通过一致性维度和数据总线来保证各个子主题的维度一致性。

    6、应用层(ADS):应用层主要是各个业务放或者部门基于DWD和DWS建立的数据集市(Data Mart,DM),数据集市DM是相对于DWD和DWS的数据仓库(Data Warehouse, DW)

          来说的。一般来说,应用层的数据来源于DW层,但原则上不允许直接访问ODS层。此外,相比DW层,应用层只包含部门或因为方自己关心的明细层和汇总层数据。

    

  

    参考资料:《离线和实时大数据开发实战》

转载于:https://www.cnblogs.com/shaosks/p/9436653.html

大数据开发实战:数据仓库技术相关推荐

  1. 《离线和实时大数据开发实战》(二)大数据平台架构 技术概览

    前言 接着上一章 构建大数据开发知识体系图谱,本次继续分享邦中老师的<离线和实时大数据开发实战>读书笔记 .到底什么样的平台才能算是大数据平台呢?带着这个问题,我们开始今天的内容 ( •̀ ...

  2. 大数据开发实战:数据流图及相关数据技术

    1.大数据流程图 2.大数据各个环节主要技术 2.1.数据处理主要技术 Sqoop:(发音:skup)作为一款开源的离线数据传输工具,主要用于Hadoop(Hive) 与传统数据库(MySql,Pos ...

  3. 大数据开发实战教程目录

    大数据开发实战教程目录 一. 课程性质.目的和任务 本课程目的是让学生了解并掌握四个领域 (1)大数据系统的起源及系统特征 (2)大数据系统的架构设计及功能目标设计 (3)大数据系统程序开发.企业大数 ...

  4. 大数据开发实战:Hive优化实战2-大表join小表优化

    4.大表join小表优化 和join相关的优化主要分为mapjoin可以解决的优化(即大表join小表)和mapjoin无法解决的优化(即大表join大表),前者相对容易解决,后者较难,比较麻烦. 首 ...

  5. 大数据开发实战:Hive表DDL和DML

    1.Hive 表 DDL 1.1.创建表 Hive中创建表的完整语法如下: CREATE [EXTERNAL] TABLE [IF NOT EXISTS]  table_name [ (col_nam ...

  6. 大数据开发:数据仓库建模方法与模型

    大数据平台当中的数据仓库,往往需要通过建模来更好地对数据进行存储和管理,这其中涉及到性能.成本.效率.质量等多方面的综合考量,对于工程师来说,也需要细细规划.今天的大数据开发分享,我们主要来讲讲数据仓 ...

  7. hive 行转列和列转行的方法_读离线和实时大数据开发实战,为你揭开 Hive 优化实践的神秘面纱...

    前言 「1024,1GB,一级棒!程序仔们节日快乐!」 ❝ 指尖流动的 1024 行代码,到底是什么? ❞ ❝ 是10行的迷茫?是101行的叛逆?是202行的理性思考?是307行对渴望的冲动?还是40 ...

  8. 大数据开发最火技术Kafka背后的“黑科技”

    Kafka是由Apache软件基金会开发的一个开源流处理平台,被广泛地应用在数据缓冲.异步通信.汇集日志.系统解耦等方面.相比较于其他常见消息系统,Kafka在保障了大部分功能特性的同时,还在高吞吐. ...

  9. 【ADS层表-V1】前端页面所需的数据库设计——大数据开发实战项目(五)

    文章目录 前言 TiTan数据运营系统--数据库 表的具体设计 前言 如果你从本文中学习到丝毫知识,那么请您点点关注.点赞.评论和收藏 大家好,我是爱做梦的鱼,我是东北大学大数据实验班大三的小菜鸡,非 ...

最新文章

  1. AI如何落地企业?UCloud三步走战略:Build,Train,Deploy
  2. Spring Boot 2.x 新特性总结及迁移指南
  3. PowerDesigner如何将物理模型转为对象模型,将对象模型转生成Java类
  4. 3.1_ 4连续分配管理方式
  5. 计算机图形学_GAMES101-现代计算机图形学课程 全笔记
  6. java resourcebundle properties_Java使用Properties类和ResourceBundle类读取properties文件
  7. CSS绘制三角形—border法
  8. 交换机端口mtu值最大_中低端交换机修改三层接口MTU值的说明
  9. SpringMVC(07) -- RESTful
  10. C语言中task的用法,c – 在std :: packaged_task中使用成员函数
  11. 中南网络教育计算机基础在线作业二,《计算机应用基础》2(G)在线作业答案
  12. 什么录音软件可以录制电影对白
  13. Unix编程/应用问答中文版(转)
  14. 疫情下的企业应对之道:企业如何降本提质增效
  15. StringTie用法详解
  16. office2010
  17. 机器人速度与车轮速度的转换
  18. html大二实训大作业:蛋糕甜品网站设计——棕色蛋糕甜品店网页设计(4页) HTML+CSS+JavaScript HTML5期末大作业 web网页设计制作成品
  19. 腾讯的硬盘里,有互联网的昨天今天和明天
  20. oracle数据库自动断开链接,ORACLE自动断开数据库连接解决办法

热门文章

  1. Winforn中通过NPOI导出Excel时通过XSSFClientAnchor和XSSFPicture添加图片
  2. Linux-编辑器vim与nano的使用
  3. Thymeleaf中使用select进行消息回显时提示:Exception evaluaating SpringEL expression
  4. springboot使用原生servlet、filter、listener
  5. 三种Shell脚本编程中避免SFTP输入密码的方法
  6. RE:大家说说开发的时候类名和文件名一般是怎么规范的?
  7. 笔试训练1 知识点整理
  8. java arrays.sort() c_5.4 (Java学习笔记)集合的排序(Collections.sort(),及Arrays.sort())...
  9. UIProgressView的使用
  10. CentOS7下解决ifconfig command not found的办法