ODS

(操作数据存储)

编辑 讨论

操作数据存储ODS(Operational Data Store)是数据仓库体系结构中的一个可选部分,也被称为贴源层。ODS具备数据仓库的部分特征和OLTP系统的部分特征,它是“面向主题的、集成的、当前或接近当前的、不断变化的”数据。
 
中文名
操作数据存储
外文名
Operational Data Store
用    途
业务系统
功    能
存储、查询以及形成隔离层

作用

编辑

一般在带有ODS的系统体系结构中,ODS都设计为如下几个作用:
1、在业务系统和数据仓库之间形成一个隔离层
一般的数据仓库应用系统都具有非常复杂的数据来源,这些数据存放在不同的地理位置、不同的数据库、不同的应用之中,从这些业务系统对数据进行抽取并不是一件容易的事。因此,ODS用于存放从业务系统直接抽取出来的数据,这些数据从数据结构、数据之间的逻辑关系上都与业务系统基本保持一致,因此在抽取过程中极大降低了数据转化的复杂性,而主要关注数据抽取的接口、数据量大小、抽取方式等方面的问题。
2、转移一部分业务系统细节查询的功能
在数据仓库建立之前,大量的报表、分析是由业务系统直接支持的,在一些比较复杂的报表生成过程中,对业务系统的运行产生相当大的压力。ODS的数据从粒度、组织方式等各个方面都保持了与业务系统的一致,那么原来由业务系统产生的报表、细节数据的查询自然能够从ODS中进行,从而降低业务系统的查询压力。
3、完成数据仓库中不能完成的一些功能
一般来说,带有ODS的数据仓库体系结构中,DW层所存储的数据都是进行汇总过的数据,并不存储每笔交易产生的细节数据,但是在某些特殊的应用中,可能需要对交易细节数据进行查询,这时就需要把细节数据查询的功能转移到ODS来完成,而且ODS的数据模型按照面向主题的方式进行存储,可以方便地支持多维分析等查询功能。
在一个没有ODS层的数据仓库应用系统体系结构中,数据仓库中存储的数据粒度是根据需要而确定的,但一般来说,最为细节的业务数据也是需要保留的,实际上也就相当于ODS,但与ODS所不同的是,这时的细节数据不是“当前、不断变化的”数据,而是“历史的,不再变化的”数据。

设计方法

编辑

在数据仓库设计方法和信息模型建模方法中,前人的著作对各种思路和方法都做过大量的研究和对比,重点集中在ER模型和维模型的比较和应用上。根据我们的实践经验,ER模型和维模型在数据仓库设计中并非绝对对立,尤其在ODS设计上,从宏观的角度来看数据之间的关系,以ER模型最为清晰,但从实现出来的数据结构上看,用维模型更加符合实际的需要。因此孤立地看ER模型或者维模型都缺乏科学客观的精神,需要从具体应用上去考虑如何应用不同的设计方法,但目标是一定的,就是要能够把企业的数据从宏观到微观能够清晰表达,并且能够实现出来。

设计指南

编辑

在ODS的概念定义中,已经描述了ODS的功能和特点,实际上ODS设计的目标就是以这些特点作为依据的。ODS设计与DW设计在着眼点上有所不同,ODS重点考虑业务系统数据是什么样子的,关系如何,在业务流程处理的哪个环节,以及数据抽取接口等问题。

数据调研

数据调研的内容和要求,在《调研规范》文档中做了详细定义,此处不再重复。

数据范围

确定数据范围实际上是对ODS进行主题划分的过程,这种划分是基于对业务系统的调研的基础上而进行的,并不十分关心整个数据仓库系统上端应用需求,但是需要把上端应用需求与ODS数据范围进行验证,以确保应用所需的数据都已经从业务系统中抽取出来,并且得到了很好的组织。一般来讲,主题的划分是以业务系统的信息模型为依据的,设计者需要综合各种业务系统的信息模型,并进行宏观的归并,得到企业范围内的高层数据视图,并加以抽象,划定几个逻辑的数据主题范围。在这个阶段,以ER模型表示数据主题关系最为恰当。第二步:根据数据范围进行数据分析和主题定义 在第一步中定义出来了企业范围内的高层数据视图,以及所收集到的各种业务系统的资料,在这一步中,需要对大的数据主题进行分解,并进行主题定义,直到每个主题能够直接对应一个主题数据模型为止。在这个阶段,将把第一步生成的每个ER图中的实体进行分解,分解的结果仍以ER表示为佳。

