栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 云计算 > 云平台

聊聊Redis为何这么流行

云平台 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

聊聊Redis为何这么流行

Redis
1. Nosql概述

为什么要用Nosql

大数据时代,一般的数据库无法进行处理了!2006年Hadoop

Hadoop是一个由Apache基金会所开发的分布式系统集成架构,用户可以在不了解分布式底层细节情况下,开发分布式程序,充分利用集群的威力来进行高速运算与存储,具有可靠、高效、可伸缩的特点

Hadoop简介

Hadoop的核心是YARN,HDFS,Mapreduce常用模块架构如下:

  • Hadoop是Apache软件基金会旗下的一个开源分布式计算平台,为用户提供了系统底层细节透明的分布式基础架构

  • Hadoop是基于Java语言开发的,具有很好的跨平台特性,并且可以部署在廉价的计算机集群中

  • Hadoop的核心是分布式文件系统HDFS(Hadoop Distributed File System)和MapReduce

  • Hadoop被公认为行业大数据标准开源软件,在分布式环境下提供了海量数据的处理能力

几乎所有主流厂商都围绕Hadoop提供开发工具、开源软件、商业化工具和技术服务,如谷歌、雅虎、微软、思科、淘宝等,都支持Hadoop

单机MySQL的年代,一个基本的网站访问量一般不会太大,单个数据库完全足够

瓶颈:

1、数据量太大,一个机器放不下

2、数据的索引(B + Tree),一个及其内存也放不下

3、访问量(读写混合),一个服务器承受不了

单机MySQL

Memcached(缓存)+ MySQL + 垂直差分(读写分离)

网站大多时候其实都是在读,每次都去查询数据库的话就十分麻烦!为了减轻数据的压力,可以使用缓存来保证效率

发展过程:优化数据结构和索引 —> 文件缓存(IO) —> Memcached(最热门的技术)

分库分表 + 水平拆分 + MySQL集群

本质:数据库(读,写)

数据库引擎

早些年:MyISAM 表锁,将表加锁,十分影响效率!高并发下就会出现严重的锁问题

现在:Innodb 行锁,将一行记录加锁

开始使用分库分表来解决写的压力

为什么要用NoSQL

用户的个人信息,社交网络,地理位置。用户自己产生的数据,用户日志等等爆发式增长!

NoSQL数据库就能很好的处理这种情况

2. 什么式NoSQL

NoSQL

NoSQL == Not Only SQL (不仅仅是SQL)

关系型数据库:表格、行、列

泛指非关系型数据库的,随着web2.0互联网的诞生!传统的关系型数据库很难对付web2.0时代!尤其是超大规模的高并发的社区!

NoSQL 特点

1、方便扩展(数据之间没有关系)

2、大数据量高性能(Redis一秒写8万次,读取11万次,NoSQL的缓存记录级,是一种细粒度的缓存,性能会比较高)

3、数据类型的多样性(不需要实现设计数据库,随取随用,如果式数据量十分大的表,就很难精确的设计出来了)

4、传统RDBMS 和 NoSQL

传统的RDBMS(关系型数据库)
- 结构化组织
- SQL
- 数据和关系都存在独单的表中	row column
- 操作、数据定义语言
- 一致性
NoSQL
- 不仅是数据
- 没有固定的查询语言
- 键值对存储,列存储,文档存储,图形数据库(社交关系)
- 一致性
- CAP定理和BASE
- 高性能,高可用,高可扩展

了解 3V + 3 高

大数据时代的3V:主要描述问题的

  1. 海量 Volume

  2. 多样 Variety

  3. 实时 Velocity

大数据时代的3高:主要是对程序的要求

  1. 高并发

  2. 高可扩

  3. 高性能

实践中:NoSQL + RDBMS 一起使用(RDBMS 关系数据库管理系统

# 1、商品的描述
	文档型数据库	MongoDB

# 2、图片
	分布式文件系统		FastDFS
	- 淘宝			TFS
	- Google		  GFS
	- Hadoop		  HDFS
	- 阿里云		    oss

# 3、商品的关键字(搜索)
	- 搜索引擎	solr elasticsearch
	- ISearch: 多隆
	
# 4、商品热门的波段信息
	- 内存数据库
	- Redis、Tair、Memcache..
	
# 5、商品的交易,外部的支付接口
	- 第三方应用
3. NoSQL的四大分类

键值对(key-value)

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

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

列存储数据库

  • HBase
  • 分布式文件系统

图形关系数据库

  • 不是存图形的,存放的是关系,比如:朋友圈社交网络,广告推荐
分类Example举例典型应用场景数据模型优点缺点
键值(key-value)Tokyo Cabinet/Tyrant,Redis,Voldemort,Oracle BDB内容缓存,主要用于处理大量数据的高访问负载,也用于一些日志系统等等Key指向Value的键值对,通常用hash table来实现查找速度快数据五结构化,通常之被当作字符串或者二进制数据
列存储数据库Cassandra,HBase,Riak分布式的文件系统一列簇式存储,将同一列数据存在一起查找速度快,可扩展性强,更容易进行分布式扩展功能相对局限
文档型数据库CounchDB,MongDBWeb应用(与Key-Value类似,Value是结构化的,不同的是数据库能够了解Value的内容)Key-Value对应的键值对,Value为结构化数据数据结构要求不严格,表结构可变,不需要像关系型数据库一样需要预先定义表结构查询性能不高,而且却反统一的查询语法
图形数据库(Graph)Neo4J,InfoGrid,Infinite Graph社交网络,推荐系统等。专注于构建关系图谱图结构利用图结构相关算法。比如最短路径相对寻址,N度关系查找等很多时候需要对整个图做计算才能得出需要的信息,而且这种结构不太好做分布式的集群方案
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/896365.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号