Кирпичи данных Azure записывают JSON-данные в файл паркетной ошибки: ошибка типа: ошибка: невозможно вывести схему для типа - PullRequest
0 голосов
/ 23 сентября 2018

Я загружаю в записную книжку Microsoft Azure Databrics с Python из WebService следующие данные:

{
    "Customers" : 
   [
        {
            "CustomID" : "106219-891457",
            "CustomerDateTime" : "0000105910",
            "purchasedItems" : 
            [
                {
                  "itemId" : "tBNU5awl2Yac",
                  "state" : "OBSOLETE",
                  "materialNumber" : "0000werqw4603100",
                  "materialName" : "Licasdr",
                  "quantity" : 1,
                  "orderType" : "STANDARD",
                  "Ingredients" : 
                  [
                    {
                        "ingredientId" : "146a00dd036__7e06",
                        "ingedrientDesc" : "bla"
                    },
                    {
                        "ingredientId" : "146a234d036__7e06",
                        "ingedrientDesc" : "bla2"
                    }
                  ],
                  "lastModificationDate" : "2014-09-30T10:13:46.8Z"
                }
            ]
        }
    ]
}

Это отлично работает, и я получаю результат, показанный в моем блокноте, как указано выше.

Мне нужно преобразовать / записать эти данные в файл Parquet.Я пытаюсь сделать это со следующей строкой

conn = httplib.HTTPSConnection('companyhost.com')
conn.request("POST", "/public/api/customers/purchases/findByDate", request, headers)
response = conn.getresponse()
data = response.read()
print(data)
conn.close()

from pyspark.sql.types import *

df = spark.createDataFrame(data)
df.show()

df.write.format('parquet').save(mypath)

Но в строке

df = spark.createDataFrame (data)

iполучаю следующее сообщение об ошибке:

TypeError: Невозможно определить схему для типа: type <'str'>

Что здесь происходит?Что я делаю не так?

...