我在Cloudera 5.8.1上使用Impala JDBC驱动程序2.5.32。我运行我的Java代码,产生10个不同的线程。每个线程从DriverManager实例化它自己的java.sql.Connection,并使一个“插入到taget_table select field1,field2 ... fieldN,count(*)from source table group by field1,field2 ... fieldN”查询。查询足够大,可以运行几分钟。每个查询都有一个峰值内存使用量
我看到,尽管线程已经执行了查询并等待响应,但在Imapala方面,我看到一次只执行一个查询。
但是,如果我将它们作为不同的Java进程运行,而不是线程,则查询将以并行方式运行。有人可以说明为什么会发生这种情况吗?请让我知道我可以提供的任何其他细节..