29 导出数据
您可以从 Essbase 数据库导出数据,以便在多维数据集之间移动数据,或者出于备份和迁移目的。
要使用 Essbase Web 界面从多维数据集导出数据,请导航到作业,然后选择导出数据。
如果使用 REST API,则可以使用导出数据作业类型导出数据,如执行作业的端点中所述。
要将整个多维数据集从 Essbase Web 界面导出为工作簿格式,请参阅将多维数据集导出到应用程序工作簿。
另请参阅使用 MDX 插入和导出数据。
其他主题:
使用 MaxL 导出数据
可以使用导出数据 MaxL 语句从 Essbase 数据库导出数据。可以串行或并行导出数据。如果线程的数据超过 2 GB,则 Essbase 可以将导出数据划分为多个文件,其中附加了文件名的数字。
导出文件存储在文件目录的数据库目录中,例如 Files > applications > Sample > Basic。
块存储数据导出
从 BSO 多维数据集,您可以导出所有数据、0 级数据或输入级数据,这些数据不包括计算值。
要并行导出 BSO 数据,请指定以逗号分隔的导出文件列表,最多可指定 1024 个文件名。文件名的数量决定了导出线程的数量。可用块地址范围的数量限制了 Essbase 实际使用的导出线程数。Essbase 将实际数据块数除以指定的文件名数(导出线程)。如果实际数据块数少于指定的导出线程数,则创建的导出线程数将基于实际数据块数。这种方法可以在导出线程之间更均匀地分布数据块。
注意:
在指定导出文件数时,务必考虑运行 Essbase Server 的计算机上的可用 CPU 核心数和 I/O 带宽。指定太大的数字可能会导致性能不佳。
对 BSO 多维数据集的并行导出操作不会动态创建线程,而是使用预创建的线程池中设定的线程数。您可以定制线程池的大小。有关更多信息,请参见 WORKERTHREADS 配置设置。
请参阅:BSO 的 MaxL export data 语句。
聚合存储数据导出
从聚合存储 (ASO) 多维数据集,您只能导出 0 级数据,该数据不包括计算值。(0 级数据与 ASO 中的输入数据相同。)无法从 ASO 多维数据集执行高级数据导出或列式导出。
要并行导出 ASO 数据,请指定导出文件的逗号分隔列表(从 1 到 8 个文件名)。Essbase 使用的线程数通常取决于您指定的文件名数。但是,在具有少量数据块的非常小的 ASO 多维数据集上,即使请求并行导出到多个文件,也可能只创建单个文件(实际上执行串行导出)。
请参阅:ASO 的 MaxL export data 语句。
使用计算脚本导出文本数据
基于 Essbase 计算脚本的数据导出仅适用于存储和动态计算的成员,并且提供的格式设置选项比报表脚本少。但是,基于计算脚本的数据导出提供了基于十进制和精确度的格式设置选项,并且比报告脚本更快。
DATAEXPORT 计算命令还允许直接导出到关系数据库,从而消除中间导入步骤。
可以使用以下计算命令来选择文本导入文件并设置其格式:
以下计算脚本示例将生成一个包含数据库子集的文本文件。
SET DATAEXPORTOPTIONS
{ DATAEXPORTLEVEL "ALL";
DATAEXPORTCOLFORMAT ON;
DATAEXPORTCOLHEADER Scenario;
};
FIX ("100-10","New York","Actual","Qtr1");
DATAEXPORT "File" "," "actual.txt" "NULL";
ENDFIX;这些命令指定包含所有级别的数据,并指示要在列中重复数据,并将方案维设置为输出的密集维列标题。FIX 命令定义数据切片,然后将数据导出到数据库目录中的文本文件 actual.txt。逗号用作分隔符,缺少的数据值由连续分隔符指示。针对 Sample Basic 运行此脚本会生成以下数据:
"Actual"
"100-10","New York","Sales","Qtr1",1998
"100-10","New York","COGS","Qtr1",799
"100-10","New York","Margin","Qtr1",1199
"100-10","New York","Marketing","Qtr1",278
"100-10","New York","Payroll","Qtr1",153
"100-10","New York","Misc","Qtr1",2
"100-10","New York","Total Expenses","Qtr1",433
"100-10","New York","Profit","Qtr1",766
"100-10","New York","Opening Inventory","Qtr1",2101
"100-10","New York","Additions","Qtr1",2005
"100-10","New York","Ending Inventory","Qtr1",2108
"100-10","New York","Margin %","Qtr1",60.01001001001001
"100-10","New York","Profit %","Qtr1",38.33833833833834
"100-10","New York","Profit per Ounce","Qtr1",63.83333333333334