维度与事务数据库?

Dimensional vs Transactional Database?

试图了解有关 databases/data 仓库的更多信息,但对不同的术语感到困惑。维度数据库和事务数据库有什么区别?事务数据库与操作数据库相同吗?

据我所知,维度数据库采用星型模式,由带外键的事实表和以这些外键作为主键的维度表组成。

试图了解 OLAP、RDBMS、T-SQL 等以及所有这些其他术语如何适用。

请像我 5 岁一样解释。

关系数据库系统 (RDMS) 是设计用于以关系格式(行、列)保存数据的软件。 SQL 是一种使用 RDMS 的语言。 TSQL 是 Microsoft Sybase 对 SQL 语言的扩展,为 SQL 语言定义添加更多功能。 Read more on T-SQL

高层有两种关系数据库系统。

  1. 联机事务处理 (OLTP):Transactional/Operational 数据库
    • 这些是为进行商业交易而设计的。
    • 它们是这样设计的,因此没有数据冗余。为了设计这些系统,应用了归一化。 Read more on Normal Forms
    • 表格很窄 table,列数有限,使用 relationships.The 建模连接称为 ER 建模。
    • 事务锁定 table 行并且应尽可能短,因为写入者正在阻止其他写入者。
  2. 联机分析处理 (OLAP):报告数据库
    • 这些设计用于从已经发生的业务流程中生成报告。
    • 它们的设计方式是,数据在同一个 table 中随时可用,而不是加入另一个 table 并从中获取数据。因此,table 的列数更多。为了设计这些系统,应用了维度建模。 Read more dimensional modeling
    • 表分为事实、维度table。这些 table 是宽 table 并且 Fact 使用维度键与维度 table 相关。由于单个事实被多个维度table包围,看起来像一颗星,所以称为星型模式。该建模称为维度建模。
    • 由于查询是为了报告目的,因此没有交易的概念。读者不会阻止读者。因此,多个报告查询可以同时生成报告。