Nosql
Nosql: 即Not-OnlySQL(泛指非关系型的数据库),作为关系型数据库的补充。
作用:应对基于海量用户和海量数据前提下的数据处理问题。
特征:
- 可扩展,可伸缩
- 大数据量下高性能
- 灵活的数据模型
- 高可用
常见Nosql数据库:
- Redis
- HBase
- memcache
- Mongodb
Redis
概述:Redis(REmote DIctionary Server)使用C语言开发的一种开源的高性能键值对(key-value)数据库
特征:
- 数据间没有必然的关联关系
- 持久化支持。可以进行数据灾难恢复
- 内部采用单线程机制进行工作
- 高性能。官方提供测试数据,50个并发执行100000个请求,读的速度是110000次/s,写的速度是81000次/s
- 多数据类型支持
-
- 字符串类型 string
- 列表类型 list
- 散列类型 hash
- 集合类型 set
- 有序集合类型 sorted_set
Redis应用
- 为热点数据加速查询(主要场景),如热点商品,热点新闻,热点资讯,推广类等高访问量信息等
- 任务队列,如秒杀,抢购,购票排队等
- 即时信息查询,如排行榜,各类网站访问统计,公交到站信息,在线人数信息(聊天室、网站),设备信号等
- 时效性信息控制,如验证码控制,投票控制等
- 分布式数据共享,如分布式架构中的session分离
- 消息队列
- 分布式锁