社区编辑申请
注册/登录
关于数据仓库以及云数据仓库的那些事儿!
数据库 其他数据库 数据仓库 数据仓库
几乎所有投资者都看好数据库上云趋势,就在云数据库、云原生数据库呼声高涨的同时,云数仓成为一个新的赛道,开始走入大众眼帘。

这两年,大量资本涌入数据库市场,导致数据库市场竞争更加白热化。几乎所有投资者都看好数据库上云趋势,就在云数据库、云原生数据库呼声高涨的同时,云数仓成为一个新的赛道,开始走入大众眼帘。只是,在分析什么是云数仓、云数仓为什么火爆之前,我们必要先来了解下数据仓库的定义。

什么是数据仓库?数据仓库和商业智能是一回事吗?

数据库通常被分为关系型数据库(SQL)或者非关系型数据库 (NoSQL),以及联机事务处理(OLTP)和交易型、联机分析处理(OLAP),还有混合型业务处理 (HTAP)。另外,除了这些常见的数据库类型,专有数据库也对业务提升带了极大改进,只是随着数据库技术的发展,专有数据库成了“数据孤岛”的代名词。

之后,一些聪明的企业开始尝试,将不同数据源的数据汇聚在一起,这些将保持着原格式的数据存储起来的方式叫做数据湖;而按照通用格式或者经过加工与集成的数据,则被归为数据仓库。不同的数据仓库获取数据的方式不同,比如有的直接从操作型环境中获取数据,有的则从企业级数据仓库中获取数据,这些满足不同场景需要的数据仓库,又叫数据集市。换言之,数据集市是数据仓库的子集。

从本质上讲,数据仓库是一个分析型数据库,通常是关系型数据库,它由两个或多个数据源创建,通常可以存储具有 PB 级以上规模的历史数据,然后凭借大量的计算和内存资源来运行复杂的查询操作,最后生成数据报告。另外,数据仓库也是商业智能 (BI) 系统和机器学习获得直接数据源的唯一路径。

为什么说数据仓库特别重要?

企业之所以使用数据仓库,是因为在OLTP中,索引的创建和使用受到个数和数据类型的限制,并且当数值接近峰值或者数据类型不符合规范时,会减慢用户的数据分析和查询速度。但是,如果把数据放在数据仓库中,用户就可以自定义主题,根据需要进行数据分析和查询;同时,在数据仓库中使用数据,不会影响到OLTP 数据库的写入性能。

最重要的是,企业构建数据仓库除了能提升数据处理速度,还能对多源数据进行分析。比如:一名销售,在使用OLTP支撑的相关应用时,只能用来处理具体事务,但是不会看到销售所在地的天气,但是销售又想拥有天气预测功能,怎么办呢?如果将所有和天气相关的数据添加到数据仓库,销售就可以利用数据模型来判断当地的天气情况。

数据仓库与数据湖是什么关系?

数据仓库之所以与数据湖不同,除了数据存储的格式有区别,数据的“读取模式”也不一样。数据湖是读模式,很多数据都以易于读取的格式存储;而数据仓库是“写入模式”,能支持各种数据类型的存储,并且在索引查询和各种数据关系的处理上更方便、快捷。

这种“读取模式”适用于来自多个聚合根(不同上下文)的数据读取,避免出现数据丢失的现象,但有一个弊端是,很多数据会变成死数据,应用不会被使用,大量占据存储资源。“写入模式”适用于具有特定目的的数据,并且所使用数据必须与其他来源的数据正确关联。但有时会因为错误的数据格式而被丢弃,导致有价值的数据没有被使用。

主流的数据仓库架构有哪些?

通常,数据仓库架构分为三层,包括:源数据、数据仓库和数据应用。

  • 源数据层包括来自销售、营销和其他业务部门的运营数据,还可能包括社交媒体和外部数据,例如:人口调查和统计数据。

