DBMS_CLOUD_PIPELINE 套裝軟體
DBMS_CLOUD_PIPELINE
套裝程式可讓您建立資料管線,以在雲端載入及匯出資料。此套裝程式支援將物件存放區中的檔案連續增量資料載入資料庫。DBMS_CLOUD_PIPELINE
也支援根據時戳資料欄,持續將表格資料或查詢結果從資料庫匯出至物件存放區。
必備條件
身為開發人員,您可以將 DBMS_CLOUD 程序與部署在 Oracle Public Cloud 、多重雲端或 Exadata Cloud@Customer 上的 Autonomous Database 搭配使用。
視部署選擇而定,必須符合下列先決條件,才能將 DBMS_CLOUD 程序與 Amazon S3 、Azure Blob Storage 及 Google Cloud Storage 服務提供者搭配使用。
- 請依照 Oracle Cloud Infrastructure 文件中建立 NAT 閘道的指示,在 Autonomous Database 資源所在的虛擬雲端網路 (VCN) 中建立 NAT 閘道。
- 建立 NAT 閘道之後,請在 Autonomous Database 資源所在的每個子網路新增路由規則和傳出安全規則 (在 VCN 中),以便這些資源能夠使用此閘道從您的 Azure AD 執行處理取得公開金鑰:
- 移至子網路的子網路詳細資訊頁面。
- 在子網路資訊頁籤中,按一下子網路的路由表名稱,以顯示其路由表詳細資訊頁面。
- 在現有路由規則的表格中,檢查是否已有具有下列特性的規則:
- 目標:0.0.0.0/0
- 目標類型:NAT 閘道
- 目標:剛在 VCN 中建立的 NAT 閘道名稱
如果沒有這類規則,請按一下新增路由規則,然後新增具有這些特性的路由規則。
- 返回子網路的子網路詳細資訊頁面。
- 在子網路的安全清單表格中,按一下子網路安全清單的名稱,以顯示其安全清單詳細資訊頁面。
- 在側邊功能表的資源下,按一下傳出規則。
- 在現有傳出規則的表格中,檢查是否已有具有下列特性的規則:
- 目標類型: CIDR
- 目的地:0.0.0.0/0
- IP 協定: TCP
- 來源連接埠範圍: 443
- 目的地連接埠範圍:全部
如果該規則不存在,請按一下新增輸出規則,然後新增具有這些特性的輸出規則。
您環境中的 HTTP 代理主機設定值必須允許資料庫存取雲端服務提供者。
附註:
必須等到 Exadata 基礎架構為需要啟用狀態後,才能編輯網路組態 (包括 HTTP 代理主機)。啟用之後,您就無法編輯這些設定值。在 My Oracle Support 中設定已啟動設定之 Exadata 基礎架構的 HTTP 代理主機時,必須要有服務要求 (SR)。請參閱 在 My Oracle Support 中建立服務要求瞭解詳細資訊。
DBMS_CLOUD_PIPELINE 子程式摘要
此表格摘要 DBMS_CLOUD_PIPELINE
套裝軟體中包含的子程式。
子程式 | 描述 |
---|---|
建立新資料管線。 |
|
刪除現有的資料管線。 |
|
重設資料管線的追蹤狀態。使用重設管線從資料載入或匯出的初始狀態重新啟動管線。視管線類型而定,選擇性重設管線可以永久清除資料庫或物件存放區中的資料。 |
|
在目前的前景階段作業執行管線的隨選執行,而非排定的工作。 |
|
設定管線屬性。有兩個超載程序,一個是設定單一屬性,另一個是使用屬性名稱 / 值組的 JSON 文件設定多個屬性 |
|
啟動資料管線。管線啟動後,管線作業將會根據管線屬性中設定的「間隔」,持續在排定的工作中執行。 |
|
停止資料管線。管線停止時,不會為管線排定任何未來的工作。 |
CREATE_PIPELINE 程序
此程序會建立新的資料管線。
語法
DBMS_CLOUD_PIPELINE.CREATE_PIPELINE
(
pipeline_name IN VARCHAR2,
pipeline_type IN VARCHAR2,
attributes IN CLOB DEFAULT NULL,
description IN VARCHAR2 DEFAULT NULL
);
參數
Parameter - 參數 | 描述 |
---|---|
|
指定管線的名稱。管線名稱必須遵循 Oracle SQL ID 的命名規則。如需詳細資訊,請參閱 Oracle Database Database PL/SQL Language Reference 中的 Identifiers 或 Oracle Database 23ai Database PL/SQL Language Reference 。 此為必要參數。 |
|
指定管線類型。 有效值: 此為必要參數。 |
|
JSON 格式的管線屬性。 預設值: 如需詳細資訊,請參閱 DBMS_CLOUD_PIPELINE 屬性。 |
|
管線的描述。 預設值: |
DROP_PIPELINE 程序
此程序會刪除現有的資料管線。如果已啟動管線,則必須先將其停止,才能將它刪除。
語法
DBMS_CLOUD_PIPELINE.DROP_PIPELINE
(
pipeline_name IN VARCHAR2,
force IN BOOLEAN DEFAULT FALSE
);
參數
Parameter - 參數 | 描述 |
---|---|
|
指定管線名稱。 此為必要參數。 |
|
強制刪除管線,即使管線為已啟動狀態。 有效值: 預設值: |
使用備註
-
若要刪除處於已啟動狀態的管線,請將
force
參數設為TRUE
。
RESET_PIPELINE 程序
重設資料管線的追蹤狀態。使用重設管線從資料載入或匯出的初始狀態重新啟動管線。視管線類型而定,選擇性重設管線可以永久清除資料庫或物件存放區中的資料。資料管線必須為已停止狀態才能重設。
語法
DBMS_CLOUD_PIPELINE.RESET_PIPELINE
(
pipeline_name IN VARCHAR2,
purge_data IN BOOLEAN DEFAULT FALSE
);
參數
Parameter - 參數 | 描述 |
---|---|
|
指定管線的名稱。 此為必要參數。 |
|
永久清除資料適用於載入管線或匯出管線:
有效值: 預設值: |
使用注意事項
-
資料管線必須為已停止狀態才能重設。如需詳細資訊,請參閱STOP_PIPELINE 程序。
-
對於負載管線,重設管線會清除管線所載入檔案的記錄。當您在重設載入管線之後呼叫
START_PIPELINE
或RUN_PIPELINE_ONCE
時,管線會重複資料載入,並包括物件存放區位置中的所有檔案。當
purge_data
設為TRUE
時,DBMS_CLOUD_PIPELINE.RESET_PIPELINE
會執行下列作業:-
截斷使用
table_name
屬性指定之管線資料庫表格中的資料。 -
刪除管線的狀態表格,以及管線的錯誤檔案表格和錯誤表格 (如果存在)。
-
-
若為匯出管線,重設管線會清除資料庫表格中上次追蹤的資料。當您在重設匯出管線之後呼叫
START_PIPELINE
或RUN_PIPELINE_ONCE
時,管線會重複從表格或查詢匯出資料。當
purge_data
設為TRUE
時,DBMS_CLOUD_PIPELINE.RESET_PIPELINE
會刪除物件存放區位置中以location
屬性指定的現有檔案。
RUN_PIPELINE_ONCE 程序
此程序會在目前的前景階段作業中執行管線的隨選執行,而不是在排定的工作中執行。使用 DBMS_CLOUD_PIPELINE.RUN_PIPELINE_ONCE
以在將管線啟動為連續工作之前測試管線。
語法
DBMS_CLOUD_PIPELINE.RUN_PIPELINE_ONCE
(
pipeline_name IN VARCHAR2
);
參數
Parameter - 參數 | 描述 |
---|---|
|
指定要執行的管線名稱。 此為必要參數。 |
使用注意事項
-
執行管線的測試執行後,您可以使用
DBMS_CLOUD_PIPELINE.RESET_PIPELINE
重設管線狀態。這可讓您在排定的工作中啟動管線之前,重設管線狀態。 -
管線若為已啟動狀態,就無法在前景階段作業中執行。
SET_ATTRIBUTE 程序
此程序會設定管線屬性。有兩個超載程序,一個是設定單一屬性,另一個是使用屬性名稱 / 值組的 JSON 文件來設定多個屬性。
語法
PROCEDURE DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE
(
pipeline_name IN VARCHAR2,
attribute_name IN VARCHAR2,
attribute_value IN CLOB
);
PROCEDURE DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE
(
pipeline_name IN VARCHAR2,
attributes IN CLOB
);
參數
Parameter - 參數 | 描述 |
---|---|
|
指定管線的名稱以設定屬性。 此為必要參數。 |
|
指定要設定之屬性的屬性名稱。 如需詳細資訊,請參閱 DBMS_CLOUD_PIPELINE 屬性。 |
attribute_value |
指定要設定之管線屬性的值。 如需詳細資訊,請參閱 DBMS_CLOUD_PIPELINE 屬性。 |
|
指定包含屬性名稱和值的 JSON 文件。 如需詳細資訊,請參閱 DBMS_CLOUD_PIPELINE 屬性。 |
使用備註
-
當您使用
DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE
以attributes
參數設定多個屬性時,所有現有屬性都會被刪除並以 JSON 文件中的指定屬性覆寫。
START_PIPELINE 程序
interval
,在排定的工作中持續執行。
語法
DBMS_CLOUD_PIPELINE.START_PIPELINE
(
pipeline_name IN VARCHAR2,
start_date IN TIMESTAMP WITH TIME ZONE DEFAULT NULL
);
參數
Parameter - 參數 | 描述 |
---|---|
|
指定管線的名稱。 此為必要參數。 |
|
指定業務進程工作的開始日期。 預設值: |
使用注意事項
-
依照預設,管線工作會在管線啟動後立即開始。若要在稍後啟動管線工作,請使用
start_date
參數指定有效的日期或時戳。 -
如需有關管線
interval
和其他管線屬性的資訊,請參閱 DBMS_CLOUD_PIPELINE 屬性。
STOP_PIPELINE 程序
此程序會停止資料管線。管線停止時,不會為管線排定任何未來的工作。
語法
DBMS_CLOUD_PIPELINE.STOP_PIPELINE
(
pipeline_name IN VARCHAR2,
force IN BOOLEAN DEFAULTFALSE
);
參數
Parameter - 參數 | 描述 |
---|---|
|
指定管線的名稱。 此為必要參數。 |
|
如果以 有效值: 預設值: |
DBMS_CLOUD_PIPELINE 屬性
屬性可協助控制及設定資料管線的行為。
屬性
附註:
如業務進程類型資料欄中所示,視業務進程類型LOAD
或 EXPORT
而定,業務進程支援一組不同的屬性。
屬性名稱 | 描述 | 管道類型 | 管線開始後可修改 |
---|---|---|---|
credential_name |
存取來源雲端物件儲存的證明資料名稱。 預設值: 如果您未提供 |
LOAD , EXPORT |
是 |
field_list |
識別來源檔案中的欄位及其資料類型。此引數的語法與一般 Oracle 外部表格中的 預設值: 預設值指定欄位及其資料類型是由 |
LOAD |
是 |
format |
描述管線類型格式的選項。
匯出管線不支援資料汲取
|
LOAD , EXPORT |
是 |
interval |
排定之管線工作連續執行之間的時間間隔 (分鐘)。 預設值:15 分鐘 |
LOAD , EXPORT |
是 |
key_column |
指定之 預設值:空值 如果未指定匯出管線的 |
EXPORT |
編號 |
location |
指定指向物件儲存位置的 URI。 URI 的格式取決於雲端物件儲存體服務。如需詳細資訊,請參閱雲端物件儲存 URI 格式。
|
LOAD , EXPORT |
編號 |
priority |
指定一個字串值,決定對管線執行的平行作業數目。
優先順序較高的作業會耗用更多的資料庫資源,且會較快完成。 以下為其有效值:
預設值: 並行檔案作業的數目上限為 64。 |
LOAD , EXPORT |
是 |
query |
指定 舉例而言:
預設值: 對於匯出管線,必須要有 |
EXPORT |
編號 |
table_name |
指定用於載入或匯出資料的目標表格名稱。 必須輸入負載管線 對於匯出管線,必須要有 |
LOAD , EXPORT |
編號 |
table_owner |
目標表格所在的綱要名稱,用於載入或匯出資料。 預設值: 使用 |
LOAD , EXPORT |
編號 |