非关系型数据库NoSql传统数据库的瓶颈1云计算和大数据对数据库的要求2NoSql数据库3Redis基础4目录CONTENTS传统数据库的瓶颈•传统的关系型数据库在应付web2
0网站,特别是超大规模和高并发的SNS类型的web2
0纯动态网站已经显得力不从心,暴露了很多难以克服的问题
高并发读写的性能低大规模SNS网站数据库并发负载非常高,往往要达到每秒上万次读写请求
关系数据库应付上万次SQL查询还勉强顶得住,但是应付上万次SQL写数据请求,硬盘IO就已经无法承受了
01支撑容量有限对于关系数据库来说,数百万记录的表里查询尚可接受
在一张上亿条记录的表里面进行SQL查询,效率是极其低下乃至不可忍受的02可扩展和可用性低传统数据库却没有办法像webserver那样简单的通过添加更多的服务器来扩展性能和负载能力
对于很多需要提供24小时不间断服务的网站来说,对数据库系统进行升级和扩展往往需要停机维护03云计算和大数据对数据库技术的需求•海量数据处理:需要处理pb级别的数据量•大规模集群管理:更加简单的分布式部署•极速的读写响应:提高用户的使用体验•低成本的建设和运营:大量部署时,大幅降低软件授权费用NoSql数据库•什么是NoSql数据库
•NoSql即NotOnlySQL•是与传统关系型数据库对应的,也可理解为•norelational,即非关系型数据库NoSql数据库•NoSql数据库的特征•1、不需要预定义模式:即不需要先设计表结构
他的数据格式是松散的,数据库中的每条记录都可能有不同的属性和格式
•2、弹性可扩展:可以在不停机的情况下添加或删除节点•3、不支持标准SQLNoSql数据库的分类类型常见数据库优点缺点应用场景键值数据库RedisMemcacheDBDynamo快速查询存储的数据缺少结构化内容缓存,处理高负载
也可充当消息队列列存储数据库HBaseBigT