ロードのモニターおよびトラブルシューティング
PL/SQLパッケージを使用して実行されるすべてのデータ・ロード操作は、DBMS_CLOUDdba_load_operationsおよびuser_load_operationsの各表に記録されます。
-
dba_load_operations: すべてのロード操作が表示されます。 -
user_load_operations: スキーマ内のロード操作が表示されます。
これらの表を問い合せると、進行中および完了済のデータ・ロードに関する情報が表示されます。 SELECT文をTYPE列のWHERE句述語とともに使用して、COPY型のロード操作を表示します。
たとえば:
SELECT table_name, owner_name, type, status, start_time, update_time, logfile_table, badfile_table
FROM user_load_operations WHERE type = 'COPY';
TABLE_NAME OWNER_NAME TYPE STATUS START_TIME UPDATE_TIME LOGFILE_TABLE BADFILE_TABLE
---------- ---------- ---- --------- ------------------------ ------------------------ ------------- -------------
TREEDATA ADMIN COPY COMPLETED 2022-10-20T23:15:19.990Z 2022-10-20T23:15:24.238Z COPY$1_LOG COPY$1_BAD
LOGFILE_TABLE列には、ロード操作のログを確認できる問合せ先の表の名前が表示されます。 たとえば、次の問合せでは、このロード操作のログが表示されます:
SELECT * FROM COPY$1_LOG;列BADFILE_TABLEには、ロード中にエラーが発生した行を確認するために問い合せることができる表の名前が表示されます。 たとえば、次の問合せでは、ロード操作で拒否されたレコードが表示されます 操作に拒否された行がない場合、問合せには拒否された行は表示されません。
SELECT * FROM COPY$1_BAD;ログに表示されるエラーおよびBADFILE_TABLEファイルに表示される行に応じて、DBMS_CLOUD.COPY_DATAに正しいフォーマット・オプションを指定してエラーを修正できます。
typeの形式が" datapump "の場合、指定されたrejectlimitまで拒否された行はログ・ファイルに記録されますが、BADFILE_TABLEは生成されません。
デフォルトでは、LOGFILE_TABLEおよびBADFILE_TABLEファイルは2日間保持され、その後自動的に削除されます。 formatパラメータのlogretentionオプションを使用して、保持日数を変更できます。
enablelogs, logdir, logprefixの詳細は「DBMS_CLOUDパッケージ・フォーマット・オプション」を、formatパラメータについてはlogretentionオプションを参照してください。
ログ・ファイルのクリアの詳細は、「DELETE_ALL_OPERATIONSプロシージャ」を参照してください。
dba_load_operationsビューおよびuser_load_operationsビューの詳細は、「DBMS_CLOUDロード操作の追跡」を参照してください。
一括ファイル操作の監視およびトラブルシューティング
バルク・ファイル操作のモニタリングおよびトラブルシューティングの詳細は、「一括ファイル・ロードのモニターおよびトラブルシューティング」を参照してください。
ORC、ParquetまたはAvroファイルのロードの監視およびトラブルシューティング
他のデータ・ファイルと同様に、ORC、ParquetおよびAvroデータ・ロードでは、dba_load_operationsおよびuser_load_operations表に表示可能なログが生成されます。 各ロード操作は、ログを含む表を示す、dba[user]_load_operationsにレコードを追加します。
ログ表にはロードに関するサマリー情報が表示されます。
ノート:
ORC、ParquetまたはAvroファイルの場合、formatパラメータtypeが値orc、parquetまたはavroに設定されていると、BADFILE_TABLE表は常に空になります。
PRIMARY KEY制約エラーによりORAエラーがスローされます。- 列のデータに変換エラーが発生した場合、たとえば、変換された値を格納するのに十分な大きさがターゲット列にない場合、その列の値は
NULLに設定されます。 これにより、拒否されたレコードが生成されることはありません。