kafka-delta-ingest
kafka-rust
Our great sponsors
kafka-delta-ingest | kafka-rust | |
---|---|---|
6 | 4 | |
319 | 1,140 | |
4.4% | 2.1% | |
7.5 | 4.9 | |
9 days ago | 3 months ago | |
Rust | Rust | |
Apache License 2.0 | MIT License |
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.
kafka-delta-ingest
-
Using rust for DE activities?
Rust can offer incredible cost savings when you can use it in place of spark to interact with your delta lake. One such project was kafka-delta-ingest. The developers were able to reduce the cost of running the pipeline by over 90%. However, most of this stuff is still very experimental and not ready for production but you will definitely be seeing more projects like this just based on how much money can be saved.
-
Which lakehouse table format do you expect your organization will be using by the end of 2023?
This independence from a catalog allows for path based reads and writes. This is handy when writing from Kafka directly to Delta Lake for the first layer of ingestion. You don’t need a catalog (or even Spark). https://github.com/delta-io/kafka-delta-ingest/tree/main/src
-
Streaming Data and Postgres
As far as I know no. You certainly could use events on a streaming ledger like Kafka or Redpanda and then store to delta with https://github.com/delta-io/kafka-delta-ingest and process them with all the gis goodness of spark. However, this is fairly complicated and much different from a simple postgis drop in replacement. There are specialized meaning faster and more efficient systems out there for specialized tasks such as geo fencing in real-time
-
Rust is showing a lot of promise in the DataFrame / tabular data space
kafka-delta-ingest is a good project to get streaming data into a Delta Lake. Here's a great talk on the topic.
-
process millions of events per sec
What about https://github.com/delta-io/kafka-delta-ingest?
- Exactly once delivery from Kafka to Delta Lake with Rust
kafka-rust
-
Version 0.9.0 of the u/rustlang Kafka client library has been released
Project: https://github.com/kafka-rust/kafka-rust
-
Is there an alternative to Kafka that has better support in Rust?
I browsed through it and the feedback in the issues seemed to indicate it was idle but a new maintainer had stepped up. Issues like this make me question the direction of it though. I'm not knocking the maintainer, I've been in situations where disabling tests seemed like a good idea, but you learn from experience that's more often than not, with the caveat of major refactors, an indication of either a systemic problem or lack of comprehension on the project as a whole..
-
The Rust Kafka client has moved home (kafka-rust)
I don't know if you saw this issue, but the offer still stands: https://github.com/kafka-rust/kafka-rust/issues/179
What are some alternatives?
delta-rs - A native Rust library for Delta Lake, with bindings into Python
kafka-go - Kafka library in Go
dipa - dipa makes it easy to efficiently delta encode large Rust data structures.
Confluent Kafka Golang Client - Confluent's Apache Kafka Golang client
rust-rdkafka - A fully asynchronous, futures-based Kafka client library for Rust based on librdkafka
flowgger - A fast data collector in Rust
franz-go - franz-go contains a feature complete, pure Go library for interacting with Kafka from 0.8.0 through 3.6+. Producing, consuming, transacting, administrating, etc.
arrow2 - Transmute-free Rust library to work with the Arrow format
materialize - The data warehouse for operational workloads.
delta - A syntax-highlighting pager for git, diff, and grep output
sarama - Sarama is a Go library for Apache Kafka. [Moved to: https://github.com/IBM/sarama]