データ タスクのトラブルシューティング
このセクションでは、データ タスクの操作時に発生する可能性がある問題と、トラブルシューティング方法について説明します。
環境エラーのトラブルシューティング
データ タスクでタイムアウト、ネットワーク エラー、接続エラーなどの環境エラーが発生すると、データ タスクは自動的に操作を再試行します。再試行してもエラーが解決されない場合、データ タスクは実行を停止し、エラー メッセージとともにステータス [エラー] を表示します。
-
Data Movement gateway 経由でのみアクセス可能なデータ ソースを使用したランディング タスク:
操作は、5 秒間隔で無限に再試行されます。
停止時間が長い場合、1800 秒に達するまで間隔は 2 倍になります。
-
Data Movement gateway なしでアクセスできるデータ ソースを使用したランディング タスク、ストレージ タスク、変換タスク、データ マート タスク:
操作は、1 秒間隔で 3 回再試行されます。
次の手順を実行します。
-
エラー メッセージを使用してエラーを解決します。
-
データ タスクの操作をリロードまたは再開します。
特定のテーブルに関する問題のトラブルシューティング
特定のテーブルへの書き込み中にデータ タスクでエラーが発生した場合、データ タスクは実行を継続します。エラーのあるテーブルには、ステータス [エラー] とエラー メッセージが表示されます。
-
エラー メッセージを使用してエラーを解決します。
-
エラーが発生したテーブルをリロードします。
CDC の問題のトラブルシューティング
[フル ロードおよび CDC] 更新モードでデータ タスクをランディングすると、タスク全体に影響を与える CDC 関連の問題が発生する可能性があり、特定のテーブルをリロードしても解決できません。問題の例としては、イベントの欠落、ソース データベースの再編成による問題、ソース データベース イベントの読み取り時の失敗などがあります。
このような問題を解決するには、すべてのテーブルをターゲットにリロードします。
- データ タスクとそれを消費するすべてのタスクを停止します。
-
データ タスクを開き、 [監視] タブを選択します。
-
[ ...] 、 [ターゲットをリロード] の順にクリックします。
これにより、Drop-Create を使用してすべてのテーブルがターゲットにリロードされ、今後すべての変更データ キャプチャが再開されます。
-
ランディング データ タスクを消費するストレージ タスクは、比較によってリロードされ、次回の実行時に適用されて同期されます。既存の履歴は保持されます。タイプ 2 の履歴は、リロードと比較処理が実行された後に変更を反映して更新されます。
タイプ 2 の履歴の開始日の日付と時刻はリロード日を反映し、必ずしもソースで変更が発生した日付とは限りません。
-
ターゲットのリロード操作中、およびストレージが同期されるまで、ストレージ ライブ ビューは信頼できません。ストレージは次の場合に完全に同期されます。
-
すべてのテーブルが比較と適用を使用してリロードされた場合。
-
各テーブルに対して 1 サイクルの変更が実行された場合。
-
詳細については、「すべてのテーブルをターゲットにリロードする」を参照してください。
主キー列の NULL 値
データ タスクを実行すると、「Unknown execution error - NULL result in a non-nullable column」のエラー メッセージが表示される場合があります。
考えられる原因
主キーとして使用される列には NULL 値を含めてはならず、NULL 非許容にする必要があります。
提案されたアクション
ソース データ タスクに、すべての NULL 値を値 (0 など) に変換する式を追加します。
主キーとして使用する別の列を選択することもできます。
Redshift をデータ プラットフォームとして使用する場合のキャスト エラー
Redshift をデータ プラットフォームとして使用すると、次のようなエラーが発生する場合があります: 「不明」から文字可変への変換関数が見つかりませんでした
考えられる原因
定数式のキャストがありません。最終的なクエリがより複雑になるため、データマートではこのような現象がより頻繁に発生する可能性があります。
提案されたアクション
定数式をテキストとしてキャストします。
Data Movement gateway に基づくデータ タスクのトラブルシューティング
ログ ファイルを調べることで、Data Movement gateway に基づくデータ タスクのランディング操作に関する情報を取得できます。ログのレベルも設定できます。データ タスクが最初の実行を完了すると、ログが利用可能になります。
ログ ファイルを表示するには、データ タスクが存在するスペースに次のいずれかの権限が必要です。
-
所有者
-
操作可能
データ ゲートウェイが存在するスペースに次のいずれかの権限も必要です。
- 消費可能
- 編集可能
- 管理可能
ログ ファイルの表示
Data Movement gateway に基づくランディング データ タスクで [ログを表示] をクリックして、ログ ビューアを開きます。[レプリケーション エンジン ログ] で表示するログ ファイルを選択できます。 と でファイルの上下にスクロールできます。
ロギング オプションの設定
[ロギング オプション] で、レプリケーションのさまざまな操作のロギング レベルを設定できます。
トレースと詳細ロギングのメモリへの保存
ロギング レベルを「トレース」または「詳細」に設定すると、エラーが発生するまでロギング情報をメモリに保存するように Qlik Talend Data Integration に指示できます。エラーを検出すると、Qlik Talend Data Integration は物理ログへの書き込みを開始し、エラーの最初の発生から数分間書き込みを続けます。
割り当てられたメモリが使い果たされる前にエラーが発生しない場合、Qlik Talend Data Integration はメモリ バッファを空にして新たに開始します。
このオプションは、明らかな理由もなく予測不能に失敗するタスクに便利です。大量の情報を継続的にログに書き込むと、次の 2 つの問題が発生します。
- 「トレース」または「詳細」ロギング モードで実行すると、使用可能なディスク容量がすぐに消費されてしまいます (ロギング設定でこれを防ぐように構成されていない限り)。
- 大量のデータをログに継続的に書き込むと、パフォーマンスに影響します。
このオプションを使用するには
- タブの上部にある 「トレース/詳細ロギングをメモリに保存し、エラーが発生した場合はログに書き込む」 チェック ボックスをオンにします。
- [最大メモリ割り当て (MB)] 項目で、 ロギング情報を保存するために割り当てるメモリの量を指定します。
ロギング レベルの設定
次のレベルを設定できます。
-
1. Error
エラー メッセージを表示します。
-
2. Warning
警告を表示します。
-
3. Info
情報メッセージを表示します。
-
4. Debug
トラブルシューティングの目的で追加情報を表示します。
-
5. Detailed debug
トラブルシューティングの目的で詳細情報を表示します。
上位レベルには常に下位レベルからのメッセージが含まれます。したがって、Error を選択すると、エラー メッセージのみがログに書き込まれます。一方、Info を選択すると、情報メッセージ、警告、およびエラー メッセージが含まれます。一般に、Debug と Detailed debug レベルを使用すると、大量のログ データが生成される場合があります。
Global を使用してすべての操作に同じレベルを設定することも、操作ごとに個別にレベルを設定することもできます。
-
ソース - フル ロード
データ ソース内のフル ロード操作に関連するアクティビティをログに記録します。これには、フル ロードの前にソース テーブルに対して実行された SELECT ステートメントが含まれます。
-
ソース - CDC
データ ソース内の CDC 操作に関連するアクティビティをログに記録します。
警告メモこれを Detailed Debug レベルに設定すると、非常に大量のデータがログに生成されます。 -
ソース – データ
フル ロードおよび CDC 操作に関連するデータ ソース アクティビティの詳細なログ。
-
ターゲット - フルロード
ターゲットへのフル ロード操作に関連するアクティビティをログに記録します。
-
ターゲット - CDC
ターゲットへの CDC 操作に関連するアクティビティをログに記録します。
-
ターゲット – アップロード
ファイルがターゲットに転送されたときのアクティビティをログに記録します。
-
拡張 CDC
トランザクションの同期や保存など、CDC アクティビティの詳細なログ。
-
パフォーマンス
ソースとターゲットの待機時間の値をログに記録します。
-
メタデータ
メタデータの読み取りとメタデータの変更に関連するアクティビティをログに記録します。レプリケーション タスクのステータスも記録されます。
-
インフラストラクチャ
インフラストラクチャ情報、ファイル システム操作、およびタスク管理をログに記録します。
-
変換
実行された変換に関連する情報をログに記録します。
診断ファイルのダウンロード
診断パッケージ、タスク ログ、およびメモリ レポートをダウンロードして、ランディング タスクに関連付けられたレプリケーション タスクのトラブルシューティングに役立てることができます。一度にダウンロードできるアイテムは 1 つだけです。
-
ログ ビューアで、[ダウンロード] をクリックして展開します。
-
ダウンロードするアイテムを選択します。
-
[ダウンロード] をクリックします。
ブラウザの設定により、ファイルがコンピュータにダウンロードされるか、保存するように促すメッセージが表示されます。
Data Movement gateway を使用しないデータ タスクのトラブルシューティング
ログ ファイルを調べることで、Data Movement gateway を使用しないデータ タスクのランディング操作に関する情報を取得できます。ログのレベルも設定できます。データ タスクが最初の実行を完了すると、ログが利用可能になります。タスク ログとサーバー ログを表示できます。
タスク ログの表示
タスク ログ ファイルを表示するには、データ タスクが存在するスペースに次のいずれかの権限が必要です。
-
所有者
-
操作可能
データ ゲートウェイが存在するスペースに次のいずれかの権限も必要です。
- 消費可能
- 編集可能
- 管理可能
Data Movement gateway を使用しないランディング データ タスクで [タスク ログを表示] をクリックし、ログ ビューアを開きます。[レプリケーション エンジン ログ] で表示するログ ファイルを選択できます。 と でファイルの上下にスクロールできます。
[ロギング オプション] で、レプリケーションのさまざまな操作のロギング レベルを設定できます。詳細は、ロギング オプションの設定をご覧ください。
データ移動ログの表示
データ移動ログを表示するには、データ管理者またはテナント管理者のロールが必要です。
Data Movement gateway を使用しないランディング データ タスクで [データ移動ログを表示] をクリックし、ログ ビューアを開きます。ログの詳細については、「ログ ファイルの表示とダウンロード」を参照してください。