如果要加载到多维数据集的数据或维位于远程数据库中,则可以使用 Oracle 命令行界面 (Command Line Interface, CLI) 实用程序中的 stream 选项,通过规则文件将数据或成员推送到多维数据集。
为 CLI Dataload:将数据加载到多维数据集 或 Dimbuild:将维加载到多维数据集中 命令使用 stream 选项时,您还必须引用反映驱动程序和连接字符串的已保存 JDBC 连接。
开始之前
规则文件必须位于相关数据库的“文件”部分中。
用于加载数据或构建维的数据库查询必须具有与规则文件中的列相同的维数。(例如,请参见使用 SQL 构建维,其中规则文件中的维顺序必须与 SQL 查询中的维顺序匹配。)
限制
加载规则中使用的 SQL 语句不支持替代变量。
请只使用 JDBC 支持的 SQL 函数。CLI 中不支持 ODBC 标量函数。
用于流式维构建和数据的工作流
使用 CLI Createlocalconnection:保存 JDBC 连接 命令,创建反映数据源驱动程序和连接字符串的已保存 JDBC 连接字符串。
(Oracle 数据库不需要)设置环境变量 EXTERNAL_CLASSPATH,指向数据库驱动程序的 .jar 文件。请参见本主题中的 EXTERNAL_CLASSPATH 环境变量的示例 部分。
使用流式选项运行 CLI Dataload:将数据加载到多维数据集 或 Dimbuild:将维加载到多维数据集中 命令,提供已保存连接名称。
您可以选择在 dataload 或 dimbuild 命令中指定数据库查询。否则,您可在数据源选项卡的选择部分中,在加载规则中指定它。例如,请参见使用 SQL 构建维和使用 SQL 加载数据。
EXTERNAL_CLASSPATH 环境变量的示例
您必须先设置 EXTERNAL_CLASSPATH 环境变量,然后才能从 Oracle 数据库之外的任意数据源进行流式传输。将变量设置为指向相关数据库驱动程序 .jar 文件的位置。
DB2
设置外部类路径变量指向 DB2 驱动程序 jar 文件的位置。
C Shell 示例
setenv EXTERNAL_CLASSPATH /scratch/db/jars/db2jcc.jar
Korn 或 Bash Shell 示例
export EXTERNAL_CLASSPATH=/scratch/db/jars/db2jcc.jar
Windows 示例
set EXTERNAL_CLASSPATH=C:\db\jars\db2jcc.jar
MySQL
设置外部类路径变量指向 MySQL 驱动程序 jar 文件的位置。
C Shell 示例
setenv EXTERNAL_CLASSPATH /scratch/db/jars/mysql-connector-java-5.1.43-bin.jar
Korn 或 Bash Shell 示例
export EXTERNAL_CLASSPATH=/scratch/db/jars/mysql-connector-java-5.1.43-bin.jar
Windows 示例
set EXTERNAL_CLASSPATH=C:\db\jars\mysql-connector-java-5.1.43-bin.jar
Microsoft SQL Server
设置外部类路径变量指向 SQL Server 驱动程序 jar 文件的位置。
C Shell 示例
setenv EXTERNAL_CLASSPATH /scratch/db/jars/sqljdbc4-3.0.jar
Korn 或 Bash Shell 示例
export EXTERNAL_CLASSPATH=/scratch/db/jars/sqljdbc4-3.0.jar
Windows 示例
set EXTERNAL_CLASSPATH=C:\db\jars\sqljdbc4-3.0.jar
Teradata
设置外部类路径变量指向两个 Teradata 驱动程序 jar 文件的位置。
C Shell 示例
setenv EXTERNAL_CLASSPATH /scratch/db/jars/tdgssconfig.jar:/scratch/db/jars/terajdbc4.jar
Korn 或 Bash Shell 示例
export EXTERNAL_CLASSPATH=/scratch/db/jars/tdgssconfig.jar:/scratch/db/jars/terajdbc4.jar
Windows 示例
set EXTERNAL_CLASSPATH=C:\db\jars\tdgssconfig.jar;C:\db\jars\terajdbc4.jar