

在物联网(IoT)应用中,遥测数据的收集和存储至关重要。ThingsBoard 是一个开源物联网平台,支持设备管理、数据可视化和分析。 CnosDB 是一个高性能的时序数据库,专为处理大量时间序列数据而设计。本文将介绍如何将 ThingsBoard 与 CnosDB 集成,以存储和管理遥测数据。
环境准备
在开始之前,请确保您已准备好以下环境:
-
Docker:运行 ThingsBoard 以及 CnosDB 的容器。
-
开发环境: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:

最低0.47元/天 解锁文章
726

被折叠的 条评论
为什么被折叠?



