【发布时间】:2021-06-19 18:26:06
【问题描述】:
我有一个 Athena 表,大约有 500 万条记录,表中的所有列都是字符串。示例列:First_Name、Last_Name、Address。
我的要求是将行划分为固定数量的分区(例如 100 个),同时确保数据按 first_name 排序,并且相同的 first_name 仅在一个分区中可用。
【问题讨论】:
-
您能告诉我们更多为什么您有这些要求吗?这些文件是否仍会在 Amazon Athena 中使用,或者它们会在其他地方处理,而其他系统需要以这种方式拆分文件? 是可以存储到给定数量的文件中,但是没有提供排序的规定 - 因此我的问题。
-
我们有一个下游应用程序,它期望数据以排序方式出现,并且相同的数据不会出现在其他文件中。分区的要求是因为我们可以运行下游应用程序的多个实例。
-
Amazon Athena 中有一个名为 bucketing 的功能,可以将数据拆分到多个文件中。与 partitioning 不同,它创建固定数量的存储桶,数据在它们之间均匀分布(可能基于哈希)。但是,我不知道每个文件中的数据是否排序。你需要做一些实验。
标签: amazon-web-services amazon-athena