[轉貼]Pentaho部署常見問題


Pentaho部署常見問題

 

Pentaho Q&A List

 

下面鏈接為此文檔的PDF格式:

http://dl.iteye.com/topics/download/80c28022-bbf0-3b3a-9bb3-6dcc066b7135

 

 

作者: http://flyfoxs.iteye.com

目錄

 

 

 

1. 柱狀圖(Bar Chart),和折線圖(Line Chart)的區別

2. 折線圖(Line Chart) 和 xy折線圖(XY Line Chart)區別

3. Pentaho 泡泡圖(buddle chart)

4. Jpivot 出圖時,隱藏All

5. 數據太多時,如何將X軸稀疏顯示

6. Pentaho Report Designer開發時,如何在一個Report中顯示2個圖形(Chart)

7. inline subreport與banded subreport的區別

8. 如何在Pentaho Report Designer中使用變量/參數

9. Pentaho User Console 多語言

10. Pentaho(OLAP) Jpivot圖片亂碼, Pentaho Report(Chart)亂碼

11. Session 超期

12. 發布元數據(metadata)后,Server日志出現亂碼,即時報表無法顯示多語言

13. Jpivot工具欄的解說

14. 設置發布密碼(發布report, metadata)

15. 修改Log級別(可以打印出詳細的錯誤,比如MDX對應的SQL)

 

 

 

 

1.柱狀圖(Bar Chart),和折線圖(Line Chart)的區別

通過下圖,可以很明顯的看到柱狀圖和折線圖的區別,就是當數據不連續的時候,折線圖會”默認”的隱藏數據.導致報表失去精確性.當然這個也是可以彌補的,也就是這個只是默認行為.如何彌補,可以參考折線圖與XY折線圖的區別.

 

 

2.折線圖(Line Chart) 和 xy折線圖(XY Line Chart)區別

當數據不連續時,折線圖可以選擇通過標記顯示出不連續的點來標明數據的存在,在XY Line Chart上面我沒有找到這樣的選項. 下面就是相關選項及對應的顯示結果

 

 

 

 

l  當坐標密度比較大的時候,XY 折線圖可以控制顯示間隔,但是折線圖做不到. XY折線圖如何做到的,可以參考官方例子. prd-ce-3.9.0-GA/report-designer/samples/Charts/XY Line Chart.prpt. 請注意高亮的參數

 

 

 

 

 

3. Pentaho 泡泡圖(buddle chart)

個人覺得官方示例里面的泡泡圖是不對的(也許是我不太理解),查看其參數后發現,series-by-field這個參數很多余,如果這個參數選擇了Productname,那么一個Productname只能在圖表上有一個泡泡,並且是選擇最后一個出現的數據.

 

 

 

 

這樣就會導致下面的數據,無法在Pentaho通過泡泡圖來展現.針對同一產品,我們做了這樣一組數據(這組數據只是為了說明問題虛構的,不一定合理).那么在Pentaho的泡泡圖上面就只會有一個泡泡.但是通過Excel可以很容易的得到4個泡泡.

cost

budget

revenue

product

1

2

3

food1

2

3

4

food1

3

4

6

food1

4

5

4

food1

有一種折中的辦法,就是把product這一列用一個肯定不會重復的數來替代,這樣Pentaho,就可以顯示出正確的泡泡圖了.

4.Jpivot 出圖時,隱藏All

Jpivot提供了很強的OLAP分析,有一個很實用的功能就是顯示圖表.但是如果不留意,就會在圖表中引入了匯總數據,也就是下圖的高亮部分.這個時候,我們其實想要的是通過圖表同一個級別的信息,但是查看生成的圖,你就會發現匯總部分被帶入進圖表了,這個圖表就很容易讓人誤解了(紅色的總是占了剛好一半).

 

 

解決辦法:點擊上圖高亮的Drill Replace按鈕,得到下面的結果,然后點擊高亮的向下的箭頭.再看看圖片,你就會得到很直觀的圖片了.

 

 

 

 

 

 

 

 

 

