ODS(Operational Data Store)可操作的数据存储。

  很多人对ODS究竟是什么有很多的困惑,ODS对于不同的人可以有不同的看法,我主要说说什么是最主流的定义。首先我们需要注意,ODS不同于数据仓库(Data warehouse)或数据集市(Data mart)。数据仓库是用来保存公司来自很多不同的来源的历史数据,并主要将这些数据用于趋势分析,生成报表的地方。它是一个公司很多主题域(subject area)的一个合集,它在企业中是唯一的(一个企业不会有很多个数据仓库,那样数据可能会对不上)、真实的(只认可这一个数据仓库中的数据)。数据集市和数据仓库扮演的角色一样,只是数据仓库包含多个主题域,而数据集市仅仅面向一个主题域。可以把数据仓库认为是多个数据集市组合体。

  ODS的目的是集成公司不同来源的企业数据,以便于实时或者接近实时地产生操作报告。通常ODS中数据的结构和源数据结构很像,尽管在数据集成的时候,可以被清理、去规范化, 还有一些数据按照公司政策来集成。这个集成是粒度最小的、一天内发生的频率最高的集成。通常ODS不会被设计成用来做历史数据分析或者趋势分析工作,这些是数据仓库的功能。ODS通常会被用来当做数据仓库的数据来源。

  总结下ODS和数据仓库的不同之处:

    ~~ODS用于最低粒度的查询用,而数据仓库通常保存的是综合过的、粒度较粗的数据,通常用于较复杂的、分析性的查询。

    ~~ODS通常实时性较高,通常保存的数据是实时的或者近乎实时的,因此能较及时地返回查询请求,数据仓库通常是历史的数据,通常分析的数据较多,不能做到实时返回查询,分析需要比较长时间。

    ~~ODS保存的数据视窗较小,即时间跨度不大;数据仓库保存的几乎是一个公司的所有历史数据。

    ~~ODS为当前或接近实时数据的操作和战术决策提供信息,而数据仓库为战略决策提供反馈,从而整体改进系统。

    ~~ODS抽取数据的频率可以是几分钟、几小时;数据仓库的抽取数据的频率可以是每天、每周、每月、或者每季度。

  为什么需要一个ODS的一些原因:

    ~~源系统能够提供有限的分析能力

    ~~可以使用更好的、更有效的工具来做分析,而不是直接在源系统上做数据分析

    ~~可以更好地做权限控制,仅仅让某些人访问到公司的数据,生成实时或近乎实时的报表统计

    ~~可以将公司不同的数据库中的数据集合到一起,并基于当天的数据做近乎实时的分析和生成报表

ODS(Operational Data Store)定义的更多相关文章

  1. ExtJs Ext.data.Store 处理

    var storeCpye = new Ext.data.GroupingStore({ proxy : new Ext.data.HttpProxy({ url : 'cxgl_cpye.app?d ...

  2. Open-sourcing LogDevice, a distributed data store for sequential data

    https://logdevice.io/blog/2018/09/12/open-sourcing-announcement.html September 12, 2018   We are exc ...

  3. 设置 Ext.data.Store 传参的请求方式

    设置 Ext.data.Store 传参的请求方式 1.extjs 给怎么给panel设背景色 设置bodyStyle:'background:#ffc;padding:10px;', var res ...

  4. Ext.data.Store添加动态参数

    多条件查询页面的参数都是动态的,并且我们通常还会有默认加载页面.此时,动态添加参数非常重要,其中baseparam是解决问题的关键. @ 将查询条件定义为一个全局变量 var param_01 = & ...

  5. 转: Ext.data.Store 修改Post请求

    Extjs 4.0版本 var Store = Ext.create('Ext.data.Store', { pageSize: pageSize, model: 'Ext.data.Model名称' ...

  6. 对于Ext.data.Store 介紹 与总结,以及对以前代码的重构与优化

    对于Ext.data.Store 一直不是很了解,不知道他到底是干嘛的有哪些用处,在实际开发中也由于不了解也走了不少弯路, store是一个为Ext器件提供record对象的存储容器,行为和属性都很象 ...

  7. Extjs 项目中常用的小技巧,也许你用得着(5)--设置 Ext.data.Store 传参的请求方式

    1.extjs 给怎么给panel设背景色 设置bodyStyle:'background:#ffc;padding:10px;', var resultsPanel = Ext.create('Ex ...

  8. 【ArcGIS】ArcGIS Data Store配置

    一.错误提示 Unable to configure the ArcGIS Data Store with the GIS Server. Please make sure that the GIS ...

  9. sencha touch carousel 扩展 CardList 可绑定data/store

    扩展代码: /* *扩展carousel *通过data,tpl,store配置数据 */ Ext.define('ux.CardList', { extend: 'Ext.carousel.Caro ...

随机推荐

  1. Navicat Premium 12连接MySQL数据库出现Authentication plugin 'caching_sha2_password' cannot be loaded的解决方案

    1. 管理员权限运行命令提示符,登陆MySQL mysql -u root -p password 2. 修改账户密码加密规则并更新用户密码 ALTER USER 'root'@'localhost' ...

  2. Solon rpc 之 SocketD 协议

    1. 简介 SocketD 是一种二进制的点对点通信协议,是一种新的网络通信第七层协议.旨在用于分布式应用程序中.从这个意义上讲,SocketD可以是RSocket等其他类似协议的替代方案.它的消息协 ...

  3. 【LeetCode】365.水壶问题

    题目描述 解题思路 思路一:裴蜀定理-数学法 由题意,每次操作只会让桶里的水总量增加x或y,或者减少x或y,即会给水的总量带来x或y的变化量,转为数字描述即为:找到一对整数a,b使得下式成立: ax+ ...

  4. IPC 经典问题:Sleeping Barber Problem

    完整代码实现: #include <stdio.h> #include <unistd.h> #include <time.h> #include <stdl ...

  5. Hadoop源码:namenode格式化和启动过程实现

    body { margin: 0 auto; font: 13px / 1 Helvetica, Arial, sans-serif; color: rgba(68, 68, 68, 1); padd ...

  6. 两万字长文总结,梳理 Java 入门进阶那些事

    大家好,我是程序员小跃,一名在职场已经写了6年程序的老程序员,从一开始的菊厂 Android 开发到现在某游戏公司的Java后端架构,对Java还是相对了解的挺多. 大概是半年前吧,在知乎上有个知友私 ...

  7. Kafka 探险 - 生产者源码分析: 核心组件

    这个 Kafka 的专题,我会从系统整体架构,设计到代码落地.和大家一起杠源码,学技巧,涨知识.希望大家持续关注一起见证成长! 我相信:技术的道路,十年如一日!十年磨一剑! 往期文章 Kafka 探险 ...

  8. SSRF - Pikachu

    概述: SSRF(Server-Side Request Forgery:服务器端请求伪造) 其形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能,但又没有对目标地址做严格过滤与限制 导致 ...

  9. 避免用using包装DbContext【翻译】

    EF和EF Core 的DbContext类实现IDisposable接口.因此,很多最佳编程实践中都建议你将它们放在一个using()块中.不幸的是,至少在Web应用程序中,这样做通常不是一个好主意 ...

  10. Junit测试和反射

    Junit单元测试 测试分类 黑盒测试:不需要写代码,给输入值,看程序能否得到输出期望值. 白盒测试:需要些代码,关注程序具体的执行流程. Junit的使用 步骤 定义一个测试类(测试用例). 定义测 ...