工具使用手冊_第1頁
工具使用手冊_第2頁
工具使用手冊_第3頁
工具使用手冊_第4頁
工具使用手冊_第5頁
免費預覽已結束,剩余7頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Pentaho 工具使用手冊作者:馬騰,李洪宇版本:1.0目錄BI介紹1Pentaho產品介紹 2Pentaho產品線設計 2Pentaho BI Platform 安裝 3Pentaho Data IntegrationKettle 5Pentaho Report Designer7Saiku9Schema Workbench 10附件11介紹1. BI基礎介紹BI ( BusinessIntelligence )即商務智能,它是一套完整的解決方案,利用數據倉庫、數據 挖掘技術對客戶數據進行系統地儲存和管理,并通過各種數據統計分析工具對客戶數據進行分析,提供各種分析報告,為企業的各種經營活動

2、提供決策信息。其中的關鍵點是數據管理,數據分析,支持決策。根據要解決問題的不同,BI系統的產出一般包括以下三種:2. BI系統的產出2.1 固定格式報表固定格式報表是 BI最基本的一種應用,其目的是展示當前業務系統的運行狀態。固定格式報表一旦建立,用戶就不可以更改報表的結構,只能依據數據庫的數據不斷刷新報表,以便取得較新的數據。在 pentaho產品線中,我們使用 pentaho report designer來實現固定格式 報表的需求。2.2OLAP 分析OLAP分析是指創建一種動態的報表展示結構,用戶可以在一個IT預定義的數據集中自由選擇自己感興趣的特性和指標,運用鉆取,行列轉換等分析手段

3、實現得到知識,或者驗證假設的目的。在pentaho產品線中,我們使用 Saiku來實現OLAP分析的需求。2.3 數據挖掘數據挖掘是BI的一種高級應用。數據挖掘是指從海量數據中通過數據挖掘技術得到有用的 知識,并且以通俗易懂的方式表達知識,以便支持業務決策。在 pentaho產品線中,我們使 用weka來實現數據挖掘的需求。Pentaho產品介紹1 .產品介紹Pentaho是世界上最流行的開源商業智能軟件,以工作流為核心的、強調面向解決方案而非工具組件的BI套件,整合了多個開源項目,目標是和商業BI相抗衡。它是一個基于 java平臺的商業智能套件, 之所以說是套件是因為它包括一個 web se

4、rver平臺和多個工具軟件: 報 表,分析,圖表,數據集成,數據挖掘等,可以說包括了商業智能的方方面面。2 . Pentaho架構圖Pentah。的架構圖如下,簡要解釋如下:3rd party applications指交易系統,也就是數據倉庫的原系統。Data & Application Integration主要指定義數據倉庫的元數據,在數據倉庫結構設計完畢后,通過ETL過程將原系統數據送入數據倉庫。Business Intelligence Platform 指pentaho提供的BI平臺,在這個平臺上可以進行平臺安全設置,平臺管理之類的工彳這個平臺也是BI服務的基礎。Repor

5、ting , Analysis, Dashboards, Process Management 是基于 BI 平臺上 Pentah。可以實現 的服務,比如報表,分析,儀表盤,服務自動控制等。Presentation Layer指展示層,在這一層,我們可以把其下層做好的報表等分析結果通過門戶 網站,Email等各種方式展示給用戶。Pentaho產品線設計1.產品線設計Pentaho作為一個開源的 BI套件,商業版與社區版加起來共有幾十種產品。考慮到恒信實際業務開展的情況,以及未來可能的需求,確定產品線如下。BI FunctionProductETLKettleMetadata Managemen

6、tPentaho Metadata Editor (PME)OLAPSaiku + Schema WorkbenchReport toolsFixed report : Pentaho report designerAd-hoc report : SaikuDashboard : CDEData MiningWekaBI platformPentaho BI PlatformR languageRBig DataPentaho for Big DataPentahoI Platform 安裝產品線的設計并非一成不變,隨著需求的增加,當某些需求無法利用現有的產品線實現時, 可以繼續添加組件,以便

7、形成更為完善的BI體系。1 .安裝步驟將下載下來的 biserver-ce-X.X.X-stable.zip 文件解壓到 下,將會產生 administration-console 和biserver-ce兩個文件夾,前者是 pentaho控制臺,后者是 pentaho BI服務器。默認時,Pentaho BI平臺會使用內置的JRE它位于 D:biserver-cejre 位置。如果用戶機器 上安裝了 JDK并設置了 JAVA_HOME則Pentaho BI平臺會使用用戶指定的 JDK)運行 D:biserver-ce下的“start-pentaho.bat”批處理腳本能夠啟動 Pentaho

