zoukankan      html  css  js  c++  java
  • Python数据库2.Redis数据库

    2.1 NoSQL简介

    NoSQL(Not Only SQL):

    No管L指的是非关系型数据库,是对不同于传统的关系型数据库的数据库理系统的统称,NOSQL是web2.0时代海里数据催生的产物。

    特点:

    • 1.不支持SQL语法:

      NoSQL的世界中没有一种通用的语言,每种nosq l数据库都有 自己的语法,以及擅长的业务场景

    • 2.读写性能高:

      NoSQL数据军都具有非常高的读写性能,尤其在海里数据下, 它的表现非常优秀

    • 3.灵活的数据模型:

      NOSQL的存储方式十分灵活,存储方式可以是JSON文档、 键值对(Key Value )或者其他方式。

     

    2.2Redis简介 (内存条中)

    • 1.Redis:

      Redis是由意大利人开发的一款内存高速缓存数据库, 是一个高性能的键值对(key-value)存储数据库。Redis全称为: Remote Dictionary Server(远程数据服务),使用C语言编写并 以内存作为数据存储介质,所以读写数据的效率极高

    • 2.Redis特性:

      ➢Redis支持数据的持久化,可以将内存中的数据保存在磁盘中, 重启的时候可以再次加载进行使用。

      ➢Redis不仅仅 支持简单的key-value类型的数据,同时还把value 分为list, set, zset, hash等 数据结构存储。

      ➢因为Redis交换数据快,所以在服务器中常用来存储一些需要频繁调取的数据,提高效率。 不能存储一些重要数据 持久化也是有时间间隔的

    2.3 Redis数据模型

    redis:

    ➢redis是key-value的数据结构, 每条数据都是一个键值对
    ➢键的类型是字符串
    ➢注意:键不能重复
    ➢值的类型分为五种
    • ➢值的类型分为五种:

      String ------> 字符串 Hash ------> 哈希 List ------> 列表 set ------> 集合 Zset ------> 有序集合

     

    • 1.连接redis:

      redis-cli

    • 2.退出:

      exit

    • 3.操作服务端:(自动)

      service redis start/stop/restart

    • 4.切换数据库:

      select n

     

    2.4.Redis五大数据类型 (加引号为一个值)

    String类型

    string 是Rredis最基本的类型,一个key对应一个value.

    • 1.设置数据:

      set key value

    • 2.查看数据:

      get key

    • 3.追加数据:

      append key value

    • 4.删除数据:

      del key;

     

    全局key操作

    对redis的五个数据类型都适用的命令

    • 1.查看所有的key:

      keys *

    • 2.删除键值对:

      del key exists key 查看key是否存在

    • 3.改名:

      rename key new_key

    • 4.设置过期时间:

      expire key seconds ttl key 查看时间 persist key 删除过期时间

     

    List类型

    List类型是一个字符串列表,可以在列表头部或尾部添加/删除数据在插入数据时,如果该键并不存在,Redis将为该键创建一个。

    • 1.添加数据:

      rpush key value [value…] lpush key value [value…] ---- 头部添加数据

    • 2.查看数据:

      lrange key start stop lindex key index ---- 查看某个数据

    • 3.修改数据:

      lset key index value

    • 4.删除数据:

      rpop key lpop key ---- 头部删除数据 lrem key index value ---- 指定删除(中间)

     

    Hash类型(无序)

    是一个键值(key= >value)対集合。是string类型的field和value的映射表:

    user           { name:juhao,           age:18 }

    user→key(健)   name,age→field(域)   juhao,18 →value(値)

     

    • 1.添加数据:(存在则修改)

      hset key field value hmset key field value field value(多条)

    • 2.查看域值:

      hget key field hgetall key ---- 查看所有的field和value

    • 3.查看所有的value:

      hvals key

    • 4.查看所有的field:

      hkeys key

       

    Set类型(无序)

    Set类型为无序的字符集合。元素具有唯一性,不重复

    • 1.添加数据:

      sadd key member [member …]

    • 2.查看数据:

      smembers key

    • 3.随机删除:

      spop key

    • 4.指定删除:

      srem key member [member …]

     

    Sorted Set类型(有序的)

    每一个成员都会有一个分数(score)与之关联。 成员是唯一的,但是分数(score)却是可以重复的。

    • 1.添加数据:

      zadd key score member [score2 member2 …]

    • 2.查看数据:

      zrange key start stop zrangebyscore key min max -- 通过scores值查看

    • 3.删除数据:

      zrem key member [member …]

    • 4.通过索引删除多个数据:

      zremrangebyrank key min max zremrangebyscore key min max -- 通过scores值删除

    • 5.查看分数:

      zscore key member

    •  

  • 相关阅读:
    Extjs常用的控件
    JasperReport导出
    spring配置连接池
    extjs中xtype类型

    凭什么!
    用心去做,多动脑思考
    闲着无事弄一下荒废已久的博客。。。

    视频下载工具 3.0
  • 原文地址:https://www.cnblogs.com/dyf25288-/p/11701585.html
Copyright © 2011-2022 走看看