《一种多维分析系统中固定维度内存化的方法及其装置.pdf》由会员分享,可在线阅读,更多相关《一种多维分析系统中固定维度内存化的方法及其装置.pdf(6页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103617042 A (43)申请公布日 2014.03.05 CN 103617042 A (21)申请号 201310654372.1 (22)申请日 2013.12.05 G06F 9/44(2006.01) G06F 17/30(2006.01) (71)申请人 用友软件股份有限公司 地址 100094 北京市海淀区北清路 68 号用 友软件园 (72)发明人 陈琨 (74)专利代理机构 北京中恒高博知识产权代理 有限公司 11249 代理人 刘洪京 (54) 发明名称 一种多维分析系统中固定维度内存化的方法 及其装置 (57) 摘要 本发明适用于办公软件领。
2、域, 提供了一种多 维分析系统中固定维度内存化的方法及装置, 所 述方法包括 : 确定多维分析系统中的固定维度 ; 将所述固定维度通过在内存中初始化的方式在系 统中自动生成。本发明提供的技术方案具有提高 访问速度, 减少数据维护的优点。 (51)Int.Cl. 权利要求书 1 页 说明书 3 页 附图 1 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书1页 说明书3页 附图1页 (10)申请公布号 CN 103617042 A CN 103617042 A 1/1 页 2 1. 一种多维分析系统中固定维度内存化的方法, 其特征在于, 所述方法包括 : 确定多维分析系。
3、统中的固定维度 ; 将所述固定维度通过在内存中初始化的方式在系统中自动生成。 2. 一种多维分析系统中固定维度内存化的装置, 其特征在于, 所述装置包括 : 固定单元, 用于确定多维分析系统中的固定维度 ; 生成单元, 用于将所述固定维度通过在内存中初始化的方式在系统中自动生成。 权 利 要 求 书 CN 103617042 A 2 1/3 页 3 一种多维分析系统中固定维度内存化的方法及其装置 技术领域 0001 本发明属于办公软件领域, 尤其涉及一种多维分析系统中固定维度内存化的方法 及其装置。 背景技术 0002 近年来, 企业的信息化程度日益提高, 各个企业积累了大量的各个方面的信息,。
4、 如 人力资料、 销售业绩、 财政信息等等。这些数据本身不能为企业带来任何价值, 但通过使用 联机事务处理系统 OLAP 对这些数据信息进行分析处理, 可以从深层次发掘企业的潜在价 值, 揭示商业运营中的内部规律。 0003 一般情况下, MDX被作为OLAP系统的查询表达式对数据集进行查询。 MDX表达式查 询结果的大体执行流程是, 首先通过对应的查询模型生成 MDX 表达式, OLAP 服务器解析多 维查询语句, 根据解析结果生成抽象语法树 ; 计算树上每个节点的表达式 ; 构建返回结果 ; 界面模型进行填充展现。 0004 在多维分析系统中, 每个多维模型包括一个到多个维度, 每个维度包。
5、含一个到多 个层次和级别, 每个级别又对应多个成员。 在维度的实现过程中, 对于每个成员的访问都牵 涉到数据存取的操作。 但是有些固定的维度, 每个多维模型多需要使用它, 但各个模型之间 使用的这个维度在定义上和使用上没有什么区别, 这样就造成了不必要的系统开销。 发明内容 0005 本发明实施例的目的在于提供一种多维分析系统中固定维度内存化的方法, 旨在 解决现有技术开销大的问题。 0006 一方面, 提供一种多维分析系统中固定维度内存化的方法, 所述方法包括 : 0007 确定多维分析系统中的固定维度 ; 0008 将所述固定维度通过在内存中初始化的方式在系统中自动生成。 0009 另一方。
6、面, 提供一种多维分析系统中固定维度内存化的装置, 所述装置包括 : 0010 固定单元, 用于确定多维分析系统中的固定维度 ; 0011 生成单元, 用于将所述固定维度通过在内存中初始化的方式在系统中自动生成。 0012 在本发明实施例中, 本发明提供的技术方案对于特殊的固定维度, 没有必要在后 台进行维护, 完全可以通过在内存中初始化的方式在系统中自动生成。通过将固定的特殊 维度内存化, 可以减少甚至取消相关的数据操作 ; 这样可以极大程度的提高访问速度, 减少 数据维护。 0013 附图简要说明 0014 图 1 是本发明提供的多维分析系统中固定维度内存化的方法的流程图 ; 0015 图。
7、 2 是本发明提供的一次完整的基于多维查询表达式的执行过程图 ; 0016 图 3 是本发明提供的数据处理大致流程图 ; 0017 图 4 是本发明提供的根据定义解析的流程图。 说 明 书 CN 103617042 A 3 2/3 页 4 0018 实施本发明的方式 0019 为了使本发明的目的、 技术方案及优点更加清楚明白, 以下结合附图及实施例, 对 本发明进行进一步详细说明。 应当理解, 此处所描述的具体实施例仅仅用以解释本发明, 并 不用于限定本发明。 0020 本发明具体实施方式提供一种多维分析系统中固定维度内存化的方法, 该方法如 图 1 所示, 包括 : 0021 101、 确定。
8、多维分析系统中的固定维度 ; 0022 102、 将所述固定维度通过在内存中初始化的方式在系统中自动生成。 0023 本发明提供的技术方案对于特殊的固定维度, 没有必要在后台进行维护, 完全可 以通过在内存中初始化的方式在系统中自动生成。通过将固定的特殊维度内存化, 可以减 少甚至取消相关的数据操作 ; 这样可以极大程度的提高访问速度, 减少数据维护。 0024 一般地, 特殊的固定维度是指不会发生变化的固定的维度数据, 如时间、 日期、 货 币、 地理信息、 语言、 时区、 编码、 字体等。这些维度在进行多维建模的时候, 经常会使用到。 但这些特殊的维度有一个共同的特性, 它们是约定俗成的东。
9、西, 很少甚至基本不会发生变 化。这就为内存化这些维度提供了可能。 0025 一次完整的基于多维查询表达式的执行过程包括如下图 2 所示的步骤。构建立方 体模型, 是使用多个维度指标构建查询时所依据的立方体模型, MDX 查询表达式中只能出现 查询模型中已经定义的信息。 0026 构建查询模型, 解析 MDX 表达式, 通过词法分析、 语法分析、 语义分析, 将 MDX 表达 式翻译成一个查询模型, 用于解析。 0027 OLAP 服务解析, 对切片轴、 行、 列等轴进行解析。 0028 根据语法树节点求值, 对 MDX 进行校验以及语法解析后会生成一个语法树结构对 象 , 每个查询中的成员都。
10、是树的节点, 对节点的计算会使 OLAP 对维度成员进行加载 , 指标 成员进行聚合计算。同时会对计算的结果进行缓存。 0029 构建结果集并返回。 0030 根据展现的模型的定义, 填充展现。 0031 多维分析的立方体的定义中, 维度的定义一般与一个元数据或者数据模型对应, 即维度可能对应一个物理表、 视图或者表集等。这就需要分析处理时, 对下层数据进行存 取。如某含有时间维度的 MDX 如下 0032 0033 在对数据进行分析处理时, 时间维度的分析过程是, 创建解析器用来解析 MDX 字符串, 根据词法分析将行轴上的字符串 Time.1997.Q1.1, 分解成了一个数 组序列 Ti。
11、me,1997,Q1,1, 用于生成行轴查询对象 ; 在构建查询对象的过程 说 明 书 CN 103617042 A 4 3/3 页 5 中, 将 Time.1997.Q1.1 作为一个 MDX 集解析为一个集函数。在此过程中对 Time,1997,Q1,1 数组进行解析, 根据当前的立方体名称找到 Sales 的立方体, 返回使用查找维度 Time, 根据 Time 维度定义时对应的元数据获取是否包含 1997 年的 信息, 根据 Time.1997 查询元数据, 获取是否包含第一季度 Q1 信息, 最后根据 Time. 1997.Q1 获取第一个月的信息, 生成 MDX 表达式对象。然后使。
12、用一个编译器将这个 Time.1997.Q1.1解析为可求值的计算表达式用于后续求值。 大致流程如下图3说 示。 0034 而对常用维度内存化的过程, 可以依赖当前系统平台来完成, 也可以依赖具有良 好的移植性的语言来完成, 如日期可以使用 java.util.Date 工具。当用户查询中包含上述 时间维度时, 根据维度定义, 直接验证 Time,1997,Q1,1 数组中的每个元素是否 符合规则, 如 1999 年是符合的, 19BC 就是不符合的 ; 经过验证后, 直接生成成员对象, 将此 查询块解析为一个 MDX 表达式对象, 而不需要向下访问相关的元数据集合 ; 当然, 也可以定 义其。
13、他方式, 流程如下图 4 所示。 0035 通过这种方式, 省略了固定的特殊维度的访问元数据的操作, 避免了对这部分元 数据信息的维护, 提高了解析查询的时间, 增强了健壮性, 提高了响应性能。 0036 本发明具体实施方式还提供一种多维分析系统中固定维度内存化的装置, 所述装 置包括 : 0037 固定单元, 用于确定多维分析系统中的固定维度 ; 0038 生成单元, 用于将所述固定维度通过在内存中初始化的方式在系统中自动生成。 0039 本发明提供的装置对于特殊的固定维度, 没有必要在后台进行维护, 完全可以通 过在内存中初始化的方式在系统中自动生成。通过将固定的特殊维度内存化, 可以减少。
14、甚 至取消相关的数据操作 ; 这样可以极大程度的提高访问速度, 减少数据维护。 0040 本领域技术人员可以理解, 本发明实施例提供的技术方案全部或部分步骤是可以 通过程序指令相关的硬件来完成。比如可以通过计算机运行程序来完成。该程序可以存储 在可读取存储介质, 例如, 随机存储器、 磁盘、 光盘等。 0041 以上所述仅为本发明的较佳实施例而已, 并不用以限制本发明, 凡在本发明的具 体实施方式之内所作的等同替换或改进等, 均应包含在本发明的保护范围之内。 说 明 书 CN 103617042 A 5 1/1 页 6 图 1 图 2 图 3 图 4 说 明 书 附 图 CN 103617042 A 6 。