Implications of many materialized views in Postgres?
I know of no such limit, although I have never had more than tens of materialized views, not thousands.  However a way of hedging against such a problem is to make one materialised view with the customer as a column and create an index on the customer column.  That way, Postgres will be able to pick out the relevant parts of the view very quickly.  You should have performance that is not significantly worse than having lots and lots of views.  It will also be a lot less work to maintain.