临时数据库,是指从数据源检索到的数据,属于临时存储区域,为下一步的数据处理做准备。比如:如果来源是非结构化的,例如:社交媒体文本,需要通过质量检验,删除质量差的数据。

  • 数据仓库层,也称为细节层,所有数据是一致、准确、干净的数据,对源数据进行了清洗,去除了杂质。
  • 数据应用层,是从前端应用直接读取的数据源,是指根据报表直接生成或者按主题需求计算出来的数据。

数据仓库获取数据以及在仓库中实现的转换和流动都可以认为是 ETL (提取、转换和加载)过程,即指经过清洗的数据,通过 ETL 工具提取数据,执行任何所需的映射和转换,并将数据加载到数据存储层。而ELT (提取、加载和转换)工具,则是指先存储数据,然后再进行转换,使用 ELT 工具的好处是,数据跳过传统的暂存层,直接进入数据湖。

什么是云数据仓库?与本地数据仓库相比有哪些区别?

随着云计算的深化发展,企业应用上云已成为主流趋势,而数据库上云则成为企业应用上云的最后一步。众所周知,云数据库的概念,是指被优化或部署到一个虚拟计算环境中的数据库,可以实现按需付费、按需扩展、高可用性以及存储整合等优势。而云数据仓库和云数据库的定义非常相似,也是指数据仓库可以在本地、云中或混合环境中部署。

从过去实践来看,数据仓库都在本地部署,但本地数据中心以及服务器的可扩展性差,所以数据仓库上云成为主流趋势。只是,云数据仓库也有一个挑战,那就是将PB 级数据全部迁移上云,涉及到计算、存储和内存等成本。另外,如何快速上云也是一个挑战。当然,随着市场的不断发展,这些问题都不再是问题,现在已经有超大规模的云服务提供商在提供大容量、基于磁盘的数据传输服务。

最后,到底选择本地数据仓库、云数据仓库,还是选择数据湖、数据集市,需要结合企业具体的数据量、增长速度等来确定,建议用户先拿少量数据去测试,或者将部分数据托管在云上,等所有应用和流程跑通,再把成熟的架构向核心关键业务扩展。

 

 

责任编辑:赵宁宁 来源: IT168网站
相关推荐

2022-06-24 09:38:43

数据库大数据

2022-06-30 18:17:00

数据集云数据建模计数据仓库

2022-06-13 08:00:00

数据湖数据仓库大数据

2022-06-09 09:38:39

Cloudlets云存储

2022-06-08 08:38:21

云存储数据安全

2022-03-16 16:13:50

数据仓库云供应商

2022-06-05 21:09:47

Python办公自动化

2022-02-10 09:00:00

2022-06-16 17:02:49

微软智能云混合云Azure

2022-06-30 10:56:18

字节云数据库存储

2022-03-30 16:55:17

Veritas数据自治自动化

2022-06-27 23:44:37

云原生云存储云计算

2022-06-28 22:13:33

Polars数据处理与分析

2022-06-15 08:25:07

Python天气数据可视化分析

2022-06-08 13:25:51

数据

2022-06-15 10:30:07

数据中心5G蜂窝网络

2022-06-15 16:16:21

分布式数据库鸿蒙

2022-04-02 14:51:58

数据中心数据安全物联网

2022-06-29 14:46:00

网络攻击数据泄露勒索软件

2022-06-13 07:52:43

数据中心数据链路层

同话题下的热门内容

横空出世的 Data Fabric,是下一个风口吗?SQL中常用的四个排序函数,你知道几个?分库分表实战:一叶知秋—图览分库分表外卖订单项目谈谈你对NoSQL的理解分库分表实战:最初的我们—了解一下单库外卖订单系统Flink SQL 知其所以然:TopN、Order By、Limit 操作一个注解搞定分布式事务分库分表实战:追根溯源—一次查询会经过哪些流程呢?

编辑推荐

几款开源的图形化Redis客户端管理软件推荐NoSQL数据库概览及其与SQL语法的比较为什么MongoDB敢说“做以前你从未能做的事”Python操作MongoDB看这一篇就够了一文看懂分布式数据库原理和 PostgreSQL 分布式架构
我收藏的内容
点赞
收藏

51CTO技术栈公众号