七天玩转Redis | 打卡第3天 Redis地理位置、基数统计、位图场景使用详解
今天主要学习了Redis中的三种特殊数据类型Gaospatial地理位置、Hyperloglog基数统计、Bitmap位图场景。
Gaospatial地理位置
-- 添加一个或多个地理位置的坐标
GEOADD key longitude latitude member [longitude latitude member ...]
key为该地理位置的索引
longitude表示该位置的经度
latitude表示该位置的纬度
member表示地名
[longitude latitude member ...]表示可以重复添加,中间以空格分隔
-- 查询一个或多个地理位置坐标
GEOPOS key member [member ...]
key表示输入时该地理位置的索引
member表示地理位置的名称,可以输入多个中间以空格分开
-- 查询两地之间的距离
GEODIST key member1 member2 [unit]
key为要查询的两个地理位置的索引,注意两个地理位置需要使用同一个索引,
member1为第一个位置名称
member2为第二个位置名称
[unit]为显示的单位,可以是m(米,默认)、km(千米)、ft(英尺)、mi(英里)
-- 以坐标为中心来范围搜索地理位置
GEORADIUS key longitude latitude radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count] [ASC|DESC]
key为要查询的地理位置的索引
longitude为该地理位置的经度
latitude为该地理位置的纬度
radius表示要查询的半径
m|km|ft|mi表示单位
[WITHCOORD]可选,表示是否输出经纬度
[WITHDIST]可选,表示是否输出距离
[WITHHASH]可选,表示是否输出哈希值
[COUNT count]可选,表示输出几个数据
[ASC|DESC]可选,表示按照距离升序还是降序排列,ASC升序,DESC降序
-- 以位置为中心来范围搜索地理位置
GEORADIUSBYMEMBER key member radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count] [ASC|DESC]
key为要查询的地理位置的索引
member为要作为中心点的地理位置
radius表示要查询的半径
m|km|ft|mi表示单位
[WITHCOORD]可选,表示是否输出经纬度
[WITHDIST]可选,表示是否输出距离
[WITHHASH]可选,表示是否输出哈希值
[COUNT count]可选,表示输出几个数据
[ASC|DESC]可选,表示按照距离升序还是降序排列,ASC升序,DESC降序
Hyperloglog基数统计
基数:指的是统计一批数据中的抛去重复元素后数据的个数
使用基数统计的优势就是内存是固定的,使用内存非常小,可以减轻内存的使用,提升查询的效率!
-- 创建一组数据
PFADD key element [element ...]
key为数据集的索引
element为数据集中的数据,可以输入多个,中间以空格分隔
-- 统计数据集的基数数量
PFCOUNT key [key ...]
key为要查询的数据集的索引,可以输入多个,以空格分开
-- 合并数据集
PFMERGE destkey sourcekey [sourcekey ...]
destkey为要合并到的数据集的名称
sourcekey为要合并的数据集的索引,可以存在多个,中间以空格分隔
Bitmap位图场景
在Redis中的Bitmap位图是通过操作二进制位来实现的,在其中存储的数据要么是0,要么是1。
使用场景:可用于表示用户的活跃状态,或者公司员工的打卡状态。
-- 输入位图数据集
SETBIT key offset value
key为该数据集的索引
offset为要输入的数据的下标
value为要输入的数据,0或1
-- 统计“1”的个数
BITCOUNT key [start end]
key表示位图数据集的索引
[start end]表示开始和结束的下标,默认不写就是统计数据集中所有数据
学习总结
这三种类型,与昨天的五种类型相比,可能不常使用,但是如果在对应场景下,使用这三种类型的效率,是非常高的。
相关推荐
【信息科学与工程学】【广告科学】第四十四篇 广告平台投放和广告计费类算法01
全行业的中国企业广告投放模型总表。行业分类依据《国民经济行业分类》(GB/T 4754—2017)的门类/大类 ,产品层参考"主营产品统计代码"行业—产品映射 ,平台算法以巨量引擎、腾讯广告等官方文档为硬支撑 ,合规部分严格对齐《互联网广告管理办法》以及2026年市场监管部门最新合规提示 。编号类型(门类)行业(大类)企业及产品内容列表投放模型投放平台投放人群欲望激发维度面向人群模式(地域/文化/年龄/角色)001A 农林牧渔01 农业北大荒/中粮:五常大米、面粉、食用油、杂粮品牌曝光 + 电商转化双轨(C
JEP30-PX100A PartModel Product Guidelines for Electronic-Device Substrates and Assemblies – XML Requ
JEP30-PX100A PartModel Product Guidelines for Electronic-Device Substrates and Assemblies – XML Requirements
基于Matlab的自动睡眠粒状结构检测算法,从脑电信号中进行。.zip
1.版本:matlab2014a/2019b/2024b 2.附赠案例数据可直接运行。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
JEP375 2.5D_3D Silicon thinned wafers with Through Silicon Vias (TSV’s) and Backside Redistribution
JEP375 2.5D_3D Silicon thinned wafers with Through Silicon Vias (TSV’s) and Backside Redistribution Layer (RDL).pdf
考虑供电可靠性与算力柔性的数据中心园区源‑储‑荷一体化规划研究(Matlab代码实现)
考虑供电可靠性与算力柔性的数据中心园区源‑储‑荷一体化规划研究(Matlab代码实现)内容概要:本文围绕“考虑供电可靠性与算力柔性的数据中心园区源-储-荷一体化规划”展开研究,提出了一种综合能源系统优化规划方法。该方法充分考虑数据中心对供电可靠性的高要求以及算力负载的灵活性特征,将电力供应、储能配置与计算负荷进行协同优化。通过建立数学模型,整合光伏发电、储能系统与数据中心负荷调度,利用Matlab代码实现优化求解,旨在提升能源利用效率、降低运营成本并增强系统韧性。研究涵盖了对新能源出力不确定性、负荷波动以及储能动态行为的建模与仿真分析,最终验证了所提一体化规划方案在提高供电可靠性和实现算力资源柔性调度方面的有效性。; 适合人群:具备一定电气工程、能源系统或计算机科学背景,从事数据中心、智能电网、综合能源系统等相关领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:① 为数据中心园区的绿色低碳与高可靠运行提供规划设计方案;② 实现可再生能源的高效消纳与储能系统的优化配置;③ 探索算力作为柔性负荷参与电力系统互动的潜力,支撑新型电力系统建设。; 阅读建议:此资源以Matlab代码为核心,辅以理论模型,建议读者在理解基本原理的基础上,动手运行和调试所提供的代码,通过修改参数和场景设置来深入掌握一体化规划的优化逻辑与关键技术细节。


