为什么使用NoSQL?
今天我们可以通过第三方平台,可以很容易的访问和抓取数据。用户的个人信息,社交网络,地理位置,用户生成的数据和用户操作日志已经成倍的增加。我们如果要对这些用户数据进行挖掘,那SQL数据库已经不适合这些应用了, NoSQL数据库的发展也却能很好的处理这些大的数据。
NoSQL数据库四大分类
- 键值存储数据库
- 相关产品:Tokyo Cabinet/Tyrant、Redis、Voldemort、Berkeley DB
- 典型应用:内容缓存,主要用于处理大量数据的高访问负载
- 数据模型:一系列键值对
- 优势:快速查询
- 劣势:存储的数据缺少结构化
- 列存储数据库
- 相关产品:Cassandra、HBase、Riak
- 典型应用:分布式文件系统
- 数据模型:以列簇式存储,将一列数据存在一起
- 优势:查找速度快,可扩展性强,更容易进行分布式扩展
- 劣势:功能相对局限
- 文档型数据库
- 相关产品:
- 典型应用:
- 数据模型:一系列键值对
- 优势:数据结构要求不严格
- 劣势:查询性能不高,而且缺乏统一的查询语法
- 图形数据库
- 相关产品:
- 典型应用:社交网络
- 数据模型:图结构
- 优势:利用图结构相关算法
- 劣势:需要对整个图做计算才能得出结果,不容易做分布式的集群方案
NoSQL的特点
- 易扩展
- 大数据量,高性能
- 灵活的数据模型
- 高可用