はじめに
ここでは、Workbench を使ってデータを Domo にインポートする際にユーザーが直面する最も一般的なエラーのトラブルシューティングについて説明します。「ジョブはスキーマを動的に変更できません」
原因
- これは、以前アップロードされたファイルに新しい列が追加された場合、1 つ以上の列の名前が変更された場合、または元のソースで列が並び替えられた場合に発生します。 ジョブは、列のデータタイプが変更されても失敗になります(例:「日付」から「テキスト」など)。
- Workbench の DataSet ジョブ > 設定 に、 スキーマの変更を許可 という設定があります。 これは、デフォルトでは無効になっていますが、これを有効にすると、動的にスキーマが変更できるようになります。
注意点と推奨事項
- 新しい列を追加したり、列を並び替えるのは通常安全ですが、Domo では列を削除することは推奨していません。
- DataSet に基づくカードや DataFlow が破損しないようにするためには、スキーマ触らないようにします。
解決策
- 変更を元に戻します。 できれば、スキーマの変更の原因となった元のデータソースに対して行われた変更も元に戻します。
- Workbench の DataSet ジョブ > 設定 の スキーマの変更を許可 の設定に関係なく、スキーマが更新されたら一度 Workbench の UI 経由でジョブを手動で実行します。
- 設定を変更すると、Workbench はスキーマを自動的に更新します。 この変更が既存のカードまたは DataFlow に影響しないことが確実なら、 ジョブ設定 でスキーマが動的に設定されることを許可することができます。 これにより、今後の変更も動的に行われます。 これを有効にすることにした場合は、DataSet を修復したら再び無効にすることを Domo では推奨します。
「ソースファイルが存在しません/ファイルが見つかりません」
原因
ファイルが、Workbench の DataSet ジョブ > ソース > ファイルパス で指定した場所に存在しません。解決策
- Workbench の DataSet ジョブ > ソース > ファイル パス で、正しいファイル名と場所に更新します。
- ファイルが正しい場所にあり、Workbench で指定した名前になっていることを確認します。
「504 ゲートウェイのタイムアウトです」
原因
これは、Workbench と Domo インスタンスの間で通信エラーがあると起こります。解決策
- これが初めて Workbench を使用している場合は、Workbench のプロキシ設定が正しいことを確認する必要があります。 プロキシの設定は、Workbench の 設定 > プロキシ で行うことができます。
- お使いのネットワークが Domo へのアクセスを許可する設定になっていることを確認します。
- 以前、Domo の Workbench ジョブが正常に実行していたなら、ジョブを再実行すると解決する場合があります。
「ファイルは使用中です」
原因
Workbench が Domo にインポートしようとしているファイルは、別のアプリケーションで使用されている、および/またはファイルはロックされています。 これは、Workbench ジョブを実行するときファイルがコピー中だった場合など、その時にファイルが使用中だと発生します。解決策
- Workbench ジョブを実行するときにファイルが使用中でないことを確認します。
- ジョブのスケジュールを変更し、Workbench を実行するときにファイルが使用中にならないようにします。
「デッドロックの対象」
原因
これは SQL エラーで、データベースからデータをインポートしようとすると発生します。 異なるクエリが同時にレコードにアクセスしようとすると起こります。 データベースソフトウェアが、どっちのクエリの実行を許可するかを決定します。その結果、もう片方のクエリはブロックされます。解決策
- 他のクエリがデータベースに対して実行されていないときに自分のジョブが実行されるよう、Workbench のスケジュールを更新します。
- 同時に実行中になる他のクエリがないか確認し、必要に応じて調整します。