Redis-认识NoSQl和Redis常见的通用命令

news2024/11/26 21:52:11

1. 认识NoSQL

非关系型数据库

  1. NoSQL是指一类非关系型数据库,它们采用的数据模型不同于传统的关系模型,它通常使用键值对、文档、图形等非传统的数据结构进行数据存储,不遵循预定义的模式和模型。NoSQL数据库通常分布式、高可扩展性,可以水平扩展以适应海量数据的存储和高并发访问,适用于处理半结构化或非结构化数据。
  2. NoSQL数据库的出现是为了解决关系型数据库的一些限制,如扩展性、数据模型等。关系型数据库主要基于ACID事务模型,一旦遇到超大规模的数据时,性能会大幅下降,并且,传统的关系数据库通常使用锁机制来避免多用户访问数据库时发生冲突,这样会影响数据库的并发性能。
  3. 与此相反,NoSQL数据库采用BASE(基本可用,柔性状态,最终一致性)理论,没有传统关系型数据库的复杂以及性能瓶颈。NoSQL数据库通常无需使用关系连接等复杂的操作,具备更好的可扩展性,能够优化写入性能,而且在可扩展性方面更具灵活性。
  4. 目前市面上的NoSQL数据库有很多,如键值存储(如Redis、DynamoDB)、文档型(如MongoDB)、列数据库(如HBase)和图数据库(如Neo4j),不同的数据库类型适用于不同的业务场景,需要根据实际需求选择适合自己的数据库。

2. Redis数据结构

基于内存的键值型NoSQL数据库

  1. 键值key-value型,value支持多种不同数据结构;
  2. 单线程,每个命令具备原子性;
  3. 低延迟,速度快,基于内存、IO多路复用;
  4. 支持数据持久化,定期加内存中的数据持久化存储到磁盘中;
  5. 支持主从集群、分片(数据拆分、多机器存储)集群;

其中key一般是String类型,不过value的类型有许多:
在这里插入图片描述

3. Redis通用命令

启动

  1. cd /usr/local/bin
  2. redis-server /etc/redis.conf
  3. redis-cli
  4. AUTH +redis密码

通用命令是部分数据类型,都可以使用的指令,常见指令:

  1. KEYS:查看符合模板的所有key,但是不建议在生存环境设备使用

在这里插入图片描述

使用Xshell软件进行redis命令行操作时,进行查询所有的key,需要先进一个db中,例如:

在这里插入图片描述

redis单线程,这种模糊查询速度很慢

  1. DEL:删除指定的key,需要删除多个可以指定多个key

在这里插入图片描述

  1. MSET:批量插入

在这里插入图片描述

  1. EXISTS:判断key值是否存在

之前key值name已经删除

在这里插入图片描述

  1. EXPIRE:给一个key设置有效期,有效期到期该key会被自动删除
  2. TTL:相应的查看该key还有多长时间被删除

解决内存潜在占满的问题
在这里插入图片描述
此时k3已经被删除,显示时间-2为删除,显示为-1位永久存在
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/627318.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【项目一】GCC(gcc,g++)、静态库、动态库、MakeFile、GDB调试

GCC、静态库 1.2 GCC(1)gcc(1)常用命令(2) C程序编译过程(3)GCC工作流程 1.3 GCC(2)g1.3静态库的制作1.5静态库的使用1.6动态库的制作1.7动态库加载失败的原因1.8解决动态库加载失败…

秋招必看,Java后端高频面试题1000题、拒绝简单背诵,深入浅出近30个技术栈

Java 面试随着时间的改变而改变。在过去的日子里,当你知道 String 和 StringBuilder 的区别就能让你直接进入第二轮面试,但是现在问题变得越来越高级,面试官问的问题也更深入。 在我初入职场的时候,类似于 Vector 与 Array 的区别…

面试专题:计算机网络常见面试点总结

socket、tcp、udp、http 的认识及区别 socket、tcp、udp、http 的认识及区别​ 一、先来一个讲TCP、UDP和HTTP关系的 1、TCP/IP是个协议组,可分为三个层次:网络层、传输层和应用层。 在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。 在传…

10分钟让你彻底了解Loadrunner性能测试工具

目录 Loadrunner简介 Loadrunner原理 Loadrunner工具组件 1、VUGen(虚拟用户生成器) 2、Controller(控制器) 3、Load Generator(负载生成器) 4、Analysis分析器 性能测试工具,从广义上讲…

Shell脚本攻略:Linux防火墙

目录 一、理论 1.安全技术 2.防火墙 3.通信五元素和四元素 二、实验 1.iptables基本操作 2.扩展匹配 一、理论 1.安全技术 (1)安全技术 ①入侵检测系统(Intrusion Detection Systems):特点是不阻断任何网络访…

