【问题标题】:Can we insert a data into Firebase realtime Database?我们可以将数据插入 Firebase 实时数据库吗?
【发布时间】:2019-02-23 02:43:11
【问题描述】:

我的 Firebase 实时数据库的一个子节点变得很大(大约 20 GB),我需要清除它并使用 Python Admin SDK 将上个月从备份中提取的数据插入到 Firebase 实时数据库中。

在文档中,我看到以下选项:

set - 将数据写入或替换到定义的路径,例如消息/用户/

update - 更新定义路径的一些键而不替换所有数据

push - 添加到数据库中的数据列表。每次将新节点推送到列表时,您的数据库都会生成一个唯一键,例如消息/用户//

事务 - 在处理可能被并发更新破坏的复杂数据时使用事务

但是,我想从 firebase 备份中添加/插入数据。我必须插入,因为该应用程序在生产中使用,我无法承受数据覆盖。

是否有任何方法可以插入/添加数据而不覆盖数据?

非常感谢任何帮助/支持。

【问题讨论】:

  • 我在下面写了一个关于基本可能性的快速答案。如果不了解您要恢复的实际数据结构以及您要保留的数据,就很难给出更具体的建议。

标签: firebase firebase-realtime-database


【解决方案1】:

如果不读取每个位置的当前值,则无法在 Firebase 实时数据库中执行此操作。

唯一允许您根据现有值更新数据的操作是transaction。 Firebase 事务会为您提供某个位置的(可能的)当前值,然后您返回新值应为的值。

但是,如果您要恢复的数据(大部分)与您在数据库中的数据相同,您或许可以使用具有足够深路径的 update() 调用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-18
    • 2020-10-03
    • 1970-01-01
    • 2021-06-10
    • 1970-01-01
    相关资源
    最近更新 更多