Redis(一)------NoSQL

Redis(一)------NoSQL

1、NoSQL

1.1 什么是NoSQL

  • NoSQL:Not Only SQL,不仅仅是SQL

  • 关系型数据库包含表格、行、列

  • NoSQL泛指非关系型数据库,随着Web2.0互联网的诞生,传统的关系型数据库很难应对Web2.0时代,尤其是超大规模的高并发社区。暴露出来很多难以克服的问题,NoSQL在当今大数据环境下发展十分迅速,其中Redis是发展最快的

  • 很多数据类型用户的个人信息、社交网络、地理位置、用户自己产生的数据、用户日志等。这些数据类型的存储不需要一个固定格式,爆发式增长,不需要多余操作就可以进行横向扩展

1.2 NoSQL的特点

  • 方便扩展(数据之间没有关系)
  • 大数据量高性能(Redis 1s写8万次,读取11万次,NoSQL的缓存记录是一种细粒度的缓存,性能会比较高)
  • 数据类型多样(不需要事先设计数据库,随取随用)

1.3 比较RDBMS和NoSQL

  • 传统RDBMS
    • 结构化组织
    • SQL
    • 数据和关系都存在单独的表中
    • 数据操作语言、数据定义语言
    • 严格的一致性(ACID)
    • 基础的事务
  • NoSQL
    • 不仅仅是数据
    • 没有固定的查询语言
    • 键值对存储、列存储(mongDB)、文档存储、图形数据库
    • 最终一致性
    • CAP定理和BASE理论(例如:异地多活,保证整个服务器不会宕机)
    • 高性能、高可用、高可扩

1.4 了解3V和3高

  • 大数据时代的3V:主要是描述问题
    • 海量Volume
    • 多样Variety
    • 实时Velocity
  • 大数据时代的3高:主要是对程序的要求
    • 高并发
    • 高可扩(随时水平拆分,机器不够,可以扩展机器解决)
    • 高性能

2、NoSQL四大分类

2.1 KV键值对

  • 新浪:Redis
  • 美团:Redis+Tair
  • 阿里、百度:Redis+memcache

2.2 文档型数据库(bson格式和json一样)

  • MongDB(需要掌握)
    • MongDB,是一个基于分布式文件存储的数据库,由C++编写,主要用来处理大量的文档
    • MongDB,是一个介于关系型数据库和非关系型数据库中间的产品
    • MongDB,是非关系型数据库中功能最丰富,最像关系型数据库的
  • ConthDB

2.3 列存储数据库

  • HBase
  • 分布式文件系统

2.4 图关系数据库

  • 不是图形,存放的是关系,例如:朋友圈社交网络,广告推荐
  • Neo4j
  • InfoGrid

你可能感兴趣的:(Redis学习笔记,nosql)