Hack & Sports

Microsoft エバンジェリスト&トライアスリート 大田 昌幸の個人ブログ

Azure Blob ストレージへのファイルアップロード方法

Azure Blob ストレージへのファイルアップロード方法をご質問いただくことがありますので、アクセス方法をメモしておきます。

なお、Azure ストレージの概要については過去記事をご参照ください

nt-d.hatenablog.com

 

データをアップロードする方法

ストレージへのデータのアップロード方法にはいくつかの方法があります。

  1. (イチオシ!)Microsoft Azure Storage Explorer (Windows,Mac, Linux)
  2. Azure CLI というコマンドラインツール (Windows,Mac, Linux)
  3. AzCopy ツール (Windows)
  4. 各社様の開発されている独自ツールをご利用いただく。
  5. 自作

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 の場合、高速にデータをアップロードするツールの実装は下記のようになります。

  1. クライアント側でデータをブロック単位に分ける。
  2. ブロック ID を付与して、Azure Blob Storage へ”並行して”アップロードする

 

上記のように、いくつかのブロックを並行してアップロードすることにより、

大きなデータであっても高速にアップロードできるようになります。

AzCopy も並行してアップロードするようになっており、高速にデータを転送可能になっています。

 

参考情報: Blob Parallel Upload and Download

http://blogs.microsoft.co.il/applisec/2012/05/14/blob-parallel-upload-and-download/

データ移動・加工の自動化ツール Azure Data Factory の情報まとめ

データの移動/変換/分析/発行の調整・自動化サービスである Azure Data Factory を紹介します。

 

docs.com にてスライドを公開しましたので、詳細はそちらを参照してください。

 

 

スライド作成時点では Visual Studio 2013 のみに対応していましたが、現時点では Visual Studio 2015 のアドインも公開されています。

基本的に Web 上(Azure Portal上) で操作はできるのですが、Visual Studio で完結させたい方はご活用ください。

 

 

 

Kinect v2 本を出版しました

Kinect v2 開発本を2冊ほど出版しました!

自分自身がエバンジェリストになる前は、先輩エバや他社のエンジニアさんの書籍を見て「かっこいいなぁ。いつか自分も書きたいなぁ」と思っていたのですが、ついにその念願が叶って結構感動しています。

いろいろな本に影響を受けてきましたが、「自分を著者に変えた」という意味で、この2冊は自分の人生に最も影響を与えてくれた本ですね。

 

どちらも力を入れて書いているので、Kinect 開発に興味のある方は購入をご検討くださいませ!著者ページはこちら

 

1冊目

Windows 8.1, C#, Kinect v2 を使って開発をするための入門書籍です。

環境構築から、Kinect プログラミングをするために必要な概念 (xxFrameSource, xxReader, FrameArrivedイベント)、実際のソースの書き方まで丁寧に解説しています。

# 2015年9月現在で Kinect SDKWindows 8.1 対応なので Windows 8.1 対象で執筆しています。

 

Kinect 開発って何を揃えればいいの?どういうふうにプログラミングを始めたらいいの?という方にオススメです。

必要な情報のみに絞って執筆しているため 90ページほどの書籍ですが、その分 Kindle 版では 900円と手に取りやすい価格設定にしています。 

Kinectv2楽しいプログラミング入門 (NextPublishing)

Kinectv2楽しいプログラミング入門 (NextPublishing)

 

 

 

2冊目

JavaScript のみで 3D インタラクティブ Web コンテンツを開発できるようになるための入門書籍です。具体的には、以下のような処理のすべての実装方法を紹介しています。

  1. Kinect v2 でモーションを取り
  2. Milkcocoa でリアルタイムに情報を送信し
  3. jThree という3Dモデル描画ライブラリで好きな 3Dモデルを描画します (URL さえ教えれば誰のブラウザからでも見れます。)

 

JavaScriptでインタラクティブ3Dコンテンツを作ろう―Kinect+jThree+Milkcocoaを使って東北ずん子と踊る (NextPublishing)

JavaScriptでインタラクティブ3Dコンテンツを作ろう―Kinect+jThree+Milkcocoaを使って東北ずん子と踊る (NextPublishing)

 

Kinect v2 開発のために Windows 8.1, Visual Studio は必要ですが、実装は JavaScript のみなので Web 開発者にとっても非常に馴染みやすい書籍になっています。私以外の著者が Web 系なので、Web開発者に馴染みやすくなっているという理由もあります。

 

昨年から私はマイクロソフトの中でスタートアップ系ビジネスを担当していたのですが、「スタートアップのエンジニアと一緒に面白いアプリを作れる本をかけたら面白いかも」ということで、4名のスタートアップのエンジニアの皆様と書籍執筆を企画・出版させていただきました。

この書籍を通して、jThird や Milkcocoa が多くの方に知られ、また多くのエンジニアが具体的なアプリを作る経験をしていただけましたら幸いです。

 

 

この書籍は Web サーバーが必要ですが、Azure の無償版などを活用いただくと良いと思います。

azure.microsoft.com

 

Mac をお持ちの方は、以下の記事を参照してください。

 

nt-d.hatenablog.com

 

今後、この書籍を書いたメンバーと書籍出版を通して得られた経験を共有するイベントを企画しているので、楽しみにしていてください〜