This repository contains a fundamental demo architecture to aggregate inference data from Coral Dev Board, through ETL pipeline and stores the data in DWH and monitor the data on WebUI in realtime. This architecture is designed for enterprise scale, may be used in production with a few modification.
Edge | Cloud |
---|---|
This demo contains 2 parts, an edge side and a Cloud side.
The edge side (which here means Coral Dev Board) runs a simple
MobileNet SSD Object Detection. Also the board is registered in
Cloud IoT Core, a full-managed
IoT data ingestion & manage service. Once the board detects objects,
the detected data is sent to the Cloud side through IoT Core.
IoT Core pass the data to Cloud Pub/Sub,
a full-managed messaging service. The data goes to BigQuery for analysis,
and Cloud Firestore for realtime monitoring,
as Cloud Dataflow can handle all the data transition.
Finally, you want to see the data on the Cloud! Google App Engine hosts a web app, which shows the data from Firestore in realtime.
- Coral Dev Board
- Coral Camera Module, or USB Webcam
You need to make an account and a project on Google Cloud Platform.
This demo consumes some non-free resources on GCP. To enable billing to your project, follow the instruction.
This demo includes 3 parts;
- Inference at the edge,
- ETL pipeline using Dataflow, and
- Realtime WebUI monitor on GAE.
To set up each parts, go to
/edge
,/dataflow
,/webui
in this repository respectively.
Open the webUI on your browser (Refer to /webui
), and start script (Refer to /edge
).
To avoid unneccesary consumption, you should clean up resources once you finish the demo.
Follow clean up section for each /edge
, /dataflow
, and /webui
.
Or simply you can delete your project. Go to Project setting page, and click SHUT DOWN button.