常见的NoSQL数据库通过存储方式划分,可分为文档存储、键值存储、列存储和图存储。
分类 | 典型产品 | 应用场景 | 优点 | 缺点 |
文档存储 | MongoDB CouchDB | Web应用,存储面向文档和半结构化数据 | 结构灵活,可以根据value构建索引 | 缺乏统一的查询语法;无事务处理能力 |
键值存储 | Memcached Redis | 内容缓存,如会话、配置文件、参数等 | 扩展性好,灵活性强,大量操作时性能高 | 数据无结构化,通常被当成字符串或者二进制数据,通过健查询值 |
列存储 | Bigtable HBase Cassandra | 分布式数据存储和管理 | 可扩展性强,查找速度快,复杂性低 | 功能局限;不支持事务的强一致性 |
图存储 | Neo4j OrientDB | 社交网络、推荐系统、专注于构建系统图谱 | 支持复杂的图形算法 | 杂性高,只能支持一定的数据规模 |