国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

數據倉庫能為你當前數據庫體系的不足做些什么?

2024-07-21 02:09:14
字體:
來源:轉載
供稿:網友
        數據倉庫可以提供對企業數據的便利訪問和強大的分析工具,用于生成有意義的信息。數據倉庫的目標,是從企業數據中獲得有價值的信息,提供可以增加獲利的情報,提高運作效率,指導商業決策,和發掘企業的競爭優勢。這些目標的實現,一定會對業務產生積極的影響。現如今,數據倉庫是在客戶/服務器領域的一個熱門的話題。對數據倉庫的了解,對于客戶/服務器開發人員來說,一定極有價值。

  本文介紹了數據倉庫,并提供了許多關于如何實現其目標的技巧,包括關于數據收集、決策支持系統、聯機分析處理和數據倉庫等內容。我為每一概念下定義,并介紹了數據倉庫的處理機制,還討論了用于創建和維護數據倉庫的媒體數據的定義。

  今天的客戶/服務器

  早期的客戶-服務器系統中的工作,主要是開發聯機事務處理(oltp)應用。使業務操作自動化的應用,如定貨記錄、清單或預定系統,成為近期開發的重點。大部分的這一類應用是較簡單的兩層應用結構,其實質就是前端的gui應用訪問后端的數據庫服務器。事務邏輯經常由客戶工作站上的代碼實現,也可以是服務器上的過程。

  今天,大多數公司已完成了大大小小的客戶-服務器工程的建立,或至少開始了最初步的系統建設。現在,將事務邏輯與gui和數據源分離的三層系統,將成為未來開發的重點。商業上經常需要三層系統,以滿足更大型且復雜的應用,涉及成千的客戶機和數十個服務器。oltp應用要求響應時間短、準確無誤及100%的可用性和實時性。這些應用實現的基本商業操作,是業務高效運轉所必須的。

  數據收集和訪問

  大多數機構和公司都積累了大量數據,并已很好地進行了數據收集的自動化工作,運行良好(在積累及存儲方面)。數據存儲主要是在關系型數據庫中,在這些系統中,大量的數據和數據模型,都是反映公司以往的措施和業績。今天,sql是數據訪問的主流語言,它面向集合,并提供了應用與數據庫間良好的交互性。事務由數據庫服務器或事務處理(tp)監視器管理。較大型的應用,一般使用tp監視器,實現數據一致和高性能。大多數數據操作針對單條記錄或相關的數據集合。定義合理的關系數據庫操作,產生的結果是可預見的。rdbms查詢的結果,一般是動態的綜合或計算。

  決策支持系統

  機構一旦擁有了完整的數據采集和存儲過程,新的需要就產生了:怎樣使用好數據庫中有價值的信息。在競爭日益激烈的商業市場上,至關重要的是分析這些信息并生成報表,它們可以輔助商業決策。不久,你對自己經營情況的了解,就會轉化為可以量化的經營優勢或運行改善。

  與oltp系統相比,決策支持系統(dss)主要是需要對數據庫作只讀訪問,用于建立報表和查詢結果,輔助制定重要的商業決策。這些系統不要求迅速響應,可以按自己的節奏運動,也許只是偶爾使用一次;并希望能將dss的信息導出,供其它桌面軟件工具使用。

  dss在看待企業數據時,使用根本不同的方法,這一不同十分重要,數據被看作是歷史記錄,分析的最初步驟需要進行分組和綜合。經常需要對數據的子集(按月、年、地區、產品)進行數學運算,而后用圖表等顯示方式,可進一步解釋數據的含義。

  dss用戶一般直接使用dss工具,并需要數據模型作向導。dss通常在開始階段使用的數據庫與oltp的一樣,但dba經常需要為新的功能或任務,創建總結表和視圖,提供所需信息。

  在有些情況下,需要使用復制來將運行系統中的數據移到dss數據庫中,在轉移期間需要凍結(定格)生產數據,避免并發操作時出現問題。這對于dss用戶來說沒有什么損失,因為他們并不需要快速的對數據的增刪插改之類的事務處理,而只關心長期的表現、趨勢、總結和摘要。這些工作要求具有分析功能,多數情況下還包括二次開發,用來訪問不同地點的數據,這些數據可能具有不同格式,或者不能按某種方法直接得到。但這通常不只是對方案的修修補補。對于數據還需要統一格式,使查詢更方便、靈活。

  針對這類分析系統,你需要經常考慮的是提高性能和提供集中的功能。報表將處理大量的記錄集合,只在極少情況下是個別記錄。訪問路徑的可預見性比oltp系統稍差,但仍可以預先建立系統中的大部分已知或重復數據訪問的路徑。

  復制

  分布式系統的增多、對高性能的要求、dss系統的特殊性質等等,都促使復制的迅速發展。復制快速成為解決大型數據系統的性能、并發性、可用性和容量限制的基本技術。其缺點是,它不是真實數據,只是信息的復制品。因此,它也即將過時(但對于使用復制機制的雙路系統,可以滿意地完成雙向變化傳送)。

  聯機分析處理

  聯機分析處理(olap)將dss帶入更高的層次。olap是一個分析處理技術,它從企業的數據集合中收集信息,并運用了數學運算和數據處理技術。這些信息,可以靈活、交互式地提供統計、趨勢分析和預測情況。olap用戶希望olap(如企業數據系統)在保持原有優勢,如快速訪問、并發性和一致性的同時,還能具有dss分析的強大功能,目標是怎樣快速有效地獲得企業數據。雖然olap很可能與oltp處理共享數據來源,但olap在本質上與oltp和dss系統都不相同。你努力建立一個數據倉庫,并按照需求,從中獲取和選擇(或挖掘)數據。也就是說,數據必須是可訪問的,按照靈活的模式組織,并且可以修改(替換)。這些方面不是偶然出現的,它要求全企業人員的大量努力和合作。

  對大型公司來講,正在進行的最復雜的工作,可能要算是對數據倉庫體系的設計和應用了。用戶們新的關注焦點是:他們想顯示系統中的信息,而不僅僅是訪問數據。雖然有些人可能仍舊把數據倉庫看作與運行數據庫基本相同,但數據倉庫在設計過程中,一直貫穿著訪問、分析和報表的思想。因此,數據倉庫在用戶檢索時,比dss系統更易于優化。這樣,將產品與倉庫中的數據分開。但這些只能到此為止,它必須保持靈活性。這一類信息,可通過下述工具得到:business objects公司的business objects brio technology的brioquery和cognos的powerplay,等等;此外,sybase的s-designer 6.0將具備數據倉庫設計的功能。

  多維數據庫

  olap系統必須是靈活的、能按非預定的方式訪問數據,還必須交互地創建報表。問題的關鍵是如何表達以下內容:復雜數據查詢、尋找(發掘)趨勢、總結、評價和關系。"假如"查詢,就象在使用電子表格軟件時常常見到的,是一項基本技術。其它如"為什么"或"怎樣"等,也同等重要。這些查詢通常與另一些變量一同使用,用于限定信息的上下文。查詢的例子,可以與產品類型、時間段或地點有關。

  由于使用了這些分析變量,就給數據帶來了多維性。在分析時,這些變量的不同取值,會產生出相關的不同對比信息。預測也是處理的一部分。在分析生成之后,用戶可以向下挖掘,查看更為詳細的信息,它們是整體的子集,向上移動,則可以顯示分析的上一個層次。

  數據倉庫

  數據倉庫是由一個或多個應用,和一個用于分析和報表的數據庫組成的系統。此數據庫從其它數據源中得到數據。通常先有一個對數據庫數據的載入工作,然后定期地進行數據快照或逐步更新。數據倉庫創建的數據,面向主題,完全一致,將為重要的商業決策提供所需信息。

  數據倉庫服務器提供了對其中數據的訪問。用于分析和生成報表的應用,可以定制編寫,也可以購買(我推薦使用cognos impromptu和powerplay)。數據收集和積累工具也有現成產品,且這一市場將不斷擴展。

  構筑數據倉庫

  構筑數據倉庫所需的開發小組成員,要求既有技術知識又有商業知識,這樣就可以同時具有自上而下和自下而上的全面了解。數據倉庫涉及到的方面有:數據集(包括歷史)、設計(數據模型)、文檔和數據庫維護。數據倉庫還要求定義系統的元數據(在下節中講述),以及考慮數據分布(開發應用及購買工具。)

  如果有多個數據源,那么數據集合的維護工作將會極為困難。每個數據源,都可能有不同的格式、平臺、標準、含義、歷史影響和標志。在不同數據源,甚至在一個源中,也可能出現同一對象的多個實例。數據經常是不完整的,或是經過編程修補的。你必須了解并記錄下所有細節。建立數據倉庫的努力,通常會是一個持續數月的大工程,甚至可能幾年。當你的目標還不十分清楚的時候,你最好先猜測一個方案,按照它建立模型數據倉庫,然后在這個模型上運行各種工具,以檢查最初的要求是否正確。對模型的測試,應既有一般情況,又有特殊情況,通過這一步驟,你就可以發現各個工作都是什么,以及在企業中它們是如何起作用的。你要訪查用戶,特別是那些真正了解數據及數據源的人。最終的系統,可能要求創建報表、某些特殊工具,甚至可能開發新的應用。但在任何情況下,你的職責都是為用戶提供數據和工具。

  從本質上講,對數據倉庫的訪問,應主要是只讀操作,有時也可能將某些分析存放在數據倉庫中。它必須按時更新,以反應用戶的要求及數據源數據的變化。因此,出現了新的維護問題:檢查、重新生成和刪除分析記錄。生產數據需要在數據倉庫中不斷更新,而倉庫中的數據,也需要向業務方面或部門復制。

  首先,你必須定義最初數據倉庫系統的范圍,從理解得最好的部分開始,一定要有一個分析人員作助手。許多分析人員在部門數據庫上發展數據倉庫。這些數據庫已被透徹理解,重新建立模型的時機也已成熟。

  性能是一個大問題。累積表、過去分析的結果集合等,都會增加維護工作。因此,你應測試各種極端的情況。

  從盡可能多的角度,重新審視你的計劃。對于數據倉庫的設計問題,不是一個人或一個小組就能回答的。

  元數據:關于數據的數據

  構筑數據倉庫過程中的最重要步驟之一,就是定義和創建元數據(metadata)。元數據有三個級別:數據源、數據倉庫和用戶(你還可以定義一個商業視圖)。元數據能夠提供一個目錄,列出數據倉庫中有什么,以及數據倉庫輸入數據的數據源。我的觀點是:沒有在系統中記載文檔的東西,它(實際上)就不存在。用戶元數據可以包含計算機、總結、和其它針對訪問的對象。你應該仔細記載數據源、數據倉庫結構和用戶視圖,如報表的格式,并用這些文檔,去核定數據,從中得到信息的正確性。如果必要的話,還可以利用文檔,實現跟蹤某一數據項并檢查其有效性的工作。

  元數據在數據倉庫的創建和維護時,都可以發揮作用。在定義元數據時,便先完成最了解的部分。最終,你將為數據倉庫里的每一對象類型定義元數據。元數據細化了數據結構及數據間的關系(從數據庫視圖,或是事務規則和數據流描述的結果)。你還應該記載別名、代碼表、缺省值、完成途徑、數值單位(美元或英鎊)、算法和及它相關信息。

  在元數據(用于說明倉庫中數據的)中,詳細表述你對商業規則的理解。例如,你可以分析并記載系統中對象和數據元素的安全性存取訪問。在此過程中,你必須確定最終對象(類)的表達,和數據倉庫中衍生實例的過程(最終數據類型、數據轉換、數據源和傳輸的預期時效)。關于積累數據,需要定義的細節有:"哪些域是絕對需要的?"和"如不能獲得數據,嘗試另一個處理過程不同的數據源。"

  所有進入數據庫的數據,必須在元數據中有所表述;甚至元數據也有針對自己的元數據。這些文檔應描述你的系統中元數據如何表達。

  元數據服務器

  象所有復雜系統一樣,元數據也會變化;但所幸的是,這一變化是漸進的。當業務或過程發生變化時,你必須將變化反應到元數據中。需要經常進行版本控制,這樣,不同時刻生成的數據,就可以有不同的格式。我在許多大型系統的工作過程中,都曾開發過元數據服務器,用于提供對可能在結構、格式、或版本上發生改變的數據的訪問。有了元數據服務器,你可以將數據與其元數據一道,作為一特定查詢的結果,提供給用戶。這樣,如果有了元數據,就可以建立一個能顯示任何格式數據的顯示系統。同時,元數據服務器提供的信息,還可以幫助用戶在系統中向下挖掘。

  更新數據

  你必須為數據倉庫制定裝載和刷新的計劃。在這一過程中,元數據起關鍵作用。隨著制定工作的進展,數據模型逐漸發展。新的模型,也必須用將要使用的內容進行測試。根據可更新的程度,可以討論統一規格或是不統一規格。為了給出數據附加的含義,重要的是在系統中發現、尋找關系。

  你必須考慮數據庫中每一數據項的時間和歷史問題。數據已存在了多長時間?你需要為哪些數據項保留其變化的歷史記錄?是需要版本控制系統嗎?你必須考慮變化,因為數據庫會改變。你必須允許修改數據源、用戶需要和數據模型的變化。

  文檔與培訓

  一套好的文檔非常重要,前端工具的使用培訓也很重要。關鍵是要避免直接與用戶打交道。向他們提供了工具,他們就可以自己完成一些工作。工具在涉及數據時,應在一個可以理解的層次上。用戶可不需知道數據庫結構,但只需知道其表象,并應能通過這種方式訪問系統。這一觀點,應該且能夠在需求分析階段,得到廣泛的體現。

  可能的方案

  運用數據倉庫最可能的方案,是使用一個大型主機數據庫系統,提供功能、控制、安全、性能和一致性。分布式數據庫系統也很可行,sybase 是一個非常強大的分布式系統,使用sybase,數據源和數據的實際位置是透明的,并可以按需要從一處移到另一處;sybase iq是專門為決策支持系統而優化的交互式查詢產品。

  如能形成一致意見,轉型為一個(或兩個)標準dbms,并限定使用的平臺、操作系統和網絡,就可有助于簡化問題。更好的方法,是選擇一個產品套件,能同時提供dbms、數據倉庫、通訊和查詢工具。用這種緊密的方案,集成可能很困難,有時甚至是代價高昂的。如選擇這種方案,可以選用oracle、sybase、ibm、information builders和hewlett-packard。

  使用tp監視器的異構系統,是另一種較復雜的選擇。大型客戶/服務器應用,可能需要tp監視器控制數據操作。tp監視器,如tuxedo和encina,都有和大量應用工具的接口。在將來,tp監視器有可能嵌入開發或操作系統。事物是tp監視器處理的工作單元。在大型的分布系統中,必須有一些控制器,承擔對系統中可能相互影響的事件的同步和處理工作。

  還有可能出現更復雜的要求。你將看到:圖形、internet和多媒體,正變得日益重要。這些會加大需求的復雜度,并大大增加數據傳輸量。

  olap數據庫幾乎總是非常龐大的,因此性能很成問題。解決方法有:分隔數據、分布數據、過濾數據,也可能建立并維持文件以存放常用信息。如果數據倉庫主要用于dss,那么你就可以在很大程度上,將復制工作交給一個客戶/服務器系統完成。

  開發olap應用

  開發olap應用可能十分困難,其編寫方式應是面向對象的。olap中的許多處理非常相似,因而可以為它們開發對象類。例如,在大多數olap應用中,數據訪問、數據存儲、分析(函數)、和報表生成的用法,都是基本一致的。使用面向對象技術,可以提高可重用性。olap應用還應是可擴展的,并且應設計為可擴展的系統。

  系統應使用并管理元數據和數據字典。使用經解釋的語言方案,可以在改動后無需重新編譯。olap應用必須提供一套完整的函數,并要求使用自己的編程語言。

  總結

  在今天的大多數大型公司里,電子數據集已經是現成的。因此,人們認識到,能夠(且應該)從數據集中獲得有價值的信息,用于商業決策支持。數據倉庫是一種結構和系統,可以從數據中獲得信息。對于信息專家,數據倉庫的應用和維護,將會很快成為工作的重要部分。

國內最大的酷站演示中心!
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 博客| 马边| 日喀则市| 旅游| 永吉县| 呈贡县| 旬阳县| 莒南县| 陇川县| 阜平县| 威海市| 锦屏县| 宝坻区| 深圳市| 麦盖提县| 和平区| 沈阳市| 崇礼县| 临猗县| 宾川县| 惠安县| 乾安县| 沙湾县| 拉萨市| 灯塔市| 绥阳县| 依安县| 临夏县| 长岛县| 吉水县| 通河县| 宜宾县| 河北省| 阜新市| 普陀区| 漠河县| 武清区| 武穴市| 大余县| 呼图壁县| 衡阳县|