Size: a a a

2020 March 29

GP

Grigory Pomadchin in Moscow Spark
Зачем делать Рид в разные дфы и потом делать юнион
источник

GP

Grigory Pomadchin in Moscow Spark
Сделай сразу хороший рид что бы не надо было делать юнионы
источник

GP

Grigory Pomadchin in Moscow Spark
ты так упираться и дальше будешь, юнион плохая операция и бесполезная (в твоём случае); очевидно этот шаг можно просто исключить (из того что ты сказал); а потом уже страдать и выяснять где в следующем месте будут тормоза
источник

K

KrivdaTheTriewe in Moscow Spark
Grigory Pomadchin
А напиши сразу сурс который будет читать и резать базу по твоей схеме партицировария
я уже прихожу к этому выводу
источник

K

KrivdaTheTriewe in Moscow Spark
думаю наскок быстро это сделать можно
источник

GP

Grigory Pomadchin in Moscow Spark
KrivdaTheTriewe
я уже прихожу к этому выводу
я тебе сразу сказал что не надо было паралелить риды дфов, ты мог забесплатно параллельности добиться на экзеках просто отправив на каждый мету какую часть читать; более того ты в дальнейшем будешь знать где что лежит и даже любой шафл в дальнейшем сможешь минимизировать
источник

GP

Grigory Pomadchin in Moscow Spark
А данных у тебя много - шафл беспорядочный будет долгий
источник

GP

Grigory Pomadchin in Moscow Spark
KrivdaTheTriewe
думаю наскок быстро это сделать можно
кончено чуть сложнее чем паралел дфридов и послед юнион
источник

K

KrivdaTheTriewe in Moscow Spark
Grigory Pomadchin
я тебе сразу сказал что не надо было паралелить риды дфов, ты мог забесплатно параллельности добиться на экзеках просто отправив на каждый мету какую часть читать; более того ты в дальнейшем будешь знать где что лежит и даже любой шафл в дальнейшем сможешь минимизировать
метку то отправить то можно, по сути у меня есть сейчас List[Sql]  и можно его в RDD кастануть, выполнить все на экзекьюторах, но потом все равно этот большой датафрейм нужно получить, чтобы у него была какая-то схема и можно было сделать какую-то следущую операцию
источник

GP

Grigory Pomadchin in Moscow Spark
KrivdaTheTriewe
метку то отправить то можно, по сути у меня есть сейчас List[Sql]  и можно его в RDD кастануть, выполнить все на экзекьюторах, но потом все равно этот большой датафрейм нужно получить, чтобы у него была какая-то схема и можно было сделать какую-то следущую операцию
не надо ничего кастовать, свой релейшн определи, где buildScan верную рдд создаст; на выходе у тебя будет уже правильный дата фрейм
источник

K

KrivdaTheTriewe in Moscow Spark
Grigory Pomadchin
не надо ничего кастовать, свой релейшн определи, где buildScan верную рдд создаст; на выходе у тебя будет уже правильный дата фрейм
Покажи пример
источник

K

KrivdaTheTriewe in Moscow Spark
источник

GP

Grigory Pomadchin in Moscow Spark
KrivdaTheTriewe
Покажи пример
На посмотри сурс любой в коре)
источник

GP

Grigory Pomadchin in Moscow Spark
источник

GP

Grigory Pomadchin in Moscow Spark
ну этот сложный слегка
источник

GP

Grigory Pomadchin in Moscow Spark
Но суть в том что у тебя фулл контроль есть над тем как составить андерлаинг схему рдд
источник

K

KrivdaTheTriewe in Moscow Spark
я писал сурсы
источник

GP

Grigory Pomadchin in Moscow Spark
и?)
источник

GP

Grigory Pomadchin in Moscow Spark
ну просто пихни в билдСкан рдд которая верная будет уже
источник

GP

Grigory Pomadchin in Moscow Spark
sqlString => 500k strings => parellilize across executors => read as a single RDD of Row => etc
источник