常见问题解答 — 以 DVA 格式导出项

本主题提供了有关以 DVA 格式导出分析内容的常见问题 (frequently asked question, FAQ) 解答。Oracle Analytics 使用 DVA 格式导入和导出分析项及其相关项。例如,如果以 DVA 格式导出数据流,则可以在导出文件中包括输入和输出数据集。

可以将哪些项导出为 DVA?

可以从以下项启动 DVA 导出:
  • 工作簿
  • 数据流
  • 序列
  • 文件夹

    仅当文件夹在文件夹层次中的任意位置包含工作簿时,才能导出该文件夹。导出文件夹时,将导出所有构件(不考虑类型)。

导出 DVA 时如何确定相关项?

DVA 可以包含以下相关项类型。
  • 工作簿
  • 基于文件和基于连接的数据集(非主题区域)
  • 连接
  • 数据流
  • 序列

例如,如果根据导出时选择的选项从工作簿创建 DVA,则 DVA 将包含工作簿和工作簿中引用的数据集。如果这些数据集中的任何一个是通过数据流创建的,那么它还将包括该数据流以及可能更多的数据集。

  • 导出数据流 — DVA 将包含数据流以及所有输入和输出数据集。还将包括对这些构件中的任何构件的其他相关性。
  • 导出工作簿 — DVA 将包含工作簿并添加工作簿中使用的数据集。还将包括对这些构件中的任何构件的其他相关性。
  • 导出工作簿(其中数据集是数据流的输出)— DVA 将包含工作簿,并且添加工作簿中使用的数据集以及创建输出数据集的数据流。还将包括对这些构件中的任何构件的其他相关性。
  • 导出序列 — DVA 将包含序列以及序列中包含的所有数据集、序列和数据流。还将包括对这些构件中的任何构件的其他相关性。

我从主页导入了 DVA,DVA 中的项去了哪里?

从主页或无法确定目录路径的任何页面导入 DVA 文件时,这些项将导入到用户的 /My Folders 目录。如果您访问目录,请选择一个文件夹,然后导入,则 DVA 中的所有项都将放入所选文件夹中。

导入 DVA 时,我收到以下消息“filename.dva 包含与现有内容同名的内容。是否要继续并替换现有内容?”。这意味着什么?

这意味着 DVA 文件包含您正在导入的位置中已经存在的项,如果继续,这些项将被覆盖。如果它们被覆盖,将保留目标项的对象 ID。如果您不希望替换这些项,则可以将 DVA 导入到一个新文件夹中,并且该 DVA 中的所有项都将包含在单个文件夹中。

导出 DVA 时,可以选择包括哪些项?

创建 DVA 导入时,很少有选项允许用于控制要导出的内容。在这些选项中,只有一个选项可以控制包含哪些项,即“包含数据”。此选项将包含任何基于文件或基于连接的数据集、连接及其相关性。无法以更细的粒度控制所导出的项。
GUID-A13E848F-EF99-4964-9E6F-F448643F187C-default.png 的说明如下
.png 的说明

:导出包含连接时,如果包含连接身份证明,则会包含身份证明(通常为密码),但如果连接到 ADW,则不包含 wallet。

什么是对象 ID,它们如何影响 DVA 导入?

使用 DVA 导入内容时,了解对象 ID 及其在导入时的处理方式非常重要。对象 ID 是一个由两部分组成的字符串,包括前缀字符串、句点(用于分隔两部分)和对象名称,例如 '<guid>.dataset1'。对象 ID 前缀是 GUID(Globally Unique Identifier,全局唯一标识符),因此在导入 DVA 时,目标系统将为每个项(例如需要它们的数据集)生成新的 GUID。在同一 DVA 中导入的任何其他项都将更新其引用,以便它们指向新的对象 ID。对象 ID 不具有非确定性,在覆盖的情况下,将保留目标项的对象 ID。

在“一个目录”功能之前(其中数据集、数据流、序列和连接成为目录的一部分并可以使用文件夹),对象 ID 前缀是创建用户的用户 ID。用户导入 DVA 后,他们实际上是在目标环境中从 DVA 创建对象。因此,所导入对象上的所有对象 ID 将根据导入用户的用户 ID 使用前缀。例如,如果 user2 导入包含 dataset1 的 DVA,则此数据集上的结果对象 ID 将为 'user2.dataset1',即使源环境中的对象 ID 为 'user1.dataset1'。在同一 DVA 中导入的任何其他项都将更新其引用,以便它们指向新的对象 ID。因此,这可能导致出现以下问题:
  • 如果目标环境已经包含对象 ID 为 'user2.dataset' 的对象,则该对象将被导入的对象覆盖。如果目标环境包含对象 ID 为 'user1.dataset' 的对象,则此对象将保持不变。这是无意中创建数据集和连接的多个副本的常见原因。
  • 使用 DVA 导出/导入将项移至目标环境时,如果最初创建对象的用户也执行导入,则对象 ID 不会更改,并且导入的行为非常直观。当不同的用户创建具有对象 ID 的对象,或者不同的用户(非对象创建者)导入 DVA 时,可能会产生不良后果。

如果将相同的 DVA 导入到两个不同的文件夹中,会发生什么情况?

在这种情况下,您将具有所有相同项的重复版本。重复项将具有不同的对象 ID。

是否必须将 DVA 导入到文件夹中?

是的,所有 DVA 导入都指向文件夹。

我想将现有项指向我刚刚导入的新项,如何执行此操作?

新导入的项将具有新的对象 ID,可能需要为旧 ID 创建别名。例如,假设您有一个引用数据集 'username'.'MyDataset' 的工作簿。如果在迁移过程中某个时间点删除或丢失了 MyDataset,则通常的做法是使用相同的名称重新创建数据集,以便工作簿再次使用它。但是,重新创建数据集时,它将获得新的全局唯一 ID,如 'b5ea442f-cb70-4dfa-8d34-2bf6d8c3313d'.'MyDataset'。工作簿中的旧引用 ID 将找不到此新数据集,因此引用将会失效。要解决此问题,可以在新数据集中为旧对象 ID 创建别名。添加别名 'username'.'MyDataset',现在除了新的全局唯一 ID 外,还可以使用该 ID 找到数据集。工作簿将再次工作。

要创建别名,请打开项的“检查”对话框,转至“别名”选项卡,并在其中添加旧对象 ID。如有必要,可以添加多个别名。您可以删除不再需要的别名。
GUID-E9E5D63C-6C67-4D64-827D-9C54647DB832-default.png 的说明如下
.png 的说明