我想學習如何建立一個BI堆棧,但我被困在理解什麼進程的一部分失敗:調試BI堆棧:MYSQL +蒙德里安+齋宮服務器
- 設計一個星型模式:完成從我的OLTP數據庫(MySQL的)
- 加載數據到我的星數據庫(MySQL的太):與Pentaho的數據集成
- 製作蒙德里安XML描述立方體完成:與蒙德里安架構工作臺
- Setuping一齋宮做服務器的正確配置使用Mondrian XML描述a nd MySQL明星數據庫:完成
結果:沒有立方體出現在Saiku。我不知道這可能來自哪個元素。第2步是正確的,因爲我可以運行這部分。
這裏是我的星型模式:
CREATE TABLE IF NOT EXISTS `dim_date` (
`date_id` int(11) NOT NULL AUTO_INCREMENT,
`date` datetime DEFAULT NULL,
`month` varchar(3) DEFAULT NULL,
`year` varchar(4) DEFAULT NULL,
PRIMARY KEY (`date_id`),
KEY `idx_dim_date_lookup` (`date`,`month`,`year`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `dim_sector` (
`sector_id` int(11) NOT NULL AUTO_INCREMENT,
`sector` varchar(255) DEFAULT NULL,
PRIMARY KEY (`sector_id`),
KEY `idx_dim_sector_lookup` (`sector`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `dim_size` (
`size_id` int(11) NOT NULL AUTO_INCREMENT,
`size` varchar(10) DEFAULT NULL,
PRIMARY KEY (`size_id`),
KEY `idx_dim_size_lookup` (`size`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `fact_companies` (
`fact_id` int(11) NOT NULL AUTO_INCREMENT,
`count` int(11) NOT NULL,
`date_id` int(11) NOT NULL,
`sector_id` int(11) NOT NULL,
`size_id` int(11) NOT NULL,
PRIMARY KEY (`fact_id`),
KEY `date_id` (`date_id`),
KEY `sector_id` (`sector_id`),
KEY `size_id` (`size_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ALTER TABLE `fact_companies`
ADD CONSTRAINT `fact_companies_ibfk_1` FOREIGN KEY (`date_id`) REFERENCES `dim_date` (`date_id`),
ADD CONSTRAINT `fact_companies_ibfk_2` FOREIGN KEY (`sector_id`) REFERENCES `dim_sector` (`sector_id`),
ADD CONSTRAINT `fact_companies_ibfk_3` FOREIGN KEY (`size_id`) REFERENCES `dim_size` (`size_id`);
我蒙德里安XML是(大小丟失):
type=OLAP
name=test
driver=mondrian.olap4j.MondrianOlap4jDriver
location=jdbc:mondrian:Jdbc=jdbc:mysql://192.168.1.43/testdb;Catalog=res:test/testdb.xml;JdbcDrivers=com.mysql.jdbc.Driver;
username=test
password=test
我:
<Schema name="New Schema1">
<Cube name="companies_cube" visible="true" cache="true" enabled="true">
<Table name="fact_companies">
</Table>
<Dimension type="TimeDimension" visible="true" foreignKey="date_id" name="date">
<Hierarchy name="All" visible="true" hasAll="true" allMemberName="all" allMemberCaption="all" allLevelName="all">
<Level name="Date" visible="true" table="dim_date" column="date" nameColumn="date" uniqueMembers="false">
</Level>
<Level name="Month" visible="true" table="dim_date" column="month" nameColumn="month" uniqueMembers="false">
</Level>
<Level name="Year" visible="true" table="dim_date" column="year" nameColumn="year" uniqueMembers="false">
</Level>
</Hierarchy>
</Dimension>
<Dimension type="StandardDimension" visible="true" foreignKey="sector_id" name="Sector">
<Hierarchy name="Sector" visible="true" hasAll="true" primaryKey="sector_id" primaryKeyTable="sector_id">
<Level name="Sector" visible="true" table="dim_sector" column="sector_id" nameColumn="sector" uniqueMembers="false">
</Level>
</Hierarchy>
</Dimension>
<Measure name="count companies" column="count" aggregator="sum" visible="true">
</Measure>
</Cube>
</Schema>
我和齋宮服務器的連接是通過做考慮到提供的foodmart樣本和saiku的文檔,寫了這個。
我應該在哪裏看?我能做些什麼來查看哪些不起作用?開發BI基礎設施的專業方式是什麼?
檢查saiku服務器日誌 - 看看你能否看到它是否找到該文件。問題是要麼saiku沒有找到mondrian xml,要麼是由於某種原因無法驗證。 (Saiku不會接受無效的模式)。或者嘗試freenode IRC上的## saiku以獲得即時幫助! – Codek
我檢查了日誌文件,沒有提及我的文件。 – AsTeR
正是我現在正在......對於Pentaho的商務智能套件而言,正確的答案是「什麼是開發BI基礎設施的專業方式?」是爲了支付他們的支持:D沒辦法 - 無論發生什麼,我都會堅持下去,並把它變成博客文章。 – Raffael