Why not just use a materialized view inside your SQL system? No need to cache invalidation; let the system handle it for you. Same benefits, truly a single query, and only one system.
If you're going to concatenate relational data into a document, I'm not sure why a simple KV table doesn't fit the job.
If you're going to concatenate relational data into a document, I'm not sure why a simple KV table doesn't fit the job.