redis安装
接着上面博客的所有步骤安装
适用于并发型的数据(数据量一定要大,才能看出区别)
[root@minbigdata ~]# cd /opt/bigdata/spark243/sbin/
[root@bigdata sbin]# cd /opt/
//下载
[root@bigdata opt]# wget http://download.redis.io/releases/redis-2.8.17.tar.gz
//解压
[root@bigdata opt]# tar -zxvf redis-2.8.17.tar.gz
//编译
[root@bigdata redis-2.8.17]# make
//进入绑定ip地址
[root@bigdata redis-2.8.17]# vi redis.conf
bind 192.168.56.101
//启动redis服务
[root@bigdata redis-2.8.17]# ./src/redis-server redis.conf
光学不想不行,光想不学也不行。学与想结合才行。
//进行连接Redis命令用于redis服务上执行操作
[root@bigdata ~]# cd /opt/redis-2.8.17/src/
[root@bigdata src]# ls
redis-cli //要进行黑界面登录
//在远程服务上执行命令
[root@bigdata src]# ./redis-cli -h 192.168.56.101 -p 6379
//以键值队的的方式存储数据(kv值)
//存取数据时,一定要转成序列化(不管你是Java还是大数据),(v值,k键可以随便塞)千万不要直接存储数据。
//增加
192.168.56.101:6379> set mykey hello,world
OK
192.168.56.101:6379> get mykey
"hello,world"
//修改(按照哈希MAP的惯例,就是覆盖)
192.168.56.101:6379> set mykey hello,world!!!
OK
192.168.56.101:6379> get mykey
"hello,world!!!"
//移除
192.168.56.101:6379> del mykey
(integer) 1
//查找
192.168.56.101:6379> get mykey
(nil)
192.168.56.101:6379>
//mget key1 [key2] 获取所有(一个或多个)给key的值 关注哈希(Hash)
//Redis hash 是一个string类型的field和value的映射表,哈市特别适合用于存储对象。可以存储2^32-1键值队 (40多亿) 前提要对《Java版数据结构》有所学习哈希表和哈希化
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190901223838723.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1RUMTU3NTEwOTc1NzY=,size_16,color_FFFFFF,t_70)
当数据量达到70w亿次时,方法就是—数据分布均匀
以上不够完美,下面是用链表地址法
使用位运算,变成二进制数,想做向右移位,非常接近cpu的电器指令(1 ,0 ),使用此方法处理百亿级(PB级以上)大数据时,数据运算非常快。
以哈希化处理数据在内存里面的栈(非常有序)堆(本质上虚拟机垃圾回收器启动时,会自己进行排序(布局有序))中。
//在大哈希MAP中有放了一个小哈希MAP,用键做哈希值,往对象里面塞取
192.168.56.101:6379> hmset mykey a1 hello a2 world a3 hehehe
OK
192.168.56.101:6379> hget mykey a2
"world"
//退出
192.168.56.101:6379> quit
[root@bigdata src]#