文档
概念
SequoiaDB 原生分布式引擎的记录为JSON 格式。在数据库引擎中使用BSON,即二进制的方式存放 JSON 数据。一般来说,一条文档由一个或多个字段构成,每个字段分为键与值两个部分,如下为包含两个字段的文档:
- { "姓名" : "张三", "性别" : "男" }
Note:
- 每个文档的最大尺寸为 16MB
- 文档中必须包括“_id”字段,如果用户没有提供该字段,系统会自动生成一个对象 ID 类型的字段
- “_id”字段在集合内唯一
- 文档的字段名不可以“$”字符起始
- 文档的字段名不可以包含“.”字符
字段
每个字段的键(字段名)为字符串,而值则可以为数字,字符串,嵌套 JSON,嵌套数组等对象。
SequoiaDB 支持的数据类型请参考 数据类型
字段顺序
文档中的各字段无排列顺序,在进行数据操作时字段之间的顺序可能会被调换。
嵌套字段
当表示嵌套对象中的某一个字段时,可以使用“.”(句号)在字段名之间进行分割。例如给定数据:
- { "姓名" : "张三", "地址" : { "街道" : "水蓝街", "城市" : "xx", "省份" : "yy" } }
用户可以使用“地址.城市”字段名表示地址子对象中的城市字段。
Note:
BSON 文档可能有多个同名的字段,但是,大多数 SequoiaDB 接口不支持重复的字段名,如果需要操作的文档有多个同名的字段,请参阅驱动程序了解更多信息。
SequoiaDB 内部程序创建的一些文档可能含有重名的字段,但是不会向现有的用户文档添加重名的键。