I'm building a health web application that needs to support over 100 million users and I'm considering using Java with Spring Boot. I prefer PostgreSQL for the database but I'm aware it doesn't handle sharding natively. I'd love to hear opinions on the best database strategy for a large-scale application like this, especially regarding horizontal scaling requirements.
2 Answers
PostgreSQL has some great features like partitioning that can help with this. It allows you to distribute your data across different hosts, which is a sort of workaround for sharding.
Have you looked into Citus? It's a PostgreSQL extension that enables sharding and could really help with your scaling needs for such a large app.

Noted, I’ll check out Citus for sure.