用于为商业智能服务器使用的数据提供多语言支持的系统和方法

文档序号:6360721阅读:116来源:国知局
专利名称:用于为商业智能服务器使用的数据提供多语言支持的系统和方法
技术领域
本发明一般涉及商业智能,具体地涉及为商业智能服务器中的数据提供多语言支持。
背景技术
近年来,商业智能软件已经变得逐渐被大型商业企业和其它组织使用。商业智能通过分析组织的内部结构化的数据和商业过程来提供商业操作的当前和历史图。它通常用于产生未来模型和预测以便支持更好的商业决策。因而,商业智能工具能够为许多公司带来减小的成本和增加的效率、生产力和利润率。商业智能通常被实现为用于收集和分析数据并且用于将原始数据变换成用于使能更有效的战略、策略和运营眼光和决策的有意义的和有用的信息的软件和/或硬件工具。因而,典型的商业智能服务器依赖于各种地方中存在的数据,这些地方包括关系数据库、在线分析处理(OLAP)工具、储存库和内容管理系统、应用服务器以及许多其他源,但是不限于此。在典型的商业智能(BI)服务器中,从这些数据源的全部(或一些)处收集数据并且将其放在(虚拟或物理)数据仓库或数据市场中,在此处,数据能够在向用户呈现之前被建模和分析。例如,一个方法是在商业智能服务器之内实现物理层,其中数据被建模为反映数据源层中的对象的统一表格。应用开发者能够使用与域有关的实体的子集用手装配这些混合的对象;随后可以将合成的对象引入到商业智能服务器的元数据中并且分解成维度和事实。但是,在对商业智能服务器之内的数据建模的领域中仍然存在许多限制和潜在的改进区域。例如,对用户来说,利用跨不同语言的查询工作经常是有用的。如果数据列以英语存储,则以日文登入BI服务器的用户可能在为查询指定过滤器方面有困难。此外,存储某些大的对象类型的列通常不被“分组(group by)”查询条款的数据库支持。因此,对于BI服务器期望能够支持包含多语言数据的模式并且能够简化管理并且改善多语言查找表的查询性能。

发明内容
根据各种实施例,为BI服务器提供多语言双列支持。多语言支持使得BI服务器能够使用查找表来存储在基本表中存储的值的翻译。需要多语言数据的查询然后能够联合基本表和查找表来获得这些翻译。根据实施例,BI服务器通过实现查找表以及使得用户能够利用使用不同的语言的查询工作的相关的查找功能来使能多语言支持。当用户登入BI服务器时,对于该用户创建会话对象,其保持对于用户的会话的状态信息。这样的会话的变量中的一个指定当前由用户使用的语言。根据实施例,BI服务器能够检查此会话变量来确定用户的语言并且根据需要执行查找翻译。例如,如果会话使用的语言不同于存储必要信息的基本表的语言,则BI服务器能够通过调用查找功能来执行翻译。查找的执行能够包括执行基本表与查找表的联合操作以输出该查询请求的翻译后的值。