主题元素

定义维、度量、主题、粒度、存储期限
定义维的概念特性:
维名称,名称应该能够清晰表示出这个维的业务含义。
维成员,也就是这个维所代表的具体的数据,
维层次,维成员之间的隶属与包含的层次关系,每个层次需要定义名称
定义度量的概念特性:
度量名称,名称应该能够清晰表述这个度量的业务含义
定义主题的概念特性:
主题名称和含义,说明该主题主要包含哪些数据,用于什么分析;
主题所包含的维和度量;
主题的事实表,以及事实表的数据。
定义粒度:
主题中事实表的数据粒度说明,这种粒度可以通过对维的层次限制加以说明,也可以通过对事实表数据的业务细节程度进行说明。
定义存储期限:
主题中事实表中的数据存储周期。
第四步:迭代,归并维、度量的定义
在ODS中,因数据来自于多个系统,数据主题划分时虽然对数据概念进行了一定程度上的归并,但具体的业务代码所形成的各个维、以及维成员等还需要进一步进行归并,把概念统一的维定义成一个维,不允许同一个维存在不同的实体表示(象不同的业务系统中一样)。
第五步:物理实现
定义每个主题的数据抽取周期、抽取时间、抽取方式、数据接口,抽取流程和规则。
物理设计不仅仅是ODS部分的数据库物理实现,设计数据库参数、操作系统参数、数据存储设计之外,有关数据抽取接口等问题必须清晰定义。
 
转载自:https://baike.baidu.com/item/ODS/15146368?fr=aladdin

DW-ODS的更多相关文章

  1. 转载:ODS简介

    什么是ODS? 信息处理的多层次要求导致了一种新的数据环境——DB-DW的中间层ODS(操作型数据存储)的出现.ODS是“面向主题的.集成的.当前或接近当前的.不断变化的”数据.通过统一规划,规范框架 ...

  2. 微博广告推荐中有关Hadoop的那些事

    一.背景 微博,一个DAU上亿.每日发博量几千万的社交性产品,拥有庞大的数据集.如何高效得从如此规模的数据集中挖掘出有价值的信息,以增强用户粘性,提高信息传播速度,就成了重中之重.因此,我们引入了ha ...

  3. Hive速览

    一.概述 Hive由Facebook开源,是一个构建在Hadoop之上的数据仓库工具 将结构化的数据映射成表 支持类SQL查询,Hive中称为HQL 1.读模式 2.Hive架构 3.使用Hive的原 ...

  4. DW,DM,ODS的区别

    数据仓库的重要应用是将不同来源的数据和异构数据通过ETL整合在一起,为决策分析提供支撑,若在同一个数据库中分不同用户,此意义不大:假设所有有用户都在一个数据库里,如果因为某个原因数据库重启,那么会影响 ...

  5. ODS、DW和DM

    参考资料: 数据仓库ODS.DW和DM概念区分:https://www.jianshu.com/p/72e395d8cb33

  6. 数据仓库分层ODS DW DM 主题 标签

    数据仓库知识之ODS/DW/DM - xingchaojun的专栏 - CSDN博客 数据仓库为什么要分层 - 晨柳溪 - 博客园 数据仓库的架构与设计 - Trigl的博客 - CSDN博客 数据仓 ...

  7. ODS与DW之间的关系

    1.什么是数据仓库? 数据仓库是面向主题的.集成的.相对稳定的.反应历史变化的数据集合,主要用于决策支持和信息的全局共享. 时效:T+1 2.什么是ODS? ODS全称为Operational Dat ...

  8. DW数据仓库与ODS的区别

    这两天接触到ODS,开始很纳闷,有了DW(Data Warehouse)干嘛还要ODS(Operational Data Store),于是不查不知道,一查吓一跳,这里面还有这么多道道,这里总结一下, ...

  9. 【转】数据仓库ODS、DW和DM概念区分

    今天看了一些专业的解释,还是对ODS.DW和DM认识不深刻,下班后花时间分别查了查它们的概念. ODS——操作性数据 DW——数据仓库 DM——数据集市 1.数据中心整体架构   数据中心整体架构 数 ...

  10. 浅析数据库(DB)、操作数据存储(ODS)和数据仓库(DW)的区别与联系

    文章背景: 相信大部分刚接触上面三个概念的同学,都多多少少会有些迷惑,现在我就给大家简单分析下这三者的关系,希望大家对这三者的概念理解有所帮助吧. 本文主要从下面两类关系来叙述上面三者的关系: 数据库 ...

