Я выполняю запрос, который вставляет данные из исходной таблицы в таблицу назначения, используя PrestoDB и AWS S3 (и Glue для метаданных).
Запрос выглядит следующим образом (даже если он есть еще много случаев):
INSERT INTO my_table
SELECT other_field AS other_field ,
(CASE
WHEN regexp_like(LOWER(user_agent) , LOWER('bot')) THEN '1'
WHEN regexp_like(LOWER(user_agent) , LOWER('spider')) THEN '2'
WHEN regexp_like(LOWER(user_agent) , LOWER('crawler')) THEN '3'
WHEN regexp_like(LOWER(user_agent) , LOWER('Google-AdSense-Auto')) THEN '4'
WHEN regexp_like(LOWER(user_agent) , LOWER('Google-Adwords-DisplayAds-WebRender')) THEN '5'
ELSE NULL
END) AS bot_type
FROM source_table;
Есть ли способ сделать это более эффективно? Я не смог найти никаких ресурсов по этому поводу.