メインコンテンツまでスキップ

HDFSストレージを管理 — RcloneViewでファイルを同期・バックアップ

· 約6分
Kai
Junior Engineer

Hadoopクラスタには何年分もの処理済みデータが蓄積されていますが、そのデータをオンプレミスストレージとクラウドの間で移動するには、通常スクリプトやCLIツールを使う必要があります — RcloneViewはHDFSに視覚的な操作環境を提供します。

Hadoop Distributed File System(HDFS)は、無数のオンプレミスのビッグデータパイプラインを支えるストレージ層ですが、Hadoopエコシステムの外からそのデータを確認、転送、アーカイブするための使いやすい方法は備わっていません。RcloneViewはSFTP、FTP、WebDAVと同様に、プロトコルベースのリモートとしてHDFSに接続できるため、データエンジニアは使い慣れたファイルエクスプローラーでクラスタの内容を閲覧し、distcpジョブやカスタムスクリプトを書くことなく、データセットをクラウドストレージとの間でやり取りできます。Windows、macOS、Linuxのいずれでも同じように動作するため、データチームのメンバーが同じOSを使っていない場合にも役立ちます。

RcloneViewアプリのプレビュー

すべてのクラウドを一か所で管理・同期

RcloneViewはrcloneのクロスプラットフォームGUIです。フォルダを比較し、ファイルを転送・同期し、クリーンなビジュアルインターフェースでマルチクラウドのワークフローを自動化できます。

  • ワンクリック操作: コピー · 同期 · 比較
  • 信頼性の高い自動化のためのスケジューラーと履歴
  • Google Drive、OneDrive、Dropbox、S3、WebDAV、SFTPなどに対応
WindowsmacOSLinux
無料で始める →

コア機能は無料。Plusで自動化機能を利用可能。

HDFSクラスタをリモートとして追加する

HDFSはRcloneViewのプロトコルベースのストレージカテゴリに属しており、SFTPやWebDAV接続で使われるのと同じNew Remoteウィザードから設定します。クラスタを追加すると、Explorerパネルに専用のタブとして表示され、クラスタのネームノード全体に保存されたデータセットを閲覧するための標準的なフォルダツリー、ファイルリスト、サムネイル表示が利用できます。右クリック操作 — コピー、ダウンロード、名前の変更、Get Size — も他のリモートとまったく同じように動作するため、hadoop fsコマンドに不慣れなエンジニアでも、HDFSに実際に何が保存されているかを確認できます。

Adding an HDFS remote in RcloneView's New Remote wizard

RcloneViewは1つのウィンドウから90以上のプロバイダーをマウントかつ同期できるため、HDFSを閲覧している同じセッションで、隣のパネルにGoogle Drive、S3バケット、ローカルディスクを開いて直接比較することもできます。

オンプレミスストレージとクラウドオブジェクトストレージを橋渡しする

HDFSをRcloneViewに接続する最も一般的な理由は、コールドデータや処理済みデータを、容量に制約のある高価なクラスタから、長期保管に適した安価なクラウドストレージへ移動することです。「Modifying destination only」方向の一方向同期ジョブを使えば、HDFSの出力 — 処理済みデータセット、モデル学習の成果物、ログアーカイブ — をソースに触れることなくS3、Azure Blob、Backblaze B2バケットにコピーできます。同期ウィザードのステップ3にあるフィルタリング設定を使うと、ジョブの対象を特定のファイルタイプに絞り込んだり、Hadoopジョブが残す中間の_SUCCESSファイルや一時ファイルを除外したりできるため、保存先バケットには本当に保持する価値があるものだけが残ります。

Syncing HDFS cluster data to cloud object storage in RcloneView

大規模なデータセットの場合、Advanced Settingsでファイル転送数とマルチスレッド転送数を調整することで、クラスタと転送先の間の利用可能な帯域幅を最大限に活用できます。一方で、比較フェーズ中にネームノードへ不要な読み取り負荷をかけないよう、等価性チェッカーの数は控えめに保つとよいでしょう。

定期的なアーカイブジョブをスケジュールする

データパイプラインは一度きりで終わることはほとんどありません。PLUSライセンスのユーザーは、HDFS同期ジョブにcrontab形式のスケジュールを設定できるため、各バッチ実行後に新たに生成された出力を、手動で転送を開始することを誰かが覚えておく必要なく、自動的にクラウドストレージへミラーリングできます。Job Historyはすべての実行を記録するため — ステータス、転送サイズ、所要時間 — 各データセットがいつクラスタを離れ、どこに到達したかを正確に示す監査証跡がチームに提供されます。

Scheduling a recurring HDFS to cloud storage sync job in RcloneView

はじめに

  1. rcloneview.comからRcloneViewをダウンロードします。
  2. プロトコルベースのストレージオプションを使って、HDFSクラスタを新しいリモートとして追加します。
  3. Explorerパネルでクラスタを閲覧し、データセットと権限が正しいことを確認します。
  4. 一時ファイルを除外するフィルタを設定した上で、アーカイブ用のクラウド転送先への一方向同期ジョブをセットアップします。

HDFSをクラウドリモートと同じウィンドウに取り込むことで、スクリプトに頼ったエラーの起きやすいエクスポート作業を、監視・スケジュール可能な反復可能なジョブへと変えられます。


関連ガイド:

対応クラウドプロバイダー

Local Files
WebDAV
FTP
SFTP
HTTP
SMB / CIFS
Google Drive
Google Photos
Google Cloud Storage
OneDrive
Dropbox
Box
MS Azure Blob
MS File Storage
S3 Compatible
Amazon S3
pCloud
Wasabi
Mega
Backblaze B2
Cloudflare R2
Alibaba OSS
Ceph
Swift (OpenStack)
IBM Cloud Object Storage
Oracle Cloud Object Storage
IDrive e2
MinIO
Storj
DigitalOcean Spaces