kikumotoのメモ帳

インフラ・ミドル周りを中心に、興味をもったことを適当な感じで。twitter : @takakiku

ローカルからHDFSマウントへのrsync

ローカル領域 -> HDFSマウント領域の rsync をするには、

rsync --temp-dir=/local/path/tmp -avOW --delete local/ /mnt/hdfs/

のようなオプションをつける必要があるみたい。

  • --temp-dir を指定しないと、HDFS マウント領域上にテンポラリファイルを作成しようとして失敗する。
  • -O がないと、ディレクトリにタイムスタンプを同期しようとして失敗する。
  • -W はたぶん必要。rsync では必要に応じてファイルの一部のみを差分同期するはずだけど、HDFS のファイルに対して一部を書き換えることはできないから。