franz-go
debezium
franz-go | debezium | |
---|---|---|
16 | 80 | |
1,558 | 10,060 | |
- | 1.7% | |
9.2 | 9.9 | |
2 days ago | 5 days ago | |
Go | Java | |
BSD 3-clause "New" or "Revised" License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
franz-go
-
Ingesting Data into OpenSearch using Apache Kafka and Go
Thankfully, Kafka and OpenSearch provide client libraries for a variety of programming languages which make it possible to write your own integration layer. This is exactly what's covered in this blog! We will make use of a custom Go application to ingest data using Go clients for Kafka and OpenSearch.
-
book about golang and kafka
You might want to gradually replace that one with https://github.com/twmb/franz-go because Shopify is looking to find a new owner for Sarama and, until or if they do, it seems to be falling behind with maintenance: https://github.com/Shopify/sarama/issues/2461 For example, they still haven’t addressed this breaking change https://github.com/Shopify/sarama/issues/2358. franz-go has worked well so far in Benthos https://github.com/benthosdev/benthos/tree/main/internal/impl/kafka and it will likely end up as the only implementation once the Sarama-based one will be deprecated
-
New Winner of Kafka Consumers: Scala to Go Journey
Can you post the code for that? Franz-go itself publishes benchmark samples for all clients here, so easy to run on your own machine and also review/adapt settings as needed: https://github.com/twmb/franz-go/tree/master/examples/bench
- Which Kafka client library should I use?
-
Use CDK to deploy a complete solution with Kafka, App Runner, EKS and DynamoDB
The MSK producer and consumer app use the franz-go library (it also supports MSK IAM authentication).
-
Getting started with MSK Serverless and AWS Lambda using Go
How to use the franz-go Go Kafka client to connect to MSK Serverless using IAM authentication.
-
Show HN: A native macOS client for Apache Kafka
Franz is a fairly obvious name for a Kafka related tool/library so hopefully it won't get confused with https://github.com/twmb/franz-go
-
Oracle DB support in Benthos
github.com/twmb/franz-go -> also early days but this is looking like a fantastic option for a kafka client library if you fancy being an early adopter. I've done the rounds on many kafka client libraries and they always seem to be a harsh compromise in some form or another, but I feel good about this one
-
Benthos - Fancy stream processing made operationally mundane
If you find the kafka input slow, try kafka_franz. It might be a bit faster, since it’s based on https://github.com/twmb/franz-go. The kafka one is based on https://github.com/Shopify/sarama. You can also write a custom input based on https://github.com/confluentinc/confluent-kafka-go, but this library relies on CGo, which can be annoying.
-
Which library/project do you wish was ported to golang?
Redpanda isn’t implemented in Go, but I second its use over the Apache server. Plenty of clients out there in pure go. https://github.com/twmb/franz-go is a personal favorite
debezium
-
Choosing Between a Streaming Database and a Stream Processing Framework in Python
They manage data in the application layer and your original data stays where it is. This way data consistency is no longer an issue as it was with streaming databases. You can use Change Data Capture (CDC) services like Debezium by directly connecting to your primary database, doing computational work, and saving the result back or sending real-time data to output streams.
-
Generating Avro Schemas from Go types
Both of these articles mention a key player, Debezium. In fact, Debezium has had a place in the modern infrastructure. Let's use a diagram to understand why.
-
debezium VS quix-streams - a user suggested alternative
2 projects | 7 Dec 2023
-
How the heck do I validate records with this kind of data??
This might be overkill, but you could use an extra tool like https://debezium.io to capture logs about all creates, updates, and deletes in your table
- All the ways to capture changes in Postgres
-
Managed Relational Databases with AWS RDS and Aurora
If you're considering a relational database for an event-driven architecture, check out Debezium. It lets you stream changes to relational databases, and subscribe to change events.
-
Real-time Data Processing Pipeline With MongoDB, Kafka, Debezium And RisingWave
Debezium
-
Postgresql to hadoop in real time
https://debezium.io/ comes to mind as an open source product, but there are a gazillion of these tools out there.
-
ClickHouse Advanced Tutorial: Apply CDC from MySQL to ClickHouse
Contrary to what it sounds, it’s quite straightforward. The database changes are captured via Debezium and published as events on Apache Kafka. ClickHouse consumes those changes in partial order by Kafka Engine. Real-time and eventually consistent.
- Debezium: Stream Changes from Your Database
What are some alternatives?
kafka-go - Kafka library in Go
maxwell - Maxwell's daemon, a mysql-to-json kafka producer
sarama - Sarama is a Go library for Apache Kafka. [Moved to: https://github.com/IBM/sarama]
kafka-connect-bigquery - A Kafka Connect BigQuery sink connector
rust-rdkafka - A fully asynchronous, futures-based Kafka client library for Rust based on librdkafka
realtime - Broadcast, Presence, and Postgres Changes via WebSockets
sarama - Sarama is a Go library for Apache Kafka.
Airflow - Apache Airflow - A platform to programmatically author, schedule, and monitor workflows
go-ora - Pure go oracle client
hudi - Upserts, Deletes And Incremental Processing on Big Data.
Confluent Kafka Golang Client - Confluent's Apache Kafka Golang client
RocksDB - A library that provides an embeddable, persistent key-value store for fast storage.