ITPub博客

首页 > 大数据 > 数据分析 > 淘宝当天新店旺旺采集软件 新开店铺链接提取工具分析

淘宝当天新店旺旺采集软件 新开店铺链接提取工具分析

数据分析 作者:孙哥说天下 时间:2021-03-10 10:39:39 0 删除 编辑

Redis数据结构

redis是一个C语言开发的高性能的内存型键值对NoSql数据库


5种常见数据类型

字符串String

能表示字符串、整数、浮点数

常见操作


set key value

get key

getset key value

setnx key value

append key value 向尾部追加

strlen key

incr key

incrby key increment 增加指定整数

decr

10.decrby key increment

集合 set

无序唯一元素,个数2^32-1


sadd key m1 m2

srem

smembers

spop

srandmember

scard

sismember

sinter

sdiff

10.sunion

适用于不能重复且不需要顺序结果的数据结构,比如spop随机抽奖


有序集合 sorted set

zset 有序集合,元素本身是无序不重复

zadd

zrem

zcard

zcount

zincrby

zscore

zrank

zrevrank

zrange

zrevrange


可以用于各种排行榜


列表

list可以表述存储有序、可重复元素,最多为2^32-1个元素,为一个双向链表,可作为栈或队列使用


lpush/rpush key v1 v2

lpop/rpop key

lpushx key v1 将值插入到列表头部

rpushx

blpop key timeout 空时候阻塞

brpop

llen

lindex key index

lrange

lrem key count value

lset key index vallue

ltrim

rpoplpush key1 key2

brpoplpush

linsert

Hash哈希

是一个string类型的field和value映射表,提供了字段和字段值映射


hset

hmset

hsetnx

hexists

hget

hmget

hgetall

hdel

hincrby

10.hlen

3种不常见数据类型

bitmap位图类型

bitmap是进行位操作的,通过一个bit位来表示某个元素对应的值或者状态,其中key就是对应元素本身。bitmap本身会极大节省存储空间


setbit key offset value 设置key在offset处的bit值

getbit key offset 获得key在offset处的bit值

bitcount key 获得key的bit位位1的个数

bitpos key value 返回第一个被设置为bit值得索引值

bittop and/or/xor/not destkey key [key…] 对多个key进行逻辑后运算后存入destkey中

应用场景:

6. 每月用户签到,用户id为key,日期作为偏移量1表示签到

7. 统计活跃用户,日期为key,用户id为偏移量1表示活跃

8. 查询用户状态,日期为key,用户id为偏移量1表示在线


geo地理位置类型

redis用来处理位置信息,原理是Z阶曲线。在x,y轴上的十进制转换成二进制数,采用x轴和y轴对应的二进制数依次交叉后得到一个六位数编码。把数字从小到大依次连接起来的曲线称为Z阶曲线,Z阶曲线是吧多维转换成1维的一种方式,然后利用Base32这种数据编码机制,主要用来把二进制数据编码成可见字符串


geoadd key 经度 纬度 成员名称1 经度1 纬度1 成员名称2

geohash key 成员名称1 成员名称2 返回标准的hash串

geopos key 成员名称1 成员名称2

geodist key 成员1 成员2

georadiusByMember key 成员 值单位 根据成员查找附近的成员

应用场景:记录地理位置,计算距离,查找“附近的人”


stream数据流类型

stream 是redis5.0之后新增的数据结构,用于可持久化的消息队列,几乎满足了消息队列的全部内容,包括: 消息ID的序列化生成、消息的遍历、消息的阻塞和非阻塞读取、消息的分组消费、未完成消息的处理、消息队列得监控


xadd key id<*> field1 value1

xread

xrange

xrevrange

xdel

xgroup create/destroy key

xgroup delconsumer key groupname cname

xreadgroup group groupname consumer count streams key

Redis常用命令

keys pattern 返回满足指定pattern的所有key

del key

exists key

expire key ttl 指定key的过期时间

rename oldkey newkey

type key

Redis过期机制

缓存过期和淘汰策略

redis性能影响因素

长期使用,key会不断增加,redis作为缓存使用,物理内存也会满

内存与硬盘交换,虚拟内存,频繁IO性能急剧下降


redis设置maxmemory

不设置场景:Redis的key是固定的,不会增加,作为DB使用,保证数据完整性,不能淘汰,可以做集群,便于横向扩展。缓存淘汰策略:禁止驱逐maxmemory-policy noeviction

设置场景:redis作为缓存使用,不断增加key,一般设置为物理内存的3/4在redis.conf中maxmemory 1024mb,如果设置了maxmemory,那么久需要设置 maxmemory-policy



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69990899/viewspace-2762068/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
需要采集软件+1143561141(客服V❤)

注册时间:2020-12-16

  • 博文量
    36
  • 访问量
    41003