亚马逊 Data Firehose 以前被称为亚马逊 Kinesis Data Firehose
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将录制格式转换为 Apache Parquet
如果您获取包含Set
该类型的 DynamoDB 数据,通过 Lambda 将其流式传输到 Fire Amazon Glue Data Catalog hose 流,然后使用将记录格式转换为 Apache Parquet,就会发生这种情况。
当 Amazon Glue Crawler 为 DynamoDB 集数据类型StringSet
(NumberSet
、BinarySet
和)编制索引时,它会将它们分别存储在数据目录中SET<STRING>
,即SET<BIGINT>
、和。SET<BINARY>
但是,要让 Firehose 将数据记录转换为 Apache Parquet 格式,它需要 Apache Hive 数据类型。由于集类型并非有效的 Apache Hive 数据类型,所以转换会失败。要进行成功转换,请使用 Apache Hive 数据类型更新数据目录。为此,您可以将数据目录中的 set
更改为 array
。
将数据目录array
中的一种 Amazon Glue 或多种数据类型从set
更改为
登录 Amazon Web Services Management Console 并打开 Amazon Glue 控制台,网址为 https://console.aws.amazon.com/glue/
。 -
在左侧窗格中的数据目录标题下,选择表。
-
在表列表中,选择您需要修改一个或多个数据类型的表的名称。这会将您引导至该表的详细信息页面。
-
选择详细信息页面右上角的编辑架构按钮。
-
在数据类型列中,选择第一个
set
数据类型。 -
在列类型下拉列表中,将该类型从
set
更改为array
。 -
根据您的ArraySchema场景的相应数据类型
array<binary>
,在该字段中输array<string>
入、或。array<int>
-
选择更新。
-
重复之前的步骤,将其他
set
类型转换为array
类型。 -
选择保存。