分区设计要求

使用本节中的信息在实施 Essbase 分区之前仔细设计分区。

分区的好处

Essbase 多维数据集进行分区可以增加数据同步和导航的好处。

  • 对于块存储数据库,分区在多个数据库之间提供数据同步。

    Essbase 跟踪对分区中的数据值所做的更改,并提供用于更新相关分区中的数据值的工具。

  • 通过分区,用户可以在具有不同维度的数据库之间导航。

    当用户向下钻取到新数据库时,他们可以向下钻取到更详细的数据。

分区策略

根据用户要求,为 Essbase 多维数据集选择自上而下、自下而上或基于数据库属性的分区策略。

从上至下对应用程序进行分区。

使用自上而下分区将数据库拆分为多个处理器、服务器或计算机,从而提高数据库的可扩展性、可靠性和性能。要使用自上而下的分区实现最佳结果,请为每个分区数据库创建一个单独的应用程序。

从下至上对应用程序进行分区。

使用自下而上分区管理多个相关数据库之间的数据流,从而提高数据库中数据的质量和可访问性。

根据属性对应用程序进行分区。

根据与基本维关联的属性值(与一个或多个属性维关联的标准维)对数据库进行分区。

使用此策略可根据维的特性(如风格或大小)提取数据。

注意:

您不能对属性维进行分区。请参见 Attributes in Essbase Partitions

对数据库进行分区的决策因素

如果您的数据使用和更新将受益于按地点或组织单位划分的划分,请考虑在 Essbase 数据库上实施分区(复制或透明)。

  • 在以下情况下,请考虑实施复制分区或透明分区:

    • 数据应该更接近使用它的人。

    • 一次失败将是灾难性的。

    • 加载新数据后执行计算需要太长时间,并且您希望通过在多个处理器或计算机上分配计算来提高性能。

    • 用户希望在不同的应用程序上下文中查看数据,并且希望控制用户在数据库之间的导航方式。

    • 您需要同步来自不同来源的信息。

    • 您计划添加将受益于拥有自己的数据库的新组织单位。

    • 用户必须等待其他用户访问数据库。

    • 您希望通过允许用户访问存储在远程位置中的数据来节省磁盘空间。

    • 您希望通过在多个位置复制数据来减少网络流量。

    • 您需要从中心位置控制数据库大纲。

  • 在以下情况下不对数据库进行分区:

    • 您存在磁盘空间、网络带宽和管理资源问题。

    • 执行复杂分配,其中单位层值源自总值。

    • 您需要始终使所有数据库保持联机状态。

      如果多个时区中有数据库,则使数据库保持联机可能会出现问题,因为用户峰值负载可能因时区而异。使用透明分区会加剧此问题,但使用复制的分区可能会有所帮助。

    • 数据库采用不同的语言或与 Unicode 相关的模式。

      Essbase 只能对数据库进行分区,前提是每个数据库使用相同的语言,或者每个数据库使用相同的 Unicode 或非 Unicode 模式。

分区数据的注意事项

设计分区的 Essbase 数据库策略时,询问有关数据使用要求的问题,以帮助您确定每个分区中要包含哪些数据。

  • 哪个数据库应该是数据源,哪个数据库是数据目标?“拥有”数据、更新数据以及存储大部分详细信息数据的多维数据集应该是源多维数据集。

  • 数据库的某些部分访问频率是否高于其他部分?

  • 您可以在站点之间共享哪些数据?

  • 每个位置的数据必须有多细粒度?

  • 访问、更新或计算数据的频率如何?

  • 什么是可用资源:磁盘空间、CPU 和网络资源?

  • 必须通过网络传输多少数据?需要多长时间?

  • 数据是否存储在一个或多个位置?

  • 是否在一个或多个位置访问数据?

  • 是否有应从中心位置访问的单独数据库中的信息?数据组之间的关联程度如何?

分区数据库的安全性

通过复制或透明分区访问数据的用户通常需要查看存储在多个 Essbase 多维数据集中的数据。设置安全性,以便用户不会查看或更改不适当的数据。

要设置分区的安全性,

  1. 授予用户对源和目标多维数据集的访问权限。

  2. 通过仅对分区的分片设置筛选器(在源和目标多维数据集上),限制用户访问。

    请参阅使用安全筛选器控制对数据库单元的访问

  3. 如果要创建复制的分区,请确定用户是否可以在数据目标上更改复制的分区。更新设置(允许或禁止更新)会覆盖允许用户更新数据的用户筛选器。

    使用 create replicated partition MaxL 语句创建复制的分区时,如果未指定 update allow 语法,则默认情况下无法更新复制的分区。