If you can share a query profile, we can see exactly what node is used for what and how much. Additionally, maybe the jobs were so trivial they didn’t require the horsepower of 2 full nodes (like regular queries)? Typically reflection jobs are resource intensive, maybe you can test one of those to see if it uses both?
We tried both. It’s mainly for Data Reflection that we expect Dremio to use several nodes but it’s not,
How do you want me to share you the query profile ?
It does seem like only 1 executor node (172-31-32-56.eu-west-1.compute.internal) and only 1 thread was used.
Can you share the specs of each node along with the dremio.conf? Are these shared or dedicated nodes? Some things seem a bit off, 7min planning time, and another 22min to run, is this a large table?
Configuration seems correct. Although the full table is ~8mil, what was the result set of the query? I see 407 records?
1 thing I just noticed is it seems you are using a RDBMS and Dremio is pushing down the query. The retrieval of that query from the source may be the hang up here as all Dremio processing after the data retrival is done within seconds (hence low executor usage), while waiting for the data from source is taking ~22min
Using a RDBMS will definitely allow you to still use a distributed network of nodes, I think the point is you may not need to. The particular situation you are facing is 1. A pushdown is being used to leverage the underlying system and then 2. The resulting dataset is so small it can be processed so quickly in Dremio it doesn’t need to use much resources
Behavior is a bit different from this one. I see ip-172-31-43-207.eu-west-1.compute.internal crashed, possibly due to OOM. Can you check the logs of that node please?
java.lang.OutOfMemoryError: GC overhead limit exceeded
Dumping heap to /var/log/dremio/java_pid8936.hprof ...
Heap dump file created [4037560839 bytes in 14.221 secs]
Exception in thread "thread-stats-collector" java.lang.OutOfMemoryError: GC overhead limit exceeded
at sun.management.ThreadImpl.getThreadUserTime(ThreadImpl.java:293)
at sun.management.ThreadImpl.getThreadUserTime(ThreadImpl.java:285)
at com.dremio.sabot.exec.ThreadsStatsCollector.addUserTime(ThreadsStatsCollector.java:77)
at com.dremio.sabot.exec.ThreadsStatsCollector.run(ThreadsStatsCollector.java:54)