redis的介绍

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: redis的介绍

本资料转载于传智教育-解锁你的IT职业薪未来,仅用于学习和讨论,如有侵权请联系

1、8种数据结构,两个消息队列,四个不同的运维操作

1.1 最后一个script脚本和事务操作

1.2 点评网大量用到了redis

1.3 redis常用的场景,分布式锁,Lua脚本----redis企业应用大部分应用场景

1.4 高级篇

1.5 如何利用我们的java语言来访问redis,redis常用的数据结构有哪些

2、redis内存的都是键值对的数据,对于用户来讲都是键值对的数据

2.1 这样做的坏处是让数据打散了,但是我们可以让他变成json数据格式去存

2.2 key是id,像这样的我们称为NOSQL,他跟MySQL有什么区别,我们该如何操作数据那!

2.3 基础内容

3、初始redis

3.1 sql是关系型数据库,在国外是seql

3.2 NOSQ最后的目的一定是数据的增删改查

3.3 MySQL是一种结构数据库,会对插入的数据进行检验,数据库无非就是增删改查,这种结构化的数据最好在项目的设计之初就设计好,一旦你数据插入的较多,可能你修改一个字段带来的影响是非常巨大的,所以要求,你在设计数据库之前就将字段提前设计好,很长一段时间不可用,而且表跟业务有关联,将来表变了,结构也得变。

3.4 NoSql的出现减弱了结构化的带来的影响,常见的NoSql数据类型有四种,第一种是我们键值型的NoSql数据库,他的Key是自定义的,你想要什么都行:他代表着你将一行数据存进去了

4.数据结构

4.1 Document数据结构,把我们数据封装成json数据插入进入,它封装的数据一整条数据,他的差异是什么,这个json是自定义的,字段插入非常松散,我叫id,我叫username无所谓,插入啥都行

4.2 图类型的数据库,图类型的数据库可以看成一个节点:比如人跟人之间有节点关系,老师之间存在师生关系,NOSQL的数据库,无论怎么看,它们的数据结构都比较松散,他们之间字段加一个或少一个影响差异较小

4.3 数据与数据之间是有关系的,这有三张表,三张表之间是没有任何关系的

4.4 关系的建立,他的主键关联起了用户的id,这样就建立了订单表和用户表的关系

4.5 他的商品id对应的就是商品表中的id

4.6 表跟表之间的关系通过外键建立起来了,但是也存在了一个问题,此时我想要删除了一个商品或者订单,就会出问题,因为表之间互相影响

5、我想维护一个商品下了多少单,怎样去维护,必须采用json的形式去维护:用户下个订单,里面可以包括一个订单,两个订单,还有商品item,同时还有对应的商品信息,这样就把一个用户下了几个订单,每个订单下的商品信息都下载下来了;(通过json嵌套的方式去用),

5.1 缺点--重复,张三买了荣耀6,李四可不可以也买,也就是你这个文档存储多份,在多个用户里面

5.2 为什么你不只记录用户id那?然后再建一个表,单独存商品,这样也行,这种关系要靠程序猿和业务逻辑去维护了,因为数据库是不会维护表和表之间的关联

5.3 NoSql特点2---无关联

5.4 查询,关系型用sql

5.4.1查询条件

5.4.2 redis的查询 get user(key),:1(含义:用户1)

5.4.3 MongoDB(找)

 5.4.4请求

6、NoSql与sql第四个差异,事务差异,NOSql无法满足ACID,只能基本满足,我们称为base,如果你要满足ACID就要优先使用sql而不是NoSql

ACID(原则性,一致性,。。。)

7、总结

内存的好处是查询快,redis的数据放内存

8、订单数据安全性较高,建议用sql存储,为了提升订单数据,我们可以把部分订单数据放到NOsql数据里

9 redis远程词典服务器,为什么叫做词典,根据key查询字段,为什么要发明redis,建了一个网站,用户访问量大的时候打不开,并发高的时候撑不住了,于是想有没有这样一个库,并发能力很强,他希望有这样一个库,吞吐能力很强,并发能力很高,并且还有一些业务的需求

9.1

10 redis服务器开发之后,具备了很多的特征

10.1第一个特征,键值型,可以是字符串,也可以集合,字符串

10.2 单线程,不会存在一个命令插入的时候,另一个命令插入的情况

相关实践学习
基于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
Redis系列
Redis系列
|
存储 缓存 NoSQL
Redis
Redis
57 0
|
9月前
|
存储 NoSQL Redis
Redis介绍以及日常使用
​ 介绍 Redis(REmote DIctionary Server)是一个开源的、使用ANSI C语言编写的、支持网络、可基于内存亦可持久化的日志型、非关系类型的Key-Value数据库。它提供了多种语言的API,如Java、C/C++、C#、PHP、JavaScript、Perl、Object-C、Python、Ruby、Erlang等,使得在各种语言环境下使用Redis都变得非常方便。 Redis是一个高性能的Key-Value数据库,其性能在很大程度上补偿了如Memcached这类Key-Value存储的不足,并且在某些场景下,它还可以作为关系数据库的良好补充。它支持的数据结构类型
205 1
|
存储 NoSQL Java
Redis3
Redis3
64 0
|
9月前
|
存储 人工智能 NoSQL
Redis的未来
【翻译】来自redis官网对未来的规划
276 0
|
缓存 NoSQL 关系型数据库
redis
redis
129 0
|
NoSQL 安全 Unix
Redis (必看)
Redis 学习点滴 知识分享
92 0
|
存储 缓存 NoSQL
redis 问答
redis 问答
119 0
redis 问答
|
消息中间件 缓存 NoSQL
Redis还可以做哪些事?
Redis还可以做哪些事?
112 0
|
存储 缓存 监控
Redis应用问题解决
key对应的数据在数据源并不存在,每次针对此key的请求从缓存获取不到,请求都会压到数据源,从而可能压垮数据源。比如用一个不存在的用户id获取用户信息,不论缓存还是数据库都没有,若黑客利用此漏洞进行攻击可能压垮数据库。
Redis应用问题解决