点击上方蓝字关注数据玩家

经常看到有人问这个问题,数据玩家也看过很多解释,感觉都不够直观,这里,我尝试用一个大家都理解的例子来说明。

什么是数据仓库?

大家都去宜家买过东西吧,还记得一楼的大仓库不,你如果看中了某个家具,想要自己去仓库提货,一般都会记下商品上的编码:

这个编码对于顾客来说,肯定是没有任何含义的,看到这个编码,不可能知道他是一个什么商品。

但是这个编码,对于仓库管理员来说是有含义的,他们可以清楚的知道,是哪一个货架,哪一个位置。

当然,顾客到仓库里顺着货架和位置也可以找到商品,但是总归不太直观,挑选的过程还是得在楼上进行。

因此数据仓库就相当于宜家的一楼仓库,在这里,数据(家具)按照特定的模型,如FS-LDM等(货架-位置)组织起来,这种模型,对于顾客(业务人员,数据最终用户)是不友好的,但是对于科技人员(仓库管理员,宜家员工)来说相对友好,因为他按照一种更加集约化的规则将数据(家具)管理起来了,存放集中、规整,提取数据(提货)不用跨库(货仓)寻找,查找的效率更加高。

那什么是数据集市呢?

还是用这个例子,上文提到,数据仓库对业务人员不是很友好,同样,你总不能让顾客直接逛仓库吧?顾客的需求,是按照家具的种类分门别类,按照家庭的不同房间,组合在一起展示的,正如宜家楼上的展厅:

图片来自:https://factualfacts.com

虽然也被吐槽像迷宫一样,但是总的来说,购物体验肯定比逛仓库来得好多了。

所以,数据集市就像宜家楼上的展厅,正如其名字“集市”一样,是一个面向最终用户(顾客)的数据市场,在这里,数据(家具)以一种更加容易被业务人员(顾客)接受的方式组合在一起,这些组合方式可能是多变的,因为业务人员(顾客)的需求是多变的,因此我们需要定期调整集市的计算口径(展厅的陈列方式),经常会创建新的数据集市(装修新的展厅)。

数据仓库和集市的概念理解了,其他一些相关问题也就迎刃而解,比如为什么有了数据仓库还要建数据集市?等等。

那什么是数据湖呢?

数据湖至今仍然没有一个特别标准的概念,各种概念中,比较统一的一点是数据湖存储的是未经加工的原始数据,包含结构化和非结构化的各类数据。数据玩家仍然尝试用上面的例子来解释。

大家都知道,宜家的家具是需要自己组装的,所以宜家的顾客们都有一些动手能力,他们突发奇想,所有的家具能不能全部拆散成零部件存放,由顾客们根据实际需要挑选零部件自行拼装?

所以,数据湖就是一个存储了所有企业内原始数据(家具零部件)的存储,这就带来一系列问题,加工后数据的存储已经非常复杂,原始数据则依赖更多的管理功能,不然数据又多又杂难以管理,数据湖会退化为数据沼泽。此外,原始数据如果缺少统一的数据标准,就像不同的家具零部件之间的接口不同,那就无法组装在一起了。

因此,数据湖必须有完善的数据管理功能,也依赖于统一的数据标准和良好的数据质量管理。

那什么又是数据中台呢?

数据中台也没有一个特别明确的定义,这里很难套用宜家的例子强行解释了,我们来看下各类数据平台:

在我们传统的数据应用中,随着数据对于业务友好度的增加,其时效性也在减弱。而我们的目标,显然是数据又快又好。既然各部门的需求都不一样,为何不让业务自助分析数据呢?于是我们有了右上角的目标状态。但是这个理想状态和我们现在的数据应用中间有巨大的空隙,靠什么来填补?答案就是数据中台。

我们可以将其分为狭义的数据中台和广义的数据中台。狭义的数据中台,指的是一套数据应用和工具,包括分布式ETL、数据资产管理、数据标签管理、数据沙箱、自助分析平台、元数据管理、数据质量管理等等,底层则以现有的数仓、大数据平台等为数据源,为企业提供数据资产管理的能力,并持续挖掘数据价值,持续提供数据智能服务。

广义的数据中台,则在狭义的数据中台基础之上,包含了顶层数据战略,数据治理体系以及数据管理及运营、数据文化培养和组织架构支撑,是一套持续管理和运营的体系。

可以这么说,狭义的数据中台,是专为达成数据中台的使命而打造,一类是让数据更快的处理、整合、加工,比如分布式ETL工具。随着传统数据被大数据平台逐步替代,ETL工具对于大数据平台的适配也需要与时俱进,支持分布式计算、弹性计算,并且减少开发量。

另一类是让数据更好的产生业务价值,比如数据标签管理,自助分析平台等。数据标签大家都在用,但是真正深度使用的企业都会感觉:建好容易用好难,如果没有一套标签管理系统,标签是否重复加工,标签的使用率、准确性等都无从掌控,业务部门想要针对近期营销活动新建一个标签,还得走开发流程,时效性也难以保证。数据标签管理系统就是为了解决数据标签的使用问题而建立。自助分析平台则是方便业务人员自助进行数据分析、加工、探索的平台,它与数据沙箱结合,直接将去隐私化的生产数据提供业务人员分析,使数据更快的产生价值,支撑关键决策。

广义的数据中台,则是辅助狭义数据中台达成使命的机制,虽然看起来都很“虚”,但是却是数据中台成功落地的必要保障。

那所有这些都必须做吗?

这个问题要看具体的企业情况,总的来说,一个大原则是以满足业务发展为第一优先,不要为了做基础设施而做基础设施,一定要以能解决业务诉求为最终目的。