游戏外包开发技术难点分析

游戏开发涉及多个领域的技术,因此在开发过程中可能会遇到很多技术难点。今天和大家分享一些常见的游戏开发技术难点,希望对大家开发游戏有一定帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 1. 图形渲染…

「料见」vol25.回顾 | PKU-Beaver开源项目团队:一起来聊首个可复现的RLHF基准

为了解决复现RLHF技术和基于RLHF技术的大预言模型的不安全问题,北京大学团队开源了名为PKU-Beaver(海狸)开源项目。 第25期料见闭门分享会,我“门”非常开心邀请到PKU-Beaver开源项目团队成员——北京大学人工智能研究院助理教授…

欧美同学会第三届“双创”大赛——空天装备产业赛区(浙江诸暨)正式启动,开启报名通道

6月8日,欧美同学会第三届“双创”大赛——空天装备产业赛区(浙江诸暨)启动仪式暨北京推介会圆满举行。活动由欧美同学会(中国留学人员联谊会)主办,中共浙江省委统战部支持,浙江省欧美同学会、中…

国内比较火的报表工具测评——Smartbi电子表格软件和Finereport

最近在学习BI软件,因为最近工作中需要开发报表,因此选用了国内市场比较热门的报表工具——Finereport和Spreadsheet进行学习。 BI软件经常会定期发布新的版本,增加新的功能模块,或者对现有功能进行增强,提升运行效率。…

解决pip install -r requirements.txt 超时

解决方案: pip install -r requirements.txt -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com测试验证

让你的AndroidUI更亮眼:Jetpack Compose中的可视状态

让你的Android UI更亮眼:Jetpack Compose中的可视状态 任何设计系统的重要责任是清晰地表明哪些组件可以与之交互,哪些不行,并让用户知道交互已发生。本博客文章将解释如何监听Jetpack Compose中的用户交互,并创建可重用的视觉指…

关于接口的安全性测试,这几点你必须掌握!

01、接口防刷 1.为什么会有人要刷接口? 牟利:黄牛在 12306 网上抢票再倒卖。 恶意攻击竞争对手:如短信接口被请求一次,会触发几分钱的运营商费用,当量级大了也很可观。 压测:用apache bench 做压力测试。…

高性能计算与AI融合成为刚需|什么是高性能计算?应用领域有哪些?与人工智能的关系梳理

本文一部分转载自杨净 整理自 MEET2023量子位 算力的需求,远比以往来得更为猛烈。甚至有人直呼:得算力者得未来。 元宇宙、AIGC、AI for Science的涌现,又给高性能计算(HPC)平添了好几把火。 在诸多挑战与机遇共存交…

大数据治理入门系列:数据管理

在如今的大数据时代,每天都会产生大量的新数据,已有数据可能也会频繁更新或转换。因此,需要对数据进行治理和管理,以便高效地开展数据分析、获取数据洞见、挖掘数据价值。否则,杂乱无章的数据只会白白浪费存储空间&…

python基础----10-----python操作mysql

一 前言 对于SQL章节前言->SQL_DQL_排序分页的课程,这里不做记录,因为都是讲MYSQL本身的内容,与python无关。 当然,接下来的课需要用到mysql,所以大家需要自行下载,这并不难。 二 python操作MYSQL基础…

当BPM遇上低代码 “自定义”提升业务管理效率

业务流程管理(BPM)的历史可以追溯到科学管理和质量管理的发展,并逐步演变为一个更加系统化和综合的管理方法。它在现代组织中起到了优化业务流程、提高效率和质量、增强灵活性和创新能力的重要作用。 从20世纪初的科学管理理论中&#xff0c…

【Linux】什么是进程(process)?

目录 进程与程序概念描述进程-PCBWindows进程与Linux进程Linux进程操作子进程父进程创建进程(初识-fork) 进程与程序概念 在Linux系统中,触发任何一个事件时,系统都会将它定义成为一个进程,并且给予这个进程一个ID,成为PID&#x…

Apikit 自学日记:如何安装 Apikit

Apikit 有三种客户端,你可以依据自己的情况选择。三种客户端的数据是共用的,因此你可以随时切换不同的客户端。 肯定会有和我一样的小白,第一次听说 Apikit这个工具,那么我今天和大家一起学习下这个工具如何安装。 我们推荐使用新…

校招失败后,在小公司熬了 2 年终于进了华为,这次真是竭尽全力了····

其实两年前校招的时候就往华为投了一次简历,结果很明显凉了,随后这个理想就被暂时放下了,但是这个种子一直埋在心里这两年除了工作以外,也会坚持写博客,也因此结识了很多优秀的小伙伴,从他们身上学到了特别…

Angular实现用ng-class和ng-style控制数组最后一个数据为红色

首先我们来看class方案实现 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title>…