8、 BI服務器,它運行在 Apache Tomcat容器中,并采納了 HSQLDB 數據庫(http:/ )。2 .啟動/停止BI server現在,打開瀏覽器,并訪問 http:/localhost:8080/pentaho ,則將看到登錄界面, 當joe/password用戶登錄后,BI服務器的主界面將呈現在眼前。如果需要停止Pentaho BI服務器,則于 D:biserver-ce目錄下運行"stop-pentaho.bat ”批處理腳本即可。它將同時停止 Pentaho BI服務器和HSQLDB數據庫。3 .啟用/停止Pentaho管理控制臺于 D:adm

9、inistration-console 目錄運行如下 "start-pac.bat”批處理腳本能夠啟動Pentaho管理控制臺。默認時,它宿主在 Jetty Web容器中。將瀏覽器定位到http:/localhost:8099/網址后,并輸入默認的 admin/password用戶,即可登錄到 Pentah。管理控制臺中。Pentaho管 理控制臺是整個BI平臺的重要后端軟件,系統管理員通過它能夠完成各類操作,比如維護用戶及角色信息、注冊新的業務庫(數據庫連接)、控制BI服務器中的各種敏感信息、使用調度服務等。如果要停止 Pentaho管理控制臺,則于 D:administratio

10、n-console 目錄下運行"stop-pac.bat”批處理腳本即可。4 . HSQLDEB1移至U MySQL DB4.1 遷移原因Pentaho BI服務器的很多重要信息存儲在數據庫中,其默認使用 HSQLDB數據庫,即借助它存儲自身的資料庫,比如Quartz 調度信息、業務資料庫連接信息(數據源)等。HSQLDB 是不能夠支撐真實的企業應用的,生產環境必須替換它,因此我們需要將HSQLDB遷移至MySQL。4.2 創建MySQL數據庫分別執行下面加粗的sql 腳本。先后順序不限。運行方法是多種的,可以通過MySQLWorkbench導入工具實現。我們設定導入的 MySQL數

11、據庫地址為jdbc:mysql:/localhost:3307 , 用戶名root,密碼root。biserver-cedatamysql5create_quartz_mysql.sqlbiserver-cedatamysql5create_repository_mysql.sqlbiserver-cedatamysql5create_sample_datasource_mysql.sql其中1. create_repository_mysql.sql創建 hibernate 數據庫,用于存儲用戶授權認證,solution repository 以及數據源。2. create_sample_d

12、atasource.sql為 sample 數據添加pentaho 所有基本的實例數據源。3. create_quartz_mysql.sql為 Quartz 計劃任務器創建資源庫。4.3 配置 Pentaho1.給pentaho添加JDBC文件下載 MySQL 的 JDBCJ區動:MySQL mysql-connector-java-x.x.x.jar將其拷貝至biserver-cetomcatlib 和 administration-consolejdbc 下,以便BI service 和administration console 訪問 MySQL數據庫。2修改以下文件biserver-

13、cepentaho-solutionssystemapplicationContext-spring-security-jdbc.xmlbiserver-cepentaho-solutionssystemapplicationCpertiesbiserver-cepentaho-solutionssystemhibernatehibernate-settings.xmlbiserver-cepentaho-solutionssystemhibernatemysql5.hibernate.cfg.xmlbiserver-ce

14、tomcatwebappspentahoMETA-INFcontext.xml以上文件主要是替換 SQL驅動,SQL用戶名與密碼等信息。修改詳情如下,紅色部分代表文件名,黑體代表更改點。applicationContext-spring-security-jdbc.xml<bean id="dataSource"class="org.springframework.jdbc.datasource.DriverManagerDataSource"><property name="driverClassName" val

15、ue=" com.mysql.jdbc.Driver" /><property name="url"value="jdbc:mysql:/localhost:3307/hibernate " /><property name="username" value=" root" /><property name="password" value=" root" /></bean> applicationCo

16、perties jdbc.driver= com.mysql.jdbc.Driv erjdbc.url= jdbc:mysql:/localhost:3307/hibernate jdbc.username= rootjdbc.password=roothibern ate.dialect= org.hibernate.dialect.MySQL5InnoDBDialecthibernate-settings.xml <config-file> syste m/hibernate/mysql5.hibernate

17、.cfg.xml </config-file>mysql5.hibernate.cfg.xml <propertyname="connection.driver_class"> com.mysql.jdbc.Driver</property><propertyname="connection.url"> jdbc:mysql:/localhost:3307/hibernate </property><property name="dialect">org.hibe

18、rnate.dialect.MySQL5InnoDBDialect</property><property name="connection.username"> root</property><propertyname="connection.password"> root</property> context.xml <Resourcename="jdbc/Hibernate" auth="Container" type="javax.

19、sql.DataSource"factory="mons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5" maxWait="10000" username=" root" password=" root"driverClassName="com.mysql.jdbc.Driver" url=" jdbc:mysql:/localhost:3307/hibernate &qu

