通过 Firehose 将地图数据放入 Athena
Put Map data via Firehose to Athena
我在 Athena 中有一个地图类型的专栏。我已将 Glue 中的架构定义为 Map 。
我定义了一个 firehose 流,它引用胶合模式并将其转换为 parquet 格式。但是,我在发送数据时收到以下错误
The schema is invalid. Error parsing the schema: Error: type expected at the position 0 of 'MAP <STRING, INT>' but 'MAP ' is found.
我正在使用 boto3 firehose 客户端提交数据。
这是我试过的
records=[{'Data': '{"id": "aac4da11-d166-42bd-83db-c670f5b5676d", "createdutc": "2019-06-27 10:25:33","tokens": {"black": 1, "spot": 1, "joint": 1, "leg": 1, "due": 1, "itchinghow": 1, "reduce": 1}'}]
firehoseClient.put_record_batch(
DeliveryStreamName='conversations-analysis',
Records=records)
显然,我能够解决它,用小写字母提及架构中的所有内容,您应该能够保存地图数据。例如 map 而不是 MAP
我在 Athena 中有一个地图类型的专栏。我已将 Glue 中的架构定义为 Map 。
我定义了一个 firehose 流,它引用胶合模式并将其转换为 parquet 格式。但是,我在发送数据时收到以下错误
The schema is invalid. Error parsing the schema: Error: type expected at the position 0 of 'MAP <STRING, INT>' but 'MAP ' is found.
我正在使用 boto3 firehose 客户端提交数据。
这是我试过的
records=[{'Data': '{"id": "aac4da11-d166-42bd-83db-c670f5b5676d", "createdutc": "2019-06-27 10:25:33","tokens": {"black": 1, "spot": 1, "joint": 1, "leg": 1, "due": 1, "itchinghow": 1, "reduce": 1}'}]
firehoseClient.put_record_batch(
DeliveryStreamName='conversations-analysis',
Records=records)
显然,我能够解决它,用小写字母提及架构中的所有内容,您应该能够保存地图数据。例如 map 而不是 MAP