Firebase的云功能:将整个数据库读入内存

时间:2017-08-16 17:16:55

标签: node.js firebase firebase-realtime-database google-cloud-functions

我想将整个Firebase数据库从后端Cloud Function中读入变量,如下所示:

exports.transformUserData = functions.https.onRequest((request, response) => {

    admin.database().ref('/').on('value', function (snapshot) {

        var dbData = snapshot.val();
        ...

    });
    ...
});
  1. 这样安全吗? (从记忆或美元成本的角度来看,在这种情况下,速度不是问题。)

  2. 我预计,由于内存不足错误导致数据库增长后该函数将崩溃。如果是这种情况,我们可以预期它会在什么样的内存限制下崩溃? (例如,10MB)。

  3. 提前感谢您的任何建议!

1 个答案:

答案 0 :(得分:2)

从技术上讲,完全可以将Firebase数据库中的所有数据读入内存。

只要托管进程有足够的可用内存,这将有效。如果内存不足,脚本将崩溃。

不可能说这会占用多少内存,因为这取决于JSON数据大小,数据格式(许多小节点将使用比一个大节点更多的内存),以及其他因素。