Вам, вероятно, следует держаться подальше от типов строк, это обычно означает, что вы собрали все данные для водителя.Если это так, то нет смысла использовать spark, потому что вы не используете преимущества параллельной вычислительной среды.
С помощью spark sql вы можете выполнить следующее:
max_data = spark.sql("SELECT product_name, max(count), product_date FROM table")
Что касается вставки в базу данных (я предполагаю, что вы используете Hive из hc
, большинство людей запускают задание ежедневно и записывают результат в таблицу с разбивкой по датам, например:
Сначала зарегистрируйте временную таблицу кустов max_data.registerTempTable("md")
Затем перезапишите раздел spark.sql("INSERT OVERWRITE new_table PARTITION(dt=product_date) SELECT * FROM md")