docker 部署 Apache IoTDB

一、基本概念 IoTDB是一款针对时间序列数据收集、存储与分析一体化的数据管理引擎。它具有体量轻、性能高、易使用的特点,完美对接Hadoop与Spark生态,适用于工业物联网应用中海量时间序列数据高速写入和复杂分析查询的需求 。是一款专为物联网时序数据打造的数据库,提供数据采集、存储、分析的功能。它具有体量轻、性能高、易使用的特点,完美对接Hadoop与Spark生态,适用于工业物联网应用中海量时间序列数据高速写入和复杂分析查询的需求 。IoTDB是清华大学主导的Apache孵化项目,是Apache Flink、Apache Spark等大数据开源项目的核心组件之一。

IoTDB的架构采用存储和查询分离的架构,将底层存储开放给上层应用,一份数据既支持实时查询,也支持大数据分析,避免了数据迁移代价。
IoTDB的功能特点包括:

开放的架构:采用存储和查询分离的架构,将底层存储开放给上层应用,一份数据既支持实时查询,也支持大数据分析,避免了数据迁移代价。- 新型文件格式:采用了新型文件格式,支持高效的压缩和索引算法,提高了存储效率和查询速度。- 高性能:通过优化查询算法和数据结构,提高了查询效率和响应速度。- 易使用:支持SQL语言、JDBC标准API和易于使用的导入/导出工具。与先进的开放源码生态系统无缝集成。

二、docker下的部署

使用Docker来部署IotDB,并将其文件映射到/opt/IotDB目录下。

  1. 下载IoTDB的Docker镜像:在终端中输入以下命令,以从Docker Hub下载IoTDB的最新版本的Docker镜像:
bash 复制代码
docker pull apache/iotdb
  1. 创建一个本地目录,用于存储IoTDB的数据文件:
bash 复制代码
mkdir -p /data/IotDB
  1. 将本地目录挂载到容器中的/opt/IotDB目录下:
bash 复制代码
docker run -d \
  -p 6667:6667 \     # IoTDB 客户端端口(JDBC、Thrift协议)
  -p 31999:31999 \   # IoTDB 的DataNode RPC端口(集群间通信)
  -p 8181:8181 \     # IoTDB 的Web服务端口(监控、REST API)
  --name some-iotdb \ # 容器名称
  apache/iotdb \     # Docker镜像名称
  -m /data/IotDB     # 挂载点参数(指定数据存储路径)
  1. 现在,您可以将数据文件复制到本地目录中,并使用Tsfile格式进行存储。例如,将数据文件复制到/data/IotDB目录下:
bash 复制代码
cp your_data_file.tsfile /data/IotDB

5、进入容器:

bash 复制代码
docker exec -it some-iotdb /bin/bash
  1. 在IoTDB容器中启动Tsfile存储引擎:
bash 复制代码
start-tsfile.sh

开启 Mqtt 服务

进入iotdb的docker

bash 复制代码
docker exec -it ad9b18f8bff3 /bin/bash 

编辑配置文件

bash 复制代码
vi iotdb/conf/iotdb-engine.properties

开启服务,根据自己的需要,配置ip和端口等。

bash 复制代码
####################
### MQTT Broker Configuration
####################

# whether to enable the mqtt service.
enable_mqtt_service=false   # 修改成 true , 代表开启 mqtt服务

# the mqtt service binding host.
mqtt_host=0.0.0.0 # ip

# the mqtt service binding port.
mqtt_port=1883  # 端口

# the handler pool size for handing the mqtt messages.
mqtt_handler_pool_size=1

# the mqtt message payload formatter.
mqtt_payload_formatter=json  # 数据格式

# max length of mqtt message in byte
mqtt_max_message_size=1048576

重启服务,如果不会,就重启docker镜像。

iotdb 基础操作

bash 复制代码
启动服务: sbin/start-client.sh
root@ad9b18f8bff3:/iotdb/sbin# 
./start-cli.sh

官方仓库说明:

bash 复制代码
https://hub.docker.com/r/verdureorange/iotdb_arm

直接拉取镜像:

bash 复制代码
docker pull verdureorange/iotdb_arm:v0.13
相关推荐
螺蛳粉 螺蛳粉10 小时前
第 05 篇:etcd 深入:Raft 共识、watch 机制与快照备份恢复实战(底座认知 05)
docker·云原生·容器·kubernetes·etcd·分布式存储·kube-apiserver
PellyKoo13 小时前
【docker】cifs卷改smb密码后容器起不来的解决方法
运维·docker·容器
时早玖沐13 小时前
放弃 QQ 官方机器人:用 SnowLuma + AstrBot 自建 QQ 机器人
docker·开源·agent
阿标在干嘛14 小时前
容器编排的“场景适配”:我们为什么在部分服务中回归了Docker Compose?
运维·docker·容器
IT199517 小时前
Docker 快速部署 DM8 达梦数据库|完整踩坑笔记
笔记·docker·容器
wzg201618 小时前
ubuntu通过docker镜像部署安装onlyoffice
linux·ubuntu·docker
Star(up up up)18 小时前
Docker系列---Docker容器基本命令(新手小白保姆级实操教程)
运维·学习·程序人生·青少年编程·docker·容器·dubbo
方便面不加香菜19 小时前
Docker Image-- 镜像命令详解与使用示例
运维·docker·容器
Star(up up up)19 小时前
Docker系列---Dockerfile镜像文件
人工智能·经验分享·学习·程序人生·docker·容器·github
-星空下无敌20 小时前
Windows Docker K8s 安装部署Naocs ,SpringBoot 3.x 4.x 整合Naocs 版本兼容 配置中心、服务注册与发现
windows·docker·nacos·kubernetes·springboot·alibaba