News for hackers. Stuff that matters.
Re:We give every user SQL access to a shared ClickHouse cluster by raw_anon_1111 on Saturday March 21, 2026 @08:46AM (#47466540)
This is explicitly not the problem they are trying to solve. In a single tenant database you don’t have to by definition worry about multi tenant databases
Re:We give every user SQL access to a shared ClickHouse cluster by DangitBobby on Saturday March 21, 2026 @08:59AM (#47466618)
I guess the question then becomes, what problem does a multi-tenancy setup solve that an isolated database setup doesn't? Are they really not solving the same problem for a user perspective, or is it only from their own engineering perspective? And how do those decisions ultimately impact the product they can surface to users?
Re:We give every user SQL access to a shared ClickHouse cluster by raw_anon_1111 on Saturday March 21, 2026 @09:21AM (#47466777)
Off the top of my head, managing 100 different database instances takes a lot more work from the business standpoint than managing 1 database with 100 users.

The article also mentioned that they isolate by project_id. That implies one customer (assume a business) can isolate permissions more granulary.

Re:We give every user SQL access to a shared ClickHouse cluster by mattaitken on Saturday March 21, 2026 @10:07AM (#47467163)
Yes it’s exactly this. There’s not a neat permission boundary when you have users, orgs, projects, environments. Let alone when you add RBAC too.
Re:We give every user SQL access to a shared ClickHouse cluster by steveBK123 on Saturday March 21, 2026 @09:41AM (#47466945)
With multi-tenant vs multi-database decision one driver would be the level of legal/compliance/risk/cost/resource drivers around how segregated users really are.

Multi-database is more expensive generally but is a more brain dead guaranteed way to ensure the users are properly segregated, resilient across cloud/database/etc software releases that may regress something in a multi-tenant setup.

Multi-tenant you always run the risk of a software update, misconfiguration or operational error exposing existence of other users / their metadata / their data / their usage / etc. You also have a lot more of a challenge engineering for resource contention.

Re:We give every user SQL access to a shared ClickHouse cluster by zie on Saturday March 21, 2026 @05:43PM (#47471745)
Agreed, in Multi-tenant, where the user/customer owns the data, I always reach for SQLite first. Each user/customer gets their own SQLite DB. Then you have a common PG/SQLite DB for any common metadata, billing, etc.

That way when a customer leaves or they want a backup copy of their data, it's a rm <customer>.sqlite3 or .backup away.

Sometimes you can't do that for various (almost always non-technical) reason(s), but it's always my 1st choice.

Re:We give every user SQL access to a shared ClickHouse cluster by mattaitken on Saturday March 21, 2026 @10:00AM (#47467105)
In a system with organizations, projects and advanced user access permissions having separate databases doesn’t full solve the problem. You still need access control inside each tenanted database. It also makes cross-cutting queries impossible which means users can’t query across all their orgs for example.

The DSL approach has other advantages too: like rewriting queries to not expose underlying tables, doing automatic performance optimizations…