摸鱼不如来了解一下--数据库DB与数据仓库DW区别和联系

简介: 数据库(DB)和数据仓库(DW)的区别与联系

数据库(DB)和数据仓库(DW)的区别与联系


数据库与数据仓库基础概念:

数据库:传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。

数据仓库:数据仓库系统的主要应用主要是OLAP(On-Line Analytical Processing),支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。


OLTP和OLAP概念补充:

数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing)、联机分析处理OLAP(On-Line Analytical Processing)。

  • OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。
  • OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。
  • OLTP 系统强调数据库内存效率,强调内存各种指标的命令率,强调绑定变量,强调并发操作;
  • OLAP 系统则强调数据分析,强调SQL执行市场,强调磁盘I/O,强调分区等。

网络异常,图片无法展示
|


如果以上补充内容不是很熟悉的话,可以参考我之前一篇博客,点击这里

举一个具体的例子:(转自知乎作者:陈诚),个人觉得例子描述的很清晰

举个最常见的例子,拿电商行业来说好了。

基本每家电商公司都会经历,从只需要业务数据库到要数据仓库的阶段。

第一阶段,电商早期启动非常容易,入行门槛低。找个外包团队,做了一个可以下单的网页前端 + 几台服务器 + 一个MySQL,就能开门迎客了。这好比手工作坊时期。

第二阶段,流量来了,客户和订单都多起来了,普通查询已经有压力了,这个时候就需要升级架构变成多台服务器和多个业务数据库(量大+分库分表),这个阶段的业务数字和指标还可以勉强从业务数据库里查询。初步进入工业化。

第三阶段,一般需要 3-5 年左右的时间,随着业务指数级的增长,数据量的会陡增,公司角色也开始多了起来,开始有了 CEO、CMO、CIO,大家需要面临的问题越来越复杂,越来越深入。高管们关心的问题,从最初非常粗放的:“昨天的收入是多少”、“上个月的 PV、UV 是多少”,逐渐演化到非常精细化和具体的用户的集群分析,特定用户在某种使用场景中,例如“20~30岁女性用户在过去五年的第一季度化妆品类商品的购买行为与公司进行的促销活动方案之间的关系”

这类非常具体,且能够对公司决策起到关键性作用的问题,基本很难从业务数据库从调取出来。原因在于:


  1. 业务数据库中的数据结构是为了完成交易而设计的,不是为了而查询和分析的便利设计的。
  2. 业务数据库大多是读写优化的,即又要读(查看商品信息),也要写(产生订单,完成支付)。因此对于大量数据的读(查询指标,一般是复杂的只读类型查询)是支持不足的。

而怎么解决这个问题,此时我们就需要建立一个数据仓库了,公司也算开始进入信息化阶段了


数据仓库的作用:

  1. 数据结构为了分析和查询的便利;
  2. 只读优化的数据库,即不需要它写入速度多么快,只要做大量数据的复杂查询的速度足够快就行了。

那么在这里前一种业务数据库(读写都优化)的是业务性数据库,后一种是分析性数据库,即数据仓库。


常见产品

数据库 数据仓库
MySQL,Oracle,SqlServer,DB2 AWS Redshift,Greenplum,Hive等


相关实践学习
数据库实验室挑战任务-初级任务
本场景介绍如何开通属于你的免费云数据库,在RDS-MySQL中完成对学生成绩的详情查询,执行指定类型SQL。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
目录
相关文章
|
1月前
|
Cloud Native 关系型数据库 MySQL
云原生数据仓库产品使用合集之ADB MySQL湖仓版和 StarRocks 的使用场景区别,或者 ADB 对比 StarRocks 的优劣势
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
5天前
|
存储 关系型数据库 MySQL
云原生数据仓库AnalyticDB产品使用合集之是否支持rdb数据库实时同步
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
126 4
|
7天前
|
存储 安全 Linux
使用 `db_dump` 命令备份 Berkeley DB 数据库
`db_dump` 是 Linux 中用于备份 Berkeley DB 数据库的工具,它将数据库内容转储到输出或文件。
|
17天前
|
缓存 算法 关系型数据库
SQL DB - 关系型数据库是如何工作的
• 绿:O(1)或者叫常数阶复杂度,保持为常数(要不人家就不会叫常数阶复杂度了)。 • 红:O(log(n))对数阶复杂度,即使在十亿级数据量时也很低。 • 粉:最糟糕的复杂度是 O(n^2),平方阶复杂度,运算数快速膨胀。 • 黑和蓝:另外两种复杂度(的运算数也是)快速增长。 如果要处理2000条元素: • O(1) 算法会消耗 1 次运算 • O(log(n)) 算法会消耗 7 次运算 • O(n) 算法会消耗 2000 次运算
|
23天前
|
存储 SQL Cloud Native
阿里云数据库 SelectDB 版全面商业化!开启现代化实时数据仓库的全新篇章
2024 年 5 月 21 日,由阿里云联合飞轮科技共同举办的「阿里云数据库 SelectDB 版商业化产品发布会」于线上召开。阿里巴巴集团副总裁、阿里云数据库产品事业部负责人李飞飞宣布,阿里云数据库 SelectDB 版在中国站及国际站全面发布,正式开启商业化的全新篇章!
阿里云数据库 SelectDB 版全面商业化!开启现代化实时数据仓库的全新篇章
|
24天前
|
存储 SQL 监控
阿里云数据库 SelectDB 版全面商业化!开启现代化实时数据仓库新篇章
2024 年 5 月 21 日,由阿里云联合飞轮科技共同举办的「阿里云数据库 SelectDB 版商业化产品发布会」于线上召开。阿里巴巴集团副总裁、阿里云数据库产品事业部负责人李飞飞宣布,阿里云数据库 SelectDB 版在中国站及国际站全面发布,正式开启商业化的全新篇章!
556 3
|
1月前
|
关系型数据库 MySQL 数据库
mysql 设置环境变量与未设置环境变量连接数据库的区别
设置与未设置MySQL环境变量在连接数据库时主要区别在于命令输入方式和系统便捷性。设置环境变量后,可直接使用`mysql -u 用户名 -p`命令连接,而无需指定完整路径,提升便利性和灵活性。未设置时,需输入完整路径如`C:\Program Files\MySQL\...`,操作繁琐且易错。为提高效率和减少错误,推荐安装后设置环境变量。[查看视频讲解](https://www.bilibili.com/video/BV1vH4y137HC/)。
98 3
mysql 设置环境变量与未设置环境变量连接数据库的区别
|
1月前
|
SQL 分布式计算 关系型数据库
云原生数据仓库产品使用合集之可以把ADB MySQL湖仓版数据库做成页面查询的数据库吗
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
1月前
|
存储 分布式计算 关系型数据库
云原生数据仓库产品使用合集之ADB如何确保数据库的可用性
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
1月前
|
Java 关系型数据库 数据库连接
数据库datetime 和tempshape的区别
该内容探讨了`datetime`和`tempshape`在Java和MyBatis中的使用区别。`datetime`对应`java.util.Date`,在MyBatis配置中为`DATE`类型,而`tempshape`配置为`TIMESTAMP`。当插入数据时,`tempshape`会自动记录创建和修改时间,而`datetime`需手动插入当前日期。更多区别可参考[CSDN博客](https://blog.csdn.net/qq_29039705/article/details/80416286)上的文章。
22 2
数据库datetime 和tempshape的区别