[Power BI] 讀書會 #3 Analysis Services 概念(2)


在上一篇簡單介紹了過往Analysis Services想要解決分析資料過慢的問題,以及使用到OLAP概念來實作Analysis Server。本篇再深入一點介紹OLAP資料流的部份。

1.建立Cube

在Visual Studio中,可以建立BI專案,並且在專案裡面設定Cube使用的Table和關聯性,設定好後將Cube存在SQL Server Analysis Services內。這個建立Cube的過程也叫資料建模(Data Modeling),此篇文章有很詳細的建模過程。

2.撰寫MDX取出資料

前篇有介紹OLAP架構中,取出資料的語言是MDX(Multidimension Expression)。以網頁來說,開發者會先在網頁裡埋MDX,讓User點一個按鈕或其他方式送出這段MDX給AS Server。AS Server會依照MDX給定的Cube來找相對應的資料。

取出資料又分三種方式,差點在於取資料的地點,此篇文章有很詳盡的介紹:

  1. MOLAP:Multidimensional Online Analytical Processing

    • 從Cube裡取資料 - AS Server
    • 資料面有時間差
    • 效能好,因為是從Cube裡取資料
      MOLAP架構圖
  2. ROLAP:Relational Online Analytical Processing

    • 從Table裡取資料 - DB Server
    • 當AS Server收到Request時,動態組出SQL向DB Server撈資料
    • 資料面即時,但效能不佳,跟直接下SQL撈資料一樣
      ROLAP架構圖
  1. HOLAP:Hybrid Online Analytical Processing
    • 結合MOLAP和ROLAP


早期的AS Server架構大致上已經介紹完,運用Cube + MDX來做BI分析。
下一篇開始會介紹近年微軟新發展的Analysis Services技術




#olap #cube #mdx #MOLAP #ROLAP #HOLAP







你可能感興趣的文章

Django aggregate and annotate

Django aggregate and annotate

 HTTP 概念

HTTP 概念

Day 89

Day 89






留言討論