时序数据库-3-[IoTDB]的安装与使用

2023-05-16

IoTDB官方文档手册
Apache IoTDB(物联网数据库)是一体化收集、存储、管理与分析物联网时序数据的软件系统。 Apache IoTDB 采用轻量式架构,具有高性能和丰富的功能,并与Apache Hadoop、Spark和Flink等进行了深度集成,可以满足工业物联网领域的海量数据存储、高速数据读取和复杂数据分析需求。
在这里插入图片描述

1 单机安装IoTDB

1.1 虚拟环境准备

一、关闭Win10系统Hyper-v虚拟机
控制面板-> 程序 -> 启用或关闭Windows功能 -> 勾选Hyper-v。
启用Hyper-V后,VirtualBox就无法在使用,但是保留所有现有的VirtualBox VM映像。
如果不关闭Hyper-v,在使用VirtualBox时会报如下错误。
在这里插入图片描述

微软的Hyper-V在启用的时候,宿主机也被虚拟化了,
以至于在宿主机上直接访问CPU的其他虚拟技术会失效。
即使VT-X在BIOS里面开了,
Intel的CPU检测工具也会报告CPU不支持VT-X。
可以在管理员命令行下运行
bcdedit /set hypervisorlaunchtype off
之后重启电脑来关闭Hyper-V。

二、安装配置JAVA_HOME

要求:JDK>=1.8 
显示和修改实际指向的候选命令
update-alternatives --config java

三、设置最大文件打开数为 65535

(1)查询
ulimit -n
(2)临时生效
ulimit -n 65535
(3)永久生效
将ulimit -n 65535添加到/etc/profile的最后
echo "ulimit -n 65535" >>/etc/profile
source /etc/profile刷新配置

1.2 Centos7单机二进制安装

一、从下载页面下载最新的安装包,解压后即完成安装。

(1)解压
yum install -y unzip zip
unzip apache-iotdb-0.13.0-all-bin.zip -d /usr/local/
mv apache-iotdb-0.13.0-all-bin/ iotdb
(2)配置环境变量
vi /root/.bashrc
export IOTDB_HOME=/usr/local/iotdb
export PATH=$PATH:$IOTDB_HOME/sbin
source /root/.bashrc
(3)后台启动
nohup start-server.sh >/dev/null 2>&1 &
ps -ef | grep iotdb
(4)命令行连接
start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root
start-cli.sh -h 192.168.1.10 -p 6667 -u root -pw root
start-cli.sh -h hostname -p 6667 -u root -pw root
(5)停止
stop-server.sh

二、单机安装后的软件目录结构

sbin 启动和停止脚本目录
conf 配置文件目录
tools 系统工具目录
lib 依赖包目录

初始安装后的 IoTDB 中有一个默认用户:root,默认密码为 root。用户可以使用该用户运行 Cli 工具操作 IoTDB。Cli 工具启动脚本为 sbin 文件夹下的 start-cli 脚本。启动脚本时需要指定运行 ip、port、username 和 password。

1.3 Ubuntu单机二进制安装

(1)解压
 sudo dpkg -i unzip_6.0-25ubuntu1.1_amd64.deb
 sudo unzip apache-iotdb-1.0.0-all-bin.zip -d /usr/local/
 一般用户注意给予权限
 sudo chmod 777 apache-iotdb-1.0.0-all-bin/
 
 (2)配置环境变量
vi /home/zb/.bashrc
export IOTDB_HOME=/usr/local/apache-iotdb-1.0.0-all-bin
export PATH=$PATH:$IOTDB_HOME/sbin
source /home/zb/.bashrc

(3)后台启动
nohup start-standalone.sh >/dev/null 2>&1 &nohup start-standalone.sh >/tmp/iotdbout.log 2>&1 &
ps -ef | grep iotdb
启动以后新增了三个目录
/usr/local/apache-iotdb-1.0.0-all-bin/data
/usr/local/apache-iotdb-1.0.0-all-bin/ext
/usr/local/apache-iotdb-1.0.0-all-bin/logs

