关于自治 AI 数据库上的数据管道
负载管道提供从外部源连续的增量数据加载(当数据到达对象存储时,会将数据加载到数据库表中)。导出管道提供连续的增量数据导出到对象存储(因为新数据显示在数据库表中,它导出到对象存储)。管道使用数据库调度程序持续加载或导出增量数据。
Autonomous AI Database 数据管道提供以下功能:
-
统一操作:通过管道,您可以快速轻松地加载或导出数据,并定期为新数据重复这些操作。
DBMS_CLOUD_PIPELINE
程序包为管道配置以及为加载或导出操作创建和启动调度的作业提供了一组统一的 PL/SQL 过程。 -
调度的数据处理:管道监视其数据源,并在新数据到达时定期加载或导出数据。
-
高性能:管道使用 Autonomous AI Database 上的可用资源扩展数据传输操作。默认情况下,管道对所有负载或导出操作使用并行处理,并根据 Autonomous AI Database 上可用的 CPU 资源或可配置的优先级属性进行扩展。
-
原子性和恢复:管道可保证原子性,以便为装入管道只装入一次对象存储中的文件。
-
监视和故障排除:管道提供了详细的日志和状态表,可用于监视和调试管道操作。
- Multicloud Compatible : Autonomous AI Database 上的管道支持在云技术提供商之间轻松切换,无需更改应用。管道支持 Autonomous AI Database 支持的所有身份证明和对象存储 URI 格式(Oracle Cloud Infrastructure Object Storage 、Amazon S3 、Azure Blob Storage 、Google Cloud Storage 和 Amazon S3-Compatible 对象存储)。
数据管道生命周期
DBMS_CLOUD_PIPELINE
软件包提供了创建、配置、测试和启动管道的过程。对于装入和导出管道,管道生命周期和过程相同。

插图 pipeline_lifecycle.eps 的说明
对于任一管道类型,您可以执行以下步骤来创建和使用管道:
-
创建和配置管道。有关更多信息,请参见 Create and Configure Pipelines 。
-
测试新管道。有关更多信息,请参见测试管道。
-
启动管道。有关更多信息,请参见启动管道。
此外,还可以监视、停止或删除管道:
-
在管道运行时,无论是在测试期间还是在启动管道后定期使用,您都可以监视管道。有关更多信息,请参见 Monitor and Troubleshoot Pipelines 。
-
您可以停止管道,然后重新启动它,或者在使用管道完成后删除管道。有关更多信息,请参见 Stop a Pipeline 和 Drop a Pipeline 。
加载管道
负载管道的运行方式如下(其中一些功能可以使用管道属性进行配置):
-
对象存储文件将并行加载到数据库表中。
- 加载管道使用对象存储文件名来唯一标识和加载较新的文件。
- 将对象存储中的文件加载到数据库表中后,如果对象存储中的文件内容发生更改,则不会再次加载该文件。
- 如果删除了对象存储文件,则不会影响数据库表中的数据。
-
如果遇到故障,负载管道将自动重试该操作。每次后续运行管道的调度作业时都会尝试重试。
-
如果文件中的数据不符合数据库表,则将其标记为
FAILED
,并且可以对其进行检查以调试和排除问题。- 如果任何文件加载失败,管道不会停止并继续加载其他文件。
-
加载管道支持多种输入文件格式,包括:JSON、CSV、XML、Avro、ORC 和 Parquet。

插图 load-pipeline.eps 的说明
从非 Oracle 数据库迁移是加载管道的一个可能用例。当您需要将数据从非 Oracle 数据库迁移到 Oracle Autonomous AI Database on Dedicated Exadata Infrastructure 时,您可以提取数据并将其加载到 Autonomous AI Database 中(Oracle Data Pump 格式不能用于从非 Oracle 数据库进行迁移)。通过使用 CSV 等通用文件格式从非 Oracle 数据库导出数据,可以将数据保存到文件并将文件上载到对象存储。接下来,创建一个管道,将数据加载到 Autonomous AI Database 。使用加载管道加载大量 CSV 文件具有重要优势,例如容错、恢复和重试操作。对于具有大型数据集的迁移,您可以为非 Oracle 数据库文件创建多个管道(每个表一个),以将数据加载到 Autonomous AI Database 中。
导出管道
使用导出管道将数据从数据库连续增量导出到对象存储。导出管道定期标识求职者数据并将数据上载到对象存储。
有三个导出管道选项(可使用管道属性配置导出选项):
-
使用日期或时间戳列作为跟踪较新数据的键,将查询的增量结果导出到对象存储。
-
使用日期或时间戳列作为跟踪较新数据的键,将表的增量数据导出到对象存储。
-
使用查询将数据导出到对象存储,以选择不引用日期或时间戳列的数据(以便管道导出查询为每个调度程序运行选择的所有数据)。
导出管道具有以下功能(其中一些可使用管道属性进行配置):
-
结果将并行导出到对象存储。
-
如果出现任何故障,后续的管道作业将重复导出操作。
-
导出管道支持多种导出文件格式,包括: CSV、JSON、Parquet 或 XML 。
Oracle 维护的管道
Autonomous AI Database on Dedicated Exadata Infrastructure 提供内置管道,支持将特定日志以 JSON 格式导出到对象存储。这些管道是预配置的,并由 ADMIN 用户启动和拥有。
Oracle 维护的管道包括:
-
ORA$AUDIT_EXPORT
:此管道以 JSON 格式将数据库审计日志导出到对象存储,并在启动管道后每 15 分钟运行一次(基于interval
属性值)。 -
ORA$APEX_ACTIVITY_EXPORT
:此管道以 JSON 格式将 Oracle APEX 工作区活动日志导出到对象存储。此管道预配置有用于检索 APEX 活动记录的 SQL 查询,并在启动管道后每 15 分钟运行一次(基于interval
属性值)。
要配置和启动 Oracle 托管管道,请执行以下操作: