我想将整个Firebase数据库从后端Cloud Function中读入变量,如下所示:
exports.transformUserData = functions.https.onRequest((request, response) => {
admin.database().ref('/').on('value', function (snapshot) {
var dbData = snapshot.val();
...
});
...
});
这样安全吗? (从记忆或美元成本的角度来看,在这种情况下,速度不是问题。)
我预计,由于内存不足错误导致数据库增长后该函数将崩溃。如果是这种情况,我们可以预期它会在什么样的内存限制下崩溃? (例如,10MB)。
提前感谢您的任何建议!
答案 0 :(得分:2)
从技术上讲,完全可以将Firebase数据库中的所有数据读入内存。
只要托管进程有足够的可用内存,这将有效。如果内存不足,脚本将崩溃。
不可能说这会占用多少内存,因为这取决于JSON数据大小,数据格式(许多小节点将使用比一个大节点更多的内存),以及其他因素。