Hive的metaStore使用远程部署,运行1Tb ORC TPCDS-99时,q64会卡住,实际产生笛卡尔积,一直在进行join。
该现象在Hive原生执行SQL时也可能会出现,即先后运行q44和q64时,metaStore缓存导致q64的执行计划发生变化,产生笛卡尔积,数据量过大。
方案1:使用本地模式部署即可避免SQL间由于缓存导致的执行计划发生变化。
方案2:使用远程模式部署时,调整q64的执行顺序,优先执行q64,调整到q44之前。