Redis的非关系型数据库

devtools/2024/12/22 14:29:28/

第七天课堂笔记

今日目标

  1. 非关系型数据库nosql【not only SQL】数据库

  2. Redis的非关系型数据库

  3. Redis的安装和配置

  4. Redis常见数据类型

  5. Redis特性

nosql数据库

not only sql数据库,非关系型数据库,往往采用类似于json来存储数据。

结构化和非结构化的问题

非结构化的数据,灵活多变,根据具体情况,可以对应灵活选择数据存储的结构

结构化数据,往往固定不变。

nosql数据库缺点:

目前没有统一的标准,每一个nosql数据库都有存在不一样的语法结构,学习成本较高。

Redis数据库

Redis(remote dictionary server)远程字典服务,Redis中的数据采用KV键值对的方式存储的数据。

官网网站:redis.io/

Redis中文网:Redis中文网/

Redis还是免费开源的数据库,但是注意它最新的开源协议,为了针对云服务器提供商。

Redis的安装和配置

Redis官方没有提供window版本的Redis安装包,Redis官方提供的仅仅是C语言源码包,Linux直接编译安装,window中就比较麻烦。

17年之前,微软官方的开源组织帮助编译了一个window的安装包(在3.x版本之后,不再更新)。

后期有github上一个个人开发者在编译window的安装包。

如果使用.msi安装方法,直接下一步即可。

如果采用压缩包:

下载安装包,解压后,打开文件夹,内容如下:

为了方便启动,我们在该目录下新建一个 startup.cmd 的文件,然后将以下内容写入文件:

redis-server redis.windows.conf

这个命令其实就是在调用 redis-server.exe 命令来读取 redis.window.conf 的内容,我们双击刚才创建好的 startup.cmd 文件,就能成功的看到 Redis 启动:

或者另一种方法打开一个cmd窗口使用cd命令切换目录到redis目录下:

输入启动命令:

redis-server.exe redis.windows.conf

在启动时候得另启一个cmd窗口,原来的不要关闭,不然就无法访问服务端了,切换到redis目录下运行

redis-cli.exe -h 127.0.0.1 -p 6379

Redis的配置

Redis在启动时,会加载一个配置文件,该配置决定了Redis的大多数性能问题

bind ip

port 6379

daemonize yes Linux存在,window中没有

dbfilename dump.rdb

dir ./

requirepass 密码

slaveof mastip mastport 5.0之前使用这个

replicaof mastip mastport 5.0之后

其他的一些重要的配置选项,大家要根据注释自己理解和使用。

redis的特点

Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。它支持字符串、哈希表、列表、集合、有序集合,位图,hyperloglogs等数据类型。内置复制、Lua脚本、LRU收回、事务以及不同级别磁盘持久化功能,同时通过Redis Sentinel提供高可用,通过Redis Cluster提供自动分区。

redis的常见数据类型

redis随着版本的升级,功能也在进一步的升级,很多好用、针对特定环境的数据都出现了,像经纬度等等,但是核心的数据主要存在五个,这五个数据类型也被称为Redis的基本数据类型。

  • 字符串

  • hash table

  • List

  • set

  • sorted set

Redis中,key的类型都是字符串,值的类型可以是任何一种Redis支持的数据类型。

字符串类型

存储的值,类型是字符串

  • set key value

  • get key

  • setex key secode value

  • mset key value [key value ……]

  • mget key [key ……]

  • incr key key + 1

  • incrby key num key + num

  • decr key key - 1

  • decrby key num

  • append key value:将value的值拼接到x后面

  • strlen key:获取key对应的值的长度

  • setnx key value

key相关的命令

  • keys pattern:查找键,支持正则

  • exists key:查找键是否存在,存在返回1,否则返回0

  • type key:查看键对应的值的类型

  • del key:根据key删除键值对

  • expire key seconds:给key设置过期时间

  • ttl key:查看键的有效时间

  • persist key

    select index

    move key

    dbsize

    Info

    flushdb

    flushall

    help

    ​ @类型

    ​ 命令

    ​ 指令

hash类型

  • hset key field value

  • hget key field

  • hmset key field value [field value ]

  • hmget key field [field ]

  • hget key field :获取key对应的值

  • hmget key field [field]:获取多个key对应的value值

  • hgetall key:获取所有属性和值

  • hkeys key:获取所有的属性

  • hlen key:获取包含属性的个数

  • hvals key:获取所有的值

  • hexists key field:判断属性是否存在

  • hdel key field [field]:根据属性名称删除属性及值

  • hstrlen key field:返回值的字符串长度

  • hsetnx key value

  • hincrby key field value

list列表

set集合

底层都是hash table实现的,哈希表的特性:无序的、不重复的

zset集合

底层就是hash tabl,对哈希表实现了一种包装,为每一个元素实现了权重

Redis特性


http://www.ppmy.cn/devtools/45356.html

相关文章

【Qt】【模型视图架构】代理模型

文章目录 代理模型简单介绍QSortFilterProxyModel类简单介绍排序过滤子类化 代理模型简单介绍 代理模型的作用是可以将一个模型中的数据进行排序或者过滤,然后提供给视图进行显示。 如下所示,创建一个源模型、一个代理模型,界面上创建一个列…

网络编程基础知识

一、网络的相关概念 二、Ip 对于ipv4,是由4个字节(32位)表示,一个字节的范围是0~255,采用的是十进制表示ipv6的地址长度位128位,是ipv4的4倍,采用的是16进制表示查看ip地址:在命令行…

车载电子电器架构 —— 智能座舱技术范围(万字长文精讲)

车载电子电器架构 —— 智能座舱技术范围 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明…

电商api接口进行数据采集获取淘宝/天猫/京东/抖音多平台商品价格

在电商运营中,从品牌角度来看,品牌方通过电商数据采集API接口进行数据采集,获取多渠道商品价格信息的这一行为,能为品牌方带来诸多好处: 及时准确:API接口能为品牌提供实时数据,这意味着企业可…

计算机组成原理06:浮点数运算

浮点数加减运算 之前我们提到过&#xff0c;浮点数具有特定的表示形式。因此&#xff0c;在进行浮点数的加减运算之前&#xff0c;需要统一浮点数的表达方式。这里我们主要对浮点数表示中的尾数M进行处理&#xff0c;要求0≤M<1&#xff0c;统一格式如下&#xff1a; 正数…

基于IoTDB 平台的学习和研究

Apache IoTDB&#xff08;物联网数据库&#xff09;是一个针对物联网领域的高性能原生数据库&#xff0c;适用于数据管理和分析&#xff0c;并可在边缘计算和云端部署。由于它轻量级的架构、高性能和丰富的功能集&#xff0c;以及与Apache Hadoop、Spark和Flink的深度集成&…

C# 委托

文章目录 1. Delegate 委托委托 vs 接口事件模式 / 委托模式委托组合委托中的协变和逆变 2. Func & Action 委托对Func和Action泛型委托使用变体Func 与 Action 中异常处理 3. 其他委托&#xff1a;Predicate & Comparison & Converter 1. Delegate 委托 在C#中&a…

林业调查具体是做些什么?

林业调查是对森林资源进行系统的信息收集和处理的过程。 林业调查涵盖了对林木、林地以及林区内生长的动植物及其环境条件的全面评估&#xff0c;旨在及时掌握森林资源的数量、质量和生长消亡的动态规律。这种调查不仅关注森林本身&#xff0c;还包括与之相关的自然环境和经济…