`
李大宝
  • 浏览: 14647 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

NoSQL---Redis基础

 
阅读更多

Redis(REmote DIctionary Server)是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库。

Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。

Redis 与其他 key - value 缓存产品有以下三个特点:

  • Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
  • Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
  • Redis支持数据的备份,即master-slave模式的数据备份。

Redis 优势

  • 性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
  • 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
  • 原子 – Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。
  • 丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。

Redis 数据类型

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。

 

Redis keys 命令

 

keys *  : 查看所有的key

keys "miao*" : 查看匹配前缀的keys

flushdb : 清空redis

type key : 查看key的类型

dbsize : 查看数据库中key的数量

exists key : 查看是否存在该元素

del  key : 删除元素

expire key seconds:设置该元素多少秒后失效

ttl key:查看还可以存活多久 -2表示key不存在  -1表示定时任务消失,永久存储 

 

Redis 字符串(String)

 

SET key value : 设置指定 key 的值,若存在则覆盖

GET key : 获取指定 key 的值。

MSET key value [key value ...] : 同时设置一个或多个 key-value 对。

MGET key1 [key2..] : 获取所有(一个或多个)给定 key 的值。

APPEND key value : 如果 key 已经存在并且是一个字符串, APPEND 命令将 value 追加到 key 原来的值的末尾

STRLEN key : 返回 key 所储存的字符串值的长度

 

redis提供原子 自增操作incr, 用来防止多线程并发出现数据错误(一定是数值才能进行加减)

incr key:原子的+1

decr key:原子的-1

incrby key integer:原子的+integer

decrby key integer:原子的-integer

 

Redis 哈希(Hash)

 

Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。

HSET key field value : 将哈希表 key 中的字段 field 的值设为 value 

HGET key field  : 获取存储在哈希表中指定字段的值

HMGET key field1 [field2]  :  获取所有给定字段的值

HMSET key field1 value1 [field2 value2 ]  :  同时将多个 field-value (域-值)对设置到哈希表 key 中。

HEXISTS key field : 查看哈希表 key 中,指定的字段是否存在。

HDEL key field2 [field2] : 删除一个或多个哈希表字段

HGETALL key  获取在哈希表中指定 key 的所有字段和值

HKEYS key : 获取所有哈希表中的字段

HVALS key : 获取哈希表中所有值

 

 

 

 

分享到:
评论

相关推荐

    NOSQL-redis-运维-单机安装

    NOSQL-redis-运维-单机安装

    Another-Redis-Desktop-Manager.1.5.6

    标题中的“Another-Redis-Desktop-Manager.1.5.6”指的是Another Redis Desktop Manager的1.5.6版本。这是一款专为Redis数据库设计的桌面管理工具,它提供了直观的图形用户界面(GUI),方便用户进行数据的查看、...

    Redis-x64-5.0.10.zip、Redis-x64-5.0.10.msi

    本文将详细介绍Redis的特性、版本5.0.10的关键改进以及安装Redis-x64-5.0.10.msi的过程。 Redis支持多种数据类型,包括字符串、哈希、列表、集合、有序集合,这些数据结构使得它在缓存、消息队列、计数器等场景中...

    redis+redis-desktop-manager-0.8.3.3850+笔记

    1. 下载源码包:`redis-2.8.13.tar.gz` 是Redis的源码包,解压后进行编译和安装。 2. 解压:`tar -zxvf redis-2.8.13.tar.gz` 3. 编译:`cd redis-2.8.13`,然后`make` 4. 安装:`sudo make install` 5. 启动Redis...

    spring分布式+redis3+nosql-最终版源码

    在本项目中,"spring分布式+redis3+nosql-最终版源码"是一个涵盖了Spring框架、Redis 3以及NoSQL数据库技术的应用示例。这个最终版源码旨在展示如何在分布式环境中利用Spring来实现高效的微服务架构,并利用Redis...

    Redis-x64-3.2.100.zip和Redis-x64-3.2.100.msi

    解压这个文件后,你可以找到Redis服务器的所有组件,包括`redis-server.exe`(主服务进程)、`redis-cli.exe`(命令行客户端)、`redis-benchmark.exe`(性能测试工具)和`redis-check-dump.exe`等实用工具。...

    Redis从入门到精通视频.rar

    03-redis-redis是一种Nosql数据库.avi 04-redis-redis数据库特点简介.avi 05-redis-安装redis数据库.avi 06-redis-回顾安装redis.avi 07-redis-启动redis服务.avi 08-redis-关闭redis服务.avi 09-redis-redis客户端....

    redis-desktop-manager-0.9.0.616.exe、Redis-x64-3.0.504

    在给定的压缩包文件中,我们有两个与Redis相关的组件:`redis-desktop-manager-0.9.0.616.exe` 和 `Redis-x64-3.0.504.zip`。 1. **redis-desktop-manager-0.9.0.616.exe**: 这是一个Redis桌面管理器的可执行文件...

    Redis-x64-3.0.504.msi.zip

    在Windows环境下,Redis的安装通常以MSI(Microsoft Installer)格式的文件进行,就像提供的"Redis-x64-3.0.504.msi"。这个文件是专门为64位Windows操作系统设计的Redis 3.0.504版本的安装程序。 1. **Redis的基本...

    redis-7.0.11-windows.zip

    5. **redis-check-aof.exe**:与 redis-check-rdb 类似,该工具用于验证 AOF(Append Only File)日志文件的完整性。AOF 是 Redis 的另一种持久化方法,记录所有写操作,以在服务器重启时重新执行,从而恢复数据。 ...

    Another-Redis-Desktop-Manager.1.4.4.exe

    Redis客户端,相对来说比较稳定,在数据量比较大的时候不会崩溃。

    php队列+php-redis队列+php-redis扩展

    在实际项目中,可以根据具体需求选择合适的队列实现,例如RabbitMQ、Beanstalkd或其他NoSQL数据库。同时,不断优化队列处理策略,如合理设置Redis缓存过期时间,可以进一步提高系统的整体性能。

    Laravel开发-laravel-nosql-connector

    在Laravel框架中,开发人员经常需要处理不同的数据存储系统,包括关系型数据库(如MySQL、PostgreSQL)和非关系型数据库(NoSQL),如MongoDB、Couchbase或Redis。`laravel-nosql-connector`项目为Laravel提供了一个...

    redis-session-manager-redis-session-manager-2.0.3.tar.gz

    这个压缩包文件"redis-session-manager-redis-session-manager-2.0.3.tar.gz"包含了该工具的2.0.3版本,适用于Linux操作系统。该软件包通常包括源代码、配置文件、文档以及必要的脚本,方便用户进行安装和使用。 ...

    redis-5.0.3.zip

    标题中的"redis-5.0.3.zip"表明这是一个Redis服务器的5.0.3版本的压缩包,适用于64位操作系统。描述中提到的“504以后再传吧”可能是指网络问题,导致用户无法正常从官方网站下载,所以提供了一个已经下载好的版本。...

    Redis-x64-5.0.10.zip

    Redis,全称Remote Dictionary Server,是一款高性能的键值对存储系统,主要用作数据库、缓存和消息中间件。...而Redis-x64-5.0.10.zip这个压缩包,正是开发者在Windows环境下部署和测试Redis的一个基础起点。

    Redis-x64-3.0.504及php_redis-3.1.4-7.2-ts-vc15-x64

    通过 `redis-server` 命令启动服务,并可以使用 `redis-cli` 进行客户端操作。 4. **Redis 持久化**:Redis 提供了两种主要的持久化方式:RDB(快照)和 AOF(追加日志)。RDB 是定期保存数据库状态的文件,AOF ...

    03-nosql-架构

    - 键值存储(Key-Value Stores):如Redis,适合快速读写大量简单数据。 - 文档数据库(Document Databases):如MongoDB,存储JSON、XML等格式的文档,支持嵌套结构。 - 列族数据库(Column Family Databases)...

    深入NoSQL-Professional NoSQL

    - 如Redis和Memcached,它们提供简单的键值对存储,适用于缓存和快速访问场景。 - 关键特性:高性能、低延迟,但不支持复杂查询。 3. **列族数据库** - 如HBase和Cassandra,它们适用于海量数据存储和实时分析。...

    Redis-x64-3.zip

    "Redis-x64-3.zip"很可能包含的是Windows 64位版本的Redis 3.x的源代码或者二进制发布包。在本篇文章中,我们将深入探讨Redis的核心特性和其在3.x版本中的主要改进。 首先,Redis作为一个内存数据存储,它支持多种...

Global site tag (gtag.js) - Google Analytics