redis——NOSQL及redis概述
NoSql入门概述
单机Mysql的美好时代
瓶颈:
- 数据库总大小一台机器硬盘内存放不下
- 数据的索引(B + tree)一个机器的运行内存放不下
- 访问量(读写混合)一个实例不能承受
Memcached(缓存)+ MySql + 垂直拆分
通过缓存来缓解数据库的压力,优化数据库的结构和索引
垂直拆分指的是:分成多个数据库存储数据(如:卖家库与买家库)
MySql主从复制读写分离
- 主从复制:主库来一条数据,从库立刻插入一条。
- 读写分离:读取(从库Master),写(主库Slave)
分表分库+水平拆分+MySql集群
- 主库的写压力出现瓶颈(行锁InnoDB取代表锁MyISAM)
- 分库:根据业务相关紧耦合在同一个库,对不同的数据读写进行分库(如注册信息等不常改动的冷库与购物信息等热门库分开)
- 分表:切割表数据(例如90W条数据,id 1-30W的放在A库,30W-60W的放在B库,60W-90W的放在C库)
MySql扩展的瓶颈
- 大数据下IO压力大
- 表结构更改困难
常用的Nosql
Redis
memcache
Mongdb
以上几种Nosql 请到各自的官网上下载并参考使用
Nosql 的核心功能点
KV(存储)
Cache(缓存)
Persistence(持久化)
……
大数据时代的3V
海量Volume
多样Variety
实时Velocity
互联网需求的3高
高并发
高可扩
高性能
redis的介绍和特点:
问题:
传统数据库:持久化存储数据。
solr索引库:大量的数据的检索。
在实际开发中,高并发环境下,不同的用户会需要相同的数据。因为每次请求,
在后台我们都会创建一个线程来处理,这样造成,同样的数据从数据库中查询了N次。
而数据库的查询本身是IO操作,效率低,频率高也不好。
总而言之,一个网站总归是有大量的数据是用户共享的,但是如果每个用户都去数据库查询
效率就太低了。
解决:
将用户共享数据缓存到服务器的内存中。
实现:
redis
概念:
redis是一个非关系型C语言开发的基于键值对的数据库
特点:
1、基于键值对
2、非关系型(redis)
关系型数据库:存储了数据以及数据之间的关系,oracle,mysql
非关系型数据库:存储了数据,redis,mdb.
3、数据存储在内存中,服务器关闭后,持久化到硬盘中
4、支持主从同步
总结:
实现了缓存数据和项目的解耦。
数据类型:
String
list
set
sortedset
hash
redis存储的数据特点:
大量数据
用户共享数据
数据不经常修改。
查询数据
redis的应用场景:
网站高并发的主页数据
网站数据的排名
消息订阅
redis——NOSQL及redis概述相关推荐
- Redis:Nosql数据库
Redis Nosql技术 redis介绍 什么是NoSql NoSql是为了解决高并发.高可扩展.高可用以及高写入而产生的数据库解决方案. NoSql就是Not Only sql.Nosql是非关系 ...
- Java猿社区—Redis一篇系列—第一章、NoSql入门和概述
欢迎关注作者博客 简书传送门 专栏传送门:Redis深入学习之路 文章目录 前言 1.NoSql入门和概述 1.1.入门概述 1.1.1.为什么用NoSql? 单机MySQL的美好年代 Memcach ...
- NoSQL之Redis非关系数据库(redis概述,持久化,RDB持久化,AOF持久,内存碎片)
关系型数据库与非关系型数据库 关系型数据库与菲关系型数据库 关系型数据库 非关系型数据库 非关系型数据库产生背景 Redis简介 Redis配置文件 Redis的安装 安装环境 Redis数据库常用命 ...
- redis(nosql数据库)
概述 redis是一种nosql数据库,他的数据是保存在内存中,同时redis可以定时把内存数据同步到磁盘,即可以将数据持久化,并且他比memcached支持更多的数据结构(string,list列表 ...
- NOSQL的Redis的基础
目录 一.NoSQL概述 1. 数据库类型 二. 部署Redis服务 1.安装Redis 2.验证服务 三. Redis数据类型及操作 1.字符串的概述 2.字符串操作命令 3.字符串实践 4.散列类 ...
- Redis 学习笔记-NoSQL数据库 常用五大数据类型 Redis配置文件介绍 Redis的发布和订阅 Redis_事务_锁机制_秒杀 Redis应用问题解决 分布式锁
1.NoSQL数据库 1.1 NoSQL数据库概述 NoSQL(NosQL = Not Only sQL ),意即"不仅仅是sQL",泛指非关系型的数据库.NoSQL不依赖业务逻辑 ...
- application实现网页计数_SpringBoot整合NoSQL 数据库(Redis)实现缓存
1.概述 随着互联网技术的发展,对技术要求也越来越高,所以在当期情况下项目的开发中对数据访问的效率也有了很高的要求,所以在项目开发中缓存技术使用的也越来越多,因为它可以极大的提高系统的访问速度,关于缓 ...
- NoSQL之Redis配置与数据库常用命令
目录 一.关系型数据库与非关系型数据库概述 1.1 关系型数据库 1.2 非关系型数据库 二.关系型数据库与非关系型数据库的区别 2.1 数据的存储方式不一样 2.2 扩展的方式不同 2.3 对事务性 ...
- Redis学习 - NoSQL简介、redis安装、redis基础知识、数据类型、持久化、订阅发布、主从复制、哨兵模式、缓存击穿和雪崩
学习视频地址:https://www.bilibili.com/video/BV1S54y1R7SB 完结撒花,感谢狂神 文章目录 1. NoSQL 1.1 单机Mysql的演进 1.2 当今企业架构 ...
最新文章
- Android实现RecyclerView侧滑删除和长按拖拽-ItemTouchHelper
- java agv,Java 访问控制关键字
- 一句话评论设计模式六大原则
- 《系统集成项目管理工程师》必背100个知识点-80项目变更管理在软件项目管理中的主要活动内容...
- FPGA实现OV5640摄像头及RGB图像数据采集
- js数组初始化——ES6 Array.prototype.fill()实践记录
- Android Caused by: java.lang.IllegalArgumentException: column '_id' does not exist
- python 操作系统学习_操作系统学习
- Windows下配置Squid反向代理服务器
- 心音与心电信号分析之一--6.26--心音信号数字滤波
- 基于迁移学习的mini-imagenet数据分类实践
- mysql lower case_mysql lower-case-table-names参数
- 未来计算机二级软件vc,江苏省计算机二级VC++上机模拟软件
- 胡乱翻译Apache Ignite(一)
- 计算器linux源码,强悍的C++程序实现计算器的linux源程序(国外英文资料).doc
- 一文读懂自然语言处理NLP (简单详细的综述)
- 10种网站推广的常用方法
- windows10家庭版修改中文用户名完美解决
- 转载 解密蓝牙mesh系列 | 第五篇 【好友(Friend)和低功耗节点(LPN)】【友谊(Friendship)参数】【友谊建立】【友谊(Friendship)消息传送】【安全性】【友谊终止】
- 《STL源码剖析》问题总结
热门文章
- python入门及日常应用_python的日常应用-入门篇02
- 冠榕智能灯光控制协议分析(controller init)
- asterisk配置会议室meetme.conf
- 设计模式C++实现(4)——原型模式、模板方法模式
- 210板wince键盘驱动分析和移植
- mysql列调换位置_mysql互换表中两列数据方法
- html仿qq最小化怎么实现,JS仿QQ好友列表展开、收缩功能(第一篇)
- 【转】DCMTK开源库的学习笔记1:将DCM文件保存成BMP文件或数据流(即数组)
- python输入城市名称_python 查询天气(输入城市名,输出天气)
- 计算机文化基础论述题,计算机文化基础复习题六