NoSQL系列:选择合适的数据库
NoSQL系列:选择合适的数据库
为什么使用NoSQL数据库?
阻抗失衡
关系模型和内存中的数据结构不匹配
采用更为方便的数据交互方式提升开发效率待处理的数据量很大
数据量超过关系型数据库的承载能力
大集群的出现
在成本方面,集群中应用关系数据库,许可费用是一笔很大的支出;
横向扩展和纵向扩展:关系数据库一般只能是纵向扩展,通过对单机服务器的性能换代增强而实现;而对于扩展到多个服务器,
DBMS先天不足;(DBMS不是设计给集群使用的)对数据的访问效率要求高
NoSQL数据库的分类
键值数据库
产品
Redis
BerkerleyDB
Memcached
Project Voldemort
Riak
LevelDB适用场景
存放会话信息
用户配置信息
购物车数据不适合的场景
数据间有大量关系
含有多项操作的事务
根据键值的部分来查询数据
操作关键字集合
文档数据库
产品
MongoDB
CouchDB
RavenDB
Terrastore
OrientDB适用场景
事件记录
内容管理系统及博客平台
网站分析及实时分析
电子商务应用程序
(需要较灵活的模式,低成本建立数据模型)不适合场景
包含多项操作的复杂查询
查询持续变化的聚合结构
列族数据库
产品
HBase
Amazon SimpleDB
Cassdndra
Hypertable
BigTable(google)适用场景
事件记录
(保存应用程序状态,运行中遇到的错误)
CMS及博客平台
计数器不适用场景
需要ACID事务
查询模式变化频繁的场合
图数据库
产品
FlockDB
HyperGraphDB
Infinite Graph
Neo4J
OrientDB适用场景
互联数据
推荐引擎
基于位置的服务不适用场景
更新全部或某个子集的实体
附思维导图
参考
《NoSQL精粹》
Posted by: 大CC | 07JUL,2014
博客:blog.me115.com [订阅]
微博:新浪微博
NoSQL系列:选择合适的数据库相关推荐
- 如何选择合适的数据库,让游戏更高效可用
3月8日,2017游戏行业全球同服和安全攻防技术沙龙在上海举行,阿里云资深技术专家丁奇带来题为"ApsaraDB介绍-MySQL"的演讲.本文分五部分为大家介绍,首先从RDS基本架 ...
- 如何选择合适的NoSQL数据库
与传统的表格(或SQL)数据库相比,NoSQL数据库为软件开发人员和其他用户提供了更高的运行速度和更高的灵活性. NoSQL数据库使用的数据结构 - 键值对,宽列,图形或文档 - 与关系数据库使用的数 ...
- 监控系统如何选择合适的时序数据库?
1.可以按照以下需求自行选择合适的存储: 小而精,性能高,数据量较小(亿级): InfluxDB 简单,数据量不大(千万级),有联合查询.关系型数据库基础:timescales 数据量较大,大数据服务 ...
- mysql数据库 数据类型自动编号选哪个_MySQL表类型、选择合适数据类型、字符集...
MySQL学习笔记(4) 表类型(存储引擎)的选择 插件式存储引擎是MySQL最重要特性之一,5.5之前默认引擎为MyISAM,之后为InnoDB,如需修改默认存储引擎,可在参数文件中设置defaul ...
- 转】R利剑NoSQL系列文章 之 Hive
原博文出自于: http://blog.fens.me/category/%E6%95%B0%E6%8D%AE%E5%BA%93/page/3/ 感谢! Posted: Jul 27, 2013 Ta ...
- NOSQL系列-Redis精简版安装与Ruby测试
简介:Redis是一个NOSQL数据库,它是一款key-values存储型数据库,也叫"memcached改进版",它不同与memcached最大特点是它由内存+硬盘来存储数据的, ...
- redis value多大会影响性能_选择合适Redis数据结构,减少80%的内存占用
前言 redis作为目前最流行的nosql缓存数据库,凭借其优异的性能.丰富的数据结构已成为大部分场景下首选的缓存工具. 由于redis是一个纯内存的数据库,在存放大量数据时,内存的占用将会非常可观. ...
- nosql_探索NoSQL系列
nosql 数据科学 (Data Science) Knowledge on NoSQL databases seems to be an increasing requirement in data ...
- 分子对接教程 | (2) 选择合适的蛋白受体
TCGA | GEO | 文献阅读 | 数据库 | 理论知识 R语言 | Bioconductor | 服务器与Linux 接前文:分子对接教程 | (1) 软件安装准备 关于蛋白质结构的PDB文件, ...
最新文章
- 解决 IntelliJ IDEA Tomcat 控制台中文输出乱码问题
- tenginx配置负载均衡
- Alibaba Cloud Toolkit——简介
- Go的strconv二
- Bzoj 2724: [Violet 6]蒲公英(分块)
- oracle 事务测试
- Blazor系列终结!
- img src 本地图片_Java爬取简单的网页内容和图片
- NVIDIA SMI 无法与 nvidia driver 通信
- 使用Xamarin在Visual Studio中开发Android应用
- java怎么建立socket_Java Socket编程如何建立两者关系
- [React Native]StatusBar的使用
- Java并发编程实战读书笔记(1)
- ②搭建GD32工程模板
- SSH框架之文件上传
- mysql数据文件后缀名_数据文件的后缀名_MySQL
- Java程序控制系统输入法
- SpringCloud学习笔记7——初级篇之服务降级
- Not creating XLA devices, tf_xla_enable_xla_devices not set
- 面试-操作系统-进程管理-进程-进程调度-死锁