文章目录
一方面,关系型数据库可以通过规范化技术(Normalization)和完整性约束(主键约束、唯一约束、检查约束以及外键约束等)保证数据的完整性和一致性;同时还能够提供数据库事务的 ACID 支持和强大的 SQL 查询语言。
另一方面,NoSQL 文档数据库(例如 MongoDB)提供了便于快速开发和维护的灵活模式(schema free),同时可扩展性更好。
一直以来,这两种类型的数据库都被认为具有各自的使用场景。例如,许多大型互联网公司都会使用多种数据库组合的方式;既采用关系数据库(MySQL 等)存储注册账户、交易订单等信息,同时使用文档数据库(MongoDB 等)存储商品、评论等信息。
随着 MySQL 5.7 开始支持原生的 JSON 数据类型、JSON 函数和 SQL 查询接口,最新的 MySQL 8.0 文档存储支持使用 NoSQL 方式