2017-08-10 6 views
-1

SQLからsqoopを通してデータをインポートする際に、新しい列を追加してタイムスタンプをその列に挿入できますか?sqoopインポートで列を追加する

HDFSにデータを取り込む前に他の方法でも可能ですか?

+3

こんにちは、ようこそ!あなたがすでに試したことを示してください。あなたの質問は、現在のように、おそらく良い答えを受け取っておらず、閉じられているかもしれません。 [ツアーに参加する](https://stackoverflow.com/tour)と[質問する方法](https://stackoverflow.com/help/how-to-ask)と[最小限の検証可能な作成方法例](https://stackoverflow.com/help/mcve)を参照してください。がんばろう! – theFunkyEngineer

+0

データベース転送が完了したら、通常どおりに新しいデータベースに新しい列を簡単に追加することができます。または、転送を実行する前に既存のデータベースに新しい列を追加することもできます。 – jpaugh

答えて

0

sqoopコマンドの--queryパラメータを使用し、SQL関数を追加してクエリの現在のタイムスタンプを取得することができます。

例:rollnumとnameカラムを持つMySQLからスタッドテーブルをインポートする。

sqoop import --connect jdbc:mysql://localhost:3306/test --driver com.mysql.jdbc.Driver --username root --query 'select name, rollnum, current_timestamp from stud where $CONDITIONS' --target-dir '/tmp/stud1' --split-by id 

注意current_timestamp mysql関数はクエリで使用されます。

関連する問題