リソースを有効にする¶
リソースの有効化は、指定されたリソースのデータ取り込みを開始するために使用されます。 PUBLIC.ENABLE_RESOURCE
プロシージャは、 UI またはワークシートからリソースを有効にするためのエントリポイントです。これは、リソースが無効にされた後、またはリソースが無効として作成され、それを有効にする必要がある場合に使用できます。
このプロシージャを呼び出すには、ユーザーに ADMIN
アプリケーション・ロールが割り当てられている必要があります。フェーズは以下の通りです。
初期検証
カスタム検証
リソースが有効になる前のカスタムロジック
リソース取り込み定義を有効としてマークし、新しい取り込みプロセスを作成する
リソース作成後のカスタム・ロジック
初期検証¶
初期検証は、イネーブルリソースプロセスの一番最初に行われ、チェックされる:
与えられたidを持つリソースが存在するかどうか
指定された id を持つリソースがすでに有効になっているかどうか
リソースがすでに有効になっている場合は、何も行われず、成功応答が返されます。
カスタム検証¶
カスタム検証は初期検証の後に実行され、カスタマイズされたコネクタ固有のロジックをサポートするように設計されています。例えば、指定されたリソースがソースシステムにまだ存在していることを確認するために使用することができます。
デフォルトでは、 PUBLIC.ENABLE_RESOURCE_VALIDATE(resource_ingestion_definition_id)
を呼び出し、 'response_code': 'OK'
を返します。SQL スクリプトを通じて上書きすることも、 EnableResourceHandlerBuilder
を使用して EnableResourceValidator
インターフェイスのカスタム実装を提供することもできます。
カスタム検証がエラーを返した場合、次のステップは実行されず、 ENABLE_RESOURCE
プロシージャから所定のエラーレスポンスが返されます。
リソースが有効になる前のカスタムロジック¶
リソースが有効になる前にカスタムロジックを指定し、実行することができます。
デフォルトでは、 PUBLIC.PRE_ENABLE_RESOURCE(resource_ingestion_definition_id VARCHAR)
を呼び出し、 'response_code': 'OK'
を返します。SQL スクリプトを通じて上書きすることも、 EnableResourceHandlerBuilder
を使用して PreEnableResourceCallback
インターフェイスのカスタム実装を提供することもできます。
カスタムロジックがエラーを返した場合、次のステップは実行されず、 ENABLE_RESOURCE
プロシージャからエラー応答が返されます。
リソース取り込み定義を有効としてマークし、新しい取り込みプロセスを作成する¶
このステップでは、リソース取り込み定義の enabled
フラグが true
に変更され、各取り込み構成に対して新しい取り込みプロセスが作成されます。インジェスト・プロセスは、 SCHEDULED
ステータスで作成されます。これは、インジェストがしばらく後に開始されることを意味します。新しいインジェスト・プロセスが作成されるとき、メタデータ・カラムは、指定されたインジェスト・コンフィギュレーションIDを持つ、最後に終了したプロセスから継承されます。
リソース有効化後のカスタムロジック¶
リソースが有効になった後に実行されるカスタムロジックを定義できます。
デフォルトでは、 PUBLIC.POST_ENABLE_RESOURCE(resource_ingestion_definition_id VARCHAR)
を呼び出し、 'response_code': 'OK'
を返します。SQL スクリプトを通じて上書きすることも、 EnableResourceHandlerBuilder
を使用して PostEnableResourceCallback
インターフェイスのカスタム実装を提供することもできます。
カスタムロジックがエラーを返した場合、 ENABLE_RESOURCE
プロシージャから所定のエラー応答が返されますが、リソースの取り込み定義を有効としてマークし、新しい取り込みプロセスを作成するプロセスはロールバックされません。
応答¶
正常な応答¶
プロシージャーが成功すると、以下のようなレスポンスが返されます:
{ "response_code": "OK" }
エラーの応答¶
プロシージャーエラーでは、以下のようなレスポンスが返されます:
{ "response_code": "<ERROR_CODE>", "message": "<error message>" }
考えられるエラーコードは次のとおりです。
INVALID_INPUT
- 指定されたリソース取り込み定義IDを持つリソースが存在しません。ENABLE_RESOURCE_ERROR
- リソース取り込み定義の更新時、または取り込みプロセスの作成時に予期せぬことが発生しました。すべての変更はロールバックされます。