mondrain 直接用SQL做源写到XML,开发效率极其提高

本文详细介绍了如何使用 Mondrian 进行数据源配置,包括配置文件的结构、连接字符串参数、数据源描述及认证模式等内容。通过具体示例展示了如何定义维度、层级和立方体,以及设置视图和度量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、数据源配置:datasources.xml

<DataSource>
<DataSourceName>Provider=Mondrian;DataSource=**;</DataSourceName>
<DataSourceDescription>**</DataSourceDescription>
<URL>http://localhost:8080/mondrian/xmla</URL>
<DataSourceInfo>Provider=mondrian;Jdbc=jdbc:db2://10.1.*.*:50000/**;JdbcUser=db2admin;JdbcPassword=db2admin;JdbcDrivers=com.ibm.db2.jcc.DB2Driver;Catalog=/WEB-INF/queries/**1.xml</DataSourceInfo>
<ProviderName>Mondrian</ProviderName>
<ProviderType>MDP</ProviderType>
<AuthenticationMode>Unauthenticated</AuthenticationMode>
<Catalogs>
<Catalog name="FoodMartCN1">
<Definition>/WEB-INF/queries/ReserveCashDB2.xml</Definition>
</Catalog>

<Catalog name="PrePayCard">
<Definition>/WEB-INF/queries/**2.xml</Definition>
</Catalog>

</Catalogs>
</DataSource>


2、例如:**2.xml

<?xml version="1.0" encoding="GBK"?>
<Schema name="库名">

<Dimension name="机构" >
<Hierarchy hasAll="true" primaryKey="IBANKID">
<Table name="PACA_DIM_BANK"/>
<Level name="机构" column="SBANKNAME" uniqueMembers="true">
</Level>
</Hierarchy>
</Dimension>

<Dimension name="时间" type="TimeDimension">
<Hierarchy hasAll="false" primaryKey="DAY_SHORT_DESC">
<Table name="PACA_DIM_TIME"/>
<Level name="年" column="YEAR_LONG_DESC" uniqueMembers="true" levelType="TimeYears"/>
<Level name="季" column="QUARTER_LONG_DESC" uniqueMembers="false" levelType="TimeQuarters"/>
<Level name="月" column="MONTH_LONG_DESC" uniqueMembers="false" levelType="TimeMonths"/>
</Hierarchy>
</Dimension>


<Cube name="**-按地区" defaultMeasure="IVALUE">
<View alias="211AREA">
<SQL dialect="generic"> <![CDATA[
select * from a where a.id='1'
]]>
</SQL>
</View>

<DimensionUsage name="时间" source="时间" foreignKey="DDATE"/>
<DimensionUsage name="机构" source="机构" foreignKey="SBANKCODE"/>
<!--add 地区 dim -->

<Measure name="IVALUE" caption="金额" column="IVALUE" datatype="Numeric" aggregator="sum" formatString="#,###.00"/>
</Cube>


<Cube name="**-按对象" defaultMeasure="IVALUE">
<View alias="211PRS">
<SQL dialect="generic"> <![CDATA[
select * from a where a.id='2' ]]>
</SQL>
</View>

<DimensionUsage name="时间" source="时间" foreignKey="DDATE"/>
<DimensionUsage name="机构" source="机构" foreignKey="SBANKCODE"/>
<!--add 对象 dim-->

<Measure name="IVALUE" caption="金额" column="IVALUE" datatype="Numeric" aggregator="sum" formatString="#,###.00"/>
</Cube>

</Schema>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值