20、ot; validationQuery=" select 1" /><Resource name="jdbc/Quartz" auth="Container" type="javax.sql.DataSource"factory="mons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5" maxWait="10000" username=" root&

21、quot; password=" root"driverClassName="com.mysql.jdbc.Driver" url=" jdbc:mysql:/localhost:3307/quartz " validationQuery=" select 1"/>現在可以啟動pentaho 服務了。可以看到BI 環境準備就緒。PentahoDataIntegrationKettle1. Kettle 安裝要運行此工具彳必須安裝Sun公司的JAVA運行環境1.4或者更高版本。Kettle的下載可通過 網址下載

22、到。我們將下載的pdi-ce-440-stable.zip解壓到想要放置的路徑,并執行這一目錄中 Spoon.bat文件,Kettle的主界面將呈現在我們面前。左側部分是對轉換和作業進行數據庫等相關配置的設置區域。Design 是對應的組件明細。右邊部分是ETL的主界面,我們需要把Design頁面中相關組件在上面設計展示。Kettle 中有兩種腳本文件,transformation 和 job, transformation 完成針對數據的基礎轉換,job 則完成整個工作流的控制。Kettle 的體系結構:2. Kettle 使用2.1 數據庫連接使用 kettle 進行數據抽取和轉換之前必須

23、連接數據庫,你可以同時創建幾種不同的數據庫連接,如:Oracle、 sql server、 MySQL 等。下圖是對本地mysql 數據庫建立連接。點擊 test 按鈕進行數據庫連接測試2.2 新建一個轉換Transformation(Ctrl+N)eg 要求: 將數據庫中交易表的數據按時間增量抽取并過濾輸出到目標數據庫中的另一張表中 。第一步要先創建一個新transformation, 再創建數據庫連接;第二步從輸入中找到【表輸入】,拖到主窗口釋放鼠標。接下來雙擊表輸入寫查詢語句;【獲取目標表中對應字段的最新時間,沒有就給個初始時間。】第三步從輸入中找到【表輸入】,拖到主窗口釋放鼠標。按住s

24、hift 鍵,用鼠標點中第二步的表輸入與第三步的表輸入進行連接;在sql 中從點擊獲取sql 查詢語句中選擇需要進行增量操作的表,然后確認需要顯示列名,出現沒有where 條件的 sql 語句,然后自己在sql 中增加 where 條件用?代表從上一個步驟中傳過來的變量,在下面替換sql 語句里的變量,打勾, 確保到時問號符號能用被替換,從步驟插入數據的下拉菜單中選擇上一步操作,在執行每一行上打勾。第四步從輸入中找到【字段選擇】,拖到主窗口釋放鼠標。按住 shift 鍵,用鼠標點中表輸入與字段選擇進行連接;第五步雙擊【字段選擇】,可在根據需求選擇保留字段;第六步是找到【過濾記錄】連接方法同上,

25、雙擊過濾記錄,在field里面進行字段選擇,并在value中鍵入值。確定保存。最后找到【表輸出】并對其連接,設置好輸出表名等信息后。點擊保存,然后點擊運行可進行轉換。整個結構圖如下:2.3 新建一個作業Jobs(Ctrl+ALT+N)eg 要求:將多個轉換按照處理順序保存到執行計劃中。并可以對其進行定時執行。第一步要先創建一個新transformation, 再創建數據庫連接;第二步從通用組件中找到【開始】,拖到主窗口釋放鼠標。接下來雙擊可以進行定時設置.第三步從通用組件中找到【轉換】,拖到主窗口釋放鼠標,按住shift 鍵,用鼠標點中開始與轉換進行連接;最后從腳本中找到【SQU并對其連接,設

26、置執行的SQL后。點擊保存,然后點擊運行可按照 start 定義的方式進行執行。整個結構圖如下:由于組件種類繁多,關于Design 中其他組件的使用方法可以參考附件中的官方文檔Pentaho_Data_Integration_4_Cookbook.pdfPentaho Report Designer1. Pentaho Report Design酸裝開發者可通過 網址下載到 PRD,我們將下載的 prd-ce-3.9.1-GA.zip 解壓到想要放置的路徑,并執行這一目錄中的report-designer.bat 批處理文件,PRD 的主界面將呈現在我們面前。2. PRD使用例子2.1 新建一

27、個報表(Ctrl+N)對報表界面做簡要介紹:左側的豎條展示了我們在設計報表時可能用到的工具。中間的部分是報表的主界面,我們需要把報表結果在主界面上排版展示右邊的標簽Structure可以看到報表的結構,Data標簽里有所有要展示的數據。包括報表query 的結果,以及各種函數。2.2 創建 query在Data標簽下右擊data sets,選擇JDBC連接,以下界面將會跳出。左側的框格顯示了所有已存在的數據庫連接,我們可以點擊框格上方的按鈕來增刪改數據庫連接。右上側的框格展示了我們對應于某個數據庫連接有哪些已存在的queryo同樣可以通過右上角的按鈕來增刪query。右下側的框格是query的

