Bento
Simplify event-routing OpenSnowcat / Snowplow event routing with Bento.
SnowcatCloud, Inc. developed a Bento processor to simplify event-processing and routing with Bento and OpenSnowcat / Snowplow enriched TSV. We ❤️ Bento!.
You can test Bento using the OpenSnowcat DevKit.
What is Bento?
Bento is a declarative data streaming service that solves a wide range of data engineering problems with simple, chained, stateless processing step. It is designed to be easy to use, easy to deploy, and easy to scale.
What can you do with Bento & OpenSnowcat / Snowplow?
Bento can be used to process and route events from 60+ sources to more than +38 outputs with built-in retry mechanisms, dead-letter queues, and backoff strategies.
- Move data from one stream to another
- Convert Enrich TSV to JSON
- Filter out unwanted events (e.g. bots, internal traffic)
- Anonymize PII data (e.g. IP address, user ID)
- Hash sensitive data (e.g. email, user ID)
- Redact sensitive data (e.g. phone number, name)
Bento OpenSnowcat / Snowplow Cookbooks
Use these cookbooks to deploy Bento with OpenSnowcat / Snowplow. Try them out using OpenSnowcat DevKit.
# Bento pipeline: enriched-good -> enriched-good-json
input:
kafka_franz:
seed_brokers: ["warp:9092"]
topics: ["enriched-good"]
consumer_group: "pipeline:enriched-good-json"
pipeline:
processors:
- opensnowcat:
output_format: json
output:
kafka_franz:
seed_brokers: ["warp:9092"]
topic: "enriched-good-json"
batching:
count: 10
How does it compare?
| Feature | Bento | Snowplow's Snowbridge |
|---|---|---|
| Open Source | ✅ MIT | ❌ Proprietary SLULA |
| Retry Mechanism | ✅ "At-least-once" Delivery, DLQ, Backoff Retries | ⚠️ Beta, just retries |
| Stateless Architecture | ✅ Stateless | ✅ Stateless |
| Pricing | Free - Infrastructure cost only | Not Free - Infrastructure cost + license |
| Vendor Lock-in | None - Deploy anywhere | YES - SLULA 1.1 |
| Built-in Inputs | 60+ - Stdin, Kafka, S3, Kinesis, Azure, PubSub etc. | 4 - Stdin, Kafka Kinesis, PubSub, SQS |
| Built-in Outputs | 38+ - HTTP, Kafka, S3, PostgreSQL, etc. | 6 - EventHub, HTTP, Kafka, Kinesis, PubSub, SQS |
| Data Transformations | ✅ Native processors, Bloblang & Enrich TSV processor | ✅ Built-in & Javascript |
| Configuration | YAML - Declarative | Config File - HCL format |
| Deployment Options | ✅ Any infrastructure | ✅ Any infrastructure |
| Community & Support | Active - Large community | Active - Snowplow community + Commercial |