SQL到NoSQL概览性总结之一 数据库应用场景选型
来源:互联网 发布:淘宝客服一个月多少钱 编辑:程序博客网 时间:2024/05/22 14:35
数据库类型与实例
适合场景
不适合场景
场景举例
关系数据库
基于集合理论,具有行和列的二维表,严格使用类型
开源MySQL/MariaDB, PostgreSQL
商业:Oracle,DB2,SQL Server, Sybase
l 数据具有类型
l 灵活查询。
l 即提前为组织的复杂性付出代价,以实现随后的查询灵活性
l 数据高度或者多层次的,无法提前指定模式
键值数据库
Redis
Riak—类dynamo
Memcached(membase..)
BerkeleyDB
Voldemort
l 数据相关性不高
l 性能极高
l 缺乏索引和扫描功能,除了基本的CRUD外帮助不大
l 对于自由定义的查询无能为力
l 不适合复杂查询和聚合等
l 适合场景
Session信息
用户概要等信息
购物车
l 不适合场景
数据之间存在强关联
事务
根据value查询
Operations by Sets
列型数据库
HBase
Cassandra
Hypertable
l 横向扩展
l 列的添加容易
l 版本控制
l 基于你打算如何查询数据设计数据库模式
l 不仅对数据如何组成有一些想法,对如何使用数据也要预先知晓
l 适合场景
事件日志
CMS,博客
计数器
数据过时使用
l 不适合场景
文档型
MongoDB
CouchDB
l 每个对象有任意数量字段,对象可以作为值以任意深度嵌套到其他字段中
l 高度可变领域
l 很好的映射到OOP
l 缺乏复杂的查询,如联接
l 适合场景
事件日志
CMS,博客
Web分析或者实时分析
电子商务
l 不适合场景
复杂事务
查询持续变化的聚合结构
图数据库
Neo4j(支持ACID事务)
l 形式自由的网络应用,如社交网络
l 不需要将相似的对象划分共同组,只要可以在白板上建模就可以表示
l 场景如推荐引擎、ACL和地理数据
l 节点之间的高度关联,不适合网络分区
l 扩展性差,通常大容量数据存储在其他地方,而在图中只保存关系
l 适合场景
互联数据
路由、分发和基于位置的服务
推荐引擎
l 不适合场景
参考文献
《七周七数据库》
《NoSQL Distilled》
- SQL到NoSQL概览性总结之一 数据库应用场景选型
- NoSql对比与选型,应用场景分析
- NoSQL数据库的应用场景
- NoSQL数据库的35个应用场景
- NoSQL数据库的35个应用场景
- NoSQL数据库的35个应用场景
- NoSQL数据库的35个应用场景
- NoSQL数据库的35个应用场景
- Nosql数据库的分类及应用场景
- 四类NoSQL数据库适用场景总结
- 数据库技术格局概览-SQL,NoSQL,NewSQL及如何选择数据库
- NoSQL数据库概览及其与SQL语法的比较
- NoSQL数据库概览及其与SQL语法的比较
- NoSQL 数据库概览及其与 SQL 语法的比较
- NoSQL数据库概览及其与SQL语法的比较
- NoSQL 数据库概览及其与 SQL 语法的比较
- nosql应用场景
- NoSQL - Redis应用场景
- c链式栈的实现
- 邮件解析框架(JavaMail的C++实现)使用示例
- SolrJ源码:基本文档和域对象
- fpathconf函数
- 修改linux/Android启动logo/开机画面
- SQL到NoSQL概览性总结之一 数据库应用场景选型
- 正向运动学和反向运动学
- 在VC6.0中配置opencv1.0
- 快速排序
- Android获取手机和系统版本等信息的代码
- Boolean satisfiability solving
- UBUNTU SVN使用
- Library Cache Latch和Shared Pool Latch
- ACE劫持了main函数导致链接错误