Broker Load
1. Broker Load は、正常に実行されて FINISHED 状態にあるロードジョブを再実行することをサポートしていますか?
Broker Load は、正常に実行されて FINISHED 状態にあるロードジョブを再実行することをサポートしていません。また、データの損失や重複を防ぐために、正常に実行されたロードジョブのラベルを再利用することはできません。SHOW LOAD を使用してロードジョブの履歴を表示し、再実行したいロードジョブを見 つけることができます。その後、そのロードジョブの情報をコピーし、ラベルを除くジョブ情報を使用して別のロードジョブを作成できます。
2. Broker Load を使用して HDFS からデータをロードする際、宛先の StarRocks テーブルにロードされた日付と時刻の値が、ソースデータファイルの日付と時刻の値よりも 8 時間遅れている場合はどうすればよいですか?
宛先の StarRocks テーブルと Broker Load ジョブは、作成時に中国標準時 (CST) タイムゾーンを使用するようにコンパイルされています(timezone パラメータを使用して指定)。しかし、サーバーは 協定世界時 (UTC) タイムゾーンに基づいて実行されるように設定されています。その結果、データロード中にソースデータファイルの日付と時刻の値に 8 時間が追加されます。この問題を防ぐには、宛先の StarRocks テーブルを作成する際に timezone パラメータを指定しないでください。
3. Broker Load を使用して ORC 形式のデータをロードする際に ErrorMsg: type:ETL_RUN_FAIL; msg:Cannot cast '<slot 6>' from VARCHAR to ARRAY<VARCHAR(30)> エラーが発生した場合はどうすればよいですか?
ソースデータファイルの列名が宛先の StarRocks テーブルの列名と異なります。この場合、ロード文の SET 句を使用してファイルとテーブルの間の列マッピングを指定する必要があります。SET 句を実行する際、StarRocks は型 推論を行う必要がありますが、ソースデータを宛先データ型に変換するための cast 関数の呼び出しに失敗します。この問題を解決するには、ソースデータファイルの列名が宛先の StarRocks テーブルの列名と同じであることを確認してください。これにより、SET 句は不要となり、StarRocks はデータ型変換を行うために cast 関数を呼び出す必要がなくなります。その後、Broker Load ジョブは正常に実行されます。
4. Broker Load ジョブがエラーを報告しないのに、ロードされたデータをクエリできないのはなぜですか?
Broker Load は非同期のロード方法です。ロード文がエラーを返さなくても、ロードジョブは失敗する可能性があります。Broker Load ジョブを実行した後、SHOW LOAD を使用してロードジョブの結果と errmsg を確認できます。その後、ジョブの設定を変更して再試行できます。
5. "failed to send batch" または "TabletWriter add batch with unknown id" エラーが発生した場合はどうすればよいですか?
データの書き込みにかかる時間が上限を超え、タイムアウトエラーが発生しています。この問題を解決するには、セッション変数 query_timeout と BE 設定項目 streaming_load_rpc_max_alive_time_sec の設定をビジネス要件に基づいて変更します。
6. "LOAD-RUN-FAIL; msg:OrcScannerAdapter::init_include_columns. col name = xxx not found" エラーが発生した場合はどうすればよいですか?
Parquet または ORC 形式のデータをロードしている場合、ソースデータファイルの最初の行に保持されている列名が宛先の StarRocks テーブルの列名と同じであるかどうかを確認してください。
(tmp_c1,tmp_c2)
SET
(
id=tmp_c2,
name=tmp_c1
)
上記の例では、ソースデータファイルの tmp_c1 および tmp_c2 列を、それぞれ宛先の StarRocks テーブルの name および id 列にマッピングしています。SET 句を指定しない場合、column_list パラメータで指定された列名が列マッピングを宣言するために使用されます。詳細については、BROKER LOAD を参照してください。
注意
ソースデータファイルが Apache Hive™ によって生成された ORC 形式のファイルであり、ファイルの最初の行に
(_col0, _col1, _col2, ...)が含まれている場合、"Invalid Column Name" エラーが発生する可能性があります。このエラーが発生した場合、SET句を使用して列マッピングを指定する必要があります。