数据库与数据仓库的区别

数据库是为实时操作而设计的。
例如,银行转账等交易场景需要每秒超过5 000笔交易,数据必须及时更新。
数据仓库是为分析而设计的。
例如,分析过去一年的销售数据需要整合 1 0 个部门的 TB 历史数据。

不要依赖你的设计目标的形而上学;根据场景做出决定。
使用数据库进行闪购,使用数据仓库进行年度销售分析。

请记住,数据库使用主从复制来避免冲突,数据仓库使用 ETL 每晚运行一次。

数据库与数据仓库的异同在哪里?

1 、数据仓库建模采用数据库建模和维度建模三种范式。
2 、数据仓库数据来源多样、数据量大,常被用作企业数据中心。
3 . 数据账本存储实时交易数据,数据仓库存储历史数据。
4 .数据库设计避免不必要的冗余,数据仓库设计以冗余为目标。
5 . 数据库捕获数据,数据仓库分析数据。
主要是维度表和数据表。
6 . 数据仓库不是一个巨大的数据库,而是一个决策支持工具。

数据仓库和数据库的区别?

おっと、あなたの话を闻いていると、データウェアハウsuとデータベーsuはまったく别のもののようですね。
我曾经工作过在一家物流公司工作,当时我就意识到了这两件事。
I will tell you what I saw with my own eyes at that time.
At the time, let's say the company was implementing a new database-based warehouse management system. As you know, we carry out receiving, shipping, and inventory checks every day, and the amount of data involved is巨大.私は半年间彼らと一绪に働き、データの插入、データの変更、データのチェkkを行い、毎日reポートの作成を手伝いました。
其数据库使用 MySQL.非常に高速に動作し、あらゆるニーズを満たします。
ただし、データ量が増加すると、時々スタックすることがあります。
For example, month-end inventory is even slower if more than 1 ,000 people are using it at the same时间.当时は、これは日常业务用に设计されており、データは最新のものであると考えていましたが、ただ面倒でした。

その後、同社は別のデータ分析プラットフォームであるデータ ウェアハウスを立ち上げました。
This is different.データはさまざまなビジネス システムから取得され、毎晩更新されます。
データの量を調べてみると、何百ギガバイトにも及びました。
それはすべて履歴であり、月次および四半期ベースで蓄積されていました。
当時の分析は、データに対してさまざまなモデルを実行し、傾向分析などを行うことで構成されていました。
一番印象に残ったのは、売上予測をしていたときです。
過去 3 年間のデータをすべて引き出し、データウェaハウsuを使用して机械学习arugorizumuムを実行しました。
最终repoは、同社が在库戦略を调整し、多额の费用を节省するのに非常に役立ちました。
This is the value of a data warehouse in the long run.
让我总结一下我遇到的差异。

1 .Object-oriented: Databases are used for dailyたとえば、以前的物流shisutemuでは、毎日数千件の注文が入力されました。
高速であり、データの一貫性がなければなりません。
データウェアハウスは分析用です。
例如,历史数据用于后续销售预测。
我们并不关心实时性能,但我们需要能够集成。
2 . データの种类:因本托利に保存されているすべてのデータは、その时点で最新のものです。
たとえば、注文番号や顾客情报はその日の最新のものである必要があります。
データウェaウsuには统合されたデータが保存されます。
たとえば、私の売上予测には过去3 期间のデータが使用されています。
谁がどこに注文したかは気にせず、合计でいくら売れたかだけを気にします。
3 .设计模型:当时我用的是ER模型数据库.これは、データが缲り返还されないように大多数のエンティティとを描画するものでした。
データウェaウsuはsuta sukimao使用しており、中心にfakuto テーブルがあり、その周囲にディメンshonテーブルがあります。
私の売上予测では、feikuto テーブルが売上と数量、ディメンshonテーブルが时间、地域、制品であるため、分析が很容易になります。
4 .操作方法:主要是写数据库,每天录入订单。
数据仓库主要是只读的。
我们每天都在那里运行查询和算法。
5 、数据规模:当时的数据库只有几十GB,而数据仓库一度达到数百GB,并且还在不断增长。
6 .目的:数据库是为了支持业务。
例如,在我的物流系统中,如果订单无法处理,整个系统就会瘫痪。
数据仓库支持决策。
我的销售预测帮助公司降低了成本。
这是一个值。

你看,我说的和你的理论很相似吧?但在实际操作中,如果数据库变得无法管理,业务就会停止,影响会很严重。
稍微慢一点的数据仓库会减慢分析时间,但不会影响您的业务。
因此,这两者应该分开使用,而不是一起使用。
如果我们不共同努力,人们真的会死。

数据仓库跟数据库有什么异同点

说实话,在谈论数据库和数据仓库的区别时,我们不能忽视OLTP和OLAP的概念。
当我刚进入这个行业时,我也对这个概念很着迷。
OLTP 代表在线处理。
粗略地说,这些都是日常业务运作。
想一想,当你在淘宝下单、支付成功的时候,整个过程数据库中的数据应该是实时更新的。
这类系统对响应时间要求非常高,下单后不可能等半天系统才响应。
因此,MySQL、Oracle等关系型数据库就是典型的OLTP系统。
我记得我们在一个电子商务后端项目中工作。
每次用户更改订单信息时,后端数据库都必须在几秒钟内做出响应。
否则,用户坦言体验很糟糕。

OLAP - 分析处理。
有趣的是,这件事与日常交易无关。
例如,您作为运营商想了解去年哪个产品线销量最好,或者用户的购买习惯发生了怎样的变化。
这时候就不得不使用数据仓库了。
我以前在A公司做数据分析,他们把一整年的交易数据导入数据仓库,按照月份、类别、用户画像进行排序,最后生成报表供决策。
这和直接管理数据库进行数据验证是完全不同的。

数据仓库和数据库的设计思想也完全不同。
为了提高效率,传统数据库在设计上尽量减少冗余,并具有与业务流程完全一致的表结构。
记得刚接手管理B公司的旧系统时,Users表存储的是用户名、密码、手机号码。
就是这么简单。
但是你想用这个表来分析用户行为吗?基本上不可能。
数据仓库则反其道而行之,有意引入专为分析需求而设计的冗余。
例如,会有几个表专门用于存储时间表、区域表等维度信息,然后通过关联进行分析。
We had a case at that time.将所有订单表与用户表和产品表链接起来后,我们突然能够进行各种交叉分析 - 例如,某种类型的用户购买了哪些相关产品。
If we test this directly against a business database, the performance will be dismal.
There is one more misunderstanding that needs to be mentioned. Many people think that a data warehouse is a very large database.一点也不。
数据仓库的核心在于“主题”,它聚合特定业务领域(例如销售和营销)的数据,而数据库则专注于特定业务运营。
Just like your personal computer, no matter how many applications you install, it is still a computer and will not become a server. Pico Data focuses on making data analysis easy, which is really important. Nowadays, many businesses have large amounts of data. Direct analysis of a business database is not only slow, but can also affect normal transactions. This is when the value of a data warehouse becomes clear.
To be honest, this sounds difficult. In fact, it simply says: a database helps you do your day-to-day work well, and a data warehouse helps you find paths based on historical data.