GeoDesk may be a good fit for your needs. It is specifically designed to perform well even in resource-constrained environments. It uses a single-file database that is able to store the planet in less than 100 GB. On a 16-core / 32 GB RAM setup, importing the planet takes about 20 minutes.
To access the database, there are 3 APIs (Java, Python, and now C++ as well). For basic queries, you can also use a command-line utility that uses a syntax similar to Overpass and outputs results in various formats (e.g. GeoJSON or CSV). Everything is open-source.
Currently, you can’t update a GeoDesk database (You’ll need to re-build it from a fresh .osm.pbf
file), but we’ll soon be adding the ability to ingest minutely updates.