数据库和数据仓库之间有什么区别?


163

数据库和数据仓库之间有什么区别?

它们不是同一件事,还是至少是用同一件事写的(即Oracle RDBMS)?

Answers:


147

请查看以获取更多信息。

从上一个链接:

数据库

  1. 用于联机事务处理(OLTP),但可以用于其他目的,例如数据仓库。这将记录用户的数据以进行历史记录。
  2. 由于对表和联接进行了规范化(对于RDMS),因此很复杂。这样做是为了减少冗余数据并节省存储空间。
  3. 实体–关系建模技术用于RDMS数据库设计。
  4. 针对写操作进行了优化。
  5. 分析查询的性能低下。

数据仓库

  1. 用于在线分析处理(OLAP)。这将读取用户的历史数据以进行业务决策。
  2. 表和联接很简单,因为它们已被非规范化。这样做是为了减少分析查询的响应时间。
  3. 数据–建模技术用于数据仓库设计。
  4. 针对读取操作进行了优化。
  5. 分析查询的高性能。
  6. 通常的数据库。

同样重要的是要注意,数据仓库的来源可以从零到许多数据库。


3
数据建模是一个通用术语,不仅适用于数据仓库。(也许在第二个#3中,它们的意思是“维建模”,因为以我的经验,这是构建它们的最流行的方法。)最后一行没有意义:数据仓库如何“包含”数据库?我可能会说数据仓库的来源是0到许多(OLTP)数据库。
帕特里克·马尚

2
@Mark-在哪里说数据库仅适用于OLTP?它显示了数据库与数据仓库的关系。
TheCloudlessSky

5
@Nickolay-这是一个两年的答案。如有需要,请对其进行编辑和修复。
TheCloudlessSky

1
@DataMan-将此标记为正确答案。对于您的问题,它是一个很好的回答。
sanzy

1
数据建模技术和实体关系建模技术有什么区别?
QAIS

32

从非技术角度:数据库仅限于特定的应用程序或一组应用程序。

数据仓库是企业级数据存储库。它将包含业务的所有/许多部门的数据。它将共享此信息以提供业务的全局图。对于业务不同部门之间的集成而言,这也至关重要。

从技术角度来看:未给“数据仓库”一词提供公认的定义。我个人将数据仓库定义为数据集市的集合。每个数据集市由一个或多个数据库组成,其中该数据库特定于特定问题集(应用程序,数据集或过程)。

简单地说,数据库是数据仓库的组成部分。有很多地方可以探讨这个概念,但是由于没有“定义”,因此您在回答任何问题时都会发现挑战。


Datamart最好是OLTP数据库?
CᴴᴀZ

@CᴴᴀZ干什么?Datamart是为OLAP创建的,而Datamart则是一个很小的DWH(仅占业务的一小部分)。它是为Analysis创建的,因此,如果您需要OLTP系统,则不是Datamart的选择,如果需要Analysis的数据模型(启动模式或Snow流),则最好使用Datamart。
恩里克·贝尼托·卡萨多

嘿,@ Enrique,您的意思是:Datamart为OLAP做出了贡献。我从这里了解到Datamarts是OLTP的提示-SQL Server OLTP Datamart
CᴴᴀZ

嗨@CZ,我读了这篇文章,这就是如何使用Datamart制作OLTP。好 。(但我认为他们说的像例外一样)考虑到他们怎么说,OLTP表必须进行规范化以免出现不一致。在ER模式中进行标准化不是那么复杂,但是对于Star-Schema或Snow-Flow that而言则更为复杂。制作这些架构是为了简化数据库中的读取,而不是事务性操作。因此,即使有可能,使用像OLTP这样的Datamart也不是一个好主意。
恩里克·贝尼托·卡萨多

16

数据仓库是数据库的类型。

除了人们已经说过的话,数据仓库通常是OLAP,具有对索引等进行调整以进行读取而不是写入的操作,并且数据被非规范化/转换为易于阅读和分析的形式。

有些人说“数据库”与OLTP相同-这不是事实。OLTP同样是数据库的类型。

其他类型的“数据库”:文本文件,XML,Excel,CSV ...,平面文件:-)


1
这是所有人的正确答案。而且一下就Datamart的:It is a logical subset of Data warehouse, generally based upon business functions.
CᴴᴀZ

7

解释它的最简单方法是说数据仓库不仅仅包含数据库。数据库是以某种方式组织的数据的集合,但是数据仓库是专门组织来“促进报告和分析”的。但是,这还不是全部,因为数据仓库还包含“检索和分析数据,提取,转换和加载数据以及管理数据字典的方法也被认为是数据仓库系统的基本组成部分”。

