Ошибка Pyspark при записи на паркетный стол в улье - PullRequest
0 голосов
/ 08 мая 2020

Я создал таблицу улья с этим кодом:

CREATE TABLE rci_db_inventory.dev_cr_asset_trace_2 (   id STRING,   acn STRING,   source_max_date BIGINT,   col_name STRING,   source_value STRING,   type STRING,   lid STRING,   source_id STRING,   created_by STRING,   created_on STRING,   traceable STRING,   found STRING ) PARTITIONED BY (   ctl_eid STRING )  STORED AS PARQUET 

Итак, проблема в том, что когда я пытаюсь записать в эту таблицу из pyspark df, это код:

columnar_df.withColumn("found", lit(head_bi_name)).write.format("parquet").mode("append") \
                .partitionBy("ctl_eid").saveAsTable('rci_db_inventory.dev_cr_asset_trace_2')

Ошибка:

pyspark.sql.utils.AnalysisException: u"The format of the existing table rci_db_inventory.dev_cr_asset_trace_2 is `HiveFileFormat`. It doesn't match the specified format `ParquetFileFormat`.;"

Я использую cloudera в локальном кластере.

1 Ответ

0 голосов
/ 14 июля 2020

что, если вы попробуете использовать .format ('hive')?

columnar_df.withColumn("found", lit(head_bi_name)).write.format("hive").mode("append") \
               .partitionBy("ctl_eid").saveAsTable('rci_db_inventory.dev_cr_asset_trace_2')
...