Я проводил некоторый анализ в базе данных Lumen и недавно переключился на работу, так как размер CSV> 100 ГБ и слишком большой для одной машины.
Большинство моих запросов работают нормально, однако, похоже, что следующие проблемы имеют некоторые проблемы:
psql = "select b.*, "\
"(select count(distinct c.notice_sender) from lumen_sender_duplicate_utility c where c.domain_name = b.domain_name and cast(c.num_of_dup_urls as int) = 0 ) num_of_distinct_senders "\
"from (select a.domain_name, sum(a.num_of_url) total_num_urls, "\
"sum(a.num_of_dup_urls) total_num_dup_urls, count(distinct a.notice_sender) total_num_senders " \
"from lumen_sender_duplicate a group by a.domain_name) b"
Было множество ошибок, так как я изменил их, но самые последние из них следующие: (полная трассировка стека доступна на https://pastebin.com/raw/Xk4wVDmD)
Caused by: java.lang.RuntimeException: Couldn't find count(DISTINCT notice_sender)#419L in [domain_name#13,sum(cast(num_of_url#14 as double))#415,sum(cast(num_of_dup_urls#16 as double))#416,count(notice_sender#10)#417L]
at scala.sys.package$.error(package.scala:27)
Первоначально я думал, что это потому, что некоторые функции, такие как отдельные или подзапросы, были недоступны, но я использую spark 2.4, и с этой целью все выглядит хорошо. (Я также проверил каждый из компонентов в отдельности, и, похоже, проблем нет). Если у кого-то есть представление о том, куда я иду, любая помощь будет принята с благодарностью.