From Firestore 文档 https://firebase.google.com/docs/firestore/quotas,我们得到Firestore 文档的最大大小 is:
文档的最大尺寸1 MiB(1,048,576 字节)
QUESTION
我如何知道单个文档的当前大小,以检查我是否正在接近
1mb 限制?
Example:
var docRef = db.collection("cities").doc("SF");
docRef.get().then(function(doc) {
if (doc.exists) {
console.log("Document data:", doc.data());
// IS THERE A PROPERTY THAT CAN DISPLAY THE DOCUMENT FILE SIZE?
} else {
// doc.data() will be undefined in this case
console.log("No such document!");
}
}).catch(function(error) {
console.log("Error getting document:", error);
});
我已经发布了一个 npmpackage https://www.npmjs.com/package/firestore-size用于计算 Firestore 文档的大小。
其他包如sizeof
or object-sizeof
计算 JS 对象大小的方法不会给出精确的结果,因为 Firestore 中的某些原语具有不同的字节值。例如,Js 中的布尔值存储在 4 个字节中,在 Firestore 文档中存储为 1 个字节。 Null 是 0 字节,在 Firestore 中是 1 字节。
除此之外,Firestore 还拥有自己的具有固定字节大小的独特类型:地理点、日期、参考。
引用是一个大对象。类似的套餐sizeof
将遍历 Reference 的所有方法/属性,而不是在这里做正确的事情。这是对文档名称的字符串值 + 路径 + 16 个字节求和。另外,如果 Reference 指向父文档,sizeof
or object-sizeof
这里不会检测到循环引用,这可能会带来比不正确的大小更大的麻烦。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)