java - 如何在不下载整个文件的情况下获取 S3 对象的 CSV 标头?
问题描述
我在 S3 中有一个非常大的 CSV 文件,只需要获取该文件的标题(具有列名的 CSV 的顶行,而不是 HTTP 标题)。有没有办法在不先下载整个文件的情况下做到这一点?我正在使用 Java AWS 开发工具包。我不认为这些信息存储在对象元数据中,但我可能错了。
编辑:
下面选择的答案有效,它使用了 S3 Select,但对我有用的查询是
select s.* from S3Object s limit 1
解决方案
您可以使用AWS S3S3 select
中存储的任何文件查询数据。
来自aws docs的 Java 示例。
要从文件中选择列标题CSV
,您可以limit
将结果保存到one record
. 在这里检查SELECT 命令。
例如:
QUERY = "select s.* from S3Object s limit 1";
在此处检查不同类型的查询示例。
推荐阅读
- html - 元素只占屏幕的一半
- ruby-on-rails - Heroku上的AWS存储丢失图像rails 5 ActionController::RoutingError(没有路由匹配[GET]
- stm32 - qemu-stm32 中的模拟按钮
- vba - 从 Word 模板启动文件夹中删除文件
- php - PHP7.2.24 问题:调用未定义函数 mysqli_connect()
- python - Python:循环访问假期的国家列表
- javascript - 将数组推入js中的另一个数组中?
- javascript - 当站点加载时在后台调用另一个,但用户仍然在同一页面上
- python - re.findall() 有时返回全部有时最后返回
- javascript - 如何在 MaterializeCSS 中将颜色绑定到卡片