βοΈ MSight Cloud Integration Overview
MSight can integrate with the cloud in multiple ways depending on your application needs, data volume, real-time requirements, and your preferred cloud architecture.
Tip
MSight is theoretically compatible with AWS, GCP, Azure, Alibaba Cloud, Tencent Cloud, and others, but AWS is the recommended and most fully supported option. Other cloud environments will work as well, but users might manually implement or adapt certain pipeline components described in this documentation.
This page provides a clear overview of the supported integration methods, their trade-offs, and guidance on when to choose what.
π Why Multiple Integration Methods?
Roadside perception workloads vary widely:
- Some deployments only need simple data archiving
- Others require high-throughput, real-time streaming
- Some teams prefer AWS-native microservices, while others want cloud-agnostic Kafka-based infrastructure
To support all deployment styles, MSight provides four integration paths:
- Direct S3 Uploads (simple archiving)
- HTTP Endpoint (flexible ingest method)
- AWS Kinesis + Firehose + S3 (AWS-native pipeline)
- Kafka / AWS MSK (cloud-agnostic, portable streaming)
Below, we explain each option,choose the one which is right for you.
π 1. Direct Upload to AWS S3
Best for:
- Simple deployments
- Archival and batch processing
- Low-frequency data uploads
- Offline or non-real-time use cases
This is the simplest way to integrate MSight with the cloud. The edge device aggregates and compress sensor data (images, LiDAR frames, metadata) and uploads directly to an S3 bucket.
β Pros
- Easiest setup
- No streaming infrastructure required
- Cheapest option
- Works offline with periodic uploads
β Cons
- Not real-time
- Can't integrate with real-time cloud services
- Not suitable for streaming data
- No cloud-based processing until after upload
Documentation
β‘οΈ Direct S3 Upload (simple archiving) β coming soon
π 2. HTTP Endpoint
Best for:
- Simple streaming ingestion
- Users who want full control of backend logic
- Teams familiar with REST/Web APIs
- Lightweight or custom deployments
- Environments with special networking constraints
In this model, MSight sends data to an HTTP endpoint. A user-managed HTTP server running in the cloud (or on-prem) receives the request, processes or repackages the data, and forwards it to any downstream service β S3, SNS, SQS, Kinesis, Kafka, or your own storage pipeline.
This approach offers full flexibility at the ingestion layer.
β Pros
- Easy to understand β REST is widely used and well supported
- Users can host their own HTTP server in any cloud or on-prem
- Highly flexible β forward data to any downstream service
- No persistent connections from the edge device
- Ideal for specialized networking environments, such as:
- Roadside deployments restricted to IPv6-only networks
- Networks requiring custom security policies, proxies, or controlled routing
- Cases where managed services like Kinesis are blocked or unreachable
- Works even when the infrastructure cannot support Kinesis/Kafka protocols
β Cons
- Still requires a downstream pipeline (Kinesis / SNS / SQS / Kafka / S3)
- HTTP overhead is higher than Kinesis or Kafka
- Harder to guarantee ordering and throughput
When to choose this?
- You want maximum flexibility
- You already have an API-oriented backend
- You prefer to process data in Lambda instead of Firehose
- Your data rate is moderate
Documentation
β‘οΈ HTTP Endpoint + Lambda Integration β coming soon
π₯ 3. AWS Kinesis + Firehose + S3 (AWS-native pipeline)
Best for:
- Real-time ingestion with minimum AWS support
- Simple but scalable streaming from MSight Edge
- Large deployments with multiple sensors
- Users who want an βAWS-nativeβ architecture
- Users planning to plug in more AWS services over time
-
Easy and integrated monitoring
-
Kinesis Data Streams receives live data from MSight Edge
- Firehose batches, transforms, and partitions
- S3 stores data in efficient, queryable formats
Tip
This represents the minimum real-time streaming pipeline for MSight.
If you want to extend this pipeline to support real-time eventing, notifications, or downstream applications, see
β‘οΈ Integrating with SNS.
β Pros
- Real-time
- Fully managed
- High throughput and strong durability
- Best integration with AWS ecosystem
- Easy to connect downstream ETL, Glue, Athena, or Lakes
β Cons
- Slightly more setup than HTTP β Lambda
- Not as portable as Kafka (AWS-specific)
When to choose this?
- You want real-time processing
- You plan to use AWS-native analytics
- You want a clean, scalable ingestion path
- You prefer managed services instead of running servers
Documentation
β‘οΈ Kinesis + Firehose + S3 Setup
π 4. Kafka or AWS MSK
Best for:
- Multi-cloud or cloud-agnostic deployments
- Teams already using Kafka
- Large-scale streaming systems
- High fan-out scenarios
- Companies requiring portable infrastructure
Kafka (and AWS MSK, its managed equivalent) provides a vendor-neutral streaming backbone.
β Pros
- Cloud-agnostic
- Extremely high throughput
- Strong ordering guarantees
- Excellent for large distributed systems
β Cons
- More operational complexity
- Requires keeping brokers healthy (unless using MSK)
- More work to integrate into AWS downstream (compared to Kinesis)
When to choose this?
- You want a pipeline that can run on AWS, Azure, GCP, or on-prem
- Your organization already uses Kafka
- You need advanced streaming features (schemas, replay, partitioning)
- You want independence from AWS-specific services
Documentation
β‘οΈ Kafka / AWS MSK Integration β coming soon
π§ Which Integration Should I Use?
Here is a decision summary:
| Use Case / Requirement | Recommended Option |
|---|---|
| Simple upload + archival | Direct S3 Upload |
| Low/moderate-rate streaming, easy setup | HTTP + Lambda |
| AWS-native, scalable real-time streaming | Kinesis + Firehose + S3 |
| Cloud-agnostic or existing Kafka infrastructure | Kafka / MSK |
TL;DR
- If you want the easiest option β S3 Upload
- If you want flexible ingestion β HTTP + Lambda
- If you want the best AWS-native experience β Kinesis + Firehose + S3
- If you want portability β Kafka / MSK
π Continue to Setup Guides
- AWS Kinesis + Firehose + S3
- HTTP Endpoint
- Direct S3 Upload
- Kafka / MSK Integration