IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Redis五种实现方式 -> 正文阅读

[大数据]Redis五种实现方式

1.什么是Redis?

Remote Dictionary Server(Redis)是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。

2.Redis的特点什么是?

a、支持多种数据结构,如 string(字符串)、 list(双向链表)、dict(hash表)、set(集合)、zset(排序set)、hyperloglog(基数估算)

b、支持持久化操作,可以进行aof及rdb数据持久化到磁盘,从而进行数据备份或数据恢复等操作,较好的防止数据丢失的手?????? 段。

c、支持通过Replication进行数据复制,通过master-slave机制,可以实时进行数据的同步复制,支持多级复制和增量复制, master-slave机制是Redis进行HA的重要手段。

d、单进程请求,所有命令串行执行,并发情况下不需要考虑数据一致性问题。

3.Redis数据类型有哪些?

a、String(字符串)

b、Hash(hash表)

c、List(链表)

d、Set(集合)

e、SortedSet(有序集合zset)

4.Redis的配置以及持久化方案有几种?

a、RDB方式b、AOF方式

5.Redis中的常用命令哪些?

a、hset 存储一个哈希键值对的集合

b、hget获取一个哈希键的值c、hdel 删除一个或多个字段

d、hgetall 获取一个哈希是键值对的集合

e、lpush key value向链表左侧添加f、rpush key value向链表右侧添加g、lpop key 从左边移出一个元素

h、rpop key 从右边移出一个元素

i、keys * 返回所有的key 可以加*通配

j、exists key判断string类型一个key是否存在 如果存在返回1 否则返回0

?所需要的Maven依赖

    <dependency>
      <groupId>redis.clients</groupId>
      <artifactId>jedis</artifactId>
      <version>2.7.1</version><!--版本号-->
    </dependency>
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-lang3</artifactId>
      <version>3.3.2</version><!--版本号-->
    </dependency>

package com.zzp.test;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.Tuple;

import java.util.Iterator;
import java.util.Set;

public class Test {
    public static void main(String[] args) {
//        test1();
//        test2();
//        test3();
//        test4();
//        test5();
//        test6();
        test7();
    }

    private static void test7() {
        //转换成UTF-8格式
        //建立redis的通讯
        Jedis jedis=new Jedis("127.0.0.1",6379);
        //填写密码
        jedis.auth("root");
        //选择redis里面的数据库
        jedis.select(3);
//        jedis.zadd("myscor",70,"rucy");
//        jedis.zadd("myscor",80,"kidd");
//        jedis.zadd("myscor",90,"lisa");
//        jedis.zadd("myscor",100,"ross");
        Set<Tuple> res=jedis.zrangeWithScores("myscor",0,-1);
        Iterator<Tuple> iterator= res.iterator();
        while (iterator.hasNext()){
            Tuple tuple= iterator.next();
            System.out.println(tuple.getElement()+" "+tuple.getScore());
        }
        jedis.close();
    }

    private static void test6() {
        //有序set
        //建立redis的通讯
        Jedis jedis=new Jedis("127.0.0.1",6379);
        //填写密码
        jedis.auth("root");
        //选择redis里面的数据库
        jedis.select(3);
        jedis.zadd("myscorc",70,"rucy");
        jedis.zadd("myscorc",80,"kidd");
        jedis.zadd("myscorc",90,"lisa");
        jedis.zadd("myscorc",100,"ross");
        System.out.println(jedis.zrange("myscorc",0,-1));
        jedis.close();
    }

    private static void test5() {
        //set类型
        //建立redis的通讯
        Jedis jedis=new Jedis("127.0.0.1",6379);
        //填写密码
        jedis.auth("root");
        //选择redis里面的数据库
        jedis.select(3);
        jedis.sadd("myset","a");
        jedis.sadd("myset","b");
        System.out.println(jedis.smembers("myset"));
        jedis.close();
    }

    private static void test4() {
        //list类型
        //建立redis的通讯
        Jedis jedis=new Jedis("127.0.0.1",6379);
        //填写密码
        jedis.auth("root");
        //选择redis里面的数据库
        jedis.select(3);
        jedis.lpush("mylist","aa");
        jedis.lpush("mylist","bb");
        jedis.rpush("mylist","cc");
        jedis.rpush("mylist","dd");
        jedis.rpush("mylist","ee");
        System.out.println(jedis.lrange("mylist",0,-1));
        jedis.close();
    }

    private static void test3() {
        //hash类型
        //建立redis的通讯
        Jedis jedis=new Jedis("127.0.0.1",6379);
        //填写密码
        jedis.auth("root");
        //选择redis里面的数据库
        jedis.select(3);
        jedis.hset("myhash","username","rose");
        jedis.hset("myhash","height","180");
        System.out.println(jedis.hget("myhash","height"));
        System.out.println(jedis.hgetAll("myhash"));
        jedis.close();
    }

    private static void test2() {
        //定时删除
        //建立redis的通讯
        Jedis jedis=new Jedis("127.0.0.1",6379);
        //填写密码
        jedis.auth("root");
        //选择redis里面的数据库
        jedis.select(3);
        jedis.setex("code",10,"7777");
        System.out.println(jedis.get("code"));
        jedis.close();
    }

    private static void test1() {
        //String类型
        //建立redis的通讯
        Jedis jedis=new Jedis("127.0.0.1",6379);
        //填写密码
        jedis.auth("root");
        //选择redis里面的数据库
        jedis.select(3);
        //向redis里面存数据
        jedis.set("username","李四");
        //获取值
        System.out.println(jedis.get("username"));
        //关闭
        jedis.close();
    }
}

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-03-08 22:34:18  更:2022-03-08 22:34:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 8:24:32-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码