NoSQL-Redis入门(一)

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: 从这篇开始记录Redis相关知识:1 NoSQL是什么?1.1 NoSQL特性1.1.1 易扩展1.1.2 大数据量与高性能1.2 RDBMS vs NoSQL1.

从这篇开始记录Redis相关知识:

1 NoSQL是什么?
1.1 NoSQL特性
1.1.1 易扩展
1.1.2 大数据量与高性能
1.2 RDBMS vs NoSQL
1.2.1RDBMS
1.2.1.1 高度组织化结构数据
1.2.1.2 结构化查询语言(SQL)
1.2.1.3 数据和关系都存储在单独的表中
1.2.1.4 数据操纵语言,数据定义语言
1.2.1.5 严格的一致性
1.2.1.6 基础事务
1.2.2 NoSQL
1.2.2.1 代表不仅仅是SQL
1.2.2.2 没有声明性查询语言
1.2.2.3 没有预定义的模式
1.2.2.4 键 - 值对存储,列存储,文档存储,图形数据库
1.2.2.5 最终一致性,而非ACID属性
1.2.2.6 非结构化和不可预知的数据
1.2.2.7 CAP定理
1.2.2.8 高性能,高可用性与可伸缩性
2 NoSQL去哪里下载?
3 NoSQL该怎么玩?
4 3V+3高
5 当下NoSQL经典应用
6 NoSQL数据库的四大分类
7 在分布式数据库中CAP远离CAP+BASE

1.NoSQL是什么?


NoSQL=Not only sql 非关系型数据库
数据库常用类型就是那么几种。随着业务发展,比如说社交网络中数据关系是错综复杂的,比如说你大爷的奶奶的老公的儿子的某某某,这种数据存储在关系型数据库中显然是不太现实的。🈶️比如说横向的扩展一张表中的子段,不停的alter table 以及我数据表中子段有可能达到1000个,这个也不太现实。传统数据库是不能支撑的。
1.1 NoSQL 的特性:

1.1.1 易扩展
NoSQL数据库种类繁多,但是一个共通的特点就是去掉关系型数据库的关系型特性,数据之间无关系,这就非常容易扩展,也无形之间,在架构的层面上带来了可扩展的能力。
1.1.2 大数据量与高性能
一般的MySQL使用Query Cache ,比如说我们常用的Hibernate,MyBatis等,在使用时我们可以使用一级、二级缓存来提高应用的性能, 比如用户在访问使用缓存的应用时,数据是从缓存中读取的。但是在使用传统数据库时,每次表更新之后,原有的Cache就会失效,这是一种大粒度的Cache,一般针对web2.0的交互频繁的应用,cache性能不高。而NoSQL是记录级的,是一种细粒度的Cache,所以NoSQL在这个层面上性能就要高很多了。
Redis:read=8w次/s ,write =11w次/s
NoSQL无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式。而在关系型数据库里,增删字段是一件很恐怖的事情,如果是大数据量的表,增加字段简直是一个噩梦。因为现在数据少,但在生产活动下,是很困难的。

1.2 RDBMS vs NoSQL
在目录上有两者的对比:

RDBMS
高度组织化结构数据
结构化查询语言(SQL)
数据和关系都存储在单独的表中
数据操纵语言,数据定义语言
严格的一致性
基础事务
1.2.2 NoSQL
代表不仅仅是SQL
没有声明性查询语言
没有预定义的模式
键 - 值对存储,列存储,文档存储,图形数据库
最终一致性,而非ACID属性
非结构化和不可预知的数据
CAP定理
高性能,高可用性与可伸缩性
后期再扩展,这块不太懂

顺便说下现在大型互联网公司的应用中缓存使用:
美团Tair
淘宝Redis
论缓存性能Memcache 是高速缓存,性能最强,但是Redis 存储的种类最多,所以相对权重中Redis最强。

2 NoSQL去哪里下载?


Redis下载地址:http://redis.io/download
配置教程:

Mac:http://blog.sina.com.cn/s/blog_62d4d5900101bp7s.html
Windows:http://www.runoob.com/redis/redis-install.html
linux:http://www.linuxdown.net/install/soft/2016/0108/4305.html

3 nosql该怎么玩?


NoSQL 功能:

KV:
Cache:
Persistence:
后期补充

4 3V+3高


3V+3高
大数据时代的3V
海量(Volume)
朋友圈,淘宝双十一,数据量大
多样(Variety)
一条微博图片、文字、背景音乐
实时(Velocity)
比如12306 数据实时,比如说携程定飞机票,其实做不到绝对的实时。
互联网需求的3高
高并发
微信抢红包,12306多用户抢票
高性能
性能要高,数据库容灾备份,keep alive 等。
高可扩
pc内存要大。
纵向扩展:内存条2、4、8G扩充,纵向增长有其限制
横向扩展:多个pc同时运行,对外封装,前方挡着一个7起任务分配与引流作用的负载均衡。

博客搬家:大坤的个人博客
欢迎评论哦~

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
4天前
|
NoSQL 关系型数据库 MySQL
redis 入门01
redis 入门01
14 0
|
4天前
|
缓存 NoSQL Java
【Redis系列笔记】Redis入门
本文介绍了Redis常用命令,以及SpringBoot集成Spring Data Redis和Spring Cache。Spring Data Redis 提供了对 Redis 的操作方法,而 Spring Cache 则提供了基于注解的缓存功能,可以方便地将方法的返回值缓存到 Redis 中,以提高性能和减少对数据源的访问次数。这样的集成可以帮助开发者更便捷地利用 Redis 来管理应用程序的数据和缓存。
95 4
|
4天前
|
存储 缓存 NoSQL
Redis入门到通关之Redis内存淘汰(内存过期)策略
Redis入门到通关之Redis内存淘汰(内存过期)策略
32 3
|
4天前
|
存储 NoSQL Linux
Redis入门到通关之多路复用详解
Redis入门到通关之多路复用详解
21 1
|
4天前
|
存储 NoSQL Linux
Redis入门到通关之Redis5种网络模型详解
Redis入门到通关之Redis5种网络模型详解
32 1
|
4天前
|
NoSQL Ubuntu 关系型数据库
Redis入门到通关之Redis网络模型-用户空间和内核态空间
Redis入门到通关之Redis网络模型-用户空间和内核态空间
22 1
|
4天前
|
存储 NoSQL 算法
Redis入门到通关之Redis数据结构-Hash篇
Redis入门到通关之Redis数据结构-Hash篇
24 1
|
4天前
|
存储 NoSQL Redis
Redis入门到通关之Redis数据结构-Set篇
Redis入门到通关之Redis数据结构-Set篇
20 1
|
4天前
|
存储 NoSQL Redis
Redis入门到通关之Redis数据结构-ZSet篇
Redis入门到通关之Redis数据结构-ZSet篇
23 1
|
4天前
|
存储 NoSQL Redis
Redis入门到通关之Redis数据结构-List篇
Redis入门到通关之Redis数据结构-List篇
33 1