zlacker

[return to "PostgresML is 8-40x faster than Python HTTP microservices"]
1. learnd+Mk[view] [source] 2022-10-20 04:43:36
>>redbel+(OP)
Python can be fast if you don't intentionally cripple it. Doing the following will be most likely a lot faster than postgresml:

- 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

◧◩
2. akx+nD[view] [source] 2022-10-20 08:18:47
>>learnd+Mk
A good start would be to not do silly things like

    body = request.json
    key = json.dumps(body)
in the prediction code to begin with: https://github.com/postgresml/postgresml/blob/15c8488ade86b0...
◧◩◪
3. polski+ZN[view] [source] 2022-10-20 10:25:00
>>akx+nD
asking as a person that does not use Python every day - what would be a better solution here?
◧◩◪◨
4. manfre+oT[view] [source] 2022-10-20 11:23:19
>>polski+ZN
request.json is converting the request payload from a str to a dict. json.dumps converts it back to a str.
[go to top]