gpt4 book ai didi

databricks - 我可以强制刷新 Databricks Delta 表,以便磁盘副本具有最新/一致的数据吗?

转载 作者:行者123 更新时间:2023-12-04 04:18:51 26 4
gpt4 key购买 nike

我正在从 Azure 数据工厂访问 Databricks Delta 表,它没有到 Databricks 表的 native 连接器。因此,作为一种解决方法,我使用 LOCATION 关键字创建表以将它们存储在 Azure Data Lake 中。然后,因为我知道表文件的位置,所以我只从数据工厂读取底层的 Parquet 文件。这很好用。

但是……如果Delta事务日志中有缓存的信息还没有写入磁盘怎么办?比如说,一个应用程序更新了表中的一行,而磁盘还没有反射(reflect)这个事实。那么我从数据工厂中读取的数据就会出错。

那么,两个问题...

  • 这会发生吗?更改在写出之前是否在日志中保留了一段时间?
  • 我可以强制刷新事务日志,以便我知道磁盘副本已更新吗?

最佳答案

关于这个主题也有人提出过类似的问题(例如参见 here)。

对于增量表,您需要增量湖支持(因为增量日志正在捕获真实情况)。因此,到目前为止,您必须使用 Databricks 事件通过 Azure 数据工厂对增量表进行进一步处理(您还可以将数据集复制到 Parquet ,以使数据可用于尚不支持增量湖的其他服务)。理论上你可以做 vacuum保留期为 0,但不建议这样做,可能会导致数据不一致。

根据Azure Feedback forum计划在未来对此提供支持。

关于databricks - 我可以强制刷新 Databricks Delta 表,以便磁盘副本具有最新/一致的数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59933994/

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