Comments (3)
This is only a problem with the in-memory store, right? If so I think it's OK to not clean up as I consider the memory store a development backend, not suited for production use.
from faust.
Wait so if we use rocksdb, do we not keep anything in memory at that point? Is everything just in rocks?
from faust.
Yeah, everything is in RocksDB!† Removing a partition is as easy as deleting the database directory for that partition, which is something that we can do when using RocksDB but I'm unsure if deleting
it is such a good idea. I guess it depends on how fast the data spreads to all nodes in the cluster,
but maybe the partitioner should also take into consideration the partitions a node has data for?
It would be neat if the partitioner did this:
- Chose a node that already have a copy of the partition in a Rocks db. I guess the nodes could
report list of partitions and checkpoints as metadata. - If there are no nodes with the data, assign a fresh node so that it will transfer the data.
If the partitioner implemented this, I think you would rarely come across a situation
where scenario 2) happens, and then you have a more efficient implementation
for recovery, without the needed for cleanup.
† Apart from the Key->Partition index, but that's a LRU cache of max 10k objects by default.
from faust.
Related Issues (20)
- GlobalTable not working when using multiple instances
- [Question] Get consumer offset/lag of each partition from the producer side
- Missing `f` prefix on f-strings
- Make Faust compatible with Python 3.9+ for production environment (rocksdb: faust-streaming[rocksdb] ) on MacOS Monterey 12.3.1 HOT 1
- Update dependency to `click>= 8.0` HOT 3
- Is Faust died? HOT 7
- Robin
- Support for python3.10 HOT 1
- A Faust Alternative - Fluvii
- Dagger - A Faust Based Workflow Engine
- faust overrides global logging settings -- unable to use structlog HOT 2
- Couldn't set Retry Topic mechanism In Faust Streaming HOT 1
- kafka-ConnectionError in test HOT 1
- Consumer crashes sporadically and stops consuming - Crashed reason=ConsumerStoppedError()
- asyncio.exceptions.CancelledError and consumer stops HOT 1
- How can i join two topics in stream?
- ANN: Please migrate away from pytest-openfiles
- Faust Error: Address In Used
- Does Faust support the "Timestamp Extractor" feature? HOT 1
- What could be causing inconsistent message processing in a Kafka-based system used to synchronize data between MSSQL and MySQL databases, despite successful message delivery to the Kafka topic
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from faust.