Azure Blob ストレージへのファイルアップロード方法
Azure Blob ストレージへのファイルアップロード方法をご質問いただくことがありますので、アクセス方法をメモしておきます。
なお、Azure ストレージの概要については過去記事をご参照ください
データをアップロードする方法
ストレージへのデータのアップロード方法にはいくつかの方法があります。
- (イチオシ!)Microsoft Azure Storage Explorer (Windows,Mac, Linux)
- Azure CLI というコマンドラインツール (Windows,Mac, Linux)
- AzCopy ツール (Windows)
- 各社様の開発されている独自ツールをご利用いただく。
- 自作
Microsoft Azure Storage Explorer の利用
プラットフォームを選ばないツールで、これが一番便利です。
ここからダウンロードできるので、活用してみてください。
Azure CLI というコマンドラインツールのご利用 (Mac, Linux, Windows でご利用いただけます。)
Azure CLI というツールをご活用いただくことで、コマンドラインで Azure の操作が可能です。下記情報を参考に、Azure CLI の活用をご検討ください。
Azure CLI のインストールと構成
https://azure.microsoft.com/ja-jp/documentation/articles/xplat-cli/
Azure Storage での Azure CLI の使用
https://azure.microsoft.com/ja-jp/documentation/articles/storage-azure-cli/
なお、上記 API の場合には並行処理は実装していないため、
まずはこのツールをお試しいただき、実業務内で利用に耐えうるパフォーマンスかをご確認ください。
# これが一番簡易な方法ですが、データ量によってはパフォーマンスに難があると考えており、上記のように案内させていただきました。
#並行処理に関する情報は文末に記載しました。
Windows 環境をご用意いただき、AzCopy ツールをご利用いただく。
弊社正式のツールとして AzCopy というツールがございます。
Windows 限定ではございますが、高速にデータのアップロードができますので、ご検討ください。
https://azure.microsoft.com/ja-jp/documentation/articles/storage-use-azcopy/
各社様の開発されている独自ツールをご利用いただく。
Cyberduck というツールで Azure へデータをアップロードすることが可能です。
並行してアップロードする実装を行っているか?という内部実装については不明ですが、選択肢の一つとして案内させていただきました。
https://trac.cyberduck.io/wiki/help/en/howto/azure
自作する際にご確認いただきたいこと
大量のデータをアップロードする場合、アップロード方法を工夫する必要があります。
Blob Storage の場合、高速にデータをアップロードするツールの実装は下記のようになります。
- クライアント側でデータをブロック単位に分ける。
- ブロック ID を付与して、Azure Blob Storage へ”並行して”アップロードする
上記のように、いくつかのブロックを並行してアップロードすることにより、
大きなデータであっても高速にアップロードできるようになります。
AzCopy も並行してアップロードするようになっており、高速にデータを転送可能になっています。
参考情報: Blob Parallel Upload and Download
http://blogs.microsoft.co.il/applisec/2012/05/14/blob-parallel-upload-and-download/