Написать Avro файлы, совместимые с Redshift - PullRequest
0 голосов
/ 16 октября 2019

Я использую Spark 2.4.4,

import os    
os.environ['PYSPARK_SUBMIT_ARGS'] = '--packages org.apache.spark:spark-avro_2.11:2.4.3 pyspark-shell'    
spark_conf = SparkConf().setMaster("local").setAppName("app")\
    .set('spark.jars.packages', 'org.apache.spark:spark-avro_2.11:2.4.3')
sc = SparkContext(conf=spark_conf)
spark = SparkSession(sc)
...
df.write.format('avro').option('recordName','Data').mode('overwrite')\
    .save(f's3a://bucket/file.avro')

Но при копировании в Redshift я получаю:

  error:  Invalid AVRO file
  code:      8001
  context:   Cannot init avro reader from s3 file Cannot parse file header: Cannot save fixed schema 
  query:     3658945
  location:  avropath_request.cpp:431

Если я сохраняю тот же код и просто меняюформатирование от avro до json, копия удалась. Документирована совместимость Redshift Avro где-нибудь? Есть идеи, как это отладить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...