数据存储

数据格式

在野狗中,数据是以 JSON 为格式进行存储的,没有传统关系型数据库中的表和记录等概念。JSON 格式相当于一个树形的数据格式,如下所示:

{
  "users": {
    "mchen": {
      "friends": { "brinchen": true },
      "name": "Mary Chen",
      "widgets": { "one": true, "three": true }
    },
    "brinchen": { ... },
    "hmadi": { ... }
  }
}

也许你平时使用的 JSON 数据都是很小的数据片段,但是别担心,野狗可以支持最大 100G 数据存储。


数据预览

在应用的控制面板中,有一个数据预览的功能,你可以在这里浏览应用中的数据。例如上面例子中的数据,在数据预览中浏览如下:

在数据预览功能中可以实时的看到数据的变化。但是当数据量超过2000条时,数据预览功能将会启用非实时模式。这是因为在数据预览功能中实现实时同步,需要浏览器加载应用的全部数据。过大的数据全部加载到浏览器中,不仅网络传输的时间会变长,而且会造成浏览器运行缓慢或崩溃。


数据限制

在野狗云中,数据的存储和读取有如下的限制:

描述 约束 备注
树的深度 32
key的长度 768bytes UTF-8 编码,不能包含. $ # [ ] /和 ASCII控制字符0-31和127
单个叶子节点的数据大小 1mb UTF-8 编码
SDK写入数据大小限制 2mb UTF-8 编码
REST 写入数据大小限制 16mb
单次读取数据最大节点数 2000
单次条件查询最大节点数 500 在使用条件查询时
R