このトピックでは、データインポートの失敗/タイムアウトに関するFAQをまとめています。
トラブルシューティングマニュアル
完全な自己診断
エラーメッセージ:xxxテーブルにデータが含まれていないか、xxxパーティションにデータが含まれていません。 データソースを確認して、再試行してください。
考えられる原因:
データコンピューティングプラットフォームでデータが生成されていないか、異常な書き込みが行われています。
トラブルシューティングパス:
データソースにログインし、テーブルまたはパーティションにデータがあるかどうかをクエリします。 QAスケジューリング中にデータがあるかどうかを確認します
解決策:
アップストリームシステムの補足データ、再スケジューリング
アップストリームの生産データ時間が不明な場合は、QAを定期的に更新するように構成します。 トリガースケジューリングを使用して、アップストリームシステムとQAを接続できます。
エラーメッセージ:特殊なフィールドタイプは、不正なデータタイプ列「xxx列名」タイプ「xxx」をサポートしていません。許可されていません。
トラブルシューティングパス:
データソースにログインし、テーブルをクエリして、BOOLEAN、ARRAY、MAPなどの特殊な列タイプのフィールドを示します。
MC構文:DESC テーブル名;
GUASSDB構文:SELECT pg_get_tabledef('テーブル名');
解決策:
このフィールドが不要な場合は、インポート中にこの列を無効にすることを選択できます
列が必須の場合は、テキストタイプのフィールド列に変換して保存できます。
自己診断 + トラブルシューティング
エラーメッセージ:SQL解析例外 解析例外-無効なトークン「FROM」
考えられる原因:
SQL構文解析エラーが発生しました。
トラブルシューティングパス:
[Quick Audience-構成管理-データインポート-テーブル構造構成] ページで、テーブル構造構成の元のリストに、/、-、その他の記号などの特殊文字リストが含まれているかどうかを確認します。
解決策:
データソースに移動し、列名をデータベース仕様を満たす列名に変更します(たとえば、文字で始まり、英数字_のみを含む文字)
上記のいずれにも該当しない場合は、Quick Audienceの担当者に連絡してサポートを受けてください。
xxxテーブルが存在しないため返されたエラーメッセージ。 xxxテーブルはすでに存在します。
考えられる原因:
テーブルの作成に失敗したか、すでに存在します。
トラブルシューティングパス:
ADB:
AnalyticDB for PostDBにログインし、CREATE、DELETE、DROP、INSERT、SELECT、UPDATE、およびALTER操作が実行されているかどうかをクエリします。
ADB コンソールにログインし、スケジューリング中にADBがスナップショットをバックアップしているかどうかを確認します。 バックアップスナップショットフェーズでは、DDLステートメントは許可されていません。
HOLO:
HOOデータベースにログインし、show hg_experimental_force_sync_replayの値がoffになっているかどうかを確認します。
解決策:
ADB:
権限がない場合は、DMS プラットフォームにログインし、アカウントに対応する権限を付与します。
ADBバックアップが完了したら、Quick Audienceスケジューリングタスクを実行します(注:バックアップ時間が長すぎる場合は、ADBチケットを送信して、その時点でのバックアップの問題の処理を支援してください)。
HOLO:
デフォルトでは、holoクラスターは非同期で同期されます。 holo コンソールでalter database dbname set hg_experimental_force_sync_replay = on;ステートメントを実行して、メタ同期の強制待機を実行できます。 ただし、holoのパフォーマンスは低下します。
実行後、holo コンソールを再起動し、SQLコマンド:show hg_experimental_force_sync_replay;を使用して、有効になっているかどうかを確認します。
上記のいずれにも該当しない場合は、Quick Audienceの担当者に連絡してトラブルシューティングのサポートを受けてください。
エラーメッセージ:Quick Audienceは、ユーザーリクエストによりSQLリクエストのキャンセルステートメントをキャンセルします
考えられる原因:
コンピューティングソースまたは分析ソースの負荷が高い
データ量が多いため長時間SQLステートメントを実行すると、Quick Audienceは接続を切断します。 同期実行のタイムアウト期間は 3 時間です。
トラブルシューティングパス:
コンピューティングソースにログインして、バックエンドが過負荷になっているかどうかを確認します。
バックグラウンドクエリはsqlを実行して、テーブル内のデータ量が予想どおりかどうかを確認しています。
解決策:
十分なリソースを確保する:スペースタスクは相互に影響を与えず、コンピューティングリソースを個別に調達できます。 相互依存関係を減らして、リソースのプリエンプションと実行の遅延を回避します。 データ量とスペースの増加に伴い、コンピューティングソースと分析ソースのリソースが十分かどうかを確認する必要があります。
開始時間をずらす:複数のスペースが同じコンピューティングソースと分析ソースのリソースを使用します。 各スペースのQAのスケジューリングタスクの開始時間は、リソースのプリエンプションと実行の遅延を回避するために、できるだけずらす必要があります。 顧客の外部システムがコンピューティングソースと分析ソースを使用する場合は、使用時間をずらす必要があります。
上記のいずれにも該当しない場合は、Quick Audienceの担当者に連絡してサポートを受けてください。
エラーメッセージ:スケジューリングタスクがタイムアウトしました
考えられる原因:
コンピューティングソースまたは分析ソースの負荷が高い
大量のデータが保存されていて、SQLステートメントが長時間実行されている場合、結果は計算されません。 スケジューリングタスクのタイムアウト期間は 6 時間です。
トラブルシューティングパス:
コンピューティングソースにログインして、バックエンドが過負荷になっているかどうかを確認します。
バックグラウンドクエリはsqlを実行して、テーブル内のデータ量が予想どおりかどうかを確認しています。
解決策:
十分なリソースを確保する:スペースタスクは相互に影響を与えず、コンピューティングリソースを個別に調達できます。 相互依存関係を減らして、リソースのプリエンプションと実行の遅延を回避します。 データ量とスペースの増加に伴い、コンピューティングソースと分析ソースのリソースが十分かどうかを確認する必要があります。
開始時間をずらす:複数のスペースが同じコンピューティングソースと分析ソースのリソースを使用します。 各スペースのQAのスケジューリングタスクの開始時間は、リソースのプリエンプションと実行の遅延を回避するために、できるだけずらす必要があります。 顧客の外部システムがコンピューティングソースと分析ソースを使用する場合は、使用時間をずらす必要があります。
上記のいずれにも該当しない場合は、Quick Audienceの担当者に連絡してサポートを受けてください。
タスク実行の遅延に対する解決策
十分なリソースを確保する:スペースタスクは相互に影響を与えず、コンピューティングリソースを個別に調達できます。 相互依存関係を減らして、リソースのプリエンプションと実行の遅延を回避します。 データ量とスペースの増加に伴い、コンピューティングソースと分析ソースのリソースが十分かどうかを確認する必要があります。
開始時間をずらす:複数のスペースが同じコンピューティングソースと分析ソースのリソースを使用します。 各スペースのQAのスケジューリングタスクの開始時間は、リソースのプリエンプションと実行の遅延を回避するために、できるだけずらす必要があります。 顧客の外部システムがコンピューティングソースと分析ソースを使用する場合は、使用時間をずらす必要があります。
バッチスケジューリング、複数テーブルのインポート:スケジューリングタスクで、インポートするテーブルを選択して、複数のテーブルを選択し、スケジューリングタスクを構成して、idマッピングの回数を減らし、複数テーブルのインポートを高速化します
QAスケジューリングタスクのリアルタイム検出構成
スケジューリングタスクのステータスをタイムリーに把握したい場合は、[Quick Audience-構成管理-詳細設定-リアルタイム検出とアラート] をクリックして、リアルタイムのDingTalk検出とアラートを構成できます。 これにより、タスクのタイムアウトと失敗の原因をリアルタイムで検出できます。 たとえば、DingTalkアラートグループを作成し、Webhookチャットボットを構成する必要があります。