Charts for IOT data

0

Hi Guys, I am collecting IOT data during the day from many devices, I am trying to build static and live charts from these data. I need to do multiple calculation for hourly, daily for some period of time and some other time interval, need to calculate lot of average values of data. What is the best way to approach this. Should I just do raw calculation on tables and prepare data for charts, or calculate everything ahead of time? Or any AWS service I can use for this? I will build chart on UI and need data for them. Thanks

ozy
已提問 1 年前檢視次數 387 次
3 個答案
1
  1. Use IoT Core to trigger a rule action: Invoke Lambda or direct putItem on DynamoDB.
  2. Lambda will save data into DynamoDB or Keyspaces (Apache Cassandra).
  3. Use API Gateway and Lambda to query your data. If you use Keyspaces as a DB, you can use aggregation functions.
Eddy
已回答 1 年前
1

For the use case you are describing you can get all the required functionality out-of-the-box by using AWS IoT SiteWise. AWS IoT SiteWise is a fully managed service providing aggregation of the streamed data and visualization components, either via the managed monitor or via the IoT AppKit components that can be embedded in your own application.

You can ingest data into Sitewise from IoT Core using IoT Rules, or if you have industrial data sources you can use a SiteWise Gateway.

To learn-by-doing you can run this workshop

If you would nevertheless prefer building your own solution, I would suggest the following services:

  • AWS IoT Core for data ingestion
  • Amazon Timestream for data storage and data aggregation. You can run adhoc queries on Timestream so that you do not have to define the aggregations ahead of time. You can also define scheduled query for the most commonly used aggregation to reduce cost.
  • Managed Grafana for data visualization or any charting library if you want to build your own (CloudScape provide pretty nice components)
AWS
專家
已回答 1 年前
0
  • Use AWS IoT Core to collect data from your IoT devices.
  • Use AWS IoT Rules Engine to process and forward the data to other AWS services like Amazon Kinesis Data Streams for real-time processing or Amazon S3 for storage.
  • Use Amazon DynamoDB for storing time-series data, which is suitable for IoT data.

For data visualization, you can use Amazon QuickSight or a custom web application using popular JavaScript charting libraries like Chart.js, D3.js, or Highcharts. You can query the pre-aggregated data from the chosen data store to display it on the charts.

profile picture
專家
已回答 1 年前
  • Thanks for the suggestion, I will use Highcharts. Only challange is, it is hard to prepare data ahead of time. Let say for this want to see average value between 8 AM to 10 AM or other interval dynamically, so I need to act on raw data. trying to find best way to query data and do average calculation.

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南