当前位置: 首页 > news >正文

Redis入门篇

目录

  • 传送门
  • 一、前言
  • 二、NoSQL
    • 1、ont only sql,特点:
    • 2、NoSQL的四大分类:
  • 三、Redis概念
  • 四、五大数据类型:

传送门

SpringMVC的源码解析(精品)
Spring6的源码解析(精品)
SpringBoot3框架(精品)
MyBatis框架(精品)
MyBatis-Plus
SpringDataJPA
SpringCloudNetflix
SpringCloudAlibaba(精品)
Shiro
SpringSecurity
java的LOG日志框架
Activiti(敬请期待)
JDK8新特性
JDK9新特性
JDK10新特性
JDK11新特性
JDK12新特性
JDK13新特性
JDK14新特性
JDK15新特性
JDK16新特性
JDK17新特性
JDK18新特性
JDK19新特性
JDK20新特性
JDK21新特性
其他技术文章传送门入口

一、前言

Redis 的重要性其实不用多说,不管是面试还是平时项目使用,基本是最高的Nosql数据库了。

下面文章不定期更新:
Redis入门篇(精品)
Redis命令篇
Redis高级篇
Redis集群篇
Redis面试篇

Remote Dictionary Server 远程字典服务,C语言编写的,基于内存可持久化的kv数据库,免费开源的结构化数据库,支持多样数据库类型、持久化(虽然是内存存储但也可以持久化)、集群、事务、发布订阅系统、地图信息分析、计时器、高速缓存(Redis一秒写8万次,读取11万次)

在这里插入图片描述

二、NoSQL

1、ont only sql,特点:

1.方便扩展(数据之间没有关系,很好扩展)
2.大数据量高性能(Redis一秒写8万次,读取11万次)
3.数据类型是多样型的(不需要事先设计数据库)

传统的和nosql的对比区别
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2、NoSQL的四大分类:

1.KV键值对:新浪Redis 美团Redis+Tair 阿里、百度Redis+memecache
2.文档型数据库:(bson格式和json一样,只是二进制)MongoDB是一个基于分布式文件存储的数据库,C++编写,主要用来处理大量的文档,是最像关系数据库的
3.列存储数据库:(MySQL是行存储),HBase(大数据),分布式文件系统等
4.图形关系数据库:存的不是图片是关系,比如朋友圈社交网络、广告推荐 Neo4j,InfoGrid等

四大分类优缺点
在这里插入图片描述
未来概念图
在这里插入图片描述

三、Redis概念

Redis默认有16个数据库,默认使用的是第0个,以下为Linux下面的命令:
select 3 切换到第三个数据库
dbsize 查看使用量的大小
keys * 查看所有的key
flushdb 清空当前数据库的数据
flushall 清空所有的数据看的数据

Redis是单线程的,是基于内存操作的,CPU不是性能瓶颈,其瓶颈是内存和网络带宽,多线程会使CPU上下切换, 这个是个耗时的操作,而Redis是把所有数据都放到内存中的没有上下切换,使用单线程操作效率最高,所以就使用单线程

四、五大数据类型:

1.String 字符串
2.list 相当于链表也可以是栈和队列(看命令其实是双端队列),before node after,left和right都可以插入值,如果key不存在就创建新的链表;如果key存在就新增内容;如果移除了所有值就是空链表(也代表不存在);在两边插入或改动效率最高,中间元素相对来说效率低一点;
3.set不重复元素 ,SADD key member1 [member2]
4.Hash哈希,是一种key-map的格式,取值也是取两个key才能得到value这种
5.zset在set基础上增加了一个值,set k1 seq1 v1 ,seq1是排序
三种特殊类型:
1.geospatial地理位置:朋友的定位,附加的人,打车距离计算
2.Hyperloglog:基数(不重复的元素)统计算法,比如A={1,5} B={1},AB之间的基数就是5,由于占用内存小固定12kb,所以网页的uv(一个人访问一个网站多次值计算一次)统计时是首选,传统做法是Set集合保存用户id,数据量大的时候就耗费内存了,Hyperloglog有一定的容错率,不是100%准确,一般uv统计是可以忽略不计的,如果强制要求准确则只能用传统方式了。
3.Bitmaps位图,位储存,只有0和1两种状态,操作二进制来进行记录,比如打卡未打卡的,登录和未登录的等等
在这里插入图片描述

http://www.lryc.cn/news/378866.html

相关文章:

  • 变电站智能巡检机器人解决方案
  • Linux Kernel入门到精通系列讲解(QEMU-虚拟化篇) 2.5 Qemu实现RTC设备
  • 【自动驾驶】通过下位机发送的加速度、角速度计算机器人在世界坐标系中的姿态
  • Python 设计模式(第2版) -- 第四部分(其他设计模式)
  • gitlab升级16.11.3-ee
  • 剑指offer 算法题(搜索二维矩阵)
  • SaaS平台数据对接为什么要选择API对接?
  • 力扣136. 只出现一次的数字
  • 重学java 74.Lombok的使用
  • 数据结构6---树
  • 一键制作,打造高质量的数字刊物
  • Java面试题:对比继承Thread类和实现Runnable接口两种创建线程的方法,以及它们的优缺点
  • 编译原理-各章典型题型+思路求解
  • 【绝对有用】C++ vector排序
  • linux——VScode安装
  • X-LoRA:高效微调 LoRA 系列,实现不同领域知识专家混合模型
  • 基于卷积神经网络的目标检测
  • Mysqld数据库管理
  • Wifi通信协议:WEP,WPA,WPA2,WPA3,WPS
  • 开源【汇总】
  • 英文字母表
  • Redis缓存穿透
  • SHELL脚本学习(十一)正则表达式
  • Leetcode Java学习记录——代码随想录哈希表篇
  • 我又挖到宝了!小米、352、希喂宠物空气净化器除毛能力PK
  • 每月 GitHub 探索|10 款引领科技趋势的开源项目
  • 【如何让新增的Android.mk参与编译】
  • 【windows|009】计算机网络基础知识
  • C语言循环中获取之前变量的值
  • must be built with the ios 17 sdk or later,included in Xcode 15 or later.