【问题标题】:FIrebase firestore - How should I replace a whole collection daily?FIrebase firestore - 我应该如何每天更换整个收藏?
【发布时间】:2020-08-24 22:53:44
【问题描述】:

我正在创建网站,用于收集数据并将其存储在 Firestore 中。 但是,数据需要每天更新,所以我需要每天删除旧数据。

所以目前,我获取了所有新数据并将它们存储在 Firestore 中。然后查询集合中今天之前创建的所有数据,并一一删除。 不好的是,如果我在删除过程中访问该站点,理论上我可以得到一些正在删除的旧数据。

有没有更好的方法来做到这一点?

【问题讨论】:

    标签: firebase google-cloud-firestore


    【解决方案1】:

    您可以使用transaction or batch write 以原子方式进行所有更改,这样查询之间就不会出现不一致。

    您也可以将所有新数据写入不同的集合,然后只有在成功后,才能删除原始集合中的文档。您将需要另一个文档,客户端首先查询的某个地方告诉它哪个集合是最新的,竞争集合要使用。

    可以肯定的是,您选择的任何解决方案都会存在导致问题的边缘情况。您能做的最好的事情就是为您的特定情况选择“最不坏”的解决方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-14
      • 2021-11-14
      • 1970-01-01
      • 1970-01-01
      • 2020-04-07
      • 2016-07-26
      • 2014-10-11
      • 2018-04-18
      相关资源
      最近更新 更多