Base64编码BSON是否小于BSON?

Fai*_*bid 2 base64 bson

Base64编码BSON是否小于BSON?

bob*_*nce 9

Piskvor的权利,base64编码的东西比原始的更长.你可以对某些东西进行基础编码,使其具有有限字符库的通道,而不是减小尺寸的方法.

也许问题应该是:Base64编码的BSON是否小于JSON

如果是这样,那么JSON-vs-BSON非常依赖于内容.例如,像1.2345678901234567BSON中的8个二进制字节中的任意浮点数更有效地存储在JSON字符串数字版本中.但是,更常见的数字,例如,1更有效地存储为JSON中的字符串.

对于字符串值,BSON对于一个长度字会丢失4个字节,但是每个都会返回一些"并且\JSON必须转义,而在带有控制字符的字符串中更多,其中JSON必须使用十六进制序列.(有些JSON编码器还可以\u覆盖每个非ASCII字符,以确保无论字符集如何都能安全传输.)

IMO:BSON一般没有比JSON更大的紧凑性优势.它的优势在于简单的低级语言解码,以及JavaScript没有的数据类型.对于二进制字符串和其他一些情况,它可能具有边际优势; 它当然值得检查特定的工作量.但它告诉我们,BSON规范中的例子本身在JSON中要小得多.

至于base64编码的BSON:相同,除了33%更差.


Pis*_*3.0 6

否:使用base64,3个字节的明文变为4个字节的编码文本,因此无论数据有效负载是什么,结果总是会更大.另见:http://en.wikipedia.org/wiki/Base64