Delta Lake 0.5.0 发布
作者:Denny Lee
主要功能
我们很高兴宣布 Delta Lake 0.5.0 发布,此版本引入了 Presto/Athena 支持和改进的并发性。此版本的关键功能是:
- 通过清单文件支持其他处理引擎 (#76) - 您现在可以使用 Scala、Java、Python 和 SQL API 生成的清单文件,从 Presto 和 Amazon Athena 查询 Delta 表。有关详细信息,请参阅文档。
- 改进所有 Delta Lake 操作的并发性 (#9、#72、#228) - 您现在可以同时运行更多的 Delta Lake 操作。Delta Lake 的乐观并发控制已通过使冲突检测更精细而得到改进。这使得在 Delta 表上运行复杂的工作流变得更加容易。例如:
- 在较旧的分区上并发运行删除(例如,为了符合 GDPR),同时正在追加较新的分区。
- 在不相交的分区集上并发运行更新和合并。
- 并发运行文件压缩和追加(见下文)。有关详细信息,请参阅并发控制文档。
- 改进了对文件压缩的支持 (#146) - 您现在可以通过使用
DataFrameWriter 选项dataChange 设置为false 重写文件来压缩文件。此选项允许压缩操作与其他批处理和流处理操作并发运行。有关详细信息,请参阅文档中的此示例。 - 改进了仅插入合并的性能 (#246) - Delta Lake 现在为仅包含插入子句而没有更新子句的合并操作提供了更优化的性能。此外,Delta Lake 确保此类仅插入合并的写入仅向表中追加新数据。因此,您现在可以使用结构化流和仅插入合并来对数据(例如日志)进行持续去重。有关详细信息,请参阅文档中的此示例。
- Convert-to-Delta 的 SQL 支持 (#175) - 您现在可以使用 SQL 将 Parquet 表转换为 Delta(Scala、Java 和 Python 在 0.4.0 中已受支持)。有关详细信息,请参阅文档。
- 对 Snowflake 和 Redshift Spectrum 的实验性支持 - 您现在可以从 Snowflake 和 Redshift Spectrum 查询 Delta 表。此支持在此版本中被认为是实验性的。有关详细信息,请参阅文档。
致谢
Andreas Neumann, Andrew Fogarty, Burak Yavuz, Denny Lee, Fabio B. Silva, JassAbidi, Matthew Powers, Mukul Murthy, Nicolas Paris, Pranav Anand, Rahul Mahadev, Reynold Xin, Shixiong Zhu, Tathagata Das, Tomas Bartalos, Xiao Li
感谢您的贡献。
访问发行说明以了解有关此版本的更多信息。