Я создал сценарий bash ( GitHub Link ) для запроса всех баз данных улья; запросить каждую таблицу в них и проанализировать lastUpdateTime этих таблиц и извлечь их в CSV со столбцами "tablename, lastUpdateTime".
Этот запрос, однако, медленный, потому что на каждой итерации вызов «hive -e ...» запускает новую команду hive cli, которая занимает заметно значительное количество времени для загрузки.
Есть ли способ ускорить загрузку куста или ускорить запрос другим способом, чтобы решить ту же проблему?
Я думал о загрузке куста cli только один раз в начале скрипта и пытался вызывать команды bash из куста cli, используя метод ! <command>
, но не уверен, как делать циклы затем в cli, а также если я могу обработать циклы внутри файла сценария bash и выполнить это, то я не уверен, как передать результаты запросов, выполненных в hive cli, в качестве аргументов этого сценария.
Без указания системы, на которой я ее запускаю, скрипт может обрабатывать около 10 таблиц в минуту, что, на мой взгляд, очень медленно, учитывая, что в базе данных могут быть тысячи таблиц, к которым мы хотим его применить.