逻辑层,我们需要对所需存储的数据进行建模。数据模型不同,对应的存储方式不同。

关系型数据库的优缺点:
优点:

  1. 支持多对多,方便进行join
  2. 支持ACID特性
    缺点:
  3. 关系数据库的 schema 扩展很不方便。 与 monogodb比较
  4. 关系数据库在大数据场景下 I/O 较高。 与 列式存储比较
  5. 关系数据库的全文搜索功能比较弱。 与es比较。注意,mysql中的全文检索能力是不可用用于生产环境的。在数据量量比较大的时候,进行拆词,插入速度极慢。
分类数据模型优势劣势举例
键值数据库哈希表查找速度快数据无结构化,通常只被当作字符串或者二进制数据redis
列存储数据库列式数据存储查找速度快;支持分布横向扩展;数据压缩率高功能相对受限hbase
文档型数据库键值对扩展数据结构要求不严格;表结构可变;不需要预先定义表结构查询性能不高,缺乏统一的查询语法monogodb
图数据库节点和关系组成的图利用图结构相关算法(最短路径、节点度关系查找等)可能需要对整个图做计算,不利于图数据分布存储neo4jjanusgrap