こんにちは、上坂(@takashiuesaka)です。
今回は前回の続きです。
前回はEventHubsが認証済みデバイスからだけイベントデータを受け付けるようにするために、PublisherとSASTokenの使い方を説明をしました。
そのためには共有アクセスポリシーのキーをデバイスに渡すのではなく、あらかじめ生成済みのTokenをデバイスに渡すのが良いやり方である、という説明もしましたが、このTokenが不本意にも盗まれてしまって変なイベントが飛んでくるようになってしまった場合はどうしたら良いでしょうか。
こんな時のために、Publisher/<PUBLISHER_NAME>の単位でエンドポイントを無効にすることができます。
Read More
こんにちは、上坂(@takashiuesaka)です。
ちょっとお久しぶりになってしまいました。今日はAzure EventHubsの興味深い機能について書きたいと思います。
EventHubsは様々なデバイスからイベントデータと呼んでいる情報(文字列をバイナリにシリアライズしたもの)を大量に受け付けることができますが、ここで気になることがあります。
- 認証済みのデバイスからだけのイベントを受け付けるように制限したい
- 不正なデバイスからアクセスがあった場合はイベント受付を拒否したい
- どのデバイスからのイベントなのか判別したい
これらの要件を満たすために、EventHubsはShared Access Signature(SAS)とPublisherを組み合わせるやり方が用意されています。
まずこの図をご覧ください。特に何も設定しないでEventHubsにイベントデータを飛ばした場合のイメージ図です。

イベントデータを受け付ける箇所は1か所です。Publisherを使うとこのようになります。

Read More
こんにちは、上坂(@takashiuesaka)です。
前回に引き続き、EventHubsのお話です。今回は受信側のお話をしましょう。英語の文章をひたすら読んでいたせいか、どこか日本語が翻訳っぽい気がしますが大丈夫でしょうか。大丈夫かって聞かれても困りますね、すいません気にしないでください。
今回も↓こちらを読み込んで実際にテストして私が把握した内容のまとめです。どこまで正しいかは私にはわからないので正確な情報はこちらをご覧下さい。
Azure Event Hubs の概要
イベント ストリーム指向のシステムの台頭
さて、前回はPartitionにイベントが投入されるまでの話をしました。次は受信側です。まず大前提として認識しておかなければならないのが、 EventHubsに格納されたイベントは、自分で取りに行くのではなく、通知されるプッシュ型である、ということです。なので、最初にセッションを張っ て、以降はひたすらイベント(という名の文字列)が到着するのを待つ感じになります。
これは、イベントの受信に使用するAMQPというプロトコルがそういう仕様だからようです。ちなみに送信時も.NETのSDKを使うとAMQPでイベントを投げます。RESTも投げられるようですけど試していません。でも受信側はAMQP一択のようです。
(ちなみにAMQPをプッシュ型、というとかなり語弊があるかと思います。実際には双方向のようなので。でもプッシュされる、と思ったほうがEventHubsの場合はわかりやすいかなぁと思うので、敢えて。)
そして前回でも書きましたが、とても重要なのは1つのPartitionに接続できる受信クライアントは1つだけ、ということなんですが、それだと 1つのイベントは1つの受信クラアントしか処理できないことになります。それじゃあとても不便だね、ということで用意されているのが ConsumerGroupというものです。
Read More
こんにちは、上坂(@takashiuesaka)です。
今日はEventHubsの話です。Azure Machine Learningをゴリゴリと触っている身として常々思うのはやはりデータがクラウド上に上がってこないことには何もできないなぁということです。そうなるとよく聞くストーリーは
EventHubs ・・・ StreamAnalytics ・・・ 永続化サービス ・・・ 分析
っていう流れな訳です。
が、この最初のEventHubsってやつがなかなか手強い。いや、違う、EventHubs自体はわかってしまえばそれほど難しくないです。とても良く出来た構成です。ただAzureの説明がものすごく難解なんです。
Azure Event Hubs の概要
私はこの「Azure Event Hubsの概要」と「イベント ストリーム指向のシステムの台頭」をひたすら読みましたが、あまりにわかりにくい説明に心が折れそうになりました。
イベント ストリーム指向のシステムの台頭
この2つのドキュメントを読み込んで、テストして、自分なりに把握できた内容を今日は自分のメモがてら書いておこうと思います。どこまで正確なのかは正直わかりませんがどなたかの参考になれば!
Read More