我正在研究 Firebase 实时数据库如何存储值。例如:如果数据类型是数字,而不是我存储的数字 null
,它分配 1 个字节还是 8 个字节?我在文档中找不到任何相关信息。
第二个问题是:我正在发送一个geolocation
点。在数据库中,我想检查它是否转换为 float
或 geopoints
数据类型。我该如何检查?
最佳答案
Firebase 实时数据库只是一个 JSON 树。您可以将它想象成一个包含非常大的字符串的大型文本文件(该字符串就是您的数据库)。文本文件并不真正通过数据类型进行解析,这意味着如果您存储 null
,它会汇总 4 个字节(每个字符 1 个字节)并存储数字 4
例如将分配 1 个字节。
回答第二个问题:Firebase 实时数据库 (Android) 支持的唯一数据类型是:
- 字符串
- 长
- 双人间
- bool 值
- map
- 列表
这意味着您的 Geolocation 将转换为 Double。
编辑:ObjC/Swift 数据支持的数据类型是
NSString
NSNumber
NSDictionary
NSArray
关于Firebase 实时数据库数据保存策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48283230/