AR
01/22/2025, 4:30 PMAR
02/13/2025, 3:22 AMHagen Rother
02/13/2025, 7:28 AMindex_kafka tasks to an indexer instead of a middle manager: https://druid.apache.org/docs/latest/design/indexer/ - is marked as experimental, but we are using it in production for several years.
An indexer is a middle manager that doesn't spawn a jvm per task, i.e. you can share lookups and the query cores between tasks. I am using a equalDistributionWithCategorySpec to route index_kafka to it exclusively, the rest stays on middle managers.AR
02/13/2025, 10:14 AMindex_kafka jobs in a single JVM on different threads? Or do we need to run a indexer process per Kafka job?
Thanks,
AR.Hagen Rother
02/13/2025, 10:16 AMHagen Rother
02/13/2025, 10:17 AMHagen Rother
02/13/2025, 10:18 AMAR
02/13/2025, 10:18 AMHagen Rother
02/13/2025, 10:19 AMHagen Rother
02/13/2025, 10:19 AMHagen Rother
02/13/2025, 10:20 AMAR
02/13/2025, 10:25 AMdruid.indexer.task.baseTaskDir config?Hagen Rother
02/13/2025, 11:00 AMKaran Kumar
02/14/2025, 2:09 AMWe have several dictionariesyou mean lookups ?
Karan Kumar
02/14/2025, 2:11 AMKaran Kumar
02/14/2025, 2:17 AMlookupLoadingMode=ONLY_REQUIRED
lookupsToLoad=["foo","bar"]
Please note that if you do this in realtime tasks, you run the risk of not doing lookups for queries which hit these ingestion tasks so this is something the admin has to be really careful while doing.AR
02/14/2025, 4:01 PMlookupLoadingMode=ONLY_REQUIRED
lookupsToLoad=["foo","bar"]
Thanks Karan. Above is exactly what I was looking for. Where do I specify these in the Supervisor spec? I cannot find any info in the Druid docs.
I found some details in the below Imply docs which mentions that these should be specified as context parameters but there is no context field in a Supervisor spec.
Imply Docs: https://docs.imply.io/latest/druid/ingestion/tasks/
Also, from which version of Druid are these supported? We are running v27.0.0 currently.
Thanks,
AR.Karan Kumar
02/16/2025, 5:15 AMcontext:{ "foo":"bar"}
Druid 31 has these changes.AR
02/17/2025, 12:37 PMcontext: null in it. May be it will work..
It will save us a lot of pain as we have some large lookups and we need to consider them when allocating memory for the realtime ingestion tasks..AR
02/17/2025, 1:01 PMLookupLoadingSpec was only added in v30.0.0.. So no point in testing on v27.0.0...Karan Kumar
02/18/2025, 6:07 AMKaran Kumar
02/18/2025, 6:07 AM