У меня есть набор файлов msgpack, которые я хочу загрузить в фрейм данных spark (используя python3). Выполнение следующего
from pyspark.sql import SparkSession
spark = SparkSession \
.builder \
.appName("Python Spark SQL basic example") \
.config("local", "4") \
.getOrCreate()
msgs = spark.read.load("path/to/file.msgpack", format='json')
msgs.printSchema()
дает мне
root
|-- _corrupt_record: string (nullable = true)
Я также подумал об использовании итератора msgpack.unpacker и добавляю каждое сообщение в Spark DF, но для этого мне нужно инициализировать DF столбцами (полями сообщений). Однако у меня есть разные типы сообщений с частично перекрывающимися полями.
Есть ли стандартный способ загрузки файлов msgpack в Spark, который я пропустил, или это проблема со схемой, и мне приходится разделять свои сообщения по типу?