RedisTimeSeries¶
RedisTimeSeries是一个添加时间序列数据结构的Redis模块。
特性¶
了解更多关于v1.0 GA特性的信息在这里.
- 高容量插入,低延迟读取
- 按开始时间和结束时间查询
- 任何时间桶的聚合查询(Min, Max, Avg, Sum, Range, Count, First, Last, STD.P, STD.S, Var.P, Var.S)
- 可配置最大保留期
- 下行采样/压缩-自动更新聚合时间序列
- 二级索引-每个时间序列都有标签(字段值对),允许按标签查询
客户端库¶
Python、Java、JavaScript、Ruby、Go、c#、Rust和PHP的官方和社区客户端库。
看到客户端页面查看完整列表。
与其他工具一起使用度量工具¶
在RedisTimeSeries你可以找到帮助你集成RedisTimeSeries与其他工具的项目,包括:
- 普罗米修斯-读/写适配器使用RedisTimeSeries作为后端db。
- Grafana 7.1 +——使用复述,数据源.
- 电报
- StatsD,石墨导出使用石墨协议。
内存模型¶
时间序列是内存块的链表。每个块都有预定义的样本大小。每个样本是一个包含时间和128位值的元组,其中64位是时间戳,64位是值。
设置¶
您可以在云中、在Docker容器中或在您自己的机器上设置RedisTimeSeries。
复述,云¶
RedisTimeSeries可在所有的Redis云托管服务,包括一个完全免费的托管数据库高达30MB。
码头工人¶
要快速试用RedisTimeSeries,请使用docker启动一个实例:
码头工人运行- p6379:6379 -它——rm redislabs/redistimeseries
下载并运行二进制文件¶
首先下载预编译的版本RedisLabs下载中心.
接下来,使用RedisTimeSeries运行Redis:
$ rediss -server——loadmodule /path/to/module/redistimeseries.so
自己构建并运行它¶
您还可以在自己的机器上构建和运行RedisTimeSeries。
支持主要的Linux发行版以及macOS。
需求¶
首先,从git中克隆RedisTimeSeries存储库:
git clone——recursive https://github.com/RedisTimeSeries/RedisTimeSeries.git
然后,要安装所需的构建构件,调用以下代码:
cd RedisTimeSeries设置
或者您可以手动安装所需的依赖项system-setup.py.
如果使
,以下命令是等价的:
/ deps决心/ bin / getpy3。/ system-setup.py
请注意,system-setup.py
将在您的系统上安装各种包使用本机包管理器和pip。这需要Linux的根权限(即sudo)。
如果你不想这样,你可以:
- 查看system-setup.py并手动安装包,
- 利用Python虚拟环境,
- 使用Docker与
——体积
选项创建隔离的构建环境。
构建¶
使构建
二进制工件放置在箱子
目录中。
运行¶
在你的redis-server中运行:loadmodule bin / redistimeseries.so
有关模块的更多信息,请访问复述,官方文档.
试一下¶
在设置了RedisTimeSeries之后,您可以使用redis-cli与它进行交互。
在这里,我们将创建一个表示传感器温度测量的时间序列。创建时间序列后,可以发送温度测量值。然后可以查询某条聚合规则某一时间段的数据。
与redis-cli
¶
redis-cli美元127.0.0.1:6379> TS.CREATE温度:3:11 RETENTION6000标签sensor_id2area_id32好吧127.0.0.1:6379 > TS.ADD温度:3:11154814918130.好吧127.0.0.1:6379 > TS.ADD温度:3:11154814919142好吧127.0.0.1:6379 > TS.RANGE温度:3:1115481491801548149210聚合avg51)1)(整数)15481491802)“30”2)1)(整数)15481491902)“42”
邮寄名单/论坛¶
有问题吗?请随便问RedisTimeSeries邮件列表.
许可证¶
Redis源代码可用许可协议-参见许可证