MicrosoftはAzure Event Hubsをアーカイブできる機能「Azure Event Hubs Archive」を公開しました。以下はその発表内容を和訳したものです。

Azure Event Hubs はリアルタイムで、スケーラブルかつフルマネージドのデータストリーム処理サービスで、1秒間に数百万件のイベントをストリーム処理し、複数のアプリケーションへ提供することが可能です。これにより、接続されたデバイスや、アプリケーションで生成された大量のデータを処理・分析することが可能になります。

Event Hubsの主な利用用途の1つとして、データのアーカイブや、ダウンストリーム時のマイクロバッチ処理等です。通常、お客様は、コンピューティング処理 (Event Processor Host/Event Receivers) や、Stream Analytics を利用して、これらのアーカイブやバッチ処理タスクを実施します。これらのソリューションやそれ以外のダウンストリームソリューションではスケジュールやバッチジョブ管理が必要なため、多くの管理コストが必要になります。それでは、より簡単なソリューションはないものか?という疑問に答えるために、新たな機能としてEvent Hubs Archiveを発表しました!

Event Hubs Archive はデータを直接Event HubsからAzure ストレージへBLOB形式で保存することで重要な課題を解決します。「Archive」は自動的にAzure BLOB ストレージへアップするための必要なコンピューティング負荷とダウンストリーム処理を管理します。 これにより、必要なTCO(総保有コスト)、設定・管理工数や、カスタムジョブの管理を省き、アプリの作成により集中できます!

Event Hub Archiveのメリット

  1. シンプルなセットアップ

    既存のEvent Hubsでこの機能を利用するための設定は非常にわかりやすいです。

  2. 総保有コストの削減

    Event Hubsが全て管理してくれるため、カスタムで設定したバッチ処理のための必要な管理コストは最低限に抑えられます。

  3. Azure Storageとの結合性

    Azure ストレージアカウントを選択するだけで、ArchiveはEvent Hubsからコンテナへデータをアップしてくれます。

  4. ほぼリアルタイムなバッチ分析

    アーカイブされたデータはEvent Hubsで受信してから数分以内に利用可能になります。これにより、別々のデータパイプラインを構築することなく、ほぼリアルタイムで分析することが可能になります。

Event Hubs Archiveの詳細

Event Hubs Archiveは以下の方法で有効化することが可能です。

  1. Azure portal のEvent Hubsで作成したネームスペースから設定する
  2. Azure Resource Managerテンプレート

ArchiveをEvent Hubで有効化後、時間もしくは容量枠をアーカイブするために設定する必要があります。

タイムウィンドウでは、Azure BLOB ストレージへの保存頻度を設定できます。設定可能な範囲は60秒から900秒(1分から15分)までで、1秒単位で調整可能です。既定では300秒になっています(5分)

サイズウィンドウでは、データの蓄積容量に応じてアーカイブするタイミングを決められます。設定可能な範囲は10MBから500MB(10485760 – 524288000 バイト)までで、バイト単位で調整可能です。

アーカイブのキック処理のタイミングは時間枠もしくはサイズ範囲のどちらかが超過した場合です。時間範囲とサイズはにが設定されたあと、アーカイブ先のストレージアカウントを指定します。

これで設定完了です!すぐにAzure ストレージアカウントのコンテナにBLOBが作成されているのが確認できるかと思います。

BLOBの命名規則は以下のようになっています:

<ネームスペース>/<EventHub名>/<パーティション>/<YYYY>/<MM>/<DD>/<HH>/<mm>/<ss>

例: Myehns/myhub/0/2016/07/20/09/02/15 で、標準のAvro形式です。

もし特定の時間やサイズ枠でイベントデータが無い場合は、空のBLOBの命名規則がアーカイブによって作成されます。

価格プラン

ArchiveはEvent Hubs内のオプションとして作成することができ、 1つのEvent Hubsにつき、1つのArchiveに限定されます。これはスループットの計算対象に含まれるため、Event Hubsで指定されているスループット単位に左右されます。

Archiveを有効かすると、100% egressとしてみなされ、ストレージのコストは別途発生します。そのため、コストはコンピューティング処理で発生します(代替で私たちが管理してますので!)

価格の詳細は、Azure Event Hubs 価格プランをご覧ください。

新しいシリアル化形式についてのご意見をお待ちしています。

本日より利用可能ですので、是非この機能をお楽しみください。

質問やご提案は元記事へコメントを残して下さい。

情報元: https://azure.microsoft.com/en-us/blog/azure-event-hubs-archive-in-public-preview/