pentaho工具使用手冊_第1頁
pentaho工具使用手冊_第2頁
pentaho工具使用手冊_第3頁
pentaho工具使用手冊_第4頁
pentaho工具使用手冊_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

年4月19日pentaho工具使用手冊文檔僅供參考Pentaho工具使用手冊作者:馬騰,李洪宇版本:1.0目錄BI介紹 2Pentaho產(chǎn)品介紹 3Pentaho產(chǎn)品線設(shè)計 4PentahoBIPlatform安裝 4PentahoDataIntegrationKettle 8PentahoReportDesigner 12Saiku 23SchemaWorkbench 27附件 32BI介紹1.BI基礎(chǔ)介紹BI(BusinessIntelligence)即商務智能,它是一套完整的解決方案,利用數(shù)據(jù)倉庫、數(shù)據(jù)挖掘技術(shù)對客戶數(shù)據(jù)進行系統(tǒng)地儲存和管理,并經(jīng)過各種數(shù)據(jù)統(tǒng)計分析工具對客戶數(shù)據(jù)進行分析,提供各種分析報告,為企業(yè)的各種經(jīng)營活動提供決策信息。其中的關(guān)鍵點是數(shù)據(jù)管理,數(shù)據(jù)分析,支持決策。根據(jù)要解決問題的不同,BI系統(tǒng)的產(chǎn)出一般包括以下三種:2.BI系統(tǒng)的產(chǎn)出2.1固定格式報表固定格式報表是BI最基本的一種應用,其目的是展示當前業(yè)務系統(tǒng)的運行狀態(tài)。固定格式報表一旦建立,用戶就不能夠更改報表的結(jié)構(gòu),只能依據(jù)數(shù)據(jù)庫的數(shù)據(jù)不斷刷新報表,以便取得較新的數(shù)據(jù)。在pentaho產(chǎn)品線中,我們使用pentahoreportdesigner來實現(xiàn)固定格式報表的需求。2.2OLAP分析OLAP分析是指創(chuàng)立一種動態(tài)的報表展示結(jié)構(gòu),用戶能夠在一個IT預定義的數(shù)據(jù)集中自由選擇自己感興趣的特性和指標,運用鉆取,行列轉(zhuǎn)換等分析手段實現(xiàn)得到知識,或者驗證假設(shè)的目的。在pentaho產(chǎn)品線中,我們使用Saiku來實現(xiàn)OLAP分析的需求。2.3數(shù)據(jù)挖掘數(shù)據(jù)挖掘是BI的一種高級應用。數(shù)據(jù)挖掘是指從海量數(shù)據(jù)中經(jīng)過數(shù)據(jù)挖掘技術(shù)得到有用的知識,而且以通俗易懂的方式表示知識,以便支持業(yè)務決策。在pentaho產(chǎn)品線中,我們使用weka來實現(xiàn)數(shù)據(jù)挖掘的需求。Pentaho產(chǎn)品介紹1.產(chǎn)品介紹Pentaho是世界上最流行的開源商業(yè)智能軟件,以工作流為核心的、強調(diào)面向解決方案而非工具組件的BI套件,整合了多個開源項目,目標是和商業(yè)BI相抗衡。它是一個基于java平臺的商業(yè)智能套件,之因此說是套件是因為它包括一個webserver平臺和多個工具軟件:報表,分析,圖表,數(shù)據(jù)集成,數(shù)據(jù)挖掘等,能夠說包括了商業(yè)智能的方方面面。2.Pentaho架構(gòu)圖Pentaho的架構(gòu)圖如下,簡要解釋如下:3rdpartyapplications指交易系統(tǒng),也就是數(shù)據(jù)倉庫的原系統(tǒng)。Data&ApplicationIntegration主要指定義數(shù)據(jù)倉庫的元數(shù)據(jù),在數(shù)據(jù)倉庫結(jié)構(gòu)設(shè)計完畢后,經(jīng)過ETL過程將原系統(tǒng)數(shù)據(jù)送入數(shù)據(jù)倉庫。BusinessIntelligencePlatform指pentaho提供的BI平臺,在這個平臺上能夠進行平臺安全設(shè)置,平臺管理之類的工作,這個平臺也是BI服務的基礎(chǔ)。Reporting,Analysis,Dashboards,ProcessManagement是基于BI平臺上Pentaho能夠?qū)崿F(xiàn)的服務,比如報表,分析,儀表盤,服務自動控制等。PresentationLayer指展示層,在這一層,我們能夠把其下層做好的報表等分析結(jié)果經(jīng)過門戶網(wǎng)站,Email等各種方式展示給用戶。Pentaho產(chǎn)品線設(shè)計1.產(chǎn)品線設(shè)計Pentaho作為一個開源的BI套件,商業(yè)版與社區(qū)版加起來共有幾十種產(chǎn)品??紤]到恒信實際業(yè)務開展的情況,以及未來可能的需求,確定產(chǎn)品線如下。BIFunctionProductETLKettleMetadataManagementPentahoMetadataEditor(PME)OLAPSaiku+SchemaWorkbenchReporttoolsFixedreport:PentahoreportdesignerAd-hocreport:SaikuDashboard:CDEDataMiningWekaBIplatformPentahoBIPlatformRlanguageRBigDataPentahoforBigData產(chǎn)品線的設(shè)計并非一成不變,隨著需求的增加,當某些需求無法利用現(xiàn)有的產(chǎn)品線實現(xiàn)時,能夠繼續(xù)添加組件,以便形成更為完善的BI體系。PentahoBIPlatform安裝1.安裝步驟將下載下來的biserver-ce-X.X.X-stable.zip文件解壓到D:\下,將會產(chǎn)生administration-console和biserver-ce兩個文件夾,前者是pentaho控制臺,后者是pentahoBI服務器。默認時,PentahoBI平臺會使用內(nèi)置的JRE,它位于D:\biserver-ce\jre位置。如果用戶機器上安裝了JDK,并設(shè)置了JAVA_HOME,則PentahoBI平臺會使用用戶指定的JDK。運行D:\biserver-ce>下的“start-pentaho.bat”批處理腳本能夠啟動PentahoBI服務器,它運行在ApacheTomcat容器中,并采納了HSQLDB數(shù)據(jù)庫()。2.啟動/停止BIserver現(xiàn)在,打開瀏覽器,并訪問http://localhost:8080/pentaho,則將看到登錄界面,當joe/password用戶登錄后,BI服務器的主界面將呈現(xiàn)在眼前。如果需要停止PentahoBI服務器,則于D:\biserver-ce目錄下運行“stop-pentaho.bat”批處理腳本即可。它將同時停止PentahoBI服務器和HSQLDB數(shù)據(jù)庫。3.啟用/停止Pentaho管理控制臺于D:\administration-console目錄運行如下“start-pac.bat”批處理腳本能夠啟動Pentaho管理控制臺。默認時,它宿主在JettyWeb容器中。將瀏覽器定位到http://localhost:8099/網(wǎng)址后,并輸入默認的admin/password用戶,即可登錄到Pentaho管理控制臺中。Pentaho管理控制臺是整個BI平臺的重要后端軟件,系統(tǒng)管理員經(jīng)過它能夠完成各類操作,比如維護用戶及角色信息、注冊新的業(yè)務庫(數(shù)據(jù)庫連接)、控制BI服務器中的各種敏感信息、使用調(diào)度服務等。如果要停止Pentaho管理控制臺,則于D:\administration-console目錄下運行“stop-pac.bat”批處理腳本即可。4.HSQLDB遷移到MySQLDB4.1遷移原因PentahoBI服務器的很多重要信息存儲在數(shù)據(jù)庫中,其默認使用HSQLDB數(shù)據(jù)庫,即借助它存儲自身的資料庫,比如Quartz調(diào)度信息、業(yè)務資料庫連接信息(數(shù)據(jù)源)等。HSQLDB是不能夠支撐真實的企業(yè)應用的,生產(chǎn)環(huán)境必須替換它,因此我們需要將HSQLDB遷移至MySQL。4.2創(chuàng)立MySQL數(shù)據(jù)庫分別執(zhí)行下面加粗的sql腳本。先后順序不限。運行方法是多種的,能夠經(jīng)過MySQLWorkbench導入工具實現(xiàn)。我們設(shè)定導入的MySQL數(shù)據(jù)庫地址為jdbc:mysql://localhost:3307,用戶名root,密碼root。biserver-ce\data\mysql5\create_quartz_mysql.sql

