noSQL-redis学习(一)

来源:互联网 发布:传智大数据百度云 编辑:程序博客网 时间:2024/05/21 15:43

  为什么用nosql,随着web2.0的快速发展,非关系型、分布式数据存储得到了快速的发展,它们不保证关系数据的ACID特性。NoSQL概念在2009年被提了出来。NoSQL最常见的解释是“non-relational”,“Not Only SQL”也被很多人接受。nosql数据库具有非常高的读写性能,尤其是在大数据量下,同样非常优秀,这得益于它的无关系型,数据库的结构简单。像mysql使用query cache,每次表的更新Cache就失效,是一种大粒度的cache.针对web2.0的交互频繁的应用,cache性能不高,而nosql的cache是记录级的。是一种细粒度的cache。所以,nosql在这个层面上来说就要性能高很多了。

  nosql其中有Redis,memcache,Mongdb.本文只对redis进行学习笔记的记录。

 互联网下的大数据3V+3高。

大数据的3V

1.     海量的Volume

2.     多样的Variety

3.     实时Velocity.

互联网需求的3高

1.     高并发,

2.     高可扩,

3.     高性能。

Redis

  Redis是nosql的一种,redis是互联网发展的产物,作为key—value的高效存储系统,为互联网应用提供高效的解决方案。redis提供了基本的数据结构list、set、map,还支持java、c++、.net等众多语言调用。redis存储的数据一般放在内存当中,这样加快了读取速度。

redis是一种非关系型数据存储工具,这区别于传统的关系型数据库(像mysql等),类似于memcache,并且其内部集成了对list(链表)、set(集合)的操作,可以很方便快速的处理数据(像插入、删除list取交集 并集 差集等),这极大的减轻了底层数据库的压力,并且给用户更快的响应速度。

   redis与其他 key - value 缓存产品有以下三个特点

l  Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用

l  Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储

l  Redis支持数据的备份,即master-slave模式的数据备份

 

redis能够做什么

内存存储和持久化:redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务

取最新N个数据的操作,如:可以将最新的10条评论的ID放在Redis的List集合里面

模拟类似于HttpSession这种需要设定过期时间的功能

发布、订阅消息系统

定时器、计数器

 

下载Redis

  https://redis.io/

Redis 怎么玩

       数据类型、基本操作和配置

       持久化和复制,RDB/AOF

       事务的控制

       复制

       ......

Redis 的安装  >>>> 本文只对Linux安装进行分析

       从官网上下载redis-3.2.8.tar.gz,版本已最新官网为例,将它放入我们的Linux目录/usr/local

       解压>>>  :tar -zxvfredis-3.0.4.tar.gz

       解压完成后出现文件夹 redis-3.2.8

       进入目录:cd redis-3.2.8

       在redis-3.2.8目录下执行make命令

       如果make完成后继续执行make install

查看Redis安装目录下的src cd /usr/local/redis-3.2.8/src/

  目录中包含

      redis-benchmark:性能测试工具,可以在自己本机运行,看看自己本机性能如何

redis-check-aof:修复有问题的AOF文件,rdb和aof后面分析

redis-check-dump:修复有问题的dump.rdb文件

redis-cli:客户端,操作入口

redis-sentinel:redis集群使用

redis-server:Redis服务器启动命令

 

Redis的启动

  进入cd /usr/local/redis-3.2.8/src/目录

  启动redis  >>>> ./redis-service../redis.conf

这样的话不是后台启动,使得自己不能操作控制台,按ctrl+c结束。

修改redis.conf文件将里面的daemonize no 改成 yes,让服务在后台启动

重新启动Redis会发现,启动完之后可以操作控制台。

继续./redis-cli -p 6379 使用客户端登陆redis,就可以操作redis了。

 

Redis的关闭。

l  单实例关闭:redis-cli shutdown

l  多实例关闭,指定端口关闭:redis-cli -p 6379 shutdown

  

1 0
原创粉丝点击