数据仓库


4

数据库:-OLTP(在线交易过程)

  • 它是当前数据,最新详细数据,平面关系隔离数据。
  • 实体关系用于设计数据库
  • 数据库大小100MB-GB的简单交易或查询

数据仓库

  • OLAP(在线分析过程)
  • 它是关于历史数据的星型模式,雪状模式和星系
  • 模式用于设计数据仓库
  • 数据库大小100GB-TB改进的查询性能基础,可用于数据挖掘数据可视化
  • 通过快速,一致,交互地访问各种可能的数据视图,使用户能够更深入地了解和了解公司数据的各个方面

4

数据仓库与数据库:数据仓库是专门为数据分析而设计的,它涉及读取大量数据以了解数据之间的关系和趋势。数据库用于捕获和存储数据,例如记录交易的详细信息。

数据仓库:合适的工作负载 -分析,报告,大数据。 数据源 -从许多来源收集并标准化的数据。 数据捕获 -通常按预定的批处理计划进行批量写入操作。 数据规范化 -非规范化的架构,例如Star架构或Snowflake架构。 数据存储 -为简化访问和高速查询而优化。使用柱状存储的性能。 数据访问 -优化以最小化I / O和最大化数据吞吐量。

事务性数据库:合适的工作负载 -事务处理。 数据源 -从单个源(例如事务系统)直接捕获的数据。 数据捕获 -针对连续写入操作进行了优化,因为可以使用新数据来最大化事务吞吐量。 数据标准化 -高度标准化的静态架构。 数据存储 -针对单个面向行的物理块的高写入操作进行了优化。 数据访问 -大量的小型读取操作。


1

应用程序的任何数据存储通常都使用数据库。它可能是关系数据库,也可能没有当前正在发展的sql数据库。

数据仓库也是数据库。为了公司的分析报告目的,我们可以将数据仓库数据库称为专用数据存储。此数据用于关键业务决策。

有组织的数据有助于有效地报告和做出业务决策。


1

数据库:

用于在线事务处理(OLTP)。

  • 面向交易。
  • 面向应用程序。
  • 当前数据。
  • 详细数据。
  • 可扩展的数据。
  • 许多用户,管理员/操作人员。
  • 执行时间:短。

数据仓库:

用于在线分析处理(OLAP)。

  • 面向分析。
  • 面向学科。
  • 历史数据。
  • 汇总数据。
  • 静态数据。
  • 管理员,用户不多。
  • 执行时间:长。

1

数据仓库(DW)是用于收集和管理来自各种来源的数据以提供有意义的业务见解的过程。数据仓库通常用于连接和分析来自异构源的业务数据。数据仓库是构建用于数据分析和报告的BI系统的核心。


0

数据仓库的源可以是数据库的群集,因为数据库用于在线事务处理,例如保留当前记录。.但是在数据仓库中,它存储用于在线分析过程的历史数据。


0

数据仓库是通常存储在数据库中的一种数据结构。数据仓库指的是数据模型以及存储在其中的数据类型-建模后的数据(数据模型)用于服务器以进行分析。

数据库可以归类为容纳数据的任何结构。传统上,这将是RDBMS,例如Oracle,SQL Server或MySQL。但是,数据库也可以是NoSQL数据库(例如Apache Cassandra)或列式MPP(例如AWS RedShift)。

您会看到数据库只是存储数据的地方。数据仓库是一种特定的数据存储方式,具有特定的用途,即为分析查询提供服务。

OLTP与OLAP并不能告诉您DW和数据库之间的区别,OLTP和OLAP都驻留在数据库中。它们只是以不同的方式(不同的数据模型方法)存储数据,并用于不同的目的(OLTP-记录事务,针对更新进行了优化; OLAP-分析信息,针对读取进行了优化)。


-1

简而言之:Dataware->大量数据用于分析/存储/复制和分析。数据库->使用常用数据进行CRUD操作。

数据仓库是您日常不使用的存储类型,而数据库则是您经常处理的事情。

例如。如果我们要查询银行对帐单,那么它会在数据库的最后3/4/6 / more月给我们。如果您还需要更多,它将存储在Dataware house中。


-1

例子:一所房子值得$100,000,并且在$1000每年。

为了跟踪当前房屋价值,您将使用数据库,因为房屋价值每年都会变化。

三年后,您将可以看到房屋的价值 $103,000.

为了跟踪房屋的历史价值,您应该使用数据仓库,因为房屋的价值应为

$100,000 on year 0, 
$101,000 on year 1, 
$102,000 on year 2, 
$103,000 on year 3. 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.