key-value键值型数据库:Redis

redis

Redis是in-memory型(内存型)的键值数据库,数据在磁盘上是持久的,键类型是字符串,值类型是字符串、字符串集合(Set)、sorted set、字符串列表(List)、哈希(Hash)等。 其中,Hash类型是一种字符串为键、字符串为值的键值对集合,类似键值类型都为字符串的Map。

使用场景:

  • 数据可全部放入内存
  • 频繁访问数据

redis-server使用snapshot(快照)机制进行数据持久化,这种机制是不时地遍历in-memory数据库,把键值写入文件系统,redis-server默认写入当前目录下的dump.rdb文件。除了snapshot,redis-server还支持AOF持久化机制,AOF(append only file),采用记录对数据库操作的记录来实现持久化,只要重新执行记录的命令,就可以还原出整个数据库。

安装

Redis下载页面,选择对应操作系统的版本,这里选择3.2.8稳定版,下载到本地的文件名是redis-3.2.8.tar.gz,解压文件,生成目录redis-3.2.8,进入目录编译安装:

tar -xzvf redis-3.2.8.tar.gz #解压
cd redis-3.2.8
make #编译
sudo make install #安装
redis-server #启动redis服务

操作

提供命令行操作,$ redis-cli打开redis客户端命令行,redis中文网有对支持命令的描述文档。java api中的方法名称和意义大同redis客户端shell中的命令。

Java api简单访问过程示例:

val jedis = new redis.clients.jedis.Jedis("localhost")
jedis.set("key","value"); jedis.get("key");
jedis.lpush("key","value1","more..."); //列表左边(头部)插入
jedis.rpush("key","value1","more..."); // 列表右边插入
jedis.lrange("key",startIndex,endIndex); //从列表取出一定范围的元素,支持负数索引

key-value键值型数据库:Redis的更多相关文章

  1. 7.Redis键值对数据库

    1.Redis的安装以及客户端连接 安装:apt-get install redis-server 卸载:apt-get purge --auto-remove redis-server 启动:red ...

  2. redis学习 (key)键,Python操作redis 键 (二)

    # -*- coding: utf-8 -*- import redis #这个redis 连接不能用,请根据自己的需要修改 r =redis.Redis(host=") 1. delete ...

  3. 数据库系统概论(新技术篇)--中国人民大学【第13讲】KEY-VALUE数据库(键值对数据库)

    市面上主流的分布式文件系统(FS): (Hadoop的)HDFS,(Google的)GFS     详见ppt   1.数据服务与键值对数据库: 数据服务:data serving数据服务:数据的简单 ...

  4. OAF_OAF控件系列10 - Key Flexfield键值弹性域的实现(案例)

    2014-06-17 Created By BaoXinjian

  5. docker——Etcd高可用键值对数据库

    一.简介 Etcd按照官方介绍: Etcd is a distributed, consistent key-value store for shared configuration and serv ...

  6. 【Spark】RDD操作具体解释3——键值型Transformation算子

    Transformation处理的数据为Key-Value形式的算子大致能够分为:输入分区与输出分区一对一.聚集.连接操作. 输入分区与输出分区一对一 mapValues mapValues:针对(K ...

  7. zabbix 通过key(键值)获取信息

    在agent端进行修改264行,例如: UserParameter=get.os.type,head -1 /etc/issue 保存重启agent 验证 zabbix_get -s IP -k ge ...

  8. Redis源码解析:09redis数据库实现(键值对操作、键超时功能、键空间通知)

    本章对Redis服务器的数据库实现进行介绍,说明Redis数据库相关操作的实现,包括数据库中键值对的添加.删除.查看.更新等操作的实现:客户端切换数据库的实现:键超时相关功能的实现.键空间事件通知等. ...

  9. JavaWeb笔记(十)非关系型数据库Redis

    Redis Redis是一款高性能的NOSQL系列的非关系型数据库 主流的NOSQL产品 键值(Key-Value)存储数据库 相关产品: Tokyo Cabinet/Tyrant.Redis.Vol ...

随机推荐

  1. [python]pycharm画图插件matplotlib、numpy、scipy的下载与安装

    最近在用pycharm学习python语言,不得不感叹python语言的强大与人性化! 但对于使用pycharm画图(较复杂的图)就要用到几个插件了,即matplotlib.numpy和scipy!但 ...

  2. 003 rip

    r0#config t Enter configuration commands, one per line.  End with CNTL/Z. r0(config)#router rip r0(c ...

  3. 基于Office 365 无代码工作流分析-数据源的建立!

     标准操作步骤 下面整个步骤我们是以嘉昊信息的招聘过程的整个流程为一个场景,整个的流程场景的步骤例如以下: 整个的过程,我们通过Infopath 进行对应的表单流转,然后利用Sharepoint ...

  4. Appium、selenium与Robot Framework

    Robot Framework + Appium Appium-Python-Client: 与Appium Library和Appium Server的交互Appium Library通过Appii ...

  5. selenium第三课(selenium八种定位页面元素方法)

    selenium webdriver进行元素定位时,通过seleniumAPI官方介绍,获取页面元素的方式一共有以下八种方式,现按照常用→不常用的顺序分别介绍一下. 官方api地址:https://s ...

  6. struts2学习笔记(8)-------struts2的ajax支持

    struts2支持一种stream类型的Result,这样的类型的Result能够直接向client浏览器响应二进制,文本等. 我们能够再action里面生成文本响应,然后在client页面动态载入该 ...

  7. COCOS学习笔记--即时动作ActionInstant

    Cocos引擎中的动作类的关系图例如以下: 能够看出,Action是继承自Ref类的,之前我的博客中也有讲过,Ref类是cocos2dx全部类的基类.动作类(Action)是全部动作的基类.它通过cr ...

  8. Python常用数据处理函数

    1.基本统计特征函数 方法名 函数功能 所属库 使用格式 sum() 计算数据样本综合(按列计算) Pandas D.sum() mean() 计算数据样本算数平均数 Pandas D.mean() ...

  9. Wicket实战(一)概述

    今天给大家介绍一个很好的东西.一个被称作Java平台上的ASP.NET--Wicket. 什么是Wicket 什么是Wicket,假设你用谷歌或其它搜索引擎搜索一番之后,就会发现wicket是Java ...

  10. HDU4267 树状数组 不连续区间修改(三维)

    A Simple Problem with Integers                                  Problem Description Let A1, A2, ... ...