利用ThingsBoard与CnosDB高效存储遥测数据的实践

ThingsBoard与CnosDB集成存储遥测数据

real_-jansen-hM3x6-9bdYw-unsplash(1).jpg
在这里插入图片描述

在物联网(IoT)应用中,遥测数据的收集和存储至关重要。ThingsBoard 是一个开源物联网平台,支持设备管理、数据可视化和分析。 CnosDB 是一个高性能的时序数据库,专为处理大量时间序列数据而设计。本文将介绍如何将 ThingsBoard 与 CnosDB 集成,以存储和管理遥测数据。

环境准备

在开始之前,请确保您已准备好以下环境:

  1. Docker:运行 ThingsBoard 以及 CnosDB 的容器。

  2. 开发环境:Python、Java 或其他编程语言,用来运行程序模拟 IoT 设备。

步骤一:启动 CnosDB

CnosDB 的安装运行可以参考官方文档。运行如下命令,通过 Docker 启动 CnosDB:

docker network create tb-cnosdb
docker run -d --name cnosdb --network tb-cnosdb cnosdb/cnosdb:community-latest

执行 SHOW DATABASES 命令,验证 CnosDB 是否成功启动:

docker exec cnosdb curl -s -X POST -u 'root:' 'http://127.0.0.1:8902/api/v1/sql' -d 'SHOW DATABASES'

若输出如下数据,则说明 CnosDB 启动并初始化成功:

database_name
cluster_schema
public
usage_schema

步骤二:启动 ThingsBoard(CnosDB)

以 ThingsBoard v3.7 为基础开发,添加了使用 CnosDB 存储时序数据的功能,获取安装包请扫描文末二维码,添加CC为好友。

通过设置配置文件中的 database.ts.type=cnosdb 或环境变量 DATABASE_TS_TYPE=cnosdb 来启动 ThingsBoard 的混合模式(实体数据存储至 PostgreSQL,时序数据存储至 CnosDB)。

在通过混合模式启动 ThingsBoard 时,需要额外配置时序数据库的部分,以下介绍时序数据库 CnosDB 的相关配置项:

  • cnosdb.host 或环境变量 CNOSDB_HOST - 数据库 JDBC 服务的 IP 和端口号,默认为 127.0.0.1:8904

  • cnosdb.tenant 或环境变量 CNOSDB_TENANT - CnosDB 租户名称,默认为 cnosdb

  • cnosdb.database 或环境变量 CNOSDB_DATABASE - CnosDB 数据库名称,默认为 ThingsBoard

  • cnosdb.user 或环境变量 CNOSDB_USER - CnosDB 用户名。

  • cnosdb.password 或环境变量 CNOSDB_PASSWORD - CnosDB 密码。

配置文件示例:

cnosdb:
  host: 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CnosDB

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值