5. 數據太多時,如何將X軸稀疏顯示

可以參考下面的Blog,由於我找到了其他的方案,所以沒有驗證了.我的解決方案就是使用XY-Line Chart就可以很容易的指定坐標間隔.如果指定,可以參考[折線圖(Line Chart) 和 xy折線圖(XY Line Chart)區別]

http://www.itisbi.com/thread-72-1-1.html

 

 

6. Pentaho Report Designer開發時,如何在一個Report中顯示2個圖形(Chart)

Pentaho不像Cognos,Cognos一個報表里面可以很容易的顯示多個List或者圖標.Pentaho只能使用 sub report的形式來實現,因為一個Report里面只能有一個激活的結果集. 開發過程總發現Report沒有數據,就有一個可能是沒有Active的結果集.

Pentaho的Sub Report有2種: inline subreport,banded subreport這2種Report的區別,在下一問題中進行詳細解說.

 

7.inline subreport與banded subreport的區別

說簡單點就是2總Report的大小不一樣,inline是固定的,精確根據你指定的大小來. 而banded則是根據里面內容多少來確定Report的大小.

 

但你不知道你的數據有多少的時候,你就需要考慮使用banded.反之則可以選擇banded.

 

參考文檔:

http://wiki.bizcubed.com.au/xwiki/bin/view/Pentaho+Tutorial/+inline+vs+banded

8. 如何在Pentaho Report Designer中使用變量/參數

下面這個文檔里面詳細的講述了,如何在PRD中使用各種查詢時,如何使用SQL.有需要可以直接去看.

 

http://diethardsteiner.blogspot.com/2009/11/using-parameters-in-pentaho-report.html(網址被牆,需要使用代理訪問)

 

9. Pentaho User Console 多語言

Pentaho對於多語言的支持,大部分可以很容易的根據感覺找到.比如即時報表(ad hoc report),在定義Metadata時,就可以對各個字段設置對應的多語言.但是Pentaho User Console的多語言,卻不是很好找.下面截圖是官方示例的效果.

 

要實現這個多語言,主要是看2個文件,一個是index.xml,一個是index_jp.properties. 文件內容可以參考官方示例.關鍵是修改name對應的值,其他的可以不用修改. Name對應的指,你要轉換為ascii才可以,你可以使用在線工具:

http://www.00bug.com/native2ascii.html

http://tool.chinaz.com/Tools/native_ascii.aspx

 

 

      

 

10.  Pentaho(OLAP) Jpivot圖片亂碼, Pentaho Report(Chart)亂碼

我在使用Pentaho的時候,亂碼遇到的不多,主要是2處,一處是發布metadata時,另一處就是Pentaho生成的圖片.

 

在PentahoReport使用jfreechart生成圖片(比如在PRD中引入Chart圖表,或者在OLAP時,使用Jpivot生成圖表),如果你只是生成圖片有亂碼,報表能正常顯示文字,那么恭喜你,我能幫你解決這個問題.(你也可以手工輸入一個漢字到Report中,如果能夠正常顯示那么問題就能更確定了)

其實問題的根本原因,就是缺少字體,你如果想了解的更細致,可以參考如下鏈接.在Centos系統中,可以直接使用下面命令安裝字體,然后重啟bi-server即可.

yum list | grep -i font | grep japanese yum install fonts-japanese
http://space.baidu.com.cn/yanghlcn/blog/item/8e29afa48dfa23fc9152ee2d.html http://zhanghaoeye.iteye.com/blog/708211

 

11.   Session 超期

在開發時,經常走開會再回來,BI-Server就會讓你重新輸入密碼,這個很討厭,可以修改如下配置,防止Session超期:

 

vi ./webapps/pentaho/WEB-INF/web.xml
<!--insert additional servlet mappings --> <session-config> <session-timeout>30</session-timeout> </session-config>

 

12.    發布元數據(metadata)后,Server日志出現亂碼,即時報表無法顯示多語言