biserver-ce\data\mysql5\create_repository_mysql.sql

biserver-ce\data\mysql5\create_sample_datasource_mysql.sql其中create_repository_mysql.sql

創(chuàng)立hibernate數(shù)據(jù)庫,用于存儲用戶授權(quán)認證,solutionrepository以及數(shù)據(jù)源。create_sample_datasource.sql

為sample數(shù)據(jù)添加pentaho所有基本的實例數(shù)據(jù)源。create_quartz_mysql.sql為Quartz計劃任務器創(chuàng)立資源庫。4.3配置Pentaho1.給pentaho添加JDBC文件下載MySQL的JDBC驅(qū)動:MySQL—mysql-connector-java-x.x.x.jar將其拷貝至biserver-ce\tomcat\lib和administration-console\jdbc下,以便BIservice和administrationconsole訪問MySQL數(shù)據(jù)庫。2.修改以下文件biserver-ce\pentaho-solutions\system\applicationContext-spring-security-jdbc.xmlbiserver-ce\pentaho-solutions\system\applicationCpertiesbiserver-ce\pentaho-solutions\system\hibernate\hibernate-settings.xmlbiserver-ce\pentaho-solutions\system\hibernate\mysql5.hibernate.cfg.xmlbiserver-ce\tomcat\webapps\pentaho\META-INF\context.xml以上文件主要是替換SQL驅(qū)動,SQL用戶名與密碼等信息。修改詳情如下,紅色部分代表文件名,黑體代表更改點。applicationContext-spring-security-jdbc.xml

