AWS Kinesis
Configure real-time event delivery to Amazon Kinesis for high-throughput data processing
The Amazon Kinesis destination enables you to send your event data to Amazon Kinesis in real-time. This allows you to process and analyze high-volume event streams with low latency.
Configuration
To set up the Amazon Kinesis destination:
- Navigate to the Destinations section in your account
- Click "Add Destination" and select "Amazon Kinesis"
- Provide the following information:
- AWS Region
- Stream Name
Event Format
Events sent to your Kinesis stream will be in the following format:
{
"event": {
"event": "Order Completed",
"event_properties": {
"order_id": "12345",
"total": 99.99
},
...etc
},
"visitor": {
"visitor_id": "visitor_123",
"first_seen_at": "2024-01-01T00:00:00Z",
"email": "example@example.com",
...etc
},
"user": {
"external_id": "user_456",
"email": "example@example.com",
...etc
}
}Delivery Guarantees
Events are delivered with at least once semantics. This means that each event may be delivered one or more times to your Kinesis stream. Duplicate events can occur due to network retries, system failures, or other transient conditions.
To ensure idempotent processing of events, your consumers should use visitor.visitor_id and/or event.distinct_id to identify and deduplicate events. These identifiers remain consistent across duplicate deliveries of the same event, allowing you to safely process events multiple times without side effects.
Best Practices
- Ensure your Kinesis stream has appropriate access policies (you will need to contact a member of the Ours Privacy team for this)
- Consider using Kinesis Data Firehose for automatic data delivery to other AWS services
How is this guide?