例えば、こんな組み合わせで全体設計が可能です。この全体設計をたたき台にして、個々のアプリケーション要件次第で柔軟にカスタマイズできます。

  • モバイルアプリケーションのサーバーサイド

    モバイルバックエンド

    Pattern-LogCollection2.png

    ログデータ収集処理

    ファイルきっかけの処理起動
    (シンプルなデータ加工の応用)

     

    要件: モバイルアプリから随時データが送信されてくる。その情報を受信し、データの加工・集計をして、タイムリーに可視化したい。

    選択パターン: モバイルバックエンド、ログデータ収集処理、シンプルなデータ加工
    加えて BI ツールを使って可視化する部分を追加。

  • IoTアプリケーションデザイン

    IoTバックエンド

    Pattern-LogCollection2.png

    ログデータ収集処理

    モバイルバックエンド

    機械学習パイプライン

    Alexaスキル

     

    要件: 機器から随時データが送信され、そのデータを収集し、機械学習させる。また、モバイルアプリから機器の遠隔操作を可能にする。一部の機器については Alexa によるボイス操作を可能にしたい。

    選択パターン: IoT バックエンド、モバイルバックエンド、Alexa スキル、ログデータ収集処理、機械学習パイプライン

  • データ処理パイプライン

    design-example-datapipeline

    シンプルなデータ加工

    イベント駆動の処理連携

    バッチジョブ
    ETL フロー処理

     

    要件: 連続的にデータが流入。それらに対して随時加工・集計などの処理を実施、定期のバッチジョブで最終データを活用。

    選択パターン: シンプルなデータ加工、イベント駆動の処理連携、バッチジョブ・ETL フロー処理

  • ログデータ処理 - SIEM

    design-example-SIEM

    シンプルなデータ加工

    Pattern-LogCollection2.png

    ログデータ収集処理

     

    要件: 顧客システム、AWSサービスのログ、IPSログなどを統合監視したい。ログデータの増加に対応できるスケーラビリティを確保しつつ、監視システムとしての運用工数を抑えたい。

    選択パターン: シンプルなデータ加工、イベント駆動の処理連携 + 可視化(OpenSearch)


    これを実装するための全体的な仕組みとして構成されたオープンソースのソリューションがあります。