【发布时间】:2010-02-18 13:31:32
【问题描述】:
我的值是 64 位无符号整数,我需要将它们存储在没有无符号整数类型的 mongodb 中。我看到了将它们存储在其他字段类型中并进行进出转换的三种主要可能性:
使用带符号的 int 可能是最简单且最节省空间的,但缺点是它们不可读,如果有人忘记进行转换,其中一些会起作用,这可能会掩盖错误。
对于没有经验的程序员来说,原始二进制文件可能最难处理,并且还存在非人类可读性。
字符串表示的空间效率最低(在 unicode 中约为 40 个字节,而每个字段 8 个字节),但至少所有可能的值都会正确映射,并且查询时只需要转换为字符串而不是更复杂的转换。
我需要这些值可从不同平台获得,因此无法选择单一的驱动程序特定解决方案。
我遗漏了哪些主要优点和缺点?你会用哪一个?
【问题讨论】:
标签: integer mongodb biginteger unsigned