重新认识云开发数据库的数据模式
发布于 18 天前 作者 fangyuan 4225 次浏览 最后一次编辑是 17 天前 来自 分享

1、数据库的数据模式

云开发数据库的数据模式比较灵活,关系型数据库要求你在插入数据之前必须先定义好一个表的模式结构,而云数据库的集合 collection 则并不限制记录 document 结构。关系型数据库对有什么字段、字段是什么类型、长度为多少等等,而云数据库既不需要预先定义,而且记录的结构也没有限制,同一个集合的记录的字段可以有很大的差异。

这种灵活性让对象和数据库文档之间的映射变得很容易。即使数据记录之间有很大的变化,每个文档也可以很好的映射到各条不同的记录。当然在实际使用中,同一个集合中的文档最好都有一个类似的结构(相同的字段、相同的子文档结构)方便进行批量的增删改查以及进行聚合等操作。

随着应用程序使用时间的增长和需求变化,数据库的数据模式可能也需要相应地增长和改变。最简单的方式就是在原有的数据模式基础之上进行添加字段,这样就能保证数据库支持所有旧版的模式。比如用户信息表,由于业务需要需要增加一些字段,比如性别、年龄,云数据库可以很轻松添加,但是这会出现一些问题,就是以往收集的用户信息性别、年龄这些字段是空的,而只有新添加的用户才有。如果业务的数据变动比较大,文档的数据模式也会存在版本混乱的冲突,这个在数据库设计之初也是要思考的。

2、预填充数据

如果已经知道未来要用到哪些字段,在第一次插入的时候就将这些字段预填充了,以后用到的时候就可以使用更新指令进行字段级别的更新,而不再需要再给集合来新增字段,这样的效率就会高很多。


--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~--~

今天在学习这篇文章,做下记录

http://i.hackweek.org/tcb/1203.html

回到顶部