28、主題部分,可以點擊鉛筆圖標進入圖形化SQL編輯器,也可以直接在顯示的query語句中編輯SQL語句。2.3 設計 query 字段的展示。在右側 data 標簽中找到query 的查詢結果字段,按住左鍵將其拖入到報表設計主界面。切換右上角的標簽頁到Structure 標簽,單擊報表設計主界面上的對象,在右下角的Style 和Attributes 標簽上可以看到這個對象的風格和屬性。Style 標簽定義了這個對象的展示風格,比如字體顏色,背景色等內容。Attributes 標簽定義了對象的屬性,比如對象的類型,名字等內容。可以看到報表設計主界面被分為了不同的區域,他們表示了報表的結構。Page

29、Header與PageFooter 中的對象會在報表的每頁都顯示。Report Header 中的對象只在報表開頭時展示一次,Detail 中的對象會完全羅列query 中的結果,Report Footer 中的對象會只在report 的結尾顯示一次。在右上角的Structure 標簽中也可以明顯看出報表的結構,甚至可以看到在主界面上不顯示的結構,比如 Details Header。同時,在各個報表功能區域下,我們還可以看到主頁面上的對象,比如下圖中,我們可以通過Structure 標簽就可以知道在主界面的Details 區域內我們放置了兩個字段,sourceName 和 sourceID。S

30、tructure 標簽中的報表結構是最為完整的報表結構,我們在主界面上看不到某些區域是因為軟件默認在主界面上隱藏這些區域。我們可以在Structure 標簽中點擊相應對象解除隱藏。比如在 Structure 標簽中單擊Details Header, 在 Attributes 標簽中把hide-on-canvas 改為False。這樣就可以在主界面上顯示Details Header 區域。2.4 對數據做圖PRD 中提供作圖功能,我們可以對數據表進行作圖以便更好地顯示。從左側工具條中找到“ chart ”對象,將其拖到主界面上想要放置的位置。在主界面上雙擊圖片區域,可以修改圖的種類以及選項,我們

31、以餅圖為例,解釋如下圖。餅圖效果如下:2.5 報表參數設計PRD支持報表參數設計,我們可以利用參數來實現報表的filter。具體做法如下,右擊 Data標簽中的parameter點擊新增或者修改Data Sources新加一個query ,取名Query company nameSQL代碼為接下來我們做如下配置:為 parameter 取名為 f,指定 query 為 Query company name 。這樣我們就產生了一個名為f 的參數。 但是這個參數現在并不能起作用。我們需要在報表查詢的主query中把參數加入才行。在主query中需要把參數f寫為$f格式才能起作用。報表將會顯示當co

32、mpany name=參數f的值時,Select語句所選擇的字段。以下的例子中,我們 創建了兩個參數,f代表company name和f1代表日期。當我們運行報表時,對參數 “公司” 和 “日期” 選擇具體的值,就可以看到報表查詢主query根據指定公司和指定日期查詢得到的結果。2.6 公式PR址供了強大的公式功能,不僅內建了很多實用的公式,比如“當前頁數/總頁數”,“總行數”,還支持自定義公式。公式的入口在 Data 標簽下的Functions 上,右擊增加公式,我們可以選取 PRD內建好的公式,也可以自定義公式。公式按照功能已經分類,除了內建公式之外,我們點擊Open Formula 可以

33、自定義公式。2.7 子報表,SubreportPRD在軟件設計時限制一個報表只能選定一個query在主界面上放置字段,也就是說一個報表同一時刻只支持從一個query 查詢到數據并且顯示出來。那么當我們需要在一個報表上同時顯示多個數據集,多個query查詢的結果時該怎么辦?辦法就是添加一個subreport,在主報表從左側的工具欄上拖入sub-report 到想要的位置,雙擊進入subreport ,會發現subreport和主報表設計器幾乎一模一樣,可以定義 query,可以設置公式,唯一的不同是 subreport 不能新建參數,只能從主報表傳遞參數過來。Saiku1. Pentaho Saik庶裝Saiku主要提供兩種安裝方式。獨立運行和集成在Pentaho BI 平臺上,我們這里采用集成在Pentaho BI 平臺這種方式運行。點擊 http:/analytical- 下載到集成版的saiku 并將其內saiku 文件夾解壓到下,并重啟BI 平臺的服務。登錄 BI 平臺并點擊saiku 按鈕就可以看到Saiku 的真面目了。2. Saiku使用例子使用 saiku 分析之前要準備好cube。 通常用 Schema Workbench 建立。 關于 Schema W

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論