iceberg支持将数据写入GCS吗?因为要使 Iceberg 的原子性按照 https://iceberg.apache.org/java-api-quickstart/ 工作,GCS 应该支持原子重命名,但是来自 https://cloud.google.com/storage/docs /gsutil/commands/mv GCS 重命名不是原子的。
Hadoop 表实现是唯一使用重命名的地方,并且 它需要一个支持原子重命名的文件系统。如果您使用的是 像S3或GCS这样的对象存储,那么你应该使用HMS 实现或自定义目录而不是 Hadoop 表。
表不需要重命名,除了使用原子重命名的表 实现新元数据文件的提交操作。
据我所知,一切都应该可以与 GCS 一起使用,无需修改。
GCS 中没有原生原子重命名,它需要移动+删除。您可以参考页面https://iceberg.apache.org/spec/#mvcc-and-optimistic-concurrency。