(4)查看进程
jps
7741 DataNode
7885 Jps
7647 ConfigNode

(5)命令行连接
start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root
start-cli.sh -h 192.168.1.10 -p 6667 -u root -pw root
start-cli.sh -h hostname -p 6667 -u root -pw root

(6)停止
stop-server.sh

1.4 配置文件iotdb-engine.properties

(1)参数timestamp_precision
# Use this value to set timestamp precision as "ms", "us" or "ns".
# Once the precision is been set, it can not be changed.
# Datatype: String
timestamp_precision=ns

(2)参数virtual_storage_group_num
# number of virtual storage groups per user-defined storage group
# a virtual storage group is the unit of parallelism in memory as all ingestions in one virtual storage group are serialized
# recommended value is [virtual storage group number] = [CPU core number] / [user-defined storage group number]
# Datatype: int
# virtual_storage_group_num = 1
virtual_storage_group_num = 8

配置参数修改以后,启动iotdb,与系统有关的配置参数就会写入到data/system/schema/system.properties中。

系统目录:data/system里面有几个重要的文件。
(1)mlog.txt:元数据日志,采用追加的方式,记录了所有的元数据操作,包括增删存储组、增删时间序列等。重启的时候会重做这个文件里的日志,遇到错误的会跳过。
(2)system.properties:系统属性,记录了一些启动后不可更改的参数,如分区粒度、时间精度等。
(3)tlog.txt:标签和属性信息,如果没创建,这个文件就是空的。

1.5 IoTDB时区

在尝试修改时区设置时发现 IoTDB 的 config 文件里居然没有发现时区的相关设置。后来才了解到,IoTDB服务器其实只针对long时间戳进行存储。时区只用来跟客户端进行交互。

如果我的客户端默认的系统时区不正确,如何才能正确的写入和查询数据呢?
(1)如果客户端是CLI命令行,可以通过SQL手动设置时区

IoTDB> show time_zone
Current time zone: America/New_York
IoTDB> set time_zone=+08:00
Time zone has set to +08:00
IoTDB> show time_zone
Current time zone: +08:00

(2)如果客户端是JDBC或者JAVA等原生API,可以通过下面方法设置

JDBC: (IoTDBConnection) connection.setTimeZone("+08:00");
Session: session.setTimeZone("+08:00");
相应的查看的方法为:
JDBC: (IoTDBConnection) connection.getTimeZone();
Session: session.getTimeZone();

2 docker安装iotdb

2.1 查看镜像都有哪些版本

要想查看镜像的版本和TAG,需要在docker hub查看
地址如下:https://hub.docker.com/r/library/。
在这里插入图片描述

2.2 安装指定版本的

可以使用docker volume create命令创建 docker 卷。此命令将在/var/lib/docker/volumes目录中创建一个卷。

docker search iotdb
docker pull apache/iotdb拉取最新
docker pull apache/iotdb:0.13.0-node拉取指定
(1)创建数据文件和日志的 docker 挂载目录
docker volume create mydata
docker volume create mylogs

(2)运行docker容器
docker run --name iotdb  -p 6667:6667 -v mydata:/iotdb/data -v mylogs:/iotdb/logs -d apache/iotdb:latest /iotdb/bin/start-server.sh

(3)可以使用docker ps来检查是否运行成功
(4)获取container的ID
docker container ls
(5)进入容器
docker exec -it iotdb /bin/bash
(6)登陆IotDB
/iotdb/sbin/start-cli.sh -h localhost -p 6667 -u root -pw root

3 应用IoTDB

3.1 命令行操作

数据在IoTDB中的组织形式是以时间序列为单位,每一个时间序列中有若干个数据-时间点对,每一个时间序列属于一个存储组。在定义时间序列之前,要首先定义存储组。

(1)创建存储组
set storage group to root.1n
(2)查看存储组
show storage group

创建时间序列时需要定义数据的类型和编码方式。

(1)创建时间序列
create timeseries root.1n.wf01.wt01.status with datatype=boolean,encoding=plain
create timeseries root.1n.wf01.wt01.temperature with datatype=float,encoding=rle
(2)查看时间序列
show timeseries

