Earlier quoted context omitted.
If the postgres database is recording business transactions, you don't want to cause your business to stop being able to take credit cards because you generated a report.
What about using a read-only replica for reporting. Are there any downsides to that? Seems to be easier to manage
that works great if all the data you need for reporting is in the database you're replicating.
You'd likely want a data warehouse if you also need to report on data that isn't in your prod database (e.g. stripe, your CRM, marketing data, etc.).
If setting up a data warehouse, etl, BI, etc. sounds like a lot of work to get reports, you're right, it is.
shameless plug: we're making this all much simpler at https://www.definite.app/