当前位置: 首页 > article >正文

Redis新操作

1.Bitmaps

1.1概述

Bitmaps可以对进行操作,实际上它就是一个字符串,可以将Bitmaps想象为一个以位为单位的数组,数组中的每个元素只能存储0或者1,数组的下标在Bitmaps被称为偏移量。

  • setbit key offset value:设置offset位为value,offset偏移量从0开始。

  • getbit key offset:获取某个偏移量的值。

  • bitcount key:统计比特值为1的数量。

  • bitop and(or/xor) destkey key1 key2....:将key1和key2做复合操作,将结果放到destkey中。

案例:可以用来统计网站某两天内有哪些共同用户访问。

 

 

1.2Bitmap和Set做比较

Bitmap的优势

 发现在活跃用户量大的情况下,Bitmaps比set更加的节省内存空间。

Bitmap的劣势

发现在活跃用户量较少的情况下,还是set会比较好。

2.HyperLogLog

当我们遇到统计相关的需求时,因为要考虑到去重,所以我们经常会使用set,但是随着数据不断增加,会导致占用空间越来越大。为了降低一定的精度来平衡存储空间,推出了HyperLogLog,它计算基数所需的空间总是固定的,并且是很小的。

但是,HyperLogLog只会根据输入元素来计算基数的个数,并不能输出里面的元素。

  • pfadd key element1 element2....:添加指定的元素。

  • pfcount key:统计元素个数。

  • pfmerge destkey key1 key2:将key1和key2中的元素合并去重放到destkey中。

3.Geospatial

Redis增加了地理信息的支持,注意输入的经纬度的格式必须是:(121.43333,34.50000) 这种。

  • geoadd key 经度 纬度 城市名 .....:添加经纬度。

  • geopos key 城市名:获取指定地区的坐标值。

  • geodist key 城市1 城市2 m/km:获取两个城市之间的直线距离。

  • georadius key 经度 纬度 半径 单位:给定经纬度为中心,找出某一半径内的元素。


http://www.kler.cn/a/132771.html

相关文章:

  • 【Linux学习】【Ubuntu入门】1-4 ubuntu终端操作与shell命令1
  • Spring Boot教程之Spring Boot简介
  • 爬取链家二手房房价数据存入mongodb并进行分析
  • 后台管理系统(开箱即用)
  • 论文笔记 SuDORMRF:EFFICIENT NETWORKS FOR UNIVERSAL AUDIO SOURCE SEPARATION
  • Ubuntu VNC Session启动chromium和firefox报错
  • 12-使用vue2实现todolist待办事项
  • JS 读取excel文件内容 和 将json数据导出excel文件
  • Flume学习笔记(1)—— Flume入门
  • 计算机毕业论文内容参考|基于深度学习的交通标识智能识别系统的设计与维护
  • BeautifulReport测试报告框架
  • Vite - 配置 - 文件路径别名的配置
  • ubuntu20.04中编译zlib1.2.11(源码编译)
  • Linux网络之传输层协议tcp/udp
  • 基于数据库(MySQL)与缓存(Redis)实现分布式锁
  • 【Git学习二】时光回溯:git reset和git checkout命令详解
  • C#可空类型
  • 使用WildCard充值ChatGPT Plus 会员
  • 万宾科技智能井盖传感器,提升市政井盖健康
  • 技术实践|高斯集群服务器双缺省网关故障分析
  • QQ五毛项目记
  • jbase打印导出实现
  • 大模型的全面回顾,看透大模型 | A Comprehensive Overview of Large Language Models
  • python的文件目录操作 1
  • 计算机视觉基础(9)——相机标定与对极几何
  • Vue 路由props 多路由参数时使用