數(shù)據(jù)庫:傳統(tǒng)的關(guān)系型數(shù)據(jù)庫的主要應(yīng)用,主要是基本的渐苏、日常的事務(wù)處理掀潮,例如銀行交易。
數(shù)據(jù)倉庫:數(shù)據(jù)倉庫系統(tǒng)的主要應(yīng)用主要是OLAP(On-Line Analytical Processing)琼富,支持復(fù)雜的分析操作仪吧,側(cè)重決策支持,并且提供直觀易懂的查詢結(jié)果鞠眉。
我嘗試著再補(bǔ)充些具體的事例來說明薯鼠,這樣更可以幫助大家更好理解一些。舉個(gè)最常見的例子械蹋,拿電商行業(yè)來說好了出皇。基本每家電商公司都會(huì)經(jīng)歷哗戈,從只需要業(yè)務(wù)數(shù)據(jù)庫到要數(shù)據(jù)倉庫的階段恶迈。
電商早期啟動(dòng)非常容易,入行門檻低谱醇。找個(gè)外包團(tuán)隊(duì)暇仲,做了一個(gè)可以下單的網(wǎng)頁前端 + 幾臺(tái)服務(wù)器 + 一個(gè)MySQL,就能開門迎客了副渴。這好比手工作坊時(shí)期奈附。
第二階段,流量來了煮剧,客戶和訂單都多起來了斥滤,普通查詢已經(jīng)有壓力了,這個(gè)時(shí)候就需要升級(jí)架構(gòu)變成多臺(tái)服務(wù)器和多個(gè)業(yè)務(wù)數(shù)據(jù)庫(量大+分庫分表)勉盅,這個(gè)階段的業(yè)務(wù)數(shù)字和指標(biāo)還可以勉強(qiáng)從業(yè)務(wù)數(shù)據(jù)庫里查詢佑颇。初步進(jìn)入工業(yè)化。
第三個(gè)階段草娜,一般需要 3-5 年左右的時(shí)間挑胸,隨著業(yè)務(wù)指數(shù)級(jí)的增長,數(shù)據(jù)量的會(huì)陡增宰闰,公司角色也開始多了起來茬贵,開始有了 CEO簿透、CMO、CIO解藻,大家需要面臨的問題越來越復(fù)雜老充,越來越深入。高管們關(guān)心的問題螟左,從最初非常粗放的:“昨天的收入是多少”啡浊、“上個(gè)月的 PV、UV 是多少”胶背,逐漸演化到非常精細(xì)化和具體的用戶的集群分析巷嚣,特定用戶在某種使用場景中,例如“20~30歲女性用戶在過去五年的第一季度化妝品類商品的購買行為與公司進(jìn)行的促銷活動(dòng)方案之間的關(guān)系”奄妨。這類非常具體涂籽,且能夠?qū)緵Q策起到關(guān)鍵性作用的問題苹祟,基本很難從業(yè)務(wù)數(shù)據(jù)庫從調(diào)取出來砸抛。原因在于:業(yè)務(wù)數(shù)據(jù)庫中的數(shù)據(jù)結(jié)構(gòu)是為了完成交易而設(shè)計(jì)的,不是為了而查詢和分析的便利設(shè)計(jì)的树枫。業(yè)務(wù)數(shù)據(jù)庫大多是讀寫優(yōu)化的直焙,即又要讀(查看商品信息),也要寫(產(chǎn)生訂單砂轻,完成支付)奔誓。因此對(duì)于大量數(shù)據(jù)的讀(查詢指標(biāo),一般是復(fù)雜的只讀類型查詢)是支持不足的搔涝。
然而怎么解決這個(gè)問題厨喂,此時(shí)我們就需要建立一個(gè)數(shù)據(jù)倉庫了,公司也算開始進(jìn)入信息化階段了庄呈。數(shù)據(jù)倉庫的作用在于:數(shù)據(jù)結(jié)構(gòu)為了分析和查詢的便利蜕煌;只讀優(yōu)化的數(shù)據(jù)庫,即不需要它寫入速度多么快诬留,只要做大量數(shù)據(jù)的復(fù)雜查詢的速度足夠快就行了斜纪。那么在這里前一種業(yè)務(wù)數(shù)據(jù)庫(讀寫都優(yōu)化)的是業(yè)務(wù)性數(shù)據(jù)庫,后一種是分析性數(shù)據(jù)庫文兑,即數(shù)據(jù)倉庫盒刚。
最后總結(jié)一下:數(shù)據(jù)庫 比較流行的有:MySQL, Oracle, SqlServer等數(shù)據(jù)倉庫 比較流行的有:AWS Redshift, Greenplum, Hive等這樣把數(shù)據(jù)從業(yè)務(wù)性的數(shù)據(jù)庫中提取、加工绿贞、導(dǎo)入分析性的數(shù)據(jù)庫就是傳統(tǒng)的 ETL 工作∫蚩椋現(xiàn)在也有一些新的方法,這展開說又是另一件事情了籍铁,有機(jī)會(huì)再詳細(xì)說說贮聂。