<beanid="dataSource"

class="org.springframework.jdbc.datasource.DriverManagerDataSource">

<propertyname="driverClassName"value="com.mysql.jdbc.Driver"/>

<propertyname="url"

value="jdbc:mysql://localhost:3307/hibernate"/>

<propertyname="username"value="root"/>

<propertyname="password"value="root"/>

</bean>

applicationCperties

jdbc.driver=com.mysql.jdbc.Driver

jdbc.url=jdbc:mysql://localhost:3307/hibernate

jdbc.username=root

jdbc.password=root

hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect

hibernate-settings.xml

<config-file>system/hibernate/mysql5.hibernate.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>

<propertyname="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>

<propertyname="connection.username">root</property>

<propertyname="connection.password">root</property>

context.xml

<Resourcename="jdbc/Hibernate"auth="Container"type="javax.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"

validationQuery="select1"/>

<Resourcename="jdbc/Quartz"auth="Container"type="javax.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/quartz"

validationQuery="select1"/>

現(xiàn)在能夠啟動pentaho服務了。能夠看到BI環(huán)境準備就緒。PentahoDataIntegrationKettle1.Kettle安裝要運行此工具你必須安裝Sun公司的JAVA運行環(huán)境1.4或者更高版本。Kettle的下載可經(jīng)過。我們將下載的pdi-ce-4.4.0-stable.zip解壓到想要放置的路徑,并執(zhí)行這一目錄中Spoon.bat文件,Kettle的主界面將呈現(xiàn)在我們面前。左側(cè)部分是對轉(zhuǎn)換和作業(yè)進行數(shù)據(jù)庫等相關(guān)配置的設(shè)置區(qū)域。Design是對應的組件明細。右邊部分是ETL的主界面,我們需要把Design頁面中相關(guān)組件在上面設(shè)計展示。Kettle中有兩種腳本文件,transformation和job,transformation完成針對數(shù)據(jù)的基礎(chǔ)轉(zhuǎn)換,job則完成整個工作流的控制。Kettle的體系結(jié)構(gòu):2.Kettle使用2.1數(shù)據(jù)庫連接使用kettle進行數(shù)據(jù)抽取和轉(zhuǎn)換之前必須連接數(shù)據(jù)庫,你能夠同時創(chuàng)立幾種不同的數(shù)據(jù)庫連接,如:Oracle、sqlserver、MySQL等。下圖是對本地mysql數(shù)據(jù)庫建立連接。點擊test按鈕進行數(shù)據(jù)庫連接測試2.2新建一個轉(zhuǎn)換Transformation(Ctrl+N)eg要求:將數(shù)據(jù)庫中交易表的數(shù)據(jù)按時間增量抽取并過濾輸出到目標數(shù)據(jù)庫中的另一張表中。第一步要先創(chuàng)立一個新transformation,再創(chuàng)立數(shù)據(jù)庫連接;第二步從輸入中找到【表輸入】,拖到主窗口釋放鼠標。接下來雙擊表輸入寫查詢語句;【獲取目標表中對應字段的最新時間,沒有就給個初始時間?!康谌綇妮斎胫姓业健颈磔斎搿浚系街鞔翱卺尫攀髽恕0醋hift鍵,用鼠標點中第二步的表輸入與第三步的表輸入進行連接;在sql中從點擊獲取sql查詢語句中選擇需要進行增量操作的表,然后確認需要顯示列名,出現(xiàn)沒有where條件的sql語句,然后自己在sql中增加where條件用?代表從上一個步驟中傳過來的變量,在下面替換sql語句里的變量,打勾,確保到時問號符號能用被替換,從步驟插入數(shù)據(jù)的下拉菜單中選擇上一步操作,在執(zhí)行每一行上打勾。第四步從輸入中找到【字段選擇】,拖到主窗口釋放鼠標。按住shift鍵,用鼠標點中表輸入與字段選擇進行連接;第五步雙擊【字段選擇】,可在根據(jù)需求選擇保留字段;第六步是找到【過濾記錄】連接方法同上,雙擊過濾記錄,在<field>里面進行字段選擇,并在<value>中鍵入值。確定保存。最后找到【表輸出】并對其連接,設(shè)置好輸出表名等信息后。點擊保存,然后點擊運行可進行轉(zhuǎn)換。整個結(jié)構(gòu)圖如下:2.3新建一個作業(yè)Jobs(Ctrl+ALT+N)eg要求:將多個轉(zhuǎn)換按照處理順序保存到執(zhí)行計劃中。并能夠?qū)ζ溥M行定時執(zhí)行。第一步要先創(chuàng)立一個新transformation,再創(chuàng)立數(shù)據(jù)庫連接;第二步從通用組件中找到【開始】,拖到主窗口釋放鼠標。接下來雙擊能夠進行定時設(shè)置.第三步從通用組件中找到【轉(zhuǎn)換】,拖到主窗口釋放鼠標,按住shift鍵,用鼠標點中開始與轉(zhuǎn)換進行連接;最后從腳本中找到【SQL】并對其連接,設(shè)置執(zhí)行的SQL后。點擊保存,然后點擊運行可按照start定義的方式進行執(zhí)行。整個結(jié)構(gòu)圖如下:由于組件種類繁多,關(guān)于Design中其它組件的使用方法能夠參考附件中的官方文檔[Pentaho_Data_Integration_4_Cookbook.pdf]PentahoReportDesigner1.PentahoReportDesigner安裝開發(fā)者可經(jīng)過,我們將下載的prd-ce-3.9.1-GA.zip解壓到想要放置的路徑,并執(zhí)行這一目錄中的report-designer.bat批處理文件,PRD的主界面將呈現(xiàn)在我們面前。2.PRD使用例子2.1新建一個報表(Ctrl+N)對報表界面做簡要介紹:左側(cè)的豎條展示了我們在設(shè)計報表時可能用到的工具。中間的部分是報表的主界面,我們需要把報表結(jié)果在主界面上排版展示右邊的標簽Structure能夠看到報表的結(jié)構(gòu),Data標簽里有所有要展示的數(shù)據(jù)。包括報表query的結(jié)果,以及各種函數(shù)。2.2創(chuàng)立query在Data標簽下右擊datasets,選擇JDBC連接,以下界面將會跳出。左側(cè)的框格顯示了所有已存在的數(shù)據(jù)庫連接,我們能夠點擊框格上方的按鈕來增刪改數(shù)據(jù)庫連接。右上側(cè)的框格展示了我們對應于某個數(shù)據(jù)庫連接有哪些已存在的query。同樣能夠經(jīng)過右上角的按鈕來增刪query。右下側(cè)的框格是query的主題部分,能夠點擊鉛筆圖標進入圖形化SQL編輯器,也能夠直接在顯示的query語句中編輯SQL語句。2.3設(shè)計query字段的展示。在右側(cè)data標簽中找到query的查詢結(jié)果字段,按住左鍵將其拖入到報表設(shè)計主界面。切換右上角的標簽頁到Structure標簽,單擊報表設(shè)計主界面上的對象,在右下角的Style和Attributes標簽上能夠看到這個對象的風格和屬性。Style標簽定義了這個對象的展示風格,比如字體顏色,背景色等內(nèi)容。Attributes標簽定義了對象的屬性,比如對象的類型,名字等內(nèi)容。能夠看到報表設(shè)計主界面被分為了不同的區(qū)域,她們表示了報表的結(jié)構(gòu)。PageHeader與PageFooter中的對象會在報表的每頁都顯示。ReportHeader中的對象只在報表開頭時展示一次,Detail中的對象會完全羅列query中的結(jié)果,ReportFooter中的對象會只在report的結(jié)尾顯示一次。在右上角的Structure標簽中也能夠明顯看出報表的結(jié)構(gòu),甚至能夠看到在主界面上不顯示的結(jié)構(gòu),比如DetailsHeader。同時,在各個報表功能區(qū)域下,我們還能夠看到主頁面上的對象,比如下圖中,我們能夠經(jīng)過Structure標簽就能夠知道在主界面的Details區(qū)域內(nèi)我們放置了兩個字段,sourceName和sourceID。Structure標簽中的報表結(jié)構(gòu)是最為完整的報表結(jié)構(gòu),我們在主界面上看不到某些區(qū)域是因為軟件默認在主界面上隱藏這些區(qū)域。我們能夠在Structure標簽中點擊相應對象解除隱藏。比如在Structure標簽中單擊DetailsHeader,在Attributes標簽中把hide-on-canvas改為False。這樣就能夠在主界面上顯示DetailsHeader區(qū)域。2.4對數(shù)據(jù)做圖PRD中提供作圖功能,我們能夠?qū)?shù)據(jù)表進行作圖以便更好地顯示。從左側(cè)工具條中找到“chart”對象,將其拖到主界面上想要放置的位置。在主界面上雙擊圖片區(qū)域,能夠修改圖的種類以及選項,我們以餅圖為例,解釋如下圖。餅圖效果如下:2.5報表參數(shù)設(shè)計PRD支持報表參數(shù)設(shè)計,我們能夠利用參數(shù)來實現(xiàn)報表的filter。具體做法如下,右擊Data標簽中的parameter點擊新增或者修改DataSources新加一個query,取名QuerycompanynameSQL代碼為接下來我們做如下配置:為parameter取名為f,指定query為Querycompanyname。這樣我們就產(chǎn)生了一個名為f的參數(shù)。可是這個參數(shù)現(xiàn)在并不能起作用。我們需要在報表查詢的主query中把參數(shù)加入才行。在主query中需要把參數(shù)f寫為${f}格式才能起作用。報表將會顯示當companyname=參數(shù)f的值時,Select語句所選擇的字段。以下的例子中,我們創(chuàng)立了兩個參數(shù),f代表companyname和f1代表日期。當我們運行報表時,對參數(shù)“公司”和“日期”選擇具體的值,就能夠看到報表查詢主query根據(jù)指定公司和指定日期查詢得到的結(jié)果。2.6公式PRD提供了強大的公式功能,不但內(nèi)建了很多實用的公式,比如“當前頁數(shù)/總頁數(shù)”,“總行數(shù)”,還支持自定義公式。公式的入口在Data標簽下的Functions上,右擊增加公式,我們能夠選取PRD內(nèi)建好的公式,也能夠自定義公式。公式按照功能已經(jīng)分類,除了內(nèi)建公式之外,我們點擊OpenFormula能夠自定義公式。2.7子報表,SubreportPRD在軟件設(shè)計時限制一個報表只能選定一個query在主界面上放置字段,也就是說一個報表同一時刻只支持從一個query查詢到數(shù)據(jù)而且顯示出來。那么當我們需要在一個報表上同時顯示多個數(shù)據(jù)集,多個query查詢的結(jié)果時該怎么辦?辦法就是添加一個subreport,在主報表從左側(cè)的工具欄上拖入sub-report到想要的位置,雙擊進入subreport,會發(fā)現(xiàn)subreport和主報表設(shè)計器幾乎一模一樣,能夠定義query,能夠設(shè)置公式,唯一的不同是subreport不能新建參數(shù),只能從主報表傳遞參數(shù)過來。Saiku1.PentahoSaiku安裝Saiku主要提供兩種安裝方式。獨立運行和集成在PentahoBI平臺上,我們這里采用集成在PentahoBI平臺這種方式運行。點擊\pentaho-solutions\system\下,并重啟BI平臺的服務。登錄BI平臺并點擊saiku按鈕就能夠看到Saiku的真面目了。2.Saiku使用例子使用saiku分析之前要準備好cube。一般見SchemaWorkbench建立。關(guān)于SchemaWorkbench的使用,下節(jié)

溫馨提示

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

最新文檔

評論

0/150

提交評論