【问题标题】:Is it any way to auto refresh Redshift Matearilized view based on external table?有什么方法可以根据外部表自动刷新 Redshift 物化视图?
【发布时间】:2021-11-05 23:18:50
【问题描述】:

我在 Redshift 中有物化视图,它基于外部 Redshift Spectrum 表中的数据,因此无法使用 Redshift 自动刷新功能。

我只是不会手动刷新它。

我不太关心数据的一致性,所以延迟一段时间(最多 1 小时以上)对我来说没问题。

那么,有没有办法自动更新物化视图?也许,可以为它配置一些 TTL?还有其他想法吗?

【问题讨论】:

  • 您是否希望在您的数据发生变化或从 x 到 x 时间发生变化时更新视图?
  • 我对这两个选项都很好。

标签: sql amazon-web-services amazon-redshift materialized-views amazon-redshift-spectrum


【解决方案1】:

通常,Spectrum 文件的位置是 Amazon S3。 您可以通过定期触发的计划 Lambda 自动更新。 您还可以建立一个触发器,每次在存储桶的一部分中创建文件时触发该触发器。此触发器创建一个事件,该事件启动一个发布所需更新的 Lambda 函数。

如果可以的话,我会从简单的开始,然后使用 Redshift Data API 和 Step 函数。

与在每次上传对象时调用 Lambda 相比,第一个选项可能是更好的解决方案,尤其是在您连续接收大量文件的情况下。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-20
    • 1970-01-01
    • 2013-08-16
    • 2010-12-19
    • 2014-10-27
    • 1970-01-01
    • 2011-11-25
    相关资源
    最近更新 更多