kito0830 / flask-practice

0 stars 0 forks source link

IoTデバイスとの通信: デバイスからデータを受信し、それを管理画面に表示する方法。 #3

Open TanecihiTakafumi opened 6 months ago

TanecihiTakafumi commented 6 months ago

このチケットでは、IoT系プロダクトのデータの持ち方及び見せ方について学びましょう。 個別具体的な技術を学ぶことももちろんですが、応用力の利くエンジニアになるためにはその分野の引き出しをどれだけ多く持っているか。です。 入社までの時間を使って他社事例を調べあげなるべく引き出しの多い状況を作っていきましょう。

タスク

ゴール

IoT系特有のデータの保存方法、データの見せ方などを把握し、それらをどのような技術で実現すればいいのか概観を把握し理解する。

kito0830 commented 6 months ago

IoTデバイスから収集したデータに対してどのような保存方法があるのか調べてください。( 例 AWS S3, Dynamo ,etc)

データベース

MySQL、PostgreSQL、MariaDB、MongoDB

クラウドサービス

Google 

Cloud Storage・・・データ保存用の大容量ストレージサービス。Amazon S3のようなもの。 スプレットシート

※IoT関連付随サービス一例 Cloud Pub/Sub・・・Pub/Subモデルを実現するために使用されるメッセージングサービス。リアルタイム分析のデータ通信でよく使用される。 Cloud Dataflow・・・Java や Python の SDK でパイプラインを記述することで、データをバッチ処理やストリーミング処理することができる。 Cloud IoT Core・・・IoTマネージドサービス。2023/8月にサービス終了

Amazon

S3・・・データ保存用の大容量ストレージサービス。

※IoT関連付随サービス一例 AWS IoT Core ・・・多くのIoTデバイスとクラウド間のセキュアな通信や効率的なデバイス管理を提供するサービス。 AWS IoT SiteWise・・・収集したデータをリアルタイムに可視化が可能なアプリケーション

ファイル形式

テキストファイル、CSVファイル、JSONファイルなど

TanecihiTakafumi commented 6 months ago

https://qiita.com/bohemian916/items/46f9f1e8bb32fc0a1f99 これ結構面白かったのでぜひご一読くださいな。

TanecihiTakafumi commented 5 months ago

https://note.com/torotiti/n/ndf416a4a2d7a

kito0830 commented 5 months ago

他社のTechブログなどを調査し、IoT系の企業はどのような管理画面/データダッシュボードを作成しているか調べてください。

kito0830 commented 5 months ago

上記のタスクで見つけた管理画面のデザインやグラフレイアウトなどがどのような技術で作られているか調査してください。

技術が調査出来ない場合には、Reactなどのモダンなフロントエンド技術を使ってどのようにすれば構築できるかライブラリなどを調べてください。

【ツール使用】

QuickSightの使用例 AWS上で簡単に分析環境を構築して、ダッシュボードや分析レポート作成、グラフ化ができる。 データソースとして、CSV、Jsonなどのファイル、 AWS IoT Analytics、S3、RDS、Redshift、AthenaなどのAWSサービス、 Salesforce、Twitter、Jira、GitHub、Snowflake、Sparkなどのアプリと連携できる。

SensorCorpusの使用例 SensorCorpusはクラウド上で提供されるサービスプラットフォームです。IoTデータに必要とされる処理である、「データの収集・蓄積」、「データの可視化」、「データのリアルタイム加工演算処理」、「データの状態による通知」、「データの状態による制御」を行う。

Grafanaの使用例 Raspberry Piで測定したCO2濃度をAWS IoT Core経由でTimestreamに保存しGrafana Cloudで可視化

ThingsBoardの使用例 ThingsBoardは、オープンソースのIoTプラットフォームで、データを収集し、可視化できます。 一般的な可視化ツールと違い、データベースをシステム内に持ち、そこにデータが保管されるため、データベース設計が不要となります。

※補足資料 オープンソースの可視化ツール 選りすぐりのTOP10 IoTデータの可視化で使用するAWSのダッシュボードサービス

【フロントエンド技術使用】

React x Chart.jsの使用例 React x ApexChart.jsの使用例 VueプロジェクトでのMQTTの使用方法