随机推荐

  1. PAT(B) 1070 结绳(Java)

    题目链接:1070 结绳 (25 point(s)) 题目描述 给定一段一段的绳子,你需要把它们串成一条绳.每次串连的时候,是把两段绳子对折,再如下图所示套接在一起.这样得到的绳子又被当成是另一段绳子 ...

  2. ubuntu 16.04 英伟达驱动安装

    参考:https://blog.csdn.net/breeze5428/article/details/80013753 换了一个新的地方,得重新配置Ubuntu 16.04,在配置NVIDIA驱动的 ...

  3. git重置账号密码

    1.打开控制面板(快捷打开win+R,输入control) 2.点击打开用户账户 3.点击凭据管理器 4.点击windows凭据删除你的git凭据即可

  4. PCL提取圆柱系数

    网上看了很多教程,没看到圆柱提取后的系数解释. 源码如下: #include <pcl/ModelCoefficients.h> #include <pcl/io/pcd_io.h& ...

  5. 不能在本机启动SQL Server服务错误代码126(要在协议里面禁用所有别的VIA,是怎么回事?)

    在启动数据库sql服务的时候提示[Windows 不能在 本地计算机 启动 SQL Server . 有关更多信息,查阅系统事件日志.如果这是非 Microsoft 服务,请与服务厂商联系,并参考特定 ...

  6. 接口认证:Bearer Token(Token 令牌)

    因为HTTP协议是开放的,可以任人调用.所以,如果接口不希望被随意调用,就需要做访问权限的控制,认证是好的用户,才允许调用API. 目前主流的访问权限控制/认证模式有以下几种: 1)Bearer To ...

  7. 浅析JavaScript异步

    一直以来都知道JavaScript是一门单线程语言,在笔试过程中不断的遇到一些输出结果的问题,考量的是对异步编程掌握情况.一般被问到异步的时候脑子里第一反应就是Ajax,setTimseout...这 ...

  8. 智表(ZCELL)插件产品选型说明书,市场主流插件对比,帮您选型

    智表(ZCELL)插件产品选型说明书,市场主流插件对比,帮您选型. 说明书下载:地址 一.    我们为什么需要智表插件产品 客户早已养成EXCEL中的操作习惯,BS架构下,普通的网页交互,与客户习惯 ...

  9. 学而不思则罔 - SAP云平台ABAP编程环境的由来和适用场景

    最近Jerry写了一系列关于SAP云平台ABAP编程环境的技术文章,这些文章都是围绕着在云上的ABAP编程环境的具体知识点来分享,比如要完成一个具体的开发需求,所需要的编程步骤.这些文章陆续收到一些读 ...

  10. Python学习日记(二十三) 类命名空间和组合

    类命名空间 在一个类中它的函数(方法)属于动态属性,直接定义的变量属于静态属性 首先先定义一个类,并在这个类里面加入静态变量.属性等然后将一个对象实例化 class Fighter: #定义一个战机的 ...