博客
关于我
redis基础1-redis的简介
阅读量:148 次
发布时间:2019-02-28

本文共 1156 字,大约阅读时间需要 3 分钟。

Redis 是一个高性能的 key-value 数据库

NoSQL 介绍

NoSQL 是一类新出现的数据库,不只是 SQL

  • 泛指非关系型数据库
  • 不支持 SQL 语法
  • 存储结构与传统关系型数据库完全不同,NoSQL 中存储的数据都是 key-value 形式
  • NoSQL 的世界中没有一种通用的语言,每种 NoSQL 数据库都有自己的 API 和语法,以及擅长的业务场景
  • NoSQL 中的产品种类相当多:
    • Redis
    • MongoDB
    • HBase(Hadoop 生物库
    • Cassandra(Hadoop 生物库

NoSQL 和 SQL 数据库的比较:

  • 适用场景不同:SQL 数据库适合用于复杂的数据查询场景,NoSQL 则相反
  • 事务特性支持:SQL 对事务支持非常完善,NoSQL 基本不支持事务
  • 两者在不断取长补短,呈现融合趋势

Redis 简介

Redis 是一个开源的使用 ANSI C 编写、支持网络、可基于内存亦可持久化的日志型 key-value 数据库,并提供多种语言的 API。自 2010 年 3 月 15 日起,Redis 的开发工作由 VMware 主持,2013 年 5 月后,由 Pivotal 赑助。

Redis 是 NoSQL 技术阵营中的一员,通过多种键值数据类型适应不同场景下的存储需求,借助高层级接口,可胜任缓存、队列系统等多种角色。

Redis 特性

  • Redis 与其他 key-value 缓存产品有以下三个特点:
    • 支持数据持久化,可以将内存中的数据保存到磁盘上,重启时可以重新加载使用
    • 不仅支持简单的 key-value 类型数据,还提供 list、set、zset、hash 等数据结构的存储
    • 支持数据备份,采用 master-slave 模式进行数据备份

Redis 优势

  • 性能极高:Redis 的读取速度可达 11 万次/秒,写入速度约为 8.1 万次/秒
  • 丰富的数据类型:支持二进制形式的 Strings、Lists、Hashes、Sets及 Ordered Sets 数据类型操作
  • 原子操作:Redis 的所有操作都是原子性的,确保操作的可靠性
  • 丰富的特性:支持 publish/subscribe 通知、key 过期等功能

Redis 应用场景

  • 用于做缓存(如 Ehcache、Memcached):Redis 所有数据都存放在内存中(内存数据库),对于那些不会频繁变化的数据(如省市区信息),无需查询硬盘大大减少了查询时间
  • 在某些特定场景下替代传统数据库:例如社交类应用(如点赞、评论等),通过减少对数据库的操作频率来提高性能
  • 在大型系统中,实现一些特定功能:如 session 共享、购物车等
  • 只要你有丰富的想象力,Redis 可以用在可以带来无限惊喜的地方

转载地址:http://cttd.baihongyu.com/

你可能感兴趣的文章
pyqt5 获取Qlabel中的图片并对其进行处理(包括Qimage转换为Mat)
查看>>
PyQt5-基本窗口控件-QMainWindow
查看>>
PyQt5:如何安装/运行 Qt 设计器
查看>>
PyQt5——pyqtgraph绘图大招
查看>>
PyQt5——多窗口之间数据处理
查看>>
PyQt5——多线程、信号与槽
查看>>
PyQt5——开发地图软件
查看>>
PyQt5——装饰器信号与槽
查看>>
PyQt5——软件密码登陆跳转主界面
查看>>
PyQt5——通过信号与槽进行数据传输
查看>>
PyQt5“定时器不能从另一个线程启动“更改 QLabel 的大小时出错
查看>>
pyqt5不显示窗口
查看>>
pyqt5任意组件的拖拽问题
查看>>
PyQt5信号与槽学习笔记——自定义信号与槽(二)
查看>>
PyQt5学习笔记——信号与槽
查看>>
PyQt5开发暗黑风格的计时器
查看>>
pyqt5教程11:绘制外观
查看>>
pyqt5教程12:拖放功能
查看>>
pyqt5教程13:客户定制组件
查看>>
pyqt5教程6:信号和事件
查看>>