雖然目前找到了解決辦法,但是對於原因細節還是不明白.猜想是因為服務器和客戶端對於Unicode的編碼方式不一樣,導致出現亂碼.

 

解決辦法就是,按照高亮部分修改客戶端啟動腳本

(pme-ce-4.5.0-stable\metadata-editor\metadata-editor.bat)

set  OPT=-Xmx256m -cp %CLASSPATH% -Djava.library.path=%LIBSPATH% -Dfile.encoding="UTF-8"

 

 

 

 

下面是我遇到的錯誤異常

 

Caused by:  org.xml.sax.SAXParseException; lineNumber: 5585; columnNumber: 61; Invalid  byte 3 of 3-byte UTF-8 sequence.

        at  org.apache.xerces.parsers.DOMParser.parse(Unknown Source)

        at  org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)

        at  org.pentaho.metadata.util.XmiParser.parseXmi(XmiParser.java:905)

        ... 70 more

Caused by:  org.apache.xerces.impl.io.MalformedByteSequenceException: Invalid byte 3 of  3-byte UTF-8 sequence.

        at  org.apache.xerces.impl.io.UTF8Reader.invalidByte(Unknown Source)

 

 

 

13.  Jpivot工具欄的解說

 

 

 

這個工具欄的大部分按鈕還是很好理解的,比如打印,生成圖片,導出Excel,我只是挑出幾個個人不好理解的幾個比較說明一下.

 

l OLAP Navigator

 

 

點擊粉紅色的按鈕,可以決定這個維度是出現在行,還是列中顯示.

點擊黃色的按鈕,可以決定這個按照這個信息過濾. 不過這個功能再有些版本中是有Bug的,在biserver-ce-4.5.0時已經fixed了.

三角形的按鈕,排序按鈕,這個是很好理解的.

如果你有多個度量(measure),默認只顯示一個,你可以點擊Measures這個鏈接進行設定.

 

l  Suppress Empty Rows/Columns

 

 

這個按鈕說通俗點就是是否顯示空數據,比如在OLAP分析時經常會遇到稀疏數據,比如夏天一款棉襖的銷量,這個時候就可以通過這個按鈕隱藏這些數據.

 

這個按鈕的效果,也可以通過MDX SQL Editor很明顯的發現,這個按鈕剛好對應關鍵字”NON EMPTY”

 

l  Drill Member/Drill Position

 

 

 

這2個按鈕要對比來解釋,他們的區別就在於當你已經展開了一個維度,展開第二個維度時的區別.下面通過圖片來對比:有圖有真相.

 

 

對比2個圖片發現,當選擇Drill Member時,你展開第二個維度(Department)時,所有的Department都會展開.但是如果你選擇Drill Position,只會展開你選擇的那部分.

 

另外一點,就是這個按鈕是互斥的.

 

 

 

l  Drill Replace

 

 

 

這個按鈕可以解決上面提到的OLAP生成Chart時,總是帶入匯總數據的問題.

 

 

l  Drill Through

 

 

這個很簡單了,就是讓你Drill Through,點擊高亮的箭頭就可以了.

 

 

 

 

l  Show Chart/Chart Config

 

 

 

這2個按鈕的作用很明顯,只是有幾點需要說明.

如果生成圖片時,同時生成了匯總數據部分,你可以參考: [Jpivot 出圖時,隱藏All]

如果圖片沒有生產出來,可能是圖片太大了,你需要調整圖片高度和寬帶

如果生成的圖片有亂碼,那是因為沒有對應的字體,你可以參考上面關於亂碼部分的說明

 

 

14.    設置發布密碼(發布report, metadata)

這個密碼必須設置,默認為空,是不能發布Report和metadata的

vi  biserver-ce/pentaho-solutions/system/publisher_config.xml

 

 

15.    修改Log級別(可以打印出詳細的錯誤,比如MDX對應的SQL)

./server/biserver-ce/tomcat/webapps/pentaho/WEB-INF/classes/log4j.xml


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM