すべてのプロダクト
Search
ドキュメントセンター

E-MapReduce:Sqoopに関するFAQ

最終更新日:Jan 11, 2025

このトピックでは、Sqoopに関するよくある質問への回答を提供します。

ApsaraDB RDSからE-MapReduce(EMR)にデータをインポートするときに、タイムスタンプフィールドで指定された時刻が元の時刻より8時間早い場合はどうすればよいですか?

  • 説明

    1. ApsaraDB RDSのtest_table テーブルには、タイムスタンプフィールドが含まれています。image

    2. test_table テーブルからEMR HDFSにデータをインポートするために、次のコマンドが使用されます。

      sqoop import \
      --connect jdbc:mysql://rm-2ze****341.mysql.rds.aliyuncs.com:3306/s***o_sqoop_db \
      --username s***o \
      --password ****** \
      --table test_table \
      --target-dir /user/hadoop/output \
      --delete-target-dir \
      --direct \
      --split-by id \
      --fields-terminated-by '|' \
      -m 1
    3. インポート結果がクエリされます。

      クエリ結果では、タイムスタンプフィールドで指定された時刻は元の時刻より8時間早くなっています。image

  • 解決策:データをインポートするときに、インポートコマンドから --direct パラメーターを削除します。

    sqoop import \
    --connect jdbc:mysql://rm-2ze****341.mysql.rds.aliyuncs.com:3306/s***o_sqoop_db \
    --username s***o \
    --password ****** \
    --table test_table \
    --target-dir /user/hadoop/output \
    --delete-target-dir \
    --split-by id \
    --fields-terminated-by '|' \
    -m 1

    クエリ結果は正常です。image