思迈特Smartbi
作者思迈特Smartbi·2015-04-20 15:34
产品经理·广州思迈特软件有限公司

Smartbi+Palo实现多语言OLAP分析

字数 1963阅读 2921评论 0赞 0

Palo是一款开源OLAP服务器,多语言是它的一个特性。PaloXmla是Smartbi专门针对Palo Server开发了一个MDX查询引擎,类似Microsoft XML For Analysis SDK,提供了使用MDX语句访问Palo Server的能力。为了提供类似Microsoft Sqlserver Analysis Service的多语言能力,PaloXmla提供了一套特殊处理机制。

准备Meta Cube

在PaloXmla多语言处理机制中,多语言是存储在Palo服务器上的一个特殊Cube。这个用于存储不同语言元数据的Cube需要包含3个维度,分别是:

  • 语言维度:其成员是各种语言,常见的有:zh(中文)、en(英语)、ja(日文)、ko(韩文)、fr(法语)、de(德语)、it(意大利语)等
  • 结构维度:与要释义的Cube结构相同,通过名称与源Cube关联
  • 别名维度:指定存储的多语言内容的含义。

以Palo提供的Demo为例,准备的Meta Cube如下图

新建一个叫Meta的cube,包含AliasDim、LangDim、MeataDim三个维度。这里Cube的名称和维度的名称可以自由设定,没有限制。

AliasDim只包含一个成员caption,表示存储的是别名。

LangDim包含两个成员,分别是zh和en,分别对应中文和英语。

MetaDim与Sales的维度层次结构相同,最上层是Cube名称,下一级是维度名称,后面跟着就是一级一级的成员。这里只录入部分维度和成员,也就是多语言化了部分元数据。同时,MetaDim的层次结构也没有太大的意义,纯粹是为了方便维护。

可以通过Excel录入不同语言的元数据。如上图

配置Palo XMLA服务

PaloXmla服务需要进行配置,使得它能够读取Meta Cube的内容。修改PaloXmlaWEB-INFpaloxmla.xml文件,加入一句获取多语言数据的MDX语句。以上一步准备的Meta Cube为例,对应的语句为SELECT {[LangDim].ALLMEMBERS} ON COLUMNS, {[MetaDim].ALLMEMBERS} ON ROWS FROM [Meta] WHERE ([AliasDim].[caption])。维度名称需要与第一步中Meta Cube中的名称一致,而且语言维度必须在列区,结构维度必须在行区,其它维度限制在切片中反映。具体内容如下:

  1. <DataSources> 
  2. <DataSource> 
  3. <DataSourceName>PaloServer</DataSourceName> 
  4. <DataSourceDescription /> 
  5. <URL /> 
  6. <DataSourceInfo>{"server":"192.168.1.154","port":7777,"username":"admin","password":"admin","aliasMdx":"SELECT {[LangDim].ALLMEMBERS} ON COLUMNS, {[MetaDim].ALLMEMBERS} ON ROWS FROM [Meta] WHERE ([AliasDim].[caption])"}</DataSourceInfo> 
  7. <ProviderName>Palo</ProviderName> 
  8. <ProviderType>MDP</ProviderType> 
  9. <AuthenticationMode>Unauthenticated</AuthenticationMode> 
  10. <Catalogs /> 
  11. </DataSource> 
  12. </DataSources>

复制代码


配置Smartbi

Smartbi默认情况下没有打开中英文双语的切换支持,需要进入Smartbi的配置界面修改。请在IE中访问http://Smartbiserver:port/smartbi/vision/config,进入管理控制台。修改其中"中英文切换显示"的值为"是"。修改后点击"保存"按钮保存。

返回登录界面,可以看到语言选择框,目前Smartbi系统支持中文和英文两种语言。

效果展示

使用Palo建立的多维分析和多维探索无须特别设置,其资源目录树和表格内容会自动跟进当前登录时的语言环境显示不同的内容。如下图示例:

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关问题

相关资料

X社区推广