简介

       Redis是一个速度非常快的非关系型数据库,它不仅性能强劲,而且还具有复制特性以及为解决问题而生的独一无二的数据模型。作为键值型数据库,Redis支持5中数据类型:字符串,列表,集合,Hash散列和有序集合,各式各样的问题都可以很自然的映射到这些数据结构上,Redis的数据结构致力于帮助用户解决问题,而不像其他数据库那样要求用户扭曲问题来适应数据库。这几种数据模型及其对应的操作命令和强类型编程语言对应的类型更为相似,方便理解和使用。

Redis与其它软件的对比

       对于关系型数据库在查询数据时,有时候需要进行多表操作来完成数据查询,但是在Redis中并不存在表的概念,它的数据库也不会预定义或者强制去要求用户对Redis存储的不同数据进行关联。谈起Redis就不得不说另一个高性能的键值缓存服务器 Memcached,它们经常用来进行相互比较。但是Redis可以将内存中缓存的数据同步到磁盘上,除了支持字符串上更多的操作外,Redis还支持其余四种类型,通过更多的数据结构解决更多的问题,在实际应用中既可以作为主数据库也可以用为其他存储系统的辅助数据库使用。
具体对比一下两者的区别:

使用Redis的理由

       数据库的一个常见用法是用来存储长期报告的数据,并将这些数据存储在不同的表中,对数据的插入操作会执行的很迅速,只需要在数据行的末尾追加一行即可。但是对于更新操作就相对比较慢一些,因为更新不仅会涉及读取操作还会涉及写入操作,当数据量大的时候,更新操作会更慢从而出现性能瓶颈。而Redis是将数据存储在内存中的,发给Redis的请求并不需要经过查询分析器和查询优化器进行处理,所以对Redis存储的数据执行写操作的速度非常快。使用Redis而不是其它关系数据库或者其它硬盘存储数据库,可以避免写入不必要的临时数据,也免去了对临时数据的扫描和删除的麻烦,并最终改善程序的性能。

Redis的安装和使用


下载成功之后运行: src/redis-server 打开服务器,结果如图:

重新打开窗口运行 src/redis-cli打开客户端,结果如图所示:

在后续练习命令的过程中,使用客户端是一个很不错的选择,在查看命令结果的同时还可以练习命令,在后续的更新中,会经常使用客户端进行交互,除非必要会使用Python进行交互。

写在后面的话

       刚开始接触Redis,通过基本的了解和简单的使用之后,发现Redis确实是一个好东西,不仅在结构上有很大不同,在写性能方面相比于传统型数据库有很大的提升,在应对某些需要进行大量写入的场景还是不错的选择,虽然是基于内存的数据库,但Redis有很多高级特性来保证数据安全,更多深入的内容,随着学习,我相信会有更加深刻的认识,本篇博客基本上是对概念和基本安装使用上有一个简单的介绍,更多的内容请期待后续更新....

Redis初体验的更多相关文章

  1. nginx+lua+redis初体验

    1.下载nginx.lua.redis nginx下载地址 wget  http://nginx.org/download/nginx-1.8.0.tar.gz lua下载地址 wget http:/ ...

  2. redis学习心得之一【安装redis初体验】

    在linux下安装redis 说起这个比mysql的安装过程简单多乐,它不需要configure,只需要解压之后make就可以,无需make install ~$ wget http://redis. ...

  3. Golang访问Redis初体验

    go语言的client在redis官网上有很多l客户端,个人感觉redigo使用起来更人性化,重要的是源代码结构很清晰,重要的是支持管道.发布和订阅.连接池等等,所以我选择redigo作为尝试. 1. ...

  4. 01.Redis 初体验

    0. Redis安装 官网下载Redis 解压缩 make make install 安装后的执行命令被保存在了/usr/local/bin目录下 1. 配置文件:redis.conf daemoni ...

  5. C# nosql之redis初体验

    Redis官方是不支持windows的,只是 Microsoft Open Tech group 在 GitHub上开发了一个Win64的版本,项目地址是: https://github.com/MS ...

  6. Spring boot集成redis初体验

    pom.xml: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="ht ...

  7. Spring Boot + Redis 初体验

    本文测试环境: Spring Boot 2.1.4.RELEASE + Redis 5.0.4 + CentOS 7 让程序先 run 起来 安装及配置 Redis 参考: How To Instal ...

  8. 【Python3爬虫】爬取美女图新姿势--Redis分布式爬虫初体验

    一.写在前面 之前写的爬虫都是单机爬虫,还没有尝试过分布式爬虫,这次就是一个分布式爬虫的初体验.所谓分布式爬虫,就是要用多台电脑同时爬取数据,相比于单机爬虫,分布式爬虫的爬取速度更快,也能更好地应对I ...

  9. 【Python3爬虫】学习分布式爬虫第一步--Redis分布式爬虫初体验

    一.写在前面 之前写的爬虫都是单机爬虫,还没有尝试过分布式爬虫,这次就是一个分布式爬虫的初体验.所谓分布式爬虫,就是要用多台电脑同时爬取数据,相比于单机爬虫,分布式爬虫的爬取速度更快,也能更好地应对I ...

随机推荐

  1. Error:Android Source Generator: [sdk] Android SDK is not specified.

    有时候使用intellij idea 带入android 项目,运行提示Error:Android Source Generator: [sdk] Android SDK is not specifi ...

  2. HTTP权威指南-HTTP概述

    1.web服务器(HTTP服务器)使用的是HTTP协议,存储了因特网中的数据,当客户端发出请求时,服务器提供相应的数据.HTTP客户端和HTTP服务器共同构成了万维网的基本组件. 2.资源:Web服务 ...

  3. 虚拟机安装Android最详细教程

    虚拟机想必大家都听说过,有些同学还用过.虚拟机可以模拟出一个操作系统,基于物理机创建.可以模拟常见的 Windows,ubuntu等等. 在使用虚拟机的过程中,想必大家都遇到过一些棘手的问题,尤其是安 ...

  4. Zepto源码分析-callbacks模块

    // Zepto.js // (c) 2010-2015 Thomas Fuchs // Zepto.js may be freely distributed under the MIT licens ...

  5. 教你怎么把iconfont转换成png透明图片

    1.进入iconfont图标库,登陆.http://www.iconfont.cn/ 2.选择想要的图标加入购物车. 3.直接选中下载图标为png格式.

  6. 史上最完整Hadoop2.x完全分布式安装部署-小白也能学会

    一.环境要求: 1.        虚拟机安装并设置网络: 2.        修改主机地址映射: 3.        必备软件:Jdk.Development Tools   Development ...

  7. hdu 5975---Aninteresting game(树状数组)

    题目链接 Problem Description Let’s play a game.We add numbers 1,2...n in increasing order from 1 and put ...

  8. 论文笔记 Spatial contrasting for deep unsupervised learning

    在我们设计无监督学习模型时,应尽量做到 网络结构与有监督模型兼容 有效利用有监督模型的基本模块,如dropout.relu等 无监督学习的目标是为有监督模型提供初始化的参数,理想情况是"这些 ...

  9. Java入门以及Java中的常量与变量总结

    JDK与JRE的区别: JDK给开发人员使用(包含开发工具),JRE给客户使用(运行java程序的核心类库),JDK包含JRE关键字的含义: JAVA语言赋予特殊含义,具有专门用途的单词,关键字的单词 ...

  10. Python一键升级所有 模块/package

    import os,time allPackage=os.popen('pip list') allPackage=allPackage.read() allPackage=allPackage.sp ...