rakumoコンサルティング部の小山(@koyhoge)です。
Google Cloud Storage(GCS)は、GCPにおけるオブジェクトストレージサービスです。AWS でいうところの S3、Azure でいうところの Blob Storage に相当します。
基本はAPIを使ってデータを読み書きしますが、FTP や sFTP のようにリモートディスクとしてアクセスするクライアントアプリが存在します。それを使うことでクラウドの詳しいことは知らなくても、単なるネットワーク外部ディスクのように扱えるわけです。
大抵は Amazon S3対応のものが多く、GCS対応を謳うものはさほど多くありません。今回 Mountain Duckというクライアントアプリを試したので、その使用感を書いてみます。
Mountain Duckとは
Mountain Duckは、スイスの iterate GmbH が開発している有料のネットワークディスククライアントアプリです。1ユーザー $39.00 からで、ユーザー数が増えるとボリュームディスカウントがあります。
Mountain Duckが特徴的なのは、アクセスするための独自ウィンドウを表示してそこで作業を行う多くのクライアントアプリと異なり、Windows の場合はエクスプローラーの、MacOSの場合は Finder の機能拡張として動作し、作業はエクスプローラー/Finderそのものを用いる点です。アクセスできる外部のファイルサーバの種類がぐっと増えた感じと書けば分かりやすいでしょうか。
対応しているプロトコル・サービスは現時点で15です。WebDAV, FTP, SFTP などメジャーなファイル転送プロトコルはもちろん、AWS S3、Azure Storage、Rackspace Cloud Files など多くのクラウドサービスにも対応しています。
ちなみに、iterate GmbH では通常のウィンドウ型のクライアントアプリも Cyberduck としてOSSで開発、公開しています。
https://cyberduck.io/cyberduck.io
無料試用版を試す
Mountain Duck は無料試用版があるので、早速試していきます。上記 Moutain DuckのWebページのダウンロードリンクからソフトをダウンロードします。今回は MacOS 版を試します。
ダウンロードが完了して dmg を展開すると、Mountain Duck.app が現れるので、アプリケーションフォルダーにコピーします。
Mountain Duck.app をダブルクリックで起動すると、まずはログイン時に自動起動するかどうかを尋ねるダイアログが表示されます。
「続ける」を選択すると、次に接続設定のダイアログが表示されます。
最上部のセレクトリストから「Google Cloud Storage」を選択します。
Username の欄にアクセスしたいGCPプロジェクトの「プロジェクトID」を入力して、「Connect」をクリックします。
するとブラウザでGoogleアカウントの選択画面が表示され、目的のアカウントをクリックして、アプリの権限承認画面になります。
「許可」ボタンをクリックすると、認証コードが表示されます。
この認証コードをコピーして、Mountain Duckの「OAuth2 Authentication」ダイアログの「Authentication Code」欄にペーストします。
「Login」ボタンをクリックすると、無事にプロジェクトが保持する GCS バケットがマウントされます。
ファイル転送をテスト
さてマウントもできたとことだし、Mountain Duck で実際にファイル転送をやってみます。とは言っても普通に Finder でコピーするだけですけどね。
まずは10.5MBの画像一枚をマウントされているフォルダーにコピーすると、数秒で完了しました。よしよし。
GCP の管理コンソールで見ても無事に格納されています。
次に 25MBのファイルを10個まとめてコピーしてみたところ、30秒程度で終了したので、パフォーマンスも悪くないようです。
最後に 3300 個の小さいファイルがあるソースコードリポジトリのフォルダーをコピーするという意地悪をしてみたところ、途中でステータスバーが全く進まなくなってしまいました。やはり細かいファイルを大量にコピーするのはちょっとやり過ぎだったようです。
まとめ
Mountain Duck は、OS 標準のツールで様々なネットワークストレージをマウントできるソフトウェアです。アプリ独自の使い方を学習しなくて良い点が素晴らしいです。