【问题标题】:Flutter save data on device from firebaseFlutter 从 firebase 将数据保存在设备上
【发布时间】:2020-08-08 21:51:33
【问题描述】:

我想了解如何优化对 Firebase 数据库的访问。 我有一个数据库,其中包含:山地避难所和路线。

几乎每次打开应用程序时,所有必要的数据都会从数据库中下载。

我的想法是将相关数据保存在 json 文件中,并且只有当用户想要有关此数据的更多信息时,才会对数据库进行读取访问。

如何减少对数据库的读取访问?是否可以将最“相关”的数据保存在设备上的 json 文件中,以免每次用户打开应用时都下载“相关”数据?

【问题讨论】:

  • Firebase 本身维护一个本地数据库。因此,当您没有互联网时,它仍然可以工作。
  • 如果您仍然想要,您可以创建自己的缓存机制,方法是仅在 sqlite 数据库中没有任何内容时从 firestore 获取数据,然后在需要时使用它
  • 不是网络连接问题。我想减少讲座的无用操作。在 firebase 免费版中受到限制。

标签: database firebase flutter google-cloud-firestore flutter-dependencies


【解决方案1】:

如果您询问定价,Firestore 按与数据库 reads, writes, deletes 的交互计费,而不是数据量(忽略此用例的存储数据)

此外,查询是浅层的:它们只返回特定集合或集合组中的文档,而不返回子集合数据。

只要你的结构支持它,显示更高级别的地点列表应该是你正在做的唯一读取,直到用户实际选择一个地点以获得更多详细信息。

如果您有一百万个位置,则利用分页仅加载足以支持 UI 的负载 - 例如一次 100 个。这也会限制所需的读取次数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-10-10
    • 1970-01-01
    • 1970-01-01
    • 2022-01-08
    • 1970-01-01
    • 2020-05-21
    • 1970-01-01
    相关资源
    最近更新 更多