① 數據倉庫和資料庫有什麼區別
1. 主要區別在於數據結構,資料庫中的建模一般遵循三範式,而數據倉庫的建模有特定的方式,一般採用維度建模(你源褲可以參考ralphkimball、billinmon、還有一種叫DV模型的作者忘記叫啥了),使用這些建模方式的原因是便於OLAP建立,增加統計查詢較率等。
② 數據倉庫與資料庫有什麼聯系
資料庫
★資料庫發展階段大致劃分為如下幾個階段:
人工管理階段;
文件系統階段;
資料庫系統階段;
高級資料庫階段。
當人們從不同的角度來描述這一概念時就有不同的定義(當然是描述性的)。例如,稱資料庫是一個「記錄保存系統」(該定義強調了資料庫是若干記錄的集合)。又如稱資料庫是「人們為解決特定的任務,以一定的組織方式存儲在一起的相關的數據的集合」(該定義側重於數據的組織)。更有甚者稱資料庫是「一個數據倉庫」。當然,這種說法雖然形象,但並不嚴謹。
嚴格地說,資料庫是「按照數據結構來組織培穗、存儲和管理數據的倉庫」。在經濟管理的日常工作中,常常需要把某些相關的數據放進這樣「倉庫」,並根據管理的需要進行相應的處理。例如,企業或事業單位的人事部門常常要把本單位職工的基本情況(職工號、姓名、年齡、性別、籍貫、工資、簡歷等)存放在表20.6.3中,這張表就可以看成是一個資料庫。有了這個"數據倉庫"我們就可以根據需要隨時查詢某職工的基本情況,也可以查詢工資在某個范圍內的職工人數等等。這些工作如果都能在計算機上自動進行,那我們的人事管理就可以達到極高的水平。此外,在財務管理、倉庫管理、生產管理中也需要建立眾多的這種"資料庫",使其可以利用計算機實現財務、倉庫、生產的自動化管理。
J.Martin給資料庫下了一個比較完整的定義:資料庫是存儲在一起的相關數據的集合,這些數據是結構化的,無有害的或不必要的冗餘,並為多種應用服務;數據的存儲獨立於使用它的程序;對資料庫插入新數據,修改和檢索原有數據均能按一種公用的和可控制的方式進行。當某個系統中存在結構上完全分開的若干個資料庫時,則該系統包含一個「資料庫集合」。
· 資料庫的優點
使用資料庫可以帶來許多好處:如減少了數據的冗餘度,從而大大地節省源扒了數據的存儲空間;實現數據資源的充分共享等等。此外,資料庫技術還為用戶提供了非常簡便的使用手段使用戶易於編寫有關資料庫應用程序。特別是近年來推出的微型計算機關系資料庫管理系統dBASELL,操作直觀,使用靈活,編程方便,環境適應廣泛(一般的十六位機,如IBM/PC/XT,國產長城0520等均可運行種軟體),數據處理能力極強。資料庫在我國正得到愈來愈廣泛的應用,必將成為經濟管理的有力工具。
資料庫是通過資料庫管理系統(DBMS-DATA BASE MANAGEMENT SYSTEM)軟體來實現數據的存儲、管理與使用的dBASELL就是一種資料庫管理系統軟體。
· 資料庫結構與資料庫種類
資料庫通常分為層次式資料庫、網路式資料庫和關系式資料庫三種。而不同的資料庫是按不同的數據結構來聯系和組織的。
1.數據結構模型
(1)數據結構
所謂數據結構是指數據的組織形式或數據之間的聯系。如果用D表示數據,用R表示數據對象之間存在的關系集合,則將DS=(D,R)稱為數據結構。例如,設有一個電話號碼簿,它記錄了n個人的名字和相應的電話號碼。為了方便地查找某人的電話號碼,將人名和號碼按字典順序排列,並在名字的後面跟隨著對應的電話號碼。這樣,若要查找某人的電話號碼(假定他的名字的第一個字母是Y),那麼只須查找以Y開頭的那些名字就可以了。該例中,數據的集合D就是人名和電話號碼,它們之間的聯系R就是按字典順序的排列,其相應的數據結構就是DS=(D,R),即一個數組。(2)數據結構種類
數據結構又分為數據的邏輯結構和數據的物理結構。數據的邏輯結構是從邏輯的角度(即數據間的聯系和組織方式)來觀察數據,分析數據,與數據的存儲位置無關。數據的物理結構是指數據在計算機中存放的結構,即數據的邏輯結構在計算機中的實現形式,所以物理結構也被稱為存儲結構。本節只研究數據的邏輯結構,並將反映和實現數據聯系的方法稱為數據模型。
目前,比較流行的數據模型有三種,即按圖論理論建立的層次結構模型和網狀結構模型以及按關系理論建立的關系結構模型。
2.層次、網狀和關系資料庫系統
(1)層次結構模型
層次結構模型實質上是一種有根結點的定向有序樹(在數學中"樹"被定義為一個無回的連通圖)。例如圖20.6.4是一個高等學校的組織結構圖。這個組織結構圖像一棵樹,校部就是樹根(稱為根結點),各系、專業、教師、學生等為枝點(稱為結點),樹根與枝點之間的聯系稱為邊,樹根與邊之比為1:N,即樹根只有一個配裂卜,樹枝有N個。這種數據結構模型的一般結構見圖20.6.5所示。
圖20.6.4 高等學校的組織結構圖 圖20.6.5 層次結構模型
圖20.6.5中,Ri(i=1,2,…6)代表記錄(即數據的集合),其中R1就是根結點(如果Ri看成是一個家族,則R1就是祖先,它是R2、R3、R4的雙親,而R2、R3、R4互為兄弟),R5、R6也是兄弟,且其雙親為R3。R2、R4、R5、R6又被稱為葉結點(即無子女的結點)。這樣,Ri(i=1,2,…6)就組成了以R1為樹根的一棵樹,這就是一個層次數據結構模型。
按照層次模型建立的資料庫系統稱為層次模型資料庫系統。IMS(Information Manage-mentSystem)是其典型代表。
(2)網狀結構模型
在圖20.6.6中,給出了某醫院醫生、病房和病人之間的聯系。即每個醫生負責治療三個病人,每個病房可住一到四個病人。如果將醫生看成是一個數據集合,病人和病房分別是另外兩個數據集合,那麼醫生、病人和病房的比例關系就是M:N:P(即M個醫生,N個病人,P間病房)。這種數據結構就是網狀數據結構,它的一般結構模型如圖20.6.7所示。在圖中,記錄Ri(i=1,2,8)滿足以下條件:
①可以有一個以上的結點無雙親(如R1、R2、R3)。
②至少有一個結點有多於一個以上的雙親。在"醫生、病人、病房"例中,"醫生集合有若干個結點(M個醫生結點)無"雙親",而"病房"集合有P個結點(即病房),並有一個以上的"雙親"(即病人)。
圖20.6.6 醫生、病房和病人之間的關系
圖20.6.7 網狀結構模型
按照網狀數據結構建立的資料庫系統稱為網狀資料庫系統,其典型代表是DBTG(Data Base Task Group)。用數學方法可將網狀數據結構轉化為層次數據結構。
(3)關系結構模型
關系式數據結構把一些復雜的數據結構歸結為簡單的二元關系(即二維表格形式)。例如某單位的職工關系就是一個二元關系(見表20.6.8)。這個四行六列的表格的每一列稱為一個欄位(即屬性),欄位名相當於標題欄中的標題(屬性名稱);表的每一行是包含了六個屬性(工號、姓名、年齡、性別、職務、工資)的一個六元組,即一個人的記錄。這個表格清晰地反映出該單位職工的基本情況。
表20.6.8 職工基本情況
通常一個m行、n列的二維表格的結構如表20.6.9所示。
表中每一行表示一個記錄值,每一列表示一個屬性(即欄位或數據項)。該表一共有m個記錄。每個記錄包含n個屬性。
作為一個關系的二維表,必須滿足以下條件:
(1)表中每一列必須是基本數據項(即不可再分解)。(2)表中每一列必須具有相同的數據類型(例如字元型或數值型)。(3)表中每一列的名字必須是唯一的。(4)表中不應有內容完全相同的行。(5)行的順序與列的順序不影響表格中所表示的信息的含義。
由關系數據結構組成的資料庫系統被稱為關系資料庫系統。
在關系資料庫中,對數據的操作幾乎全部建立在一個或多個關系表格上,通過對這些關系表格的分類、合並、連接或選取等運算來實現數據的管理。dBASEII就是這類資料庫管理系統的典型代表。對於一個實際的應用問題(如人事管理問題),有時需要多個關系才能實現。用dBASEII建立起來的一個關系稱為一個資料庫(或稱資料庫文件),而把對應多個關系建立起來的多個資料庫稱為資料庫系統。dBASEII的另一個重要功能是通過建立命令文件來實現對資料庫的使用和管理,對於一個資料庫系統相應的命令序列文件,稱為該資料庫的應用系統。因此,可以概括地說,一個關系稱為一個資料庫,若干個資料庫可以構成一個資料庫系統。資料庫系統可以派生出各種不同類型的輔助文件和建立它的應用系統。
· 資料庫的要求與特性
為了使各種類型的資料庫系統能夠充分發揮它們的優越性,必須對資料庫管理系統的使用提出一些明確的要求。
1.建立資料庫文件的要求
(1)盡量減少數據的重復,使數據具有最小的冗餘度。計算機早期應用中的文件管理系統,由於數據文件是用戶各自建立的,幾個用戶即使有許多相同的數據也得放在各自的文件中,因而造成存儲的數據大量重復,浪費存儲空間。資料庫技術正是為了克服這一缺點而出現的,所以在組織數據的存儲時應避免出現冗餘。
(2)提高數據的利用率,使眾多用戶都能共享數據資源。
(3)注意保持數據的完整性。這對某些需要歷史數據來進行預測、決策的部門(如統計局、銀行等)特別重要。
(4)注意同一數據描述方法的一致性,使數據操作不致發生混亂。如一個人的學歷在人事檔案中是大學畢業,而在科技檔案中卻是大學程度,這樣就容易造成混亂。
(5)對於某些需要保密的數據,必須增設保密措施。
(6)數據的查找率高,根據需要數據應能被及時維護。
2.資料庫文件的特徵
無論使用哪一種資料庫管理系統,由它們所建立的資料庫文件都可以看成是具有相同性質的記錄的集合,因而這些資料庫文件都有相同的特性:
(1)文件的記錄格式相同,長度相等。
(2)不同的行是不同的記錄,因而具有不同的內容。
(3)不同的列表示不同的欄位名,同一列中的數據的性質(屬性)相同。
(4)每一行各列的內容是不能分割的,但行的順序和列的順序不影響文件內容的表達。
3.文件的分類
對文件引用最多的是主文件和事物文件。其他的文件分類還包括表文件、備份文件、檔案的輸出文件等。下面將講述這些文件。
(1)主文件。主文件是某特定應用領域的永久性的數據資源。主文件包含那些被定期存取以提供信息和經常更新以反映最新狀態的記錄。典型的主文件有庫存文件、職工主文件和收帳主文件等。
(2)事務文件。事務文件包含著作為一個信息系統的數據活動(事務)的那些記錄。這些事務被分批以構成事務文件。例如,從每周工資卡上錄制下來的數分批存放在一個事務文件上,然後對照工資清單文件進行處理以便列印出工資支票和工資記錄簿。
(3)表文件。表文件是一些表格。之所以單獨建立表文件而不把表設計在程序中是為了便於修改。例如,一個公用事業公司的稅率表或國內稅務局的稅率就可以存儲在表中文件。
(4)備用文件。備用文件是現有生產性文件的一個復製品。一旦生產性文件受到破壞,利用備用文件就可以重新建立生產性文件。
(5)檔案文件。檔案文件不是提供當前處理使用的,而是保存起來作為歷史參照的。例如,國內稅務局(IRS)可能要求檢查某個人最近15年的歷史。實際上,檔案文件恰恰是在給定時間內工作的一個"快照"。
(6)輸出文件。輸出文件包含將要列印在列印機上的、顯在屏幕上的或者繪制在繪圖儀上的那些信息的數值映象。輸出文件可以是"假離線的"(存儲在輔存設備上),當輸出設備可用時才進行實際的輸出。
數據倉庫
1.
數據倉庫是在企業管理和決策中面向主題的、集成的、與時間相關的、不可修改的數據集合
數據倉庫,英文名稱為Data Warehouse,可簡寫為DW。
數據倉庫之父Bill Inmon在1991年出版的「Building the Data Warehouse」一書中所提出的定義被廣泛接受——數據倉庫(Data Warehouse)是一個面向主題的(Subject Oriented)、集成的(Integrated)、相對穩定的(Non-Volatile)、反映歷史變化(Time Variant)的數據集合,用於支持管理決策(Decision Making Support)。
◆面向主題:操作型資料庫的數據組織面向事務處理任務,各個業務系統之間各自分離,而數據倉庫中的數據是按照一定的主題域進行組織的。
◆集成的:數據倉庫中的數據是在對原有分散的資料庫數據抽取、清理的基礎上經過系統加工、匯總和整理得到的,必須消除源數據中的不一致性,以保證數據倉庫內的信息是關於整個企業的一致的全局信息。
◆相對穩定的:數據倉庫的數據主要供企業決策分析之用,所涉及的數據操作主要是數據查詢,一旦某個數據進入數據倉庫以後,一般情況下將被長期保留,也就是數據倉庫中一般有大量的查詢操作,但修改和刪除操作很少,通常只需要定期的載入、刷新。
◆反映歷史變化:數據倉庫中的數據通常包含歷史信息,系統記錄了企業從過去某一時點(如開始應用數據倉庫的時點)到目前的各個階段的信息,通過這些信息,可以對企業的發展歷程和未來趨勢做出定量分析和預測。
數據倉庫是一個過程而不是一個項目。
數據倉庫系統是一個信息提供平台,他從業務處理系統獲得數據,主要以星型模型和雪花模型進行數據組織,並為用戶提供各種手段從數據中獲取信息和知識。
從功能結構化分,數據倉庫系統至少應該包含數據獲取(Data Acquisition)、數據存儲(Data Storage)、數據訪問(Data Access)三個關鍵部分。
什麼是數據倉庫
(轉載自北大高科網站,http://www.pku-ht.com/)
目前,數據倉庫一詞尚沒有一個統一的定義,著名的數據倉庫專家W.H.Inmon在其著作《Building the Data Warehouse》一書中給予如下描述:數據倉庫(Data Warehouse)是一個面向主題的(Subject Oriented)、集成的(Integrate)、相對穩定的(Non-Volatile)、反映歷史變化(Time Variant)的數據集合,用於支持管理決策。對於數據倉庫的概念我們可以從兩個層次予以理解,首先,數據倉庫用於支持決策,面向分析型數據處理,它不同於企業現有的操作型資料庫;其次,數據倉庫是對多個異構的數據源有效集成,集成後按照主題進行了重組,並包含歷史數據,而且存放在數據倉庫中的數據一般不再修改。
根據數據倉庫概念的含義,數據倉庫擁有以下四個特點:
1、面向主題。操作型資料庫的數據組織面向事務處理任務,各個業務系統之間各自分離,而數據倉庫中的數據是按照一定的主題域進行組織。主題是一個抽象的概念,是指用戶使用數據倉庫進行決策時所關心的重點方面,一個主題通常與多個操作型信息系統相關。
2、集成的。面向事務處理的操作型資料庫通常與某些特定的應用相關,資料庫之間相互獨立,並且往往是異構的。而數據倉庫中的數據是在對原有分散的資料庫數據抽取、清理的基礎上經過系統加工、匯總和整理得到的,必須消除源數據中的不一致性,以保證數據倉庫內的信息是關於整個企業的一致的全局信息。
3、相對穩定的。操作型資料庫中的數據通常實時更新,數據根據需要及時發生變化。數據倉庫的數據主要供企業決策分析之用,所涉及的數據操作主要是數據查詢,一旦某個數據進入數據倉庫以後,一般情況下將被長期保留,也就是數據倉庫中一般有大量的查詢操作,但修改和刪除操作很少,通常只需要定期的載入、刷新。
4、反映歷史變化。操作型資料庫主要關心當前某一個時間段內的數據,而數據倉庫中的數據通常包含歷史信息,系統記錄了企業從過去某一時點(如開始應用數據倉庫的時點)到目前的各個階段的信息,通過這些信息,可以對企業的發展歷程和未來趨勢做出定量分析和預測。
企業數據倉庫的建設,是以現有企業業務系統和大量業務數據的積累為基礎。數據倉庫不是靜態的概念,只有把信息及時交給需要這些信息的使用者,供他們做出改善其業務經營的決策,信息才能發揮作用,信息才有意義。而把信息加以整理歸納和重組,並及時提供給相應的管理決策人員,是數據倉庫的根本任務。因此,從產業界的角度看,數據倉庫建設是一個工程,是一個過程。
整個數據倉庫系統是一個包含四個層次的體系結構,具體由下圖表示。
數據倉庫系統體系結構
·數據源:是數據倉庫系統的基礎,是整個系統的數據源泉。通常包括企業內部信息和外部信息。內部信息包括存放於RDBMS中的各種業務處理數據和各類文檔數據。外部信息包括各類法律法規、市場信息和競爭對手的信息等等;
·數據的存儲與管理:是整個數據倉庫系統的核心。數據倉庫的真正關鍵是數據的存儲和管理。數據倉庫的組織管理方式決定了它有別於傳統資料庫,同時也決定了其對外部數據的表現形式。要決定採用什麼產品和技術來建立數據倉庫的核心,則需要從數據倉庫的技術特點著手分析。針對現有各業務系統的數據,進行抽取、清理,並有效集成,按照主題進行組織。數據倉庫按照數據的覆蓋范圍可以分為企業級數據倉庫和部門級數據倉庫(通常稱為數據集市)。
·OLAP伺服器:對分析需要的數據進行有效集成,按多維模型予以組織,以便進行多角度、多層次的分析,並發現趨勢。其具體實現可以分為:ROLAP、MOLAP和HOLAP。ROLAP基本數據和聚合數據均存放在RDBMS之中;MOLAP基本數據和聚合數據均存放於多維資料庫中;HOLAP基本數據存放於RDBMS之中,聚合數據存放於多維資料庫中。
·前端工具:主要包括各種報表工具、查詢工具、數據分析工具、數據挖掘工具以數據挖掘及各種基於數據倉庫或數據集市的應用開發工具。其中數據分析工具主要針對OLAP伺服器,報表工具、數據挖掘工具主要針對數據倉庫。
目前,數據倉庫一詞尚沒有一個統一的定義,著名的數據倉庫專家W.H.Inmon在其著作《Building the Data Warehouse》一書中給予如下描述:數據倉庫(Data Warehouse)是一個面向主題的(Subject Oriented)、集成的(Integrate)、相對穩定的(Non-Volatile)、反映歷史變化(Time Variant)的數據集合,用於支持管理決策。對於數據倉庫的概念我們可以從兩個層次予以理解,首先,數據倉庫用於支持決策,面向分析型數據處理,它不同於企業現有的操作型資料庫;其次,數據倉庫是對多個異構的數據源有效集成,集成後按照主題進行了重組,並包含歷史數據,而且存放在數據倉庫中的數據一般不再修改。多維
數據倉庫的組成
數據倉庫資料庫
是整個數據倉庫環境的核心,是數據存放的地方和提供對數據檢索的支持。相對於操縱型資料庫來說其突出的特點是對海量數據的支持和快速的檢索技術。
數據抽取工具
把數據從各種各樣的存儲方式中拿出來,進行必要的轉化、整理,再存放到數據倉庫內。對各種不同數據存儲方式的訪問能力是數據抽取工具的關鍵,應能生成COBOL程序、MVS作業控制語言(JCL)、UNIX腳本、和SQL語句等,以訪問不同的數據。數據轉換都包括,刪除對決策應用沒有意義的數據段;轉換到統一的數據名稱和定義;計算統計和衍生數據;給缺值數據賦給預設值;把不同的數據定義方式統一。
元數據
元數據是描述數據倉庫內數據的結構和建立方法的數據。可將其按用途的不同分為兩類,技術元數據和商業元數據。
技術元數據是數據倉庫的設計和管理人員用於開發和日常管理數據倉庫是用的數據。包括:數據源信息;數據轉換的描述;數據倉庫內對象和數據結構的定義;數據清理和數據更新時用的規則;源數據到目的數據的映射;用戶訪問許可權,數據備份歷史記錄,數據導入歷史記錄,信息發布歷史記錄等。
商業元數據從商業業務的角度描述了數據倉庫中的數據。包括:業務主題的描述,包含的數據、查詢、報表;
元數據為訪問數據倉庫提供了一個信息目錄(informationdirectory),這個目錄全面描述了數據倉庫中都有什麼數據、這些數據怎麼得到的、和怎麼訪問這些數據。是數據倉庫運行和維護的中心,數據倉庫伺服器利用他來存貯和更新數據,用戶通過他來了解和訪問數據。
訪問工具
為用戶訪問數據倉庫提供手段。有數據查詢和報表工具;應用開發工具;管理信息系統(EIS)工具;在線分析(OLAP)工具;數據挖掘工具。
數據集市(DataMarts)
為了特定的應用目的或應用范圍,而從數據倉庫中獨立出來的一部分數據,也可稱為部門數據或主題數據(subjectarea)。在數據倉庫的實施過程中往往可以從一個部門的數據集市著手,以後再用幾個數據集市組成一個完整的數據倉庫。需要注意的就是再實施不同的數據集市時,同一含義的欄位定義一定要相容,這樣再以後實施數據倉庫時才不會造成大麻煩。
數據倉庫管理:安全和特權管理;跟蹤數據的更新;數據質量檢查;管理和更新元數據;審計和報告數據倉庫的使用和狀態;刪除數據;復制、分割和分發數據;備份和恢復;存儲管理。
信息發布系統:把數據倉庫中的數據或其他相關的數據發送給不同的地點或用戶。基於Web的信息發布系統是對付多用戶訪問的最有效方法。
設計數據倉庫的九個步驟
1)選擇合適的主題(所要解決問題的領域)
2)明確定義fact表
3)確定和確認維
4)choosingthefacts
5)計算並存儲fact表中的衍生數據段
6)roundingoutthedimensiontables
7)
8)
9)確定查詢優先順序和查詢模式。
技術上
硬體平台:數據倉庫的硬碟容量通常要是操作資料庫硬碟容量的2-3倍。通常大型機具有更可靠的性能和和穩定性,也容易與歷史遺留的系統結合在一起;而PC伺服器或UNIX伺服器更加靈活,容易操作和提供動態生成查詢請求進行查詢的能力。選擇硬體平台時要考慮的問題:是否提供並行的I/O吞吐?對多CPU的支持能力如何?
數據倉庫DBMS:他的存儲大數據量的能力、查詢的性能、和對並行處理的支持如何。
網路結構:數據倉庫的實施在那部分網路段上會產生大量的數據通信,需不需要對網路結構進行改進。
實現上
建立數據倉庫的步驟
1)收集和分析業務需求
2)建立數據模型和數據倉庫的物理設計
3)定義數據源
4)選擇數據倉庫技術和平台
5)從操作型資料庫中抽取、凈化、和轉換數據到數據倉庫
6)選擇訪問和報表工具
7)選擇資料庫連接軟體
8)選擇數據分析和數據展示軟體
9)更新數據倉庫
數據抽取、清理、轉換、和移植
1)數據轉換工具要能從各種不同的數據源中讀取數據。
2)支持平面文件、索引文件、和legacyDBMS。
3)能以不同類型數據源為輸入整合數據。
4)具有規范的數據訪問介面
5)最好具有從數據字典中讀取數據的能力
6)工具生成的代碼必須是在開發環境中可維護的
7)能只抽取滿足指定條件的數據,和源數據的指定部分
8)能在抽取中進行數據類型轉換和字元集轉換
9)能在抽取的過程中計算生成衍生欄位
10)能讓數據倉庫管理系統自動調用以定期進行數據抽取工作,或能將結果生成平面文件
11)必須對軟體供應商的生命力和產品支持能力進行仔細評估
主要數據抽取工具供應商:Prismsolutions.Carleton'sPASSPORT.InformationBuildersInc.'s
EDA/SQL.SASInstituteInc.
③ 簡述數據倉庫與關系資料庫的區別與聯系
區別:
1、資料庫是面向事務的設計,數據倉庫是面向主題設計的。
2、資料庫一般存儲在線交易數據,數據倉庫存儲的一般是歷史數據。
3、資料庫是面向事務的設計,數據倉庫是面向主題設計的。資料庫一般存儲在線交易數據,數據倉庫存儲的一般是歷史數據。
4、資料庫設計是盡量避免滾搏激冗餘,一般採用符合範式的規則來設計,數據倉庫在設計是有意引入冗餘,採用反範式的方式來設計。
聯系:
數據倉庫,是在資料庫已經大量存在的情況下,為了進一步挖掘數據資源、為了決策需要而產生的,數據倉庫的出現,並不是要取代資料庫。目前,大部分數據倉庫還是用關系資料庫管理系統來管理的。可以說,資料庫、數據倉庫相輔相成、各有千秋。
(3)數據倉庫和資料庫有什麼關系擴展閱讀:
1、面向主題的:傳統資料庫主要是為應用程序進行數據處理,未必按照同一主題存儲數據;數據倉庫側重於數據分析工作,是按照主題存儲的。
這一點,類似於傳統農貿市場與超市的區別—市場裡面,白菜、蘿卜、香菜會在一個攤位上,如果它們是一個小販賣的;而超市裡,白菜、蘿卜、香菜則各自一塊。也就是說,市場里的菜(數據)是按照小販(應用程序)歸堆(存儲)的,超市裡面則是按照菜的類型(同主題)歸堆的。
2、與時間相關:資料庫保存信息的時候,並不強調一定有時間信息。數據倉庫則不同,出於決策的需要,數據倉庫中的數據都要標明時間屬性。決策中,時間屬性很重要。同樣都是累計購買過九車產品的顧客,一位是最近三個月購買九車,一位是最近一年從未買過,這對於決策者意義是不同的。
3、不可修改大襪:數據倉庫中的數據並不是最新的,而是來源於其它數據源。數據倉庫反映的是歷史信息,並不是很多資料庫處理的那種日常事務數據(有的資料庫例如電信計費資料庫甚至處理實時信息)。因此,數據倉庫中的數據是極少或根本不修改的;當然,向數據倉庫添加數據是允許的。
④ 數據倉庫與資料庫的主要區別有
首先我們來了解數據倉庫和資料庫分別是什麼:
1、資料庫:是一種邏輯概念,用來存放數據的倉庫,通過資料庫軟體來實現。資料庫由很多表組成,表是二維的,一張表裡面有很多欄位。欄位一字排開,對數據就一行一行的寫入表中。資料庫的表,在於能夠用二維表現多維的關系。如:oracle、DB2、MySQL、Sybase、MSSQL Server等。
2、數據倉庫:是資料庫概念的升級。從邏輯上理解,資料庫和數據倉庫沒有區別,都是通過資料庫軟體實現存放數據的地方,只不過從數據量來說,數據倉庫要比資料庫更龐大德多。數據倉庫主要用於數據挖掘和數據分析,輔助領導做決策;
區別主要總結為以下幾點:
1.資料庫只存放在當前值,數據倉庫存放歷史值;
2.資料庫內數據是動態變化的,只要有業務發生,數據就會被更新,而數據倉庫則是靜態的歷史數據,只能定期添加、刷新;
3.資料庫中的數據結構比較復雜,有各種結構以適合業務處理系統的需要,而數據倉庫中的數據結構則相對簡單;
4.資料庫中數據訪問頻率較高,但訪問量較少,而數據倉庫的訪問頻率低但訪問量卻很高;
5.資料庫中數據的目標是面向業務處理人員的,為業務處理人員提供信息處理的支持,而數據倉庫則是面向高層管理人員的,為其提供決策支持;
6.資料庫在訪問數據時要求響應速度快,其響應時間一般在幾秒內,而數據倉庫的響應時間則可長達數幾小時
⑤ 資料庫和數據倉庫的區別與聯系
資料庫是數據根據需求設計的數據表的集合,而數據倉庫只是儲存數據的平台。數據倉庫可以看成一個儲存數據的倉庫;而資料庫是一個圖書館,儲存的書是各種數據表。
⑥ 詳解數據倉庫和資料庫的區別
數據倉庫:為企業所有級別的決策制定過程,提供所有類型數據支持的戰略(數據)集合。
大數據:所涉及的資料量規模巨大到無法透過主流軟體工具,在合理時間內達到擷取、管理、處理、並整理成為幫助企業經營決策更積極目的的資訊。
傳統資料庫:一個長期存儲在計算機內的、有組織的、可共享的、統一管理的大量數據的集合。
其實從三個定義,我們好像區別不大。
資料庫指的是數據的集合,數據倉庫也是一個數據集合,大數據也是一個處理和存儲數據的地方。
但是不同的是,在於應用場景,和構建的技術原理不一樣。
傳統資料庫是存儲根據範式建模的關系型數據,主要用於OLTP(on-line transaction processing)翻譯為聯機事務處理的軟體。大數據是根據map rerce範式構建的出局處理,存儲的軟體,主要用於OLAP是做分析處理。大數據和傳統資料庫,還有一個更大的區別在於,處理的數據量以及計算量的大小,當傳統資料庫,無法在人可以接受的短時間內計算出結果,那這個數據就叫大數據,需要使用到大數據技術處理。而數據倉庫本質上是一種數據的處理方式,而不是一種基礎軟體,它可以依賴於傳統資料庫,也可以依賴大數據技術去構建。
可以參考這篇文章:數據倉庫(2)數據倉庫、大數據與傳統資料庫的區別 - 知乎 (hu.com)
⑦ 數據倉庫和資料庫有什麼區別和聯系
簡而言之,資料庫是面向事務的設計,數據倉庫是面向主題設計的。
資料庫一般存儲在線交易數據,數據倉庫存儲的一般是歷史數據。
資料庫設計是盡量避免冗餘,一般採用符合範式的規則來設計,數據倉庫在設計是有意引入冗餘,採用反範式的方式來設計。
資料庫是為捕獲數據而設計,數據倉庫是為分析數據而設計,它的兩個基本的元素是維表和事實表。維是看問題的角度,比如時間,部門,維表放的就是這些東西的定義,事實表裡放著要查詢的數據,同時有維的ID。
單從概念上講,有些晦澀。任何技術都是為應用服務的,結合應用可以很容易地理解。以銀行業務為例。資料庫是事務系統的數據平台,客戶在銀行做的每筆交易都會寫入資料庫,被記錄下來,這里,可以簡單地理解為用資料庫記帳。數據倉庫是分析系統的數據平台,它從事務系統獲取數據,並做匯總、加工,為決策者提供決策的依據。比如,某銀行某分行一個月發生多少交易,該分行當前存款余額是多少。如果存款又多,消費交易又多,那麼該地區就有必要設立ATM了。
顯然,銀行的交易量是巨大的,通常以百萬甚至千萬次來計算。事務系統是實時的,這就要求時效性,客戶存一筆錢需要幾十秒是無法忍受的,這就要求資料庫只能存儲很短一段時間的數據。而分析系統是事後的,它要提供關注時間段內所有的有效數據。這些數據是海量的,匯總計算起來也要慢一些,但是,只要能夠提供有效的分析數據就達到目的了。
數據倉庫,是在資料庫已經大量存在的情況下,為了進一步挖掘數據資源、為了決策需要而產生的,它決不是所謂的「大型資料庫」。那麼,數據倉庫與傳統資料庫比較,有哪些不同呢?讓我們先看看W.H.Inmon關於數據倉庫的定義:面向主題的、集成的、與時間相關且不可修改的數據集合。
「面向主題的」:傳統資料庫主要是為應用程序進行數據處理,未必按照同一主題存儲數據;數據倉庫側重於數據分析工作,是按照主題存儲的。這一點,類似於傳統農貿市場與超市的區別—市場裡面,白菜、蘿卜、香菜會在一個攤位上,如果它們是一個小販賣的;而超市裡,白菜、蘿卜、香菜則各自一塊。也就是說,市場里的菜(數據)是按照小販(應用程序)歸堆(存儲)的,超市裡面則是按照菜的類型(同主題)歸堆的。
「與時間相關」:資料庫保存信息的時候,並不強調一定有時間信息。數據倉庫則不同,出於決策的需要,數據倉庫中的數據都要標明時間屬性。決策中,時間屬性很重要。同樣都是累計購買過九車產品的顧客,一位是最近三個月購買九車,一位是最近一年從未買過,這對於決策者意義是不同的。
「不可修改」:數據倉庫中的數據並不是最新的,而是來源於其它數據源。數據倉庫反映的是歷史信息,並不是很多資料庫處理的那種日常事務數據(有的資料庫例如電信計費資料庫甚至處理實時信息)。因此,數據倉庫中的數據是極少或根本不修改的;當然,向數據倉庫添加數據是允許的。
數據倉庫的出現,並不是要取代資料庫。目前,大部分數據倉庫還是用關系資料庫管理系統來管理的。可以說,資料庫、數據倉庫相輔相成、各有千秋。
補充一下,數據倉庫的方案建設的目的,是為前端查詢和分析作為基礎,由於有較大的冗餘,所以需要的存儲也較大。為了更好地為前端應用服務,數據倉庫必須有如下幾點優點,否則是失敗的數據倉庫方案。
1.效率足夠高。客戶要求的分析數據一般分為日、周、月、季、年等,可以看出,日為周期的數據要求的效率最高,要求24小時甚至12小時內,客戶能看到昨天的數據分析。由於有的企業每日的數據量很大,設計不好的數據倉庫經常會出問題,延遲1-3日才能給出數據,顯然不行的。
2.數據質量。客戶要看各種信息,肯定要准確的數據,但由於數據倉庫流程至少分為3步,2次ETL,復雜的架構會更多層次,那麼由於數據源有臟數據或者代碼不嚴謹,都可以導致數據失真,客戶看到錯誤的信息就可能導致分析出錯誤的決策,造成損失,而不是效益。
3.擴展性。之所以有的大型數據倉庫系統架構設計復雜,是因為考慮到了未來3-5年的擴展性,這樣的話,客戶不用太快花錢去重建數據倉庫系統,就能很穩定運行。主要體現在數據建模的合理性,數據倉庫方案中多出一些中間層,使海量數據流有足夠的緩沖,不至於數據量大很多,就運行不起來了。
⑧ 簡述資料庫 數據倉庫 和數據挖掘三者之間的關系
先說說數據倉庫和數據挖掘的關系,再說說資料庫與數據倉庫的關系
數據倉庫與數據挖掘的聯系
(1) 數據倉庫為數據挖掘提供了更好的、更廣泛的數據源。
(2) 數據倉庫為數據挖掘提供了新的支持平台。
(3) 數據倉庫為更好地使用數據挖掘這個工具提供了方便。
(4) 數據挖掘為數據倉庫提供了更好的決策支持。
(5) 數據挖掘對數據倉庫的數據組織提出了更高的要求。
(6) 數據挖掘還為數據倉庫提供了廣泛的技術支持。
數據倉庫與數據挖掘的差別
(1) 數據倉庫是一種數據存儲和數據組織技術, 提供數據源。
(2) 數據挖掘是一種數據分析技術, 可針對數據倉庫中的數據進行分析。
1、資料庫:是一種邏輯概念,用來存放數據的倉庫,通過資料庫軟體來實現。資料庫由很多表組成,表是二維的,一張表裡面有很多欄位。欄位一字排開,對數據就一行一行的寫入表中。資料庫的表,在於能夠用二維表現多維的關系。如:oracle、DB2、MySQL、Sybase、MSSQL Server等。
2、數據倉庫:是資料庫概念的升級。從邏輯上理解,資料庫和數據倉庫沒有區別,都是通過資料庫軟體實現存放數據的地方,只不過從數據量來說,數據倉庫要比資料庫更龐大德多。數據倉庫主要用於數據挖掘和數據分析,輔助領導做決策;
區別主要總結為以下幾點:
1.資料庫只存放在當前值,數據倉庫存放歷史值;
2.資料庫內數據是動態變化的,只要有業務發生,數據就會被更新,而數據倉庫則是靜態的歷史數據,只能定期添加、刷新;
3.資料庫中的數據結構比較復雜,有各種結構以適合業務處理系統的需要,而數據倉庫中的數據結構則相對簡單;
4.資料庫中數據訪問頻率較高,但訪問量較少,而數據倉庫的訪問頻率低但訪問量卻很高;
5.資料庫中數據的目標是面向業務處理人員的,為業務處理人員提供信息處理的支持,而數據倉庫則是面向高層管理人員的,為其提供決策支持;
6.資料庫在訪問數據時要求響應速度快,其響應時間一般在幾秒內,而數據倉庫的響應時間則可長達數幾小時
⑨ 資料庫與數據倉庫的本質區別是什麼
1、存放值區別:
資料庫只存放在當前值,數據倉庫存放歷史值;
2、數據變化區別:
資料庫內數據是動態變化的,只要有業務發生,數據就會被更新,而數據倉庫則是靜態的歷史數據,只能定期添加、刷新;
3、數據結構區別:
資料庫中的數據結構比較復雜,有各種結構以適合業務處理系統的需要,而數據倉庫中的數據結構則相對簡單;
4、訪問頻率不同:
資料庫中數據訪問頻率較高,但訪問量較少,而數據倉庫的訪問頻率低但訪問量卻很高;
5、目標人群區別:
資料庫中數據的目標是面向業務處理人員的,為業務處理人員提供信息處理的支持,而數據倉庫則是面向高層管理人員的,為其提供決策支持;
⑩ 數據倉庫和資料庫的區別
數據倉庫和資料庫的主要區別:
數據倉庫是指從業務數據中創建信息資料庫,並針對決策和分析進行優化。資料庫是數據管理的有效技術,是由一批數據構成的有序集合,這些數據被存放在結構化的數據表裡。數據表之物跡仔間相互關聯,反映客觀事物間的本質聯系。資料庫能有效地幫助一個組織或企業科學地管理各類信息資源。
資料庫是面向事務的設計,數據倉庫是面向主題設計的。資料庫一般存儲在罩汪線交易數據,數據倉庫存儲的一般是歷史數據。資料庫設計是盡量避免冗餘,數據倉庫在設計是有意引入冗餘。資料庫是為捕獲數據而設計,數據倉庫是為分析數據而設計。
數據倉庫和資料庫兩者之間的關系
數據倉州弊庫,是在資料庫已經大量存在的情況下,為了進一步挖掘數據資源、為了決策需要而產生的,它決不是所謂的「大型資料庫」。數據倉庫的出現,並不是要取代資料庫。目前,大部分數據倉庫還是用關系資料庫管理系統來管理的。可以說,資料庫、數據倉庫相輔相成、各有千秋。