Size: a a a

2020 August 31

ПФ

Паша Финкельштейн... in Data Engineers
А, уже сказали
источник

ИК

Иван Калининский... in Data Engineers
Паша Финкельштейн
Приведи к типизированному датасету
все же, лучше не я буду приводить, мне сейчас не нужно ^^
источник

Ж

Жмака in Data Engineers
Иван Калининский
@pavelzeger , обрати внимание, пжл!
Я привел к датасету уже который был до этого с прежним подходом
источник

ИК

Иван Калининский... in Data Engineers
Жмака
Я привел к датасету уже который был до этого с прежним подходом
ваще пушка))
источник

Ж

Жмака in Data Engineers
KrivdaTheTriewe
Можно привести схему после read
Я приаел схему в конце после фильтров и аггрегаций. Лучше перед сразу после юниона?
источник

Ж

Жмака in Data Engineers
А не. Что то так не берет
источник

Ж

Жмака in Data Engineers
aggTableParquetList
     .grouped(128)
     .toList
     .map(files => sparkSession.read.parquet(files: _*))
     .reduce(_ union _)
     .filter(filterClause)
     .groupBy("request_id")
     .agg(sum(sumColumn).as("viewable_impression"))
     .select(colNamesAgg.map(name => col(name)): _*)
     .dropDuplicates()
     .as[ViewabilitySourceAgg]
     .as("ViewabilitySourceAgg")
источник

ИК

Иван Калининский... in Data Engineers
Жмака
aggTableParquetList
     .grouped(128)
     .toList
     .map(files => sparkSession.read.parquet(files: _*))
     .reduce(_ union _)
     .filter(filterClause)
     .groupBy("request_id")
     .agg(sum(sumColumn).as("viewable_impression"))
     .select(colNamesAgg.map(name => col(name)): _*)
     .dropDuplicates()
     .as[ViewabilitySourceAgg]
     .as("ViewabilitySourceAgg")
.map(files => sparkSession.read.parquet(files: _*))
.map(_.select(colNamesAgg.map(name => col(name)): _*))
.reduce(_ union _)
источник

ИК

Иван Калининский... in Data Engineers
навскидку вот так
источник

ИК

Иван Калининский... in Data Engineers
время то улучшается? или все потрачено?
источник

Ж

Жмака in Data Engineers
У меня проблемы с интернетом. Никак джар не зааплодю
источник

ИК

Иван Калининский... in Data Engineers
(( надеюсь, что будет лучше, но если нет, то advanced техники у меня нет
источник

Ж

Жмака in Data Engineers
Иван Калининский
навскидку вот так
val aggDeliveryQuality = aggTableParquetList
     .grouped(128)
     .toList
     .map(files => sparkSession.read.parquet(files: _*))
     .map(_.filter(filterClause).as[ViewabilitySourceAgg])
     .reduce(_ union _)
     .groupBy("request_id")
     .agg(sum(sumColumn).as("viewable_impression"))
     .select(colNamesAgg.map(name => col(name)): _*)
     .dropDuplicates()
     .as[ViewabilitySourceAgg]
     .as("ViewabilitySourceAgg")
источник

ИК

Иван Калининский... in Data Engineers
Жмака
val aggDeliveryQuality = aggTableParquetList
     .grouped(128)
     .toList
     .map(files => sparkSession.read.parquet(files: _*))
     .map(_.filter(filterClause).as[ViewabilitySourceAgg])
     .reduce(_ union _)
     .groupBy("request_id")
     .agg(sum(sumColumn).as("viewable_impression"))
     .select(colNamesAgg.map(name => col(name)): _*)
     .dropDuplicates()
     .as[ViewabilitySourceAgg]
     .as("ViewabilitySourceAgg")
нет, смысл был в том, чтобы перенести строку кода .select(colNamesAgg.map(name => col(name)): _*) в каждый датафрейм до union
источник

Ж

Жмака in Data Engineers
Тогда я groupby не смогу сделать потому что селект берет только пару колонок
источник

ПФ

Паша Финкельштейн... in Data Engineers
Жмака
val aggDeliveryQuality = aggTableParquetList
     .grouped(128)
     .toList
     .map(files => sparkSession.read.parquet(files: _*))
     .map(_.filter(filterClause).as[ViewabilitySourceAgg])
     .reduce(_ union _)
     .groupBy("request_id")
     .agg(sum(sumColumn).as("viewable_impression"))
     .select(colNamesAgg.map(name => col(name)): _*)
     .dropDuplicates()
     .as[ViewabilitySourceAgg]
     .as("ViewabilitySourceAgg")
Так параллелизм потеряли же, нет?
источник

Ж

Жмака in Data Engineers
Лучше тогда как то схему прицепить к каждому юниону, нет?
источник

AS

Andrey Smirnov in Data Engineers
Жмака
Лучше тогда как то схему прицепить к каждому юниону, нет?
лучше сразу при чтении укажи
источник

ИК

Иван Калининский... in Data Engineers
Жмака
val aggDeliveryQuality = aggTableParquetList
     .grouped(128)
     .toList
     .map(files => sparkSession.read.parquet(files: _*))
     .map(_.filter(filterClause).as[ViewabilitySourceAgg])
     .reduce(_ union _)
     .groupBy("request_id")
     .agg(sum(sumColumn).as("viewable_impression"))
     .select(colNamesAgg.map(name => col(name)): _*)
     .dropDuplicates()
     .as[ViewabilitySourceAgg]
     .as("ViewabilitySourceAgg")
val aggDeliveryQuality = aggTableParquetList
     .grouped(128)
     .toList
      .par
     .map(files => sparkSession.read.parquet(files: _*))
     .map(_.filter(filterClause).as[ViewabilitySourceAgg])
.map(_.groupBy("request_id")
     .agg(sum(sumColumn).as("viewable_impression»)))
     .map(_.select(colNamesAgg.map(name => col(name)): _*)
colNamesAgg.map(name => col(name)): _*))
     .reduce(_ union _)
     .dropDuplicates()
     .as[ViewabilitySourceAgg]
     .as("ViewabilitySourceAgg")
источник

Ж

Жмака in Data Engineers
Но груп бай так в каждом отдельном может привести к другому результату после юниона. Или я ошибаюсь?
источник