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

Redis笔记

Redis(Remote Dictionary Server),开源、基于C语言、内存可持久化NoSQL键值对数据库。

命令:redis命令不区分大小写,set和SET效果相同

主键(key):任意二进制序列(字符串,JPEG文件内容),空字符串是有效的key

key规则:

  • 格式约定:object-type:id:field
  • 不用太长的键值。不仅消耗内存,而且在数据查找中计算成本很高
  • 太短的键值可读性差  “user:1000:password”代替“u:1000:pwd

一、String数据类型和Hash数据类型

  • set

set key value

把值value赋给key,如果key不存在,新增;否则,更新

  • setnx(set if not exists)

setnx key value

只insert不update,仅key不存在时设置key的值为value,并返回1;否则返回0

  • setex

setex key seconds value

设置key的过期时间和值。过期时间seconds单位是秒。设置过期时间和值是原子操作。

  • mset

mset key value [key value ...]

同时设置多个key-value

  • msetnx

msetnx key value [key value...]

所有key都不存在才执行set操作

选择建议

  • 当数据是简单的键值对或需要原子操作整个值时,使用String

  • 当数据有多个相关属性且需要单独访问/更新时,使用Hash

  • 对于小对象(字段少),Hash通常更节省内存(使用ziplist编码时)

Redis的Hash类型在存储对象时比将整个对象序列化为JSON字符串存储在String类型中通常更高效,特别是当需要频繁访问或修改对象的部分属性时。

二、List数据类型

http://www.xdnf.cn/news/10454.html

相关文章:

  • 英一真题阅读单词笔记 06年
  • 系统性学习C语言-第十三讲-深入理解指针(3)
  • 使用langchain实现五种分块策略:语义分块、父文档分块、递归分块、特殊格式、固定长度分块
  • 计算机网络技术
  • 【PostgreSQL 05】PostgreSQL扩展开发实战:从自定义函数到插件开发的完整指南
  • C# 类和继承(构造函数的执行)
  • 数据结构测试模拟题(3)
  • 【STM32开发板】接口部分
  • 象棋里的卧槽马、侧面虎、金钩马的方位与解析
  • 13.三种低功耗和RTC实时时钟
  • CppCon 2014 学习: C++ on Mars
  • Go中MAP底层原理分析
  • Python打卡第42天
  • 建筑兔零基础python自学记录102|Beautiful Soup库(1)-15
  • JDBC连不上mysql:Unable to load authentication plugin ‘caching_sha2_password‘.
  • 在线音乐平台测试报告
  • Go Channel 详解
  • 怎样在PyQt5中使用信号与槽机制?
  • logstash 安装
  • 【算法题】算法一本通
  • 征程 6 J6EM 常见 qconfig 配置解读与示例
  • CS144 - LAB1
  • Python并行处理实战:使用ProcessPoolExecutor加速计算
  • Redis分布式锁深度解析与最佳实践
  • 源码解析(二):nnUNet
  • 解释程序(Python)不需要生成机器码 逐行解析 逐行执行
  • 模型训练相关的问题
  • 个人用户进行LLMs本地部署前如何自查和筛选
  • 14.Wifi模组(ESP8266)
  • LeetCode 热题 100 208. 实现 Trie (前缀树)