• 集合空间
    • 概念
    • 数据页
    • 数据块

    集合空间

    概念

    集合空间(CollectionSpace)是数据库中存放集合的物理对象。任何一个集合必须属于一个且仅一个集合空间。

    集合空间名最大长度 127 字节,为 UTF-8 编码。一个集合空间中可以包含不超过 4096 个集合;每个数据节点可以包含不超过 16384 个集合空间。

    每一个集合空间在数据节点均对应一个文件,文件名格式为“<集合空间名>.1”。

    数据页

    集合空间将文件划分为若干个固定大小的数据页(Page),在创建集合空间时用户可以指定数据页大小,且创建后不可更改。

    每个数据节点中,单个集合空间可以访问 128M 个数据页。因此对应不同数据页大小,单分区中集合空间容量上限为:

    数据页大小(字节)集合空间最大容量(GB)
    4096512
    81921024
    163842048
    327684096
    655368192

    Note:

    • 集合空间的数据页大小由创建集合空间时的属性 PageSize 指定
    • 更多集合空间的属性请参考 Sdb.createCS()

    数据块

    一个或多个数据页组成数据块。集合空间中的每个集合由零个或以上的数据块构成,每个数据块的大小由用户数据长度自动调整。集合中的文档不可跨多个数据块存放。

    集合空间中的数据块存放方式如下图所示:

    集合空间的数据块

    图中显示了一个集合空间中的三个集合,分别用不同的颜色代表。每个集合所对应的数据存放在各自的数据页中。一个或多个数据页可以组成一个数据块,每个数据块中的数据连续,且文档不能跨越多个数据块。