Вставить в улей из dataframe не работает - PullRequest
0 голосов
/ 14 апреля 2019

Я пытаюсь вставить записи из фрейма данных в таблицы кустов, используя команду ниже. Команда выполнена успешно, но таблица назначения не загружена записями.

mergerdd.write.mode("append").insertInto("db.tablename")

Я ожидаю, что записи будут загружены в таблицу кустов.

Ответы [ 3 ]

0 голосов
/ 23 апреля 2019

у меня этот способ работает через spark.sql

df.coalesce(#numberofoutputfile).createOrReplaceTempView(#temptablename)

spark.sql(f"insert into {db}.{tablename} select * from {temptablename}")

также mergerdd это фрейм данных rdd или spark?

0 голосов
/ 23 апреля 2019

Вот еще один способ достижения того, чего вы пытаетесь достичь:

df.write.mode("append").saveAsTable("db.tablename")

Я использую это все время без проблем. Надеюсь, это поможет.

0 голосов
/ 15 апреля 2019

Пожалуйста, проверьте с моим решением.У меня это сработало.

df.repartition(1).write.format("csv").insertInto('db.tablename',overwrite=True) # CSV 
df.repartition(1).write.format("orc").insertInto('db.tablename',overwrite=True) # ORC
df.repartition(1).write.format("parquet").insertInto('db.tablename',overwrite=True) #PARQUET
...