- replace json (storing data as strings? really?) with a binary format like protobuf, or better yet parquet
- replace redis with duckdb for zero-copy reads
- replace pandas with polars for faster transformations
- use asynchronous, modern web framework for microservices like fastAPI
- Tune xgboost CPU resource usage with semaphores
- Multiple formats were compared
- Duckdb is not a production ready service
- Pandas isn't used
You seem to be trolling.
- Multiple formats were compared
Yes, but not a zero-copy or efficient format, like flatbuffer. It was mentioned as one of the highlights of postgresML:
> PostgresML does one in-memory copy of features from Postgres
> - Duckdb is not a production ready service
What issues did you have with duckdb? Could use some other in-memory store like Plasma if you don't like duckdb.
> - Pandas isn't used
that was responding to the point in the post:
> Since Python often uses Pandas to load and preprocess data, it is notably more memory hungry. Before even passing the data into XGBoost, we were already at 8GB RSS (resident set size); during actual fitting, memory utilization went to almost 12GB.
> You seem to be trolling.
By criticizing the blog post?