《人月神话》里早就宣告了银弹不存在,自然,数据仓库、数据集市、数据湖、数据中台都不是银弹,千万不能以为做了他们就水到渠成,数字化转型就自动完成了。

简言之,用了一系列时髦的新技术不见得就是数字化领军企业,不用也不见得就是古典互联网时代的落后作坊。关键是认清自身的数字化现状,拟定数字化目标,制定数字化路径,优选场景,实现价值。新技术、各类数据基础设施只是这条道路上,一套套切实可行的行动方案,是把过去银行的种种数字化的尝试,重新以体系化、结构化的方法论梳理,并且赋予当下最新的技术架构予以实施。

觉得有用就给别人也看看

channelinboundhandler中都包含了哪一类的方法_数据仓库、数据集市、数据湖、数据中台到底有什么区别?都得做吗?...相关推荐

  1. channelinboundhandler中都包含了哪一类的方法_备考CMA考试有哪些方法技巧?

    其实不管是考哪一类的考试,都是有一定的方法技巧的,我们今天来说说备考CMA的方法技巧,和会计网一起来了解一下吧! 备考CMA有哪些方法技巧? 1.首先要放平心态 CMA考试更侧重考试的广度而不是深度, ...

  2. channelinboundhandler中都包含了哪一类的方法_标准气体的分类类别与相关气体配置方式方法...

    标准气体的分类类别与相关气体配置方式方法 在我们进行物理化学实验.生物工程.标准环境测量.工程实验测量等用于校准测量仪器的测量过程中,都会用到各种标准气体,标准气体测量是确定各项数值的专业测量标准. ...

  3. 机器学习数据倾斜的解决方法_机器学习并不总是解决数据问题的方法

    机器学习数据倾斜的解决方法 总览 (Overview) I was given a large dataset of files, what some would like to call big d ...

  4. jdbc 3种获得mysql插入数据的自增字段值的方法_【JDBC】向数据表插入数据时,自动获取生成的主键...

    数据表设计时,一般都会有一个主键(Key)(自己指定),有时也可以使用联合主键: 有许多数据库提供了隐藏列为表中的每行记录分配一个唯一键值(如:rowid): 当我们没有指定哪一列作为主键key时,数 ...

  5. 属性子集选择的基本启发方法_一文看懂数据预处理最重要的3种思想和方法

    导读:本文我们考虑应当采用哪些预处理步骤,让数据更加适合挖掘.数据预处理是一个广泛的领域,包含大量以复杂的方式相关联的不同策略和技术.我们将讨论一些最重要的思想和方法,并试图指出它们之间的相互联系. ...

  6. python怎么分析数据差异的方法_如何比较两组数据之间的差异性

    展开全部 1, 首先,分别把这两组数据分别设为x和y,打开SPSS,点击左下角的Variable  View选项卡,e5a48de588b6323131333532363134313032313635 ...

  7. camvid数据集使用方法_使用PyTorch处理CIFAR10数据集并显示

    在训练图像分类的时候,我们通常会使用CIFAR10数据集,今天就先写一下如何展示数据集的图片及预处理. 第一部分代码,展示原始图像: import numpy as npimport torch#导入 ...

  8. 分别声明Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)类。要求: (1)在两个基类中都包含姓名、年龄、性别、地址、电话等数

    分别声明Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)类.要求: (1)在两个基类中都包含姓名.年龄.性别.地址.电话等数 ...

  9. tenantid拦截php,实现领域驱动设计。为什么在所有版本库查询中都包含TenantId?...

    我想了解为什么Vaughn Vernon(在红皮书的Github Sample代码中)在每个版本库get或find方法中都包含tenantId.尤其是那些做基本的getById的方法. 在一个例子中, ...

最新文章

  1. one-to-many many-to-one 为什么只生成了一张表呢?
  2. Python | 深入浅出字符串
  3. HDU - 1827 Summer Holiday (强连通)
  4. JavaSE 几个常见术语区别
  5. Shell 命令大全Xhell入门
  6. .NET运行时中的监测和可观测性
  7. sql字符串拼接_Mybatis的SqlSession执行sql过程
  8. Android笔记-ERROR: Invalid revision: 3.17.20200511-g8787079
  9. github的python代码怎么跑_如何利用Python模拟GitHub登录详解
  10. python删除列表第几个元素_python中对列表list遍历的过程中删除元素4种方法
  11. mplayer slave 模式文档翻译
  12. 如何在用户区显示一张位图
  13. 回归标准差和残差平方和的关系_一文详解经典回归分析
  14. Axure RP 9软件安装步骤
  15. Unity 2D 自定义碰撞系统(一)
  16. 采访UI设计师Kiro
  17. 笔记本购机测试软件大全
  18. 【天天读书】2023 年,科技行业的创业者们推荐这 47 本书 | 创始人书单
  19. 软件需求工程 高校教学平台 测试报告
  20. 抖音上超火的3D立体动态相册表白特效(29)

热门文章

  1. 宏基因组教程Metagenomics Tutorial (HUMAnN2)
  2. Co-occurrence网络图在R中的实现
  3. Python使用matplotlib可视化Treemap图、treemap将分层数据显示为一组嵌套矩形,每一组都用一个矩形表示,该矩形的面积与其值成正比(Treemap)
  4. R语言使用coin包应用于独立性问题的置换检验(permutation tests)、使用普通cor.test函数和置换近似spearman_test函数、检验变量的相关性的显著性
  5. 运维管理工具+chef+puppet+ansible+SaltStack
  6. UI+UE+UX+区别
  7. 线性支持向量机、线性可分支持向量机、非线性支持向量机是怎么区分的?
  8. MATLAB 半球面
  9. 生物信息「知识图谱」
  10. Question: Short And Long Read Sequencing