Stream data to Apache Kafka.
Project description
django-kafka-streamer is a Django application and library for streaming data to Apache Kafka.
Features:
Setup signal handlers to ORM models to transparently send create/update/delete events to Kafka
Handle database object relations
Celery task to stream large amount of data in background
Links:
Documentation: http://django-kafka-streamer.readthedocs.io/
Consumer library: https://github.com/lostclus/aiosafeconsumer
Example application: https://github.com/lostclus/WeatherApp
Usage:
yourapp/models.py:
from django.db import models
class MyModel(models.Model):
field1 = models.IntegerField()
field2 = models.CharField(max_length=10)
yourapp/stramers.py:
from kafkastreamer import Streamer, register
from .models import MyModel
@register(MyModel)
class MyModelStreamer(Streamer):
topic = "model-a"
yourproject/settings.py:
INSTALLED_APPS = [
...
"kafkastreamer",
]
KAFKA_STREAMER = {
"BOOTSTRAP_SERVERS": ["localhost:9092"],
},
Any changes in MyModel data will be automatically streamed to Kafka. To force stream all data in all registered models type:
python manage.py kafkastreamer_refresh
The data streamed to the model-a Kafka topic has following structure:
{
"_time": "2023-01-01T00:00:00Z",
"_type": "create",
"id": 1,
"field1": 1,
"field2": "abc"
}
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file django_kafka_streamer-1.4.1.tar.gz.
File metadata
- Download URL: django_kafka_streamer-1.4.1.tar.gz
- Upload date:
- Size: 30.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
20c043e6f9d865ea32ef9ef9182e07e7be167e8cc28121fb8ca311cfb5e50167
|
|
| MD5 |
3e1bd0c2eeaf66201e76eeecd021e38d
|
|
| BLAKE2b-256 |
6c2b4e2d275d5bb570e44c8b5af07bcdfea38824afc83d507e1c0955445d9421
|
File details
Details for the file django_kafka_streamer-1.4.1-py3-none-any.whl.
File metadata
- Download URL: django_kafka_streamer-1.4.1-py3-none-any.whl
- Upload date:
- Size: 20.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
23e672a79d39af08834c57a3434f687d30ae02d8285805953fd39414619e82b2
|
|
| MD5 |
6005fa37325f2b95586bec93189f05ba
|
|
| BLAKE2b-256 |
c8f12e1305181f75ede74762d058dd79d3d5506fedabc61f5e872fadff5d0b60
|