У меня есть файл JSON, сохраненный в S3, который я пытаюсь открыть / прочитать / сохранить / как угодно в формате dict или struct в PySpark. Это выглядит примерно так:
{
"filename": "some_file.csv",
"md5": "md5 hash",
"client_id": "some uuid",
"mappings": {
"shipping_city": "City",
"shipping_country": "Country",
"shipping_zipcode": "Zip",
"shipping_address1": "Street Line 1",
"shipping_address2": "Street Line 2",
"shipping_state_abbreviation": "State"
}
}
И я хотел бы прочитать его из S3 и сохранить как словарь или структуру. Когда я читаю это так:
inputJSON = "s3://bucket/file.json"
dfJSON = sqlContext.read.json(inputJSON, multiLine=True)
я получаю кадр данных, который отбрасывает сопоставления и выглядит так:
+---------+-------------+----------------------------------------------------------+-------+
|client_id|filename |mappings |md5 |
+-----------------------+----------------------------------------------------------+-------+
|some uuid|some_file.csv|[City, Country, Zip, Street Line 1, Street Line 2, State] |md5hash|
+-----------------------+----------------------------------------------------------+-------+
Можно ли открыть файл и прочитать его в словарь, чтобы я мог получить доступ к сопоставлениям или другим подобным вещам ?:
jsonDict = inputFile
mappingDict = jsonDict['mappings']