NoSQL-Redis入门(一)

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 从这篇开始记录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
目录
相关文章
|
1月前
|
缓存 NoSQL Java
springboot的缓存和redis缓存,入门级别教程
本文介绍了Spring Boot中的缓存机制,包括使用默认的JVM缓存和集成Redis缓存,以及如何配置和使用缓存来提高应用程序性能。
82 1
springboot的缓存和redis缓存,入门级别教程
|
28天前
|
存储 消息中间件 NoSQL
Redis 入门 - C#.NET Core客户端库六种选择
Redis 入门 - C#.NET Core客户端库六种选择
51 8
|
3月前
|
SQL 存储 NoSQL
Redis6入门到实战------ 一、NoSQL数据库简介
这篇文章是关于NoSQL数据库的简介,讨论了技术发展、NoSQL数据库的概念、适用场景、不适用场景,以及常见的非关系型数据库。文章还提到了Web1.0到Web2.0时代的技术演进,以及解决CPU、内存和IO压力的方法,并对比了行式存储和列式存储数据库的特点。
Redis6入门到实战------ 一、NoSQL数据库简介
|
3月前
|
NoSQL 算法 安全
Redis6入门到实战------ 四、Redis配置文件介绍
这篇文章详细介绍了Redis配置文件中的各种设置,包括单位定义、包含配置、网络配置、守护进程设置、日志记录、密码安全、客户端连接限制以及内存使用策略等。
Redis6入门到实战------ 四、Redis配置文件介绍
|
3月前
|
NoSQL Redis 数据安全/隐私保护
Redis6入门到实战------ 二、Redis安装
这篇文章详细介绍了Redis 6的安装过程,包括下载、解压、编译、安装、配置以及启动Redis服务器的步骤。还涵盖了如何设置Redis以在后台运行,如何为Redis设置密码保护,以及如何配置Redis服务以实现开机自启动。
Redis6入门到实战------ 二、Redis安装
|
3月前
|
NoSQL Java Redis
Redis6入门到实战------思维导图+章节目录
这篇文章提供了Redis 6从入门到实战的全面学习资料,包括思维导图和各章节目录,涵盖了NoSQL数据库、Redis安装配置、数据类型、事务、持久化、主从复制、集群等核心知识点。
Redis6入门到实战------思维导图+章节目录
|
3月前
|
NoSQL 安全 Java
Redis6入门到实战------ 三、常用五大数据类型(字符串 String)
这篇文章深入探讨了Redis中的String数据类型,包括键操作的命令、String类型的命令使用,以及String在Redis中的内部数据结构实现。
Redis6入门到实战------ 三、常用五大数据类型(字符串 String)
|
3月前
|
NoSQL 关系型数据库 Redis
Redis6入门到实战------ 九、10. Redis_事务_锁机制_秒杀
这篇文章深入探讨了Redis事务的概念、命令使用、错误处理机制以及乐观锁和悲观锁的应用,并通过WATCH/UNWATCH命令展示了事务中的锁机制。
Redis6入门到实战------ 九、10. Redis_事务_锁机制_秒杀
|
3月前
|
NoSQL Java Redis
Redis6入门到实战------ 八、Redis与Spring Boot整合
这篇文章详细介绍了如何在Spring Boot项目中整合Redis,包括在`pom.xml`中添加依赖、配置`application.properties`文件、创建配置类以及编写测试类来验证Redis的连接和基本操作。
Redis6入门到实战------ 八、Redis与Spring Boot整合
|
3月前
|
存储 NoSQL 算法
Redis6入门到实战------ 三、常用五大数据类型(列表(List)、集合(Set)、哈希(Hash)、Zset(sorted set))
这是关于Redis 6入门到实战的文章,具体内容涉及Redis的五大数据类型:列表(List)、集合(Set)、哈希(Hash)、有序集合(Zset(sorted set))。文章详细介绍了这些数据类型的特点、常用命令以及它们背后的数据结构。如果您有任何关于Redis的具体问题或需要进一步的帮助,请随时告诉我。