我使用impala-shell运行了几个大型查询,发现性能令人满意。这些查询通常将100k-1m行写入磁盘。但是,当我使用JDBC以编程方式运行相同的查询时,结果需要花费很长时间才能写入磁盘。例如,一个距离impala-shell需要五分钟的查询比JDBC需要多达三十分钟。
我已经尝试过Hive和Cloudera JDBC驱动程序,但性能也差不多。我尝试了各种提取尺寸,但它没有任何区别。通过JDBC的Impala流式传输是否从根本上变慢,还是我可以采取其他措施来加速流式传输?
这是CDH 5.9.1。
答案 0 :(得分:0)
这结果是客户端问题。我使用curl来测试正在进行Impala查询的Web应用程序。从curl切换到用Scala代码编写的客户端消除了延迟。