图I是根据本发明的各个实施例的BI服务器的例示。图2是根据本发明的各个实施例的遍历BI储存库的各个层的查询的例示。图3A是根据本发明的各个实施例的一个查找表实施方式的例不。图3B是根据本发明的各个实施例的另一个查找表实施方式的例示。图4是根据本发明的各个实施例的采用查找表执行查询的翻译的商业智能服务器的例示。图5是根据本发明的各个实施例的用在商业智能服务器中的多语言支持的流程图例示。图6是可以用于执行这里描述的本发明的各个实施例的计算设备的例示。
具体实施例方式本发明通过示例方式而不是通过限制方式来示出在附图的图示中,在附图中,相似的参考指示相似的元素。在此公开中提及实施例不一定是指相同的实施例,这样的提及意味着至少一个。虽然讨论特定的实施方式,但是应当理解,这仅仅是为了示例目的而进行的。本领域技术人员将理解,在不脱离本发明的范围和精神的情况下,可以使用其它组件和配置。在下面的描述中,阐述许多特定细节以提供本发明的详尽的描述。但是,本领域技术人员显然可知,可以不用这些特定的细节来实践本发明。在其它实例中,没有详细描述公知的特征以便不模糊本发明。根据贯穿此公开描述的各个实施例,将商业智能(BI)服务器扩展为具有对数据查询的多语言支持。商业智能查询通常包括联合多个表。这呈现了各种技术/性能/功能上的挑战。例如,I)用户想要能够按照为跨不同的语言的用户工作的方式创建过滤器(产品=‘可口’)。如果过滤器可以表示为‘产品=可口’,则这可能不能为日本用户工作;2)附加的有关数据存储在数据库CL0B/BL0B列(power point文件、excel文件、PDF文件、病人x射线等)中是普遍的。数据库通常不允许这些列参与‘分组(group by)’;以及3)标签定位需求通常要求一个表与多个表联合。但是对于任何给定查询,仅仅这些中的一个可以是有效的。另外,联合能够最佳地在聚集后完成。多语言支持特征允许BI服务器寻址这些需求。根据实施例,BI服务器通过实现查找表以及使得用户能够利用使用不同语言的查询工作的相关的查找功能来使能多语言支持。当用户登入BI服务器时,对于该用户创建会话对象,其保持对于用户的会话的状态信息。这样的会话的变量中的一个指定当前由用户使用的语言。根据实施例,BI服务器能够检查此会话变量来确定用户的语言并且根据需要执行查找翻译。例如,如果会话使用的语不同于存储必要信息的基本表的语言,则BI服务器能够通过调用查找功能来执行翻译。另一方面,如果会话的语言与基本表的语言相同,则
8不必需翻译并且该查询能够被直接回答而不用任何查找。根据实施例,查找表包括至少一个值列,其是包含用于存储数据的基本表中的列的实际翻译值的列。此外,查找表具有将用于执行查找的查找关键字(例如,主关键字)。根据实施例,查找功能包括将用于获得特定数据段的翻译的参数集。例如,查找功能包括指定将包含翻译的查找表的值列的参数。此外,查找功能包括指定数据项的标识符的参数和识别翻译所需的特定语言的参数(这能够从会话变量中获得)。在一些情况下,查找功能还可以包括指定以基本语言存储所需的数据段的值的基本表的列的参数,下面将还详细地描述。根据实施例,BI服务器将查找功能重写到将用于执行基本表与查找表的联合操作的合适的结构化查询语言(SQL)语句中。联合操作对于查询所请求的基本表的行输出翻译后的值(以用户的会话语言)。
图I是根据本发明的各个实施例的BI服务器的例示。虽然此图将组件描述为逻辑上分离的,但是这样的描述仅仅用于说明性的目的。对本领域技术人员显而易见的是,在此图中描绘的组件能够被组合或分成单独的软件、固件和/或硬件。此外,对本领域技术人员还显而易见的是,这样的组件不管它们被如何组合或划分,能够在相同的计算设备上执行或能够在由一个或多个网络或其它合适的通信手段连接的不同的计算设备之间分布。如图所示,BI服务器104和BI储存库108提供让用户100发送对复杂联合数据源106的简单逻辑结构化查询语言(SQL)查询的提取层。根据实施例,BI服务器104处理用户请求并且查询下层数据源。BI服务器能够保持逻辑数据模型并且通过开放式数据库互接(ODBC)提供对此模型的客户端接入。根据实施例,BI服务器使用储存库108中的元数据来执行两个任务(I)解释逻辑SQL查询并且写入对合适的数据源106的对应的物理查询;和(2)变换并组合物理结果集合并且执行最终的计算。BI服务器能够通过ODBC或通过数据源的原本应用编程接口(API)连接到下层数据源。根据实施例,管理工具102是可以用于创建并编辑BI储存库108的应用。管理工具能够以脱机模式连接到储存库,或它能够通过BI服务器(联机模式)连接到储存库。根据各个实施例,可以使得由BI服务器提供的附加功能在联机模式下可用。图2是根据本发明的各个实施例的遍历BI储存库的各个层的查询的例示。虽然此图将组件描述为逻辑上分离的,但是这样的描述仅仅用于说明性的目的。对本领域技术人员显而易见的是,在此图中描绘的组件能够被组合或分成分离的软件、固件和/或硬件。此外,对本领域技术人员还显而易见的是,这样的组件不管它们被如何组合或划分,能够在相同的计算设备上执行或能够在由一个或多个网络或其它合适的通信手段连接的不同的计算设备之间分布。如上所述,BI服务器能够处理对复杂联合数据源发送的输入的客户端请求200。根据实施例,BI储存库由三个层组成物理层206、逻辑映射层204和呈现层202。根据实施例,物理层206定义BI服务器写入对每个物理数据源208的本地查询所需的对象和关系。根据实施例,用户或管理员通过从数据源引入表格、仓(cube)和扁平文件来创建此层。例如,如此图所示,用在物理层中的格式和模式中的一些能够包括星形和雪花214、归一化的数据216和去归一化的数据218、可扩展标记语言(XML)和文件存储数据220、多维数据222、应用开发框架(ADF)数据224和其它格式。应用的逻辑行为与物理模型的分离提供多个物理数据源与相同的逻辑对象联合的能力,使能集总的导航和分割,以及维度一致和与物理源变化的隔离。此分离还使能可移植BI应用的创建。根据实施例,逻辑商业模型和映射层204定义数据的商业或逻辑模型并且指定商业模型和物理模式之间的映射。此层还确定用户看到的分析行为,并且定义用户可用的对象和关系的超集。它还隐藏源数据模型的复杂度。根据实施例,呈现层202提供向用户呈现商业模型的定制的、安全的、基于角色的图210的方式。它在商业模型和映射层204内添加抽象级并且在呈现服务和其它客户端200中提供由建立请求的用户看到的数据的图。根据实施例,企业构建BI储存库的典型的顺序是首先创建物理层对象、接着创建逻辑模型和映射层对象,最后创建呈现层对象。但是,在可替换实施例中,用户能够在任何阶段在每个层上工作。·大多数情况下,计划商业模型是开发对于决策支持的可用的数据模型的第一步。在商业模型中,维度表示逻辑列(属性)的分级组织。一个或多个逻辑维度表能够与最多一维相关联。通常的维度的示例是时间段、产品、市场、消费者、供应者、促销条件、原材料、制造厂、运输方法、媒体类型和一天的时刻。根据实施例,维度存在于逻辑模型和映射层204以及呈现层202中。在每个维度,属性能够被组织成分级级别。这些逻辑级表示部署BI服务器的组织的商业所需的组织规则和报告需求。它们提供BI服务器用来穿入和跨过维度以获得更详细的数据图的结构(元数据)。图3A是根据本发明的各个实施例的一个查找表实施方式的例示。应当注意,这里描述的实施例不一定局限于此特定实施方式,并且在本发明的范围内,其它实施方式是可能的。具体地,此图示出了为每个基本表保持一个查找表的查找表的设计。在图3B所示的可替换设计中,能够按基本表的每个字段保持一个查找表,下面将更详细描述。如图3A所示,按每个基本表300存在单独的查找表302。根据实施例,查找表包含对基本表中的记录的引用的外国关键字并且包含单独的列中的每个翻译的字段的值。假定完全密集的查找表,则用于特定语言的查找表中的行的数目等于基本表中的行的数目。在图3A所示的示例中,查找表302中的每个记录仅仅匹配基本表300中的一行。图3B是根据本发明的各个实施例的另一个查找表实施方式的例示。再一次应当注意,这里描述的实施例不一定局限于此特定实施方式,并且查找表的其它实施方式也是可能的。如图所示,可替换的设计是按基本表302的每个翻译的字段实现单独的查找表306。根据实施例,获得每个字段的翻译的值于是将要求与查找表的单独的联合。在实践中,通常仅仅存在包含用于多个字段的翻译的一个物理表。当单个表包含用于多个字段的翻译时,可能必需的是对查找表设置过滤器以将数据限制到仅仅与基本表中的特定列有关的值。根据本发明的各个实施例,BI服务器能够支持图3A和图3B所示的两个查找表设计。根据各个实施例,稀疏的查找表和密集的查找表二者能够由BI服务器支持。在一些模式中,查找表是稀疏的,包含对于基本表中的仅仅一些记录的翻译。稀疏的查找表要求与基本表的外联合以使得保持来自于基本表的行。通常当对于特定记录丢失翻译时,代替空值,应当代入基本翻译。密集的查找表包含对于基本表中的每个记录的所有语言的翻译。由于密集的查找表包含对于每个基本记录的匹配记录,因此查找表能够与基本表内联合,从而避免外联合和基本语言代入的开销。在一些情况下,查找表能够既为密集的又为稀疏的。例如,图3B中的查找表可以包含对于‘描述(Description)’字段的完全翻译但是对于‘类别(Category)’字段的部分翻译。因而,根据实施例,BI服务器将“密集的”和“稀疏的”看作查找操作的特性而不是表的特性。稀疏的查找将利用外联合将基本表与翻译表连接,而密集的查找将导致基本表和翻译表之间的内联合。根据实施例,描述符列能够由BI服务器支持。描述符列是为一些关键字列提供文本描述的列,其中在描述符列和关键字列之间存在一对一关系。在实践中,通常可以不执行一对一关系,但是为了查询目的,列能够被看作好像存在这样的一对一关系一样。描述符列的示例可以是Product_Name (产品1名称),其为Product_Key (产品关键字)列提供文本描述。虽然在很多情况下两个产品可能具有相同的名称,但是这不可能出现,并且即使存在具有相同名称的产品,产品在集总和过滤中仍然能够被看作单独的实体。根据实施例,创建描述符列的一个理由是帮助定义独立于语言的过滤器。当用户基于描述符列创建过滤器时,查询工具向用户显示对于描述符列选择的值的列表。在内部,BI服务器也可以将关键字列存储为LOV中的隐藏字段。当用户从LOV选择值时,该工具用隐藏关键字值替换过滤器中的选择的描述符值并且在关键字列方面重写过滤器。由于过滤器被转换为仅仅引用非翻译的关键字列的形式,因此过滤器是独立于语言的并且能够与其它语言的用户共享。虽然描述符列通常被翻译成多种语言,但是这不一定需要。描述符列可以提供仅仅一种语言的描述。相同的如上所述的过滤器到关键字值的转换同样适用于非翻译的描述符列。这能够保证具有不同的关键字值但是共享相同的文本描述的行在集总和过滤时被单独地对待。根据实施例,此描述符列技术也在处理涉及诸如字符大对象之类的大对象(LOB)数据类型、二进制大对象(BLOB)和诸如COUNT O或SUMO之类的集总函数的查询时有用。一些数据源不允许LOB列用在分组(GROUP BY)条款中。因此,代替将LOB列增加到GR0UPBY,分组与LOB列具有一对一关系的一些其它列然后在已经计算集总之后联合LOB列是必需的。图4是根据本发明的各个实施例的采用查找表执行查询的翻译的商业智能服务器的例示。虽然此图将组件描述为逻辑上分离的,但是这样的描述仅仅用于说明性的目的。对本领域技术人员显而易见的是,在此图中描绘的组件能够被组合或分成分离的软件、固件和/或硬件。此外,对本领域技术人员还显而易见的是,这样的组件不管它们被如何组合或划分,能够在相同的计算设备上执行或能够在由一个或多个网络或其它合适的通信手段连接的不同的计算设备之间分布。如图所示,一旦为用户建立会话424,用户400就能够发出对BI服务器404的逻辑SQL查询402。在接收到查询402时,BI服务器能够检查会话424以确定用户的会话的语言。如果该语言不同于在基本表416中存储数据使用的语,则能够调用查找功能414以将基本表416中的值翻译成会话的对应语言。根据实施例,为了执行查找功能414,BI服务器能够产生物理的SQL语句412,该物理的SQL语句412将被执行以获得存储在基本表中的数据的翻译后的值。根据实施例,此物理的SQL语句412能够执行基本表与查找表的联合操作以获得翻译。具体地,在所示的示例语句中,由BI服务器产生的SQL首先执行Sum(QtySold) 408的计算(步骤一),然后在步骤二中将查找表与步骤一的结果联合。根据各种实施例,BI服务器能够支持翻译后的查找表。例如,BI服务器的分析管理员能够在包含翻译成多种语言的数据的模式的顶部创建商业模型。根据在登录时用户指定哪一种语言,用户应当看见以他的语言的查询结果。如果用户使用不同的语言登录并且再次运行相同的查询,则他应当看见对于当前语言的翻译后的数据。根据实施例,模式可以包含包括英语描述的产品表。产品表也可以包含对于每个与语言有关的列的独立于语言的代码。例如,类别列具有对应的Categ0ry_C0de (类别代码)列。下面是产品表的内容的示例产品表
权利要求
1.一种用于在数据查询和处理环境中提供多语言支持的方法,所述方法包括接收用于存取存储在基本表中的数据集的查询,其中该查询是在对于至少一个用户建立的会话期间接收的;确定与所述会话相关联的语言不同于用于将数据集存储在所述基本表中的语言;和执行该基本表与至少一个查找表的联合操作,其中所述联合操作输出对于该基本表的至少一个行的翻译后的值,其中所述翻译后的值是以与所述会话相关联的语言的。
2.如权利要求I所述的方法,还包括在商业智能服务器中执行查找功能,其中该查找功能被翻译成执行该联合操作的结构化查询语言(SQL)语句。
3.如权利要求I或2所述的方法,其中执行基本表与至少一个查找表的联合操作还包括确定该查找表是密集的查找表,其包含对于该基本表中的每个记录的翻译;以及执行基本表与查找表的内联合。
4.如权利要求I或2所述的方法,其中执行基本表与至少一个查找表的联合操作还包括确定该查找表是稀疏的查找表,其包含仅仅对于该基本表中的记录的子集的翻译;以及执行基本表与查找表的外联合,其中来自于基本表的行被保持。
5.如权利要求I或2所述的方法,其中执行基本表与至少一个查找表的联合操作还包括确定查找表是既密集的又稀疏的查找表,其包含基本表的至少一个特定字段的完整翻译但是包含基本表的至少一个其它字段的仅仅部分翻译;以及指定查找操作的特性以指定稀疏的或密集的中的一个,其中稀疏的查找将基本表与查找表经由外联合连接,并且其中密集的查找将基本表与查找表经由内联合连接。
6.如任何一个前述权利要求所述的方法,还包括通过用户的当前语言过滤请求来自于基本表的数据的查询,并且应用用户的当前语言以从查找表检索翻译后的值。
7.如任何一个前述权利要求所述的方法,其中按照每个基本表实现单独的查找表,并且其中查找表包含对基本表中的记录的外国关键字引用。
8.如权利要求I到6中的任何一个所述的方法,其中按照基本表的每个字段实现单独的查找表。
9.如任何一个前述权利要求所述的方法,其中商业智能(BI)服务器实现包含被翻译成多种语言的数据的模式,并且其中根据哪一种语言与在登录时的用户相关联,通过采用查找表根据所述语言过滤查询。
10.一种计算机程序,包括在由计算机系统执行时使得计算机系统执行如任何一个前述权利要求所述的方法的程序指令。
11.一种计算机存储介质,在其上存储有如权利要求10所述的计算机程序。
12.一种用于在数据查询和处理环境中提供多语言支持的系统,所述系统包括数据源,存储数据集;和商业智能(BI)服务器,其接收存取存储在基本表中的数据集的查询,其中该查询是于在BI服务器和至少一个用户之间建立的会话期间接收的;其中该BI服务器确定与所述会话相关联的语言不同于用于将数据集存储在所述基本表中的语言,并且执行基本表与至少一个查找表的联合操作,其中所述联合操作输出对于该基本表的至少一个行的翻译后的值,其中所述翻译后的值是以与所述会话相关联的语言的。
13.如权利要求12所述的系统,其中该商业智能服务器执行查找功能,其中该查找功能被翻译成执行联合操作的结构化查询语言(SQL)语句。
14.如权利要求12或13所述的系统,其中执行基本表与至少一个查找表的联合操作还包括确定该查找表是密集的查找表,其包含对于该基本表中的每个记录的翻译;以及执行基本表与查找表的内联合。
15.如权利要求12或13所述的系统,其中执行基本表与至少一个查找表的联合操作还包括确定该查找表是稀疏的查找表,其包含仅仅对于该基本表中的记录的子集的翻译;以及执行基本表与查找表的外联合,其中来自于基本表的行被保持。
16.如权利要求12或13所述的系统,其中执行基本表与至少一个查找表的联合操作还包括确定查找表是既密集的又稀疏的查找表,其包含基本表的至少一个特定字段的完整翻译但是包含基本表的至少一个其它字段的仅仅部分翻译;以及指定查找操作的特性以指定稀疏的或密集的中的一个,其中稀疏的查找将基本表与查找表经由外联合连接,并且其中密集的查找将基本表与查找表经由内联合连接。
17.如权利要求12到16中的任何一个所述的系统,其中该BI服务器通过用户的当前语言过滤请求来自于基本表的数据的查询,并且应用用户的当前语言以从查找表检索翻译后的值。
18.如权利要求12到17中的任何一个所述的系统,其中按照每个基本表实现单独的查找表,并且其中查找表包含对基本表中的记录的外国关键字引用。
19.如权利要求12到17中的任何一个所述的系统,其中按照基本表的每个字段实现单独的查找表。
20.如权利要求12到19中的任何一个所述的系统,其中商业智能(BI)服务器实现包含被翻译成多种语言的数据的模式,并且其中根据哪一种语言与在登录时的用户相关联,通过采用查找表根据所述语言过滤查询。
21.一种存储指令集的计算机可读的存储介质,所述指令在由一个或多个处理器执行时使得一个或多个处理器执行以下步骤接收用于存取存储在基本表中的数据集的查询,其中该查询是在对于至少一个用户建立的会话期间接收的;确定与所述会话相关联的语言不同于用于将数据集存储在所述基本表中的语言;和执行该基本表与至少一个查找表的联合操作,其中所述联合操作输出对于该基本表的至少一个行的翻译后的值,其中所述翻译后的值是以与所述会话相关联的语言的。
22.一种用于在数据查询和处理环境中提供多语言支持的、由包括处理器和连接到所述处理器的存储器的计算机的方法,所述方法包括以下步骤由所述处理器接收用于存取包括在所述存储器中的基本表中存储的数据集的查询,其中该查询是在对于至少一个用户建立的会话期间接收的;由所述处理器确定与所述会话相关联的语言不同于用于将数据集存储在所述基本表中的语目;和由所述处理器执行该基本表与至少一个查找表的联合操作,其中所述联合操作输出对于该基本表的至少一个行的翻译后的值,其中所述翻译后的值是以与所述会话相关联的语言的。
23.如权利要求22所述的方法,还包括以下步骤由所述处理器在商业智能服务器中执行查找功能,其中该查找功能被翻译成执行所述联合操作的结构化查询语言(SQL)语句。
24.如权利要求22或23所述的方法,其中执行基本表与至少一个查找表的联合操作还包括以下步骤由所述处理器确定该查找表是密集的查找表,其包含对于该基本表中的每个记录的翻译;以及由所述处理器执行基本表与查找表的内联合。
25.如权利要求22到24中的任何一个所述的方法,其中执行基本表与至少一个查找表的联合操作还包括以下步骤由所述处理器确定该查找表是稀疏的查找表,其包含仅仅对于该基本表中的记录的子集的翻译;以及由所述处理器执行基本表与查找表的外联合,其中来自于基本表的行被保持。
26.如权利要求22到25中的任何一个所述的方法,其中执行基本表与至少一个查找表的联合操作还包括以下步骤由所述处理器确定查找表是既密集的又稀疏的查找表,其包含基本表的至少一个特定字段的完整翻译但是包含基本表的至少一个其它字段的仅仅部分翻译;以及由所述处理器指定查找操作的特性以指定稀疏的或密集的中的一个,其中稀疏的查找将基本表与查找表经由外联合连接,并且其中密集的查找将基本表与查找表经由内联合连接。
27.如权利要求22到26中的任何一个所述的方法,还包括以下步骤由所述处理器通过用户的当前语言过滤请求来自于基本表的数据的查询,并且应用用户的当前语言以从查找表检索翻译后的值。
28.如权利要求22到27中的任何一个所述的方法,其中按照每个基本表实现单独的查找表,并且其中查找表包含对基本表中的记录的外国关键字引用。
29.如权利要求22到28中的任何一个所述的方法,其中按照基本表的每个字段实现单独的查找表。
30.如权利要求22到29中的任何一个所述的方法,其中商业智能(BI)服务器实现包含被翻译成多种语言的数据的模式,并且其中根据哪一种语言与在登录时的用户相关联,通过采用查找表根据所述语言过滤查询。
31.一种用于在数据查询和处理环境中提供多语言支持的系统,所述系统包括数据源,用于存储数据集;和商业智能(BI)服务器,其接收存取存储在基本表中的数据集的查询,其中该查询是于在BI服务器和至少一个用户之间建立的会话期间接收的;其中该BI服务器确定与所述会话相关联的语言不同于用于将数据集存储在所述基本表中的语言,并且执行基本表与至少一个查找表的联合操作,其中所述联合操作输出对于该基本表的至少一个行的翻译后的值,其中所述翻译后的值是以与所述会话相关联的语言的。
32.如权利要求31所述的系统,其中该商业智能服务器执行查找功能,其中该查找功能被翻译成执行所述联合操作的结构化查询语言(SQL)语句。
33.如权利要求31或32所述的系统,其中执行基本表与至少一个查找表的联合操作还包括确定该查找表是密集的查找表,其包含对于该基本表中的每个记录的翻译;以及执行基本表与查找表的内联合。
34.如权利要求31到33中的任何一个所述的系统,其中执行基本表与至少一个查找表的联合操作还包括确定该查找表是稀疏的查找表,其包含仅仅对于该基本表中的记录的子集的翻译;以及执行基本表与查找表的外联合,其中来自于基本表的行被保持。
35.如权利要求31到34中的任何一个所述的系统,其中执行基本表与至少一个查找表的联合操作还包括确定查找表是既密集的又稀疏的查找表,其包含基本表的至少一个特定字段的完整翻译但是包含基本表的至少一个其它字段的仅仅部分翻译;以及指定查找操作的特性以指定稀疏的或密集的中的一个,其中稀疏的查找将基本表与查找表经由外联合连接,并且其中密集的查找将基本表与查找表经由内联合连接。
36.如权利要求31到35中的任何一个所述的系统,其中该BI服务器通过用户的当前语言过滤请求来自于基本表的数据的查询,并且应用用户的当前语言以从查找表检索翻译后的值。
37.如权利要求31到36中的任何一个所述的系统,其中按照每个基本表实现单独的查找表,并且其中查找表包含对基本表中的记录的外国关键字引用。
38.如权利要求31到37中的任何一个所述的系统,其中按照基本表的每个字段实现单独的查找表。
39.如权利要求31到38中的任何一个所述的系统,其中商业智能(BI)服务器实现包含被翻译成多种语言的数据的模式,并且其中根据哪一种语言与在登录时的用户相关联,通过采用查找表根据所述语言过滤查询。
40.一种存储指令集的计算机可读的存储介质,所述指令在由一个或多个处理器执行时使得一个或多个处理器执行以下步骤接收用于存取存储在基本表中的数据集的查询,其中该查询是在对于至少一个用户建立的会话期间接收的;确定与所述会话相关联的语言不同于用于将数据集存储在所述基本表中的语言;和执行该基本表与至少一个查找表的联合操作,其中所述联合操作输出对于该基本表的至少一个行的翻译后的值,其中所述翻译后的值是以与所述会话相关联的语言的。
41.一种用于使得计算机执行如权利要求22到30中的任何一个所述的方法的程序。
全文摘要
描述了支持以多种语言存储的数据和模式的商业智能(BI)服务器。BI服务器实现允许用户利用不同语言的查询来工作的查找表和查找功能。当用户登录时,对于该用户创建会话对象,其保持状态信息。会话变量指定当前由用户使用的语言。BI服务器能够检查此会话变量以确定用户的语言并且根据需要执行查找翻译。例如,如果会话使用的语不同于存储必要信息的基本表的语言,则BI服务器能够通过调用查找功能来执行翻译。查找的执行能够包括执行基本表与查找表的联合操作以输出该查询所请求的翻译后的值。
文档编号G06F17/30GK102918531SQ201180026349
公开日2013年2月6日 申请日期2011年5月12日 优先权日2010年5月28日
发明者R·博尔西斯, R·文卡塔苏伯拉玛尼安, 倪玲, D·唐捷科维克, S·乔德胡里 申请人:甲骨文国际公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1