Схема ограничения атрибутов, выведенная в столбец json в PySpark DataFrame

Я новичок в преобразовании Spark DataFrame и пытаюсь прочитать столбец в формате json. пример:

{'af_content_id': [12461515],
 'af_currency': 'RB',
 'af_order_id': 27671679,
 'af_price': [31250],
 'af_quantity': [1],
 }

но мне нужно сохранить только один атрибут из этого атрибута JSON столбца, который af_content_id, Так я и сделал:

schema = StructType([StructField("af_content_id",StringType(),True)])
df_data_events = df_purchases.select(func.from_json(func.col('event_data'), schema).alias('content_id'))

Пример строки из df_purchases DataFrame:

Row(user_id=u'E9C59152-731C-41E6-B388-361F7BD743B8', event_data=u'{"af_quantity":1,"af_content_id":37359869,"af_revenue":412.87}', ts=datetime.datetime(2018, 12, 10, 9, 19, 53))

Это работало правильно от проверки с show() функция, но я не могу быть действительно уверен в том, что происходит позади.. как спарк читает колонку с этой схемой. Просто ищу af_content_id? Что если он не найдет его подряд?

0 ответов

Другие вопросы по тегам