Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

Azure:新しいリアルタイムデータストリーミングとデータファクトリサービスを発表

連載:ScottGu's Blog翻訳

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2014/11/11 14:00

 本稿は、Scott Guthrie氏のブログを、氏の許可を得て、翻訳、転載したものです。米Microsoft社の副社長で、ASP.NETやSilverlightの開発チームを統率する氏のブログでは、次期製品を含む最新の技術をいち早く紹介しています。

目次

 原典:Azure: Announcing New Real-time Data Streaming and Data Factory Services

はじめに

 ここ3週間、Azure関係で非常に忙しくなっていました。2週間前、Dockerとの提携について発表しましたが、それによりLinux、Windows Server、Microsoft Azure上ですばらしいコンテナベースの開発が可能になりました。

 先週開催されたCloud Dayイベントで、新しい仮想マシンのGシリーズとプレミアムストレージ提供について発表しました。GシリーズのVMは、パブリッククラウドで現在利用可能な最大のVMサイズ(AWS提供よりほぼ2倍のメモリまたGoogle提供より4倍のメモリ)を提供します。新しいプレミアムストレージ(VMのDシリーズおよびGシリーズのどちらでも動作予定)では、VMごとに最大32TBのストレージと50,000 IOPSのディスクIOがサポートされ、Sub-1msの読み込み遅延が可能になります。組み合わせることで非常に大きなパワーが提供され、より大きく、より素晴らしいクラウドソリューションが提供できます。

 今週初め、新しくAzureオーストラリアリージョンを正式にオープンしました。これは、世界でオープンした中で18番目か19番目のものになります。その後、TechEdヨーロッパで、新しいAzure MarketPlaceの立ち上げ、新しいバッチコンピューティングサービス、Azureオートメーションサービスなどのさらなる新機能群を発表しました。

 Azureデータスペースで今週リリースした新しいサービスについてブログ公開でき、うれしく思います。

  • イベントのハブ:Webサイト、クライアントアプリ、IoTセンサーからデータを取得し格納するスケーラブルなサービス
  • ストリーム分析:イベントストリームからリアルタイムに状況確認できる費用対効果の高いイベント処理エンジン
  • データファクトリ:多様なデータとデータ移動の編成および管理による、より優れた情報生産が可能

 Azureイベントハブは一般公開されており、新しいAzureストリーム分析とデータファクトリサービスは現在パブリックプレビューになっています。

イベントハブ:ほぼリアルタイムで秒あたり数百万のイベントログ

 Azureイベントハブサービスは、非常にスケーラブルなテレメトリ取得サービスで、ほぼリアルタイムで秒あたり数百万のイベントログを残します。イベントハブサービスを利用して、色んなIoTデバイスやアプリ(Web、モバイル、バックエンドサービス)から、またはソーシャルネットワークのようなフィード経由で、データ/イベントが収集できます。Microsoftはこれを内部で使用していて、最大級のオンラインシステムをいくつか監視しています。

 イベントハブでイベントを収集したら、その後リアルタイム分析システム(Apacheストーム、新しいAzureストリーム分析サービスなど)を使用してデータを分析し、データストレージシステム(HDInsightやHadoopベースのソリューションなど)へ保存/変換することができます。

 イベントハブはAzureで管理サービスとして提供されます(つまり、こちらで実行、スケール調整、パッチを行い、エンタープライズSLAを提供します)。提供には以下のものがあります。

  • ほぼリアルタイムで秒あたり数百万のイベントログ機能
  • 中断なくスケールアップ/ダウンする機能を持つ弾性スケールサポート
  • HTTPとAMQPベースイベントサポートなど複数のプロトコルをサポート
  • 柔軟な承認とスロットルデバイスポリシー
  • イベント順序を保った時間ベースのイベントバッファリング

 イベントハブの価格モデルは非常に柔軟です。イベントハブに送信される1メガバイト/秒のイベントが取り込み可能な保証性能容量を持つ基本イベントハブを11ドル/月のみでプロビジョニングできます。その後イベントトラフィックが高くなった場合は、必要に応じて容量単位を追加していくことができます。

イベントキャプチャ入門

 Azureポータルを使用するかコマンドライン経由で新しいイベントハブを作成できます。ポータル内で「New」-「App Service」-「Service Bus」-「Event Hub」を選択してください。

 作成できると、強く型付けされたAPI(.NETまたはJavaクライアントライブラリなど)を使用して、または単純にサービスへ生のHTTPやAMQPメッセージを送信することで、イベントハブにイベントを送信することができます。以下は、標準のHTTP POSTリクエストを使用して、イベントハブへIoTイベントログを記録することが、いかに簡単かを示した例になります。HTTPポストのAuthorizationヘッダを確認してください。デバイスの柔軟な認証/許可を有効にしたい場合にこれを使用することができます。

POST https://your-namespace.servicebus.windows.net/your-event-hub/messages?timeout=60&api-version=2014-01 HTTP/1.1
Authorization: SharedAccessSignature sr=your-namespace.servicebus.windows.net&sig=tYu8qdH563Pc96Lky0SFs5PhbGnljF7mLYQwCZmk9M0%3d&se=1403736877&skn=RootManageSharedAccessKey
ContentType: application/atom+xml;type=entry;charset=utf-8
Host: your-namespace.servicebus.windows.net
Content-Length: 42
Expect: 100-continue
 
{ "DeviceId":"dev-01", "Temperature":"37.0" }

 イベントのハブはこのように秒あたり最大数百万のメッセージを収集することができ、また、イベントハブサービスは後から読込/消費するために順序を格納できます。

下流のイベント処理

 イベントを収集したら、それで何かしたくなると思います。イベントハブにはインテリジェント処理エージェントが含まれていて、リーダー間の自動パーティション管理や負荷分散が可能です。リーダー内では必要なロジックが実装でき、リーダーに送られたデータはイベントハブに送られた順序で配信されます。

 独自のイベントリーダーを作成できるほか、新しいAzureストリーム分析サービスやApacheストームなど事前に構築されたストリーム処理システムで簡単に動作させる2つの方法もあります。新しいAzureストリーム分析サービスはイベントハブから直接ストリーム処理をサポートしており、MicrosoftはApacheストームクラスタで使用できるイベントハブStorm Spoutを作成しました。

 以下の図は、イベントハブがデータを収集し、イベント/データを受け渡して処理を行うためのリッチな方法を数多く示したものになります。

 イベントハブは、非常に柔軟で費用効率の高い構築ブロックを提供しており、クラウドに流したいイベントやデータを収集し処理するのに使用することができます。非常に費用効率が良く、さまざまなニーズに対応できるスケーラビリティを提供します。

イベントハブの詳細について

 Azureイベントハブの詳細については、以下のリソースをご確認ください。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • WINGSプロジェクト Chica(チカ)

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂...

バックナンバー

連載:Scott Guthrie氏 Blog翻訳

もっと読む

All contents copyright © 2005-2018 Shoeisha Co., Ltd. All rights reserved. ver.1.5