apache drill mau desempenho

Tentei usar o apache-drill para executar uma consulta simples de agregação de junção e a velocidade não era muito boa. minha consulta de teste foi:

SELECT p.Product_Category, SUM(f.sales)
FROM facts f
JOIN Product p on f.pkey = p.pkey
GROUP BY p.Product_Category

Onde os fatos têm cerca de 422.000 linhas e o produto possui 600 linhas. o agrupamento volta com 4 linhas.

Primeiro testei esta consulta no SqlServer e obtive um resultado em cerca de 150ms.

Com o drill, tentei conectar-me diretamente ao SqlServer e executar a consulta, mas isso foi lento (cerca de 5 segundos).

Depois tentei salvar as tabelas em arquivos json e lê-las, mas isso era ainda mais lento, então tentei os arquivos em parquet.

Eu obtive o resultado de volta na primeira execução em cerca de 3 segundos. a próxima corrida foi de cerca de 900ms e, em seguida, ficou em cerca de 500ms.

Da leitura ao redor, isso não faz sentido e o exercício deve ser mais rápido! Eu tentei "REFRESH TABLE METADATA", mas a velocidade não mudou.

Eu estava executando isso no Windows, através da linha de comando drill.

Alguma idéia se eu precisar de alguma configuração extra ou algo assim?

Obrigado!

questionAnswers(2)

yourAnswerToTheQuestion