MySQL的JSON编码是否使用BSON?是否采用自定义二进制编码?
MySQL JSON 存储编码说明
MySQL 对 JSON 列的编码存储没有使用 BSON,而是采用了自研的自定义二进制编码格式。
官方对该格式的描述如下:
存储在JSON列中的JSON文档会被转换为一种内部格式,支持快速读取访问文档元素。当服务器后续需要读取存储在此二进制格式中的JSON值时,无需从文本表示形式对其进行解析。该二进制格式的结构支持服务器直接通过键或数组索引查找子对象或嵌套值,而无需读取文档中该值前后的所有内容。
该格式是针对 MySQL 自身的查询逻辑做的定制优化,相比通用的 BSON 格式,能更好地适配 MySQL 内置的类型校验、索引匹配、事务处理等模块,在指定键查找、数组下标定位等高频场景下的读取效率也更优。
内容的提问来源于stack exchange,提问作者David542
相关产品推荐
相关产品推荐

