Я пытался добавить несколько строк (5 миллионов строк / 2800 столбцов) в таблицу Hive через Spark / Scala, но процесс, похоже, застрял после долгих часов.В журналах нет ошибок.
Как я могу быть уверен, что процесс действительно запущен?Есть ли что-то, что нужно сделать, чтобы оптимизировать работу?
Мои конфиги отправки:
- память драйвера 15 G --executor-memory 30 г --num-executors 35 --executor-cores5
Спасибо!
def exprToAppend(myCols: Set[String], allCols: Set[String]) = {
import org.apache.spark.sql.functions._
allCols.toList.map(x => x match {
case x if myCols.contains(x) => col(x)
case _ => lit(0d).as(x)
})
}
val insert : DataFrame = tableFinal.select(exprToAppend(tableFinal.columns.toSet, historico.columns.toSet):_ *).select(historico.columns.map(x => col(x)) :_*);
insert.write.mode("append")
.format("parquet")
.insertInto(s"${Configuration.SIGLA}${Configuration.TABLE_HIST}")