This, so much this, but also some of how proper DB modeling and not being afraid of denormalization can really let you solve lots of problems in efficient-enough ways with SQLite and/or MySQL / Postgres.
I tried out a few different mongo db-like embedded DBs for Python for a project a few months back, and I came away largely unimpressed. I ended up using couchdb for the PoC, later moving to ElasticSearch and letting that handle the "hard" parts for me (aggregations, JS in queries, and rivers are awesome). Even though it's hugely overkill for my data needs (~100mb uncompressed JSON), ElasticSearch is stupid fast and now handles a big part of what my app actually did. Embedded DBs couldn't do the same.