插入数据时需要指定时间戳和路径后缀名称。

(1)向单个时间序列中插入数据
insert into root.1n.wf01.wt01(timestamp,status) values(100,true);
(2)向多个时间序列中同时插入数据
这些时间序列同属于一个时间戳:
insert into root.1n.wf01.wt01(timestamp,status,temperature) values(200,false,20.71)

3.2 python操作

pip install apache-iotdb-0.13.0.post1.tar
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

时序数据库-3-[IoTDB]的安装与使用 的相关文章

  • 路径规划之基于优化的规划算法

    关注同名微信公众号 混沌无形 xff0c 阅读更多有趣好文 xff01 原文链接 xff1a 机器人曲线插值拟合算法研究现状简述 xff08 包含原文PDF百度云下载链接 xff09 第三类算法是主要是将多目标多变量多约束耦合的规划模型转化
  • 常见移动机器人多角度对比分析

    混沌无形 混沌系统是世界本质 xff0c 无形之中存在规律 机器人智能化发展从线性过渡到混沌 xff0c 本号将分享机器人全栈技术 xff08 感知 规划 控制 xff1b 软件 机械 硬件等 xff09 43篇原创内容 公众号 文末提供原
  • 麦克纳姆轮运动特性分析

    混沌无形 混沌系统是世界本质 xff0c 无形之中存在规律 机器人智能化发展从线性过渡到混沌 xff0c 本号将分享机器人全栈技术 xff08 感知 规划 控制 xff1b 软件 机械 硬件等 xff09 43篇原创内容 公众号 文末提供原
  • 全向轮运动特性分析

    文末提供原文PDF免费下载 期刊论文版式 混沌无形 混沌系统是世界本质 xff0c 无形之中存在规律 机器人智能化发展从线性过渡到混沌 xff0c 本号将分享机器人全栈技术 xff08 感知 规划 控制 xff1b 软件 机械 硬件等 xf
  • matlab稳态和时变卡尔曼滤波器Kalman filter的设计和仿真植物动力学模型案例研究

    最近我们被客户要求撰写关于卡尔曼滤波器的研究报告 xff0c 包括一些图形和统计输出 本案例研究说明了卡尔曼滤波器的设计和仿真 考虑稳态和时变卡尔曼滤波器 植物动力学 考虑一个在输入u n 上有加性高斯噪声w n 此外 xff0c 让 yv
  • 正点原子-操作系统

    正点原子另一个学习网站 http www openedv com docs book videos zdyzshipin 4free zdyz freertos book html
  • 基于stm32的减速直流电机PID算法控制

    本例程采用了HAL库进行项目开发 xff08 主要使用软件CubexMX和keil5 xff09 xff0c 文章末尾会有代码开源 xff0c 欢迎各位对文章进行指正和探讨 基于PID的减速电机控制 一 硬件模块与原理图 1 硬件组成 硬件
  • 记录一次在VM上搭建k8s集群

    安装私有镜像仓库Harbor xff1a https blog csdn net a595077052 article details 119893070 配置k8s的dashboard xff1a https blog csdn net
  • ubuntu 上 docker 安装以及配置VNCserver

    1 install Docker 安装过程 根据docker官网安装过程 根据docker官网 lt a data cke saved href 61 34 https docs docker com install linux docke
  • 【论文阅读笔记】VNect: Real-time 3D human Pose Estimation with a Single RGB

    论文总结 xff1a 文中方法比较简单 xff0c 通过全卷积CNN预测一个heatmap及location map location map实际上就是X Y Z三个方向的坐标图 xff0c 找到关键点的过程为heatmap 中寻找照最大值
  • C++ 曲线平滑

    最近需要将数据通过图表展示出来 xff0c 以便观察其变化趋势 直接展示出来的效果不是很好 xff0c 故在网上查找了很久曲线平滑的方法 xff0c 最终找到了了一套比较适合的方法 xff0c 思路比较简单 xff0c 对于现在的项目来说效
  • (5)传感器驱动程序

    文章目录 前言 1 支持的协议 1 1 I2C 1 2 SPI 1 3 Serial UART 1 4 带有UAVCAN的CAN总线 2 前端 后端分离 3 如何以及何时运行驱动程序代码 4 无人机代码和前端示例 5 UART Serial
  • (11)EKF - (1) 导航综述和调参

    文章目录 前言 1 综述 2 理论 3 调参参数 4 解析日志数据 前言
  • (11)EKF - (1.3) EKF1调参参数

    系列文章目录 11 EKF 1 导航综述和调参 文章目录 系列文章目录 前言 3 1 AHRS EKF USE 3 2 EKF ABIAS PNOISE
  • (11)EKF - (2.7) EKF2调参参数

    系列文章目录 11 EKF 2 EKF2估算系统 文章目录 系列文章目录 前言 7 1 EK2 ENABLE
  • (4)(4.2.4) 连接电调和电机

    文章目录 前言 1 电机顺序图 1 1 四轴旋翼 1 2 三轴旋翼 1 3 翼机 1 4 六轴旋翼 1 5 Y6 1 6 八轴旋翼 1 7 四轴八翼 1 8 六轴十二翼 1 9 自定义框架 1 10 认识顺时针和逆时针的螺旋桨 2 测试电机
  • 【FreeRTOS】FreeRTOS删除任务vTaskDelete()

    使用说明 xff1a 任务中 小时 xff08 任务句柄 t xTask xff09 INCLUDE vTaskDelete必须定义为1 xff0c 才能使用此函数 有关更多信息 xff0c 请参见RTOS配置文档 从RTOS内核管理中删除
  • PyQt5中QSS设置全局StyleSheet的学习

    这阵子在学习PyQt5 xff0c 在学习过程中查阅很多资料和网站内容 现在希望一边学习 xff0c 一边作笔记 xff0c 并分享在互联网上 xff0c 能够给别人带来方便的同时自己也提升得更快 这篇博文主要总结PyQt5中QSS的使用方
  • 【强烈推荐】基于stm32的OLED各种显示实现(含动态图)

    前言 xff1a OLED模块作为人们日常生活中常见屏幕类型之一 xff0c 使用的受众面非常广阔 例如 xff1a 显示各个传感器数值 xff0c 显示精美界面 xff0c 多级化菜单系统等等都不离不开他的身影 可以说学会OLED模块是嵌
  • 医疗保健领域的 7 个拯救生命的 AI 用例。从早期疾病检测到增强医疗决策再到更好的患者治疗效果——这就是人工智能技术如何改变医疗保健行业。

    目录 1 肺部疾病的 AI 辅助胸部 X 线分析 新冠肺炎 肺癌 2 黑色素瘤的皮肤科扫描 3 人工智能和机器学习的 CT 和 MRI 扫描分析 4 人工智能辅助乳腺癌检测 5 数字病理学的人工智能 6 使用自然语言处理实现医疗保健管理任务

随机推荐

  • 定时器和计数器

    1 定时器介绍 1 1 什么是定时器 1 SoC的一种内部外设 2 定时器就是CPU的 闹钟 1 2 什么是计数器 1 定时器就是用计数的原始实现的 2 计数器可以计算外部脉冲个数 1 3 定时器如何工作 1 第1步 xff1a 先设置好定
  • 无人机地面站VS版

    界面如图所示 xff0c 源代码如下 源代码
  • 无人机地面站QT版

    下载链接 源代码
  • 利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来

    span class hljs keyword void span func span class hljs keyword int span n span class hljs keyword void span main span cl
  • 低通滤波(一阶)

    1 一阶滤波算法的原理 一阶滤波 xff0c 又叫一阶惯性滤波 xff0c 或一阶低通滤波 是使用软件编程实现普通硬件RC低通滤波器的功能 一阶低通滤波的算法公式为 xff1a Y n 61 1 Y n 1 43 X n 式中 xff1a
  • I2C初始化

    一 管脚初始化 由于STM32的硬件初始化比较复杂 xff0c 这里我们采用软件初始化 xff0c 选用端口PB6 PB7 以匿名的I2C初始化程序为例 span class hljs comment I2C GPIO定义 span spa
  • 四轴思路(持续更新)

    遥控器 xff1a 发送数据 MPU6050 xff1a 加速度做一维卡尔曼滤波 xff0c 角速度做一介低通滤波 然后四元数姿态解算 接着串级PID控制平衡 xff0c 外环角度环 xff0c 内环角速度环 高度控制 xff1a 高度和速
  • QT 上位机(网络通信)

    Client类 span class hljs comment span class hljs xmlDocTag span span class hljs xmlDocTag span span class hljs xmlDocTag
  • win10系统如何通过ssh远程登录另一台电脑的deepin linux系统

    1 首先 xff0c 更新一下软件源 xff0c 打开 终端窗口 xff0c 输入 sudo apt get update 2 然后 xff0c 在终端中 xff0c 输入 sudo apt get install openssh serv
  • 基于STM32与ESP8266的太空人WiFi天气时钟(代码开源)

    前言 xff1a 本文为手把手教学ESP8266著名开源项目 太空人WiFi天气时钟 xff0c 不同的是本次项目采用的是STM32 作为MCU 两者开发过程中有因为各自芯片的特点 xff08 时钟频率 xff0c 内存大小等 xff09
  • make menuconfig错误的解决办法

    如果使用make menuconfig的方式配置内核 xff0c 又碰巧系统没有安装ncurses库 xff08 ubuntu系统 默认就没有安装此库 xff09 xff0c 就会出现错误 xff0c 错误信息大体上如下 xff1a Una
  • FileZilla以root用户登录Linux

    一 首先创建root用户的密码 span class hljs built in sudo span passwd root 然后输入要设置的密码 xff0c 然后再输入一次 xff0c 成功 xff01 二 修改配置文件 filezila
  • px4编译

    如果下载速度特别慢 xff0c 可以使用手机的4G网络 位置确定 mkdir p src cd src 开始下载指定版本的px4 xff0c 在这里是v1 8 2版本 git clone b v1 8 2 https github com
  • px4源码----位置估算(position_estimator_inav_params.h)

    pragma once include lt parameters param h gt struct position estimator inav params float w z baro 权重 z轴 气压计位置 0 5 float
  • ubuntu如何把调整cpu策略

    一 安装cpu频率管理软件 sudo apt get install cpufrequtils 二 查看cpu当前状态 cpufreq info 其中available cpufreq governors xff1a performance
  • 树莓派系统介绍

    树莓派是一个微型计算机 xff0c 和普通的电脑没有什么区别 xff0c 只是体积更小 xff0c 只有卡片大小 xff0c 存储能力和计算能力会差一点 xff0c 主要用于学习 xff0c 实验所用 是电脑就要安装操作系统 xff0c 树
  • 小觅摄像头ROS编译错误

    GitHub slightech MYNT EYE ORB SLAM2 Sample Forked from ORB SLAM2 https github com raulmur ORB SLAM2 Forked from ORB SLAM
  • 华为路由器交换机常用命令(随时补充更新)

    一 视图切换 lt huawei gt 用户视图 huawei 系统视图 xff0c 在用户视图状态下输入sys进入 xff0c 在系统视图下输入quit或者return返回用户视图 huawei g0 0 1 端口视图 xff0c 从系统
  • 01路径规划问题的相关理论

    目录 1 旅行商问题 2 有能力约束的车辆路径问题 3 车辆路径主要要素特征 4 约束条件分析 5 带时间窗的车辆路径问题 6 车辆路径问题求解算法 7 小节 1 旅行商问题 旅行商问题 xff08 Traveling Saleman Pr
  • 时序数据库-3-[IoTDB]的安装与使用

    IoTDB官方文档手册 Apache IoTDB xff08 物联网数据库 xff09 是一体化收集 存储 管理与分析物联网时序数据的软件系统 Apache IoTDB 采用轻量式架构 xff0c 具有高性能和丰富的功能 xff0c 并与A