数据库系统原理:SQL与NoSQL的比较

  • SQL和NoSQL的区别

    SQLNoSQL
    采用关系型的表来存储数据,具有严格的数据模式约束,因此存储数据很难出错采用类JSON格式的文档来存储键值对信息,更加灵活,但也会导致数据不一致问题的发生
    使用表之前需要先定义表的模式存储数据不需要特定的模式
    使用规范化来减少数据冗余使用非规范化的标准存储信息,以保证一个文档中包含一个条目的所有信息
    支持JOIN操作,使用一条SQL语句从多张表中取出相关的数据不支持JOIN操作
    满足数据完整性约束不满足完整性约束,允许数据不用通过验证就可以存储到任意位置
    需要自定义事务来保证数据的一致性操作单个文档具备事务性,操作多个文档不具备事务性
    使用SQL语言使用类JSON
    易于维护但可扩展性差可扩展性好

相关推荐