文档

概念

SequoiaDB 原生分布式引擎的记录为JSON 格式。 在数据库引擎中使用BSON,即二进制的方式存放 JSON 数据。 一般来说,一条文档由一个或多个字段构成,每个字段分为键与值两个部分,如下为包含两个字段的文档:

  1. { "姓名" : "张三", "性别" : "男" }

Note:

  • 每个文档的最大尺寸为 16MB
  • 文档中必须包括“_id”字段,如果用户没有提供该字段,系统会自动生成一个对象 ID 类型的字段
  • “_id”字段在集合内唯一
  • 文档的字段名不可以“$”字符起始
  • 文档的字段名不可以包含“.”字符

字段

每个字段的键(字段名)为字符串,而值则可以为数字,字符串,嵌套 JSON,嵌套数组等对象。

SequoiaDB 支持的数据类型请参考 数据类型

字段顺序

文档中的各字段无排列顺序,在进行数据操作时字段之间的顺序可能会被调换。

嵌套字段

当表示嵌套对象中的某一个字段时,可以使用“.”(句号)在字段名之间进行分割。例如给定数据:

  1. { "姓名" : "张三", "地址" : { "街道" : "水蓝街", "城市" : "xx", "省份" : "yy" } }

用户可以使用“地址.城市”字段名表示地址子对象中的城市字段。

Note:

BSON 文档可能有多个同名的字段,但是,大多数 SequoiaDB 接口不支持重复的字段名,如果需要操作的文档有多个同名的字段,请参阅驱动程序了解更多信息。

SequoiaDB 内部程序创建的一些文档可能含有重名的字段,但是不会向现有的用户文档添加重名的键。