Redis-NoSQL数据库

NoSQL数据库概述

NoSQL(No only SQL),泛指非关系型数据库,数据与业务逻辑无关,以key-value形式存储。因此可以大大增加数据库的扩展能力。

特性:

  • 不遵循SQL标准
  • 不支持ACID(SQL四特性)
  • 远超SQL性能

适用场景:读写高并发、海量数据、高可扩展性

不适用场景:需要事务、用到基于sql 的结构化查询存储,处理复杂的关系

注意:用不着sql的和用了sql也不行的情况,请考虑用NoSql

常见NoSQL数据库

  • Memcache
    • 不持久化(断电即数据消失)
    • 存储只支持字符串类型
    • 一般是作为缓存数据库辅助持久化的数据库
  • Redis
    • 持久化,主要用作备份恢复
    • 支持多种数据结构(如 list、set、hash、zset)
    • 一般是作为缓存数据库辅助持久化的数据库
  • MongoDB
    • 文档型数据库(json)
    • 支持二进制数据及大型对象
    • 独立的数据库,或者配合RDBMS
  • Hbase(Hadoop项目中的数据库。它用于需要对大量的数据进行随机、实时的读写操作的场景中)
  • Apache Cassandra(其设计目的在于管理由大量商用服务器构建起来的庞大集群上的海量数据集(数据量通常达到PB级别))
  • 图关系型数据库