無為

          無為則可為,無為則至深!

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            190 Posts :: 291 Stories :: 258 Comments :: 0 Trackbacks
          為什么dw使用星型模型,為什么使用關系型數據庫?
          ?
          對于第一個問題,我同意偉平的說法。其實就是實現了維度結構,星型模式是一種比3NF更加形式化的模式,其目的正是為了支撐OLAP的要求,是一種支撐分析應用的模式。特別是針對ROLAP,如果不建立星型模式(或者雪花模式),想建立olap元數據是非常困難的,因為某個維度需要跟物理維表關聯起來,維中的級別、屬性、鉆取體系都要與表中字段對應起來。同樣,度量也需要和事實表中某個字段對應。在星型模式中,這種對應關系是匹配的,所以很方便地描述它們。然而如果是基于3NF去映射一個維度結構,當然可以,只是需要額外的工作,因為3NF和OLAP模型是不匹配的。
          ?
          可以先將這部分工作分成兩部分,一是數據模型,二是OLAP應用。如果數據模型用3NF,那么OLAP建模的事情多放在OLAP服務器中進行。而如果使用星型模式,OLAP建模其實部分工作移到了數據建模這邊。
          ?
          這樣理解,其實采用星型模式是為了讓架構和過程更加規范。當然,代價是數據的冗余。
          ?
          對于第二個問題,為什么使用關系型數據庫。如果不采用RDB,還會有哪些選擇呢?多維數據庫、面向對象數據庫、xml數據庫?顯然,后者都是一些不成熟的技術,不似RDB,其關系理論已經存在三十年矣。
          ?
          多維數據庫主要面向分析應用,對于存儲海量數據當然有其缺陷。更加不用提沒有一個標準的接口。至少微軟提出的MDX還并沒有形成一種訪問標準,而在數據存儲理論上,各個廠商有各自的一套。而面向對象數據庫,雖然也是也是發展多年,但其主要應用還是偏向于一般系統的設計、開發效率,也不擅長數據存儲。雖然有一些規范、理論,但大多還沒有形成比較權威的形式化理論,還是處于感性階段
          ?
          像sybase的IQ數據庫,這玩意兒到底是個什么類型的數據庫,我也不是非常確定,但顯然他并沒有顛覆關系數據,同樣有表、字段的概念,只是他顛覆了原來按行存儲數據的技術,改用按列存儲數據。最后還是同樣用SQL來訪問數據,所以姑且還是認為他是關系數據庫吧。
          ?
          如此,似乎只有選擇關系數據庫來存放海量數據,當然可以附加地采用多維數據來存放用于分析目的的數據。未來會不會還是如此,說不一定,但至少在三五年內,還不不會有什么新的變化。


          凡是有該標志的文章,都是該blog博主Caoer(草兒)原創,凡是索引、收藏
          、轉載請注明來處和原文作者。非常感謝。

          posted on 2006-05-25 21:55 草兒 閱讀(251) 評論(0)  編輯  收藏 所屬分類: BI and DM
          主站蜘蛛池模板: 汤原县| 阳城县| 洞口县| 海淀区| 砚山县| 拜泉县| 通许县| 米泉市| 竹溪县| 临朐县| 凭祥市| 曲松县| 通海县| 津南区| 峨眉山市| 阜新| 海原县| 宾阳县| 奉化市| 萝北县| 达日县| 来凤县| 永济市| 南雄市| 景谷| 襄樊市| 宽城| 兰溪市| 马尔康县| 绍兴县| 巴南区| 沁水县| 南康市| 名山县| 澜沧| 岳普湖县| 寻乌县| 万安县| 屏南县| 东阳市| 二连浩特市|