gpt4 book ai didi

amazon-web-services - 如何在 AWS 上对 S3 数据运行删除和插入查询

转载 作者:行者123 更新时间:2023-12-01 23:52:04 24 4
gpt4 key购买 nike

所以我在 S3 上有一些 .csv/.parquet 格式的历史数据。每天我都在运行批处理作业,这会给我 2 个文件,其中包含需要从历史快照中删除的数据列表,以及需要插入到历史快照中的新记录。我无法在 athena 上运行插入/删除查询。我有哪些选项(具有成本效益且由 aws 管理)来执行我的问题?

最佳答案

Amazon S3 中的对象不可变。这意味着可以替换,但不能编辑。

Amazon Athena、Amazon Redshift Spectrum 和 Hive/Hadoop 可以查询存储在 Amazon S3 中的数据。他们通常会查看提供的路径并加载该路径下的所有文件,包括子目录。

要将数据添加到此类数据存储,只需在给定路径中上传一个额外的对象

要删除一个对象中的所有数据,请删除该对象

但是,如果您希望删除对象的数据,则需要用删除了这些行的新对象替换该对象。这必须在 S3 之外完成。 Amazon S3 无法编辑对象的内容。

参见:AWS Glue adds new transforms (Purge, Transition and Merge) for Apache Spark applications to work with datasets in Amazon S3

Data Bricks 有一个名为 Delta Lake 的产品可以在查询工具和 Amazon S3 之间添加一个附加层:

Delta Lake is an open source storage layer that brings reliability to data lakes. Delta Lake provides ACID transactions, scalable metadata handling, and unifies streaming and batch data processing. Delta Lake runs on top of your existing data lake and is fully compatible with Apache Spark APIs.

三角洲湖 supports deleting data from a table因为它位于 Amazon S3“前面”。

关于amazon-web-services - 如何在 AWS 上对 S3 数据运行删除和插入查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63344801/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com