网站建设技术开发,宁波品牌策划公司,网站一年多少钱?,微商城哪个平台做得比较好Nosql概述
为什么要用NoSql#xff1f; 1、单机mysql的年代#xff1a;90年代#xff0c;网站访问量小#xff0c;很多使用静态网页html写的#xff0c;服务器没压力。 当时瓶颈是#xff1a;1)数据量太大一个机器放不下。2)数据的索引(BTree)#xff0c;一个机器内存也…Nosql概述
为什么要用NoSql 1、单机mysql的年代90年代网站访问量小很多使用静态网页html写的服务器没压力。 当时瓶颈是1)数据量太大一个机器放不下。2)数据的索引(BTree)一个机器内存也放不下。3)访问量(读写混合)一个服务器承受不了~ 2、Memcached缓存 Mysql 垂直拆分 读写分离。 如用2台机器的mysql负责读操作一台机器的mysql负责写操作并且同步给其他2机器的mysql然后读操作mysql前面也可以加上一层缓存处理大量读请求。 网站80%的情况都是在读每次都要去查询数据库的话就十分的麻烦!所以说我们希望减轻数据的压力我们可以使用缓存来保证效率! 发展过程︰优化数据结构和索引--文件缓存IO ) --- Memcached (当时最热门的技术!) 3、分库分表 水平拆分mysql集群 如上面2台读mysql的机器和一台写mysql的机器可以组成一个集群1然后另外2台读mysql的机器和一台写mysql的机器(其实也可叫读的mysql为slave写的mysql为master)再组成集群2...集群3这样只在集群1中放1/n的数据所有集群组合成一个完整的数据。用户来读写的时候通过算法再去相应的集群中找。 对于读请求可通过memcache缓存来解决。 对于写请求 早些年MyISAM表锁十分影响效率高并发下会出现严重的所问题 转战InnoDB行锁 慢慢的就开始使用分库分表来解决写的压力。在那个年代MySql就推出了表分区这个并没有多少公司使用。也推出了mysql的集群很好的满足了当时那个年代的需求。 4、如今最近的年代 2010--2020十年之间世界已经发生了翻天覆地的变化;(定位也是一种数据音乐热榜!) MySQL等关系型数据库就不够用了!数据量很多变化很快~! MySQL有的使用它来存储一些比较大的文件博客图片!数据库表很大效率就低了!如果有一种数据库来专门处理这种数据 MySQL压力就变得十分小研究如何处理这些问题!)大数据的IO压力下表几乎没法更大! 为什么要用NoSQL ! 用户的个人信息社交网络地理位置。用户自己产生的数据用户日志等等爆发式增长!这时候 我们就需要使用NoSQL数据库的Nosql可以很好的处理以上的情况! 什么是NoSQL 关系型数据库表格行列 not noly sql 泛指非关系型数据库的。随着web2.0互联网的诞生传统的关系型数据库很难对付web2.0时代尤其是超大规模的高并发的社区!暴露出来很多难以克服的问题NoSQL在当今大数据环境下发展的十分迅速Redis是发展最快的而且是我们当下必须要掌握的一个技术! 很多的数据类型用户的个人信息社交网络地理位置。这些数据类型的存储不需要一个固定的格式!不需要多余的操作就可以横向扩展的! MapString,Object使用键值对来控制! 传统RDBMS和NoSQL区别 传统的 RDBMS -结构化组织- SQL -数据和关系都存在单独的表中 row col -操作操作数据定义语言 -严格的一致性 -基础的事务 ...... Nosql -不仅仅是数据 -没有固定的查询语言 -键值对存储列存储文档存储图形数据库社交关系) -最终一致性 - CAP定理和BASE(异地多活 -高性能高可用高可扩 - .... 大数据时代的3V:主要是描述问题的 1.海量Volume 2.多样Variety 3.实时Velocity 大数据时代的3高:主要是对程序的要求 1.高并发 2.高可拓 3.高性能 真正在公司中的实践: NoSQL RDBMS一起使用才是最强的阿里巴巴的架构演进! 技术没有高低之分就看你如何去使用! NoSQL的四大分类 NoSQL的四大分类 KV键值对∶ ·新浪:Redis ·美团:Redis Tair ·阿里、百度:Redis memecache 文档型数据库( bson格式和json一样)∶ .MongoDB一般必须要掌握) o MongoDB是一个基于分布式文件存储的数据库C编写主要用来处理大量的文档! o MongoDB是一个介于关系型数据库和非关系型数据中中间的产品! MongoDB是非关系型数据库中功能最丰富最像关系型数据库的! . ConthDB 列存储数据库 · HBase ·分布式文件系统 图关系数据库 他不是存图形放的是关系比如︰朋友圈社交网络广告推荐! Neo4j lnfoGrid ; Redis入门
概述 Redis是什么? Redis ( Remote Dictionary Server )即远程字典服务 是一个开源的使用ANSl C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库并提供多种语言的AP. 免费和开源!是当下最热门的NoSQL技术之一!也被人们称之为结构化数据库!Redis 能干嘛? 1、内存存储、持久化内存中是断电即失、所以说持久化很重要( rdb、aof ) 2、效率高可以用于高速缓存 3、发布订阅系统 4、地图信息分析 5、计时器、计数器浏览量!) 6、.……特性 1、多样的数据类型 2、持久化 3、集群 4、事务 注意:Wdinow在 Github上下载停更很久了! ) Redis推荐都是在Linux服务器上搭建的我们是基于Linux学习! 官网
官网https://redis.io 中文网http://redis.cn
Windows下安装Redis
详见hexo笔记springboot21。 Releases · tporadowski/redis · GitHub 可下载msi文件。然后运行安装选择安装目录一路next即可。 然后安装目录根目录即redis-server.exe所在的根目录上方敲cmd使用下面命令开启 服务端启动命令 redis-server.exe redis.windows.conf 客户端启动命令 redis-cli.exe 小bug直接 redis-server.exe redis.windows.conf 起不来需要先根目录上再开一个cmd然后执行redis-cli.exe和shutdown和exit
D:\《D盘主文件夹》\桌面\Redis\Redis5redis-cli.exe
127.0.0.1:6379 shutdown
not connected exitD:\《D盘主文件夹》\桌面\Redis\Redis5
然后再在作为server的根目录上敲的cmd窗口中 redis-server.exe redis.windows.conf 就可成功启动了。 测试 输入ping回车pong 使用 set [key] [value] get [key] Linux下安装Redis 官网https://redis.io 官网中下最新版的redis 下载得到.tar.gz安装包 打开Vmware虚拟机运行linux镜像如centOs7
嫌弃界面不美观的可以ip address查看ens33的inet为当前linux的ip。然后使用finalShelll链接ssh输入ip端口不用输输入linux的登录用户和密码保存和连接即可。 1将下载的安装包.tar.gz拖曳到finalshell的/home/kdy/目录下即上传windows中的安装包到centos7中。 cd /home cd kdy ,ll有安装包再把安装包移动到/opt目录下 mv redis-7.2.0.tar.gz /opt cd /opt ll有这个安装包 2解压缩tar -zxvf redis-7.2.0.tar.gz 得到解压后的redis目录 3.进入解压后的文件可看到redis配置文件 cd redis-7.2.0 ll 里面有个 redis.conf 4.进入解压后的文件后运行yum install gcc-c 安装基本的环境 gcc -v查看版本 5.进入解压后的文件后输入make回车 安装基本的环境 然后再make install