2016-02-05 1 views
0

Я новичок в сверлении Apache.Есть ли альтернатива «autotrace traceonly» на сверле Apache?

Для целей тестирования производительности я пытаюсь измерить время выполнения запроса. А также мне не нужно печатать выполненный результат.

В Oracle SQL Plus есть set autotrace traceonly. Эта функция настройки заключается в следующем (цитирую из oracle web site):

Аналогично SET AUTOTRACE ON, но подавляет печать выходных данных запроса пользователя, если таковые имеются. Если включена СТАТИСТИКА, данные запроса все еще извлекаются, но не печатаются.

В sqlline Apache сверлить, я получил ошибку вроде следующего: Error: PARSE ERROR: Encountered "traceonly" at line 1, column 15...

У вас есть какие-либо идеи альтернатив?

Thanks,

p.s.

Я также прочитал этот вопрос. Any command in mysql equivalent to Oracle's autotrace for performance turning К сожалению, это не работает на Drill Apache.

ответ

1

Вы можете поместить свой запрос (ы) в виде текстового файла (например, query.sql), а затем запустить sqlline и направить вывод в/Dev/нуль:

bin/sqlline -u jdbc:drill:zk=localhost:2181 -f query.sql > /dev/null 

Это будет по-прежнему отображать некоторые данные, но только минимальное:

1/1   select * from cp.`employee.json`; 
1,155 rows selected (0.65 seconds) 
Closing: org.apache.drill.jdbc.impl.DrillConnectionImpl 
apache drill 1.4.0 
"say hello to my little drill" 
+0

Спасибо за сообщение! Оно работает. Без создания sql-файла лучше всего для меня, но ваше решение по-прежнему замечательно. Благодарю. – tkhm