I’m working on evaluating Druid for an application that’s multi-tenanted. In our current setup on SQL, we have a TenantId as part of our primary key and use that whenever querying the data. When a tenant leaves the application we simply do a DELETE on top of that TenantId. Since Druid is immutable, this doesn’t really seem practical, since it seems we’d have to reindex all of the data for everyone whenever a tenant leaves. The other option I looked into was having a datasource per tenant, but from what I’ve read druid requires a separate realtime configuration for each datasource. This seems like it would be really difficult to scale.
Anyone done anything like this? Any advice on how we might be able to implement this kind of pattern?