Hacker News
WAL-RUS: a Rust Rewrite of WAL-G for PostgreSQL Backups
nasretdinov
|next
[-]
Of course you can write a more optimal version in C / C++ / Zig / Rust, but at the same time Go is much easier to write and you don't pay for the convenience with an absurd performance loss like in Python or PHP
__s
|root
|parent
[-]
wal-g was a much larger improvement over wal-e. we're optimizing the margins here
sgt
|root
|parent
|next
[-]
__s
|root
|parent
[-]
https://github.com/wal-g/wal-g/pull/2262
but yes, this is young project, so fair take
saisrirampur
|root
|parent
|previous
[-]
The importance of optimizing (resource) margins and having predictable memory usage increases significantly in the DBaaS/Postgres world, where your process coexists and competes with other critical workloads.
Also, WAL-RUS isn’t rocket science. Postgres already exposes a bunch native constructs for WAL archival, making development fairly straightforward even in Rust.
TL;DR: when to choose Rust or Go really depends on the workload and what you are going after.
keynha
|root
|parent
[-]
TOMDM
|next
|previous
[-]
whitepoplar
|next
|previous
[-]
caffeinated_me
|next
|previous
[-]
__s
|root
|parent
[-]
westurner
|next
|previous
[-]
valentynkit
|next
|previous
[-]
__s
|root
|parent
[-]
This helps on both ends of the cost spectrum. Large 64 core instances are where our heuristics fall off the most as variance increases, & tiny instances with 8GB of memory can use every 100MB of RSS we can get