"It is time for Postgres to care about customers!"
Wow. It's one thing to create value on top of one of the most respected open source projects in a field, it's quite another to bash it as the opening sentence of your blog post.
Use a single database and RLS + session id to ensure queries already come filtered for that tenant without the need to add "where tenant_id = ?" around the application layer.
I am really struggling to understand what this does differently than pg. Is it hiding the virtualization when you query? I guess it simplifies sharding of tenants?
Your NodeJS example shows a tenant table and a join using tenant id.
> SELECT tenants.name, title, estimate, complete FROM todos join tenants on tenants.id = todos.tenant_id;
How is this any different? Did it automatically setup RLS?
7 comments
[ 1.4 ms ] story [ 31.9 ms ] threadWow. It's one thing to create value on top of one of the most respected open source projects in a field, it's quite another to bash it as the opening sentence of your blog post.
It really rubs me the wrong way.
Use a single database and RLS + session id to ensure queries already come filtered for that tenant without the need to add "where tenant_id = ?" around the application layer.
Your NodeJS example shows a tenant table and a join using tenant id.
> SELECT tenants.name, title, estimate, complete FROM todos join tenants on tenants.id = todos.tenant_id;
How is this any different? Did it automatically setup RLS?