首页 > 解决方案 > 如何在不下载整个文件的情况下获取 S3 对象的 CSV 标头?

问题描述

我在 S3 中有一个非常大的 CSV 文件,只需要获取该文件的标题(具有列名的 CSV 的顶行,而不是 HTTP 标题)。有没有办法在不先下载整个文件的情况下做到这一点?我正在使用 Java AWS 开发工具包。我不认为这些信息存储在对象元数据中,但我可能错了。

编辑:

下面选择的答案有效,它使用了 S3 Select,但对我有用的查询是

select s.* from S3Object s limit 1

标签: javaamazon-web-servicescsvobjectamazon-s3

解决方案


您可以使用AWS S3S3 select中存储的任何文件查询数据。

来自aws docs的 Java 示例。

要从文件中选择列标题CSV,您可以limit将结果保存到one record. 在这里检查SELECT 命令

例如:

QUERY = "select s.* from S3Object s limit 1";

在此处检查不同类型的查询示例


推荐阅读