博客
关于我
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/

你可能感兴趣的文章
Python两个版本共存时,命令行升级pip
查看>>
Python两个版本共存时,怎么验证是否安装成功 scrapy
查看>>
Python两个版本共存时,通过pip安装Scrapy
查看>>
python两组变量的相关关系散点图_变量是什么?变量间的两种关系——函数关系和相关关系(小学版)...
查看>>
Python中 pass语句的作用
查看>>
python中 urllib, urllib2, httplib, httplib2 几个库的区别
查看>>
python中 yaml库 & json库 & xmltodict库使用
查看>>
python中 将你的名字转化成为二进制并输出
查看>>
Python中*args 和**kwargs的用法
查看>>
Python中*args 和**kwargs的用法
查看>>
Python中*args和**kwargs的使用
查看>>
python中0、1、True、False、if条件
查看>>
python中argparse模块关于 parse_args() 函数详解(全)
查看>>
python中base64编码与解码
查看>>
python中break怎么用_详解Python中break语句的用法
查看>>
python中del函数的垃圾回收
查看>>
Python中DrissionPage的详细解析与实战
查看>>
python中enumerate、变量类型转换
查看>>
python中execute是啥_python – 为什么“c.execute(…)”打破循环?
查看>>
python中exit和break区别_Python中exit()和sys.exit()之间的区别
查看>>