Spark DataFrame saveAsTable: - PullRequest
       6

Spark DataFrame saveAsTable:

0 голосов
/ 12 февраля 2019

Мне интересно, как можно настроить параметры таблицы, используемые DataFrameWriter#saveAsTable.

Есть ли способ настроить формат хранения (например, с помощью Avro или ORC), сжатие (для использования "snappy" и т. Д.) И расположение таблицы, созданной из DataFrame?

Что мне нужно, так это Spark2 DataFrameWriter#saveAsTable эквивалент создания управляемой таблицы Hive с некоторыми пользовательскими настройками, которые вы обычно передаете команде Hive CREATE TABLE как:

  • STORED AS <format>
  • LOCATION <hdfs_path>
  • TBLPROPERTIES("orc.compress"="SNAPPY")

Ответы [ 2 ]

0 голосов
/ 13 февраля 2019

Ниже приведен код для сохранения данных в другом формате, например,

  1. CSV
  2. Паркет
  3. Avro
  4. orc
  5. Json

Также вы можете настроить другое сжатие при сохранении данных, ниже приведен пример кода для того же самого,

df.write
    .format("com.databricks.spark.csv")
    .option("header", "true")
    .option("codec", "org.apache.hadoop.io.compress.GzipCodec")
    .save("newcars.csv.gz")

==============================================================================

df.write
    .format("orc")
    .mode("overwrite")
    .option("codec", "org.apache.hadoop.io.compress.GzipCodec")
    .saveAsTable("tbl_nm")
0 голосов
/ 13 февраля 2019

Орк формат

  df.write.format("orc").mode("overwrite").saveAsTable("default.spark1")

Паркет формат

df.write
    .format("parquet")
    .mode("overwrite")
    .save("/home/prashant/spark-data/mental-health-in-tech-survey/parquet-data/")                                   
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...