当前位置: 首页 > news >正文

时序数据库IoTDB可实现的基本操作及命令汇总

一、数据写入、删除与导出

1.1 数据写入

在物联网场景下,元件产生的数据通常会自动写入。但有时,需要修改过去的数据,可以使用 INSERT 语句插入修改后的值,覆盖原数据。

示例‌:

INSERT INTO root.BHSFC.Q1.W003(timestamp, speed) VALUES(1657472400000, 2);

1.2 数据删除

1.2.1 SQL语句删除
  • 删除整个时间序列‌:

    DELETE FROM root.BHSFC.Q1.W003.speed;
  • 删除时间范围内的数据‌:

    DELETE FROM root.BHSFC.Q1.W003 WHERE time <= 2022-01-14T00:00:00;
1.2.2 TTL自动删除

TTL(Time To Live)是数据存活时间,可以针对存储组设置。设置TTL后,Apache IoTDB将自动删除此时间之前的数据。

  • 设置TTL‌:

    SET TTL TO root.BHSFC.Q1.W003 3600000;
  • 取消TTL‌:

    UNSET TTL TO root.BHSFC.Q1.W003;
  • 显示TTL‌:

    SHOW ALL TTL;

1.3 数据导出

可以使用CSV工具将数据导出。

示例‌:

./export-csv.sh -h 127.0.0.1 -p 6667 -u root -pw root -td ./

输入查询语句,如:

SELECT AVG(*) FROM root.BHSFC.Q1.W002;

二、元数据管理

元数据是关于数据的组织、数据域及其关系的信息。IoTDB支持全面的元数据管理,包括TsFile管理、存储组管理、时间序列管理、元数据模板管理和节点管理。

2.1 TsFile管理

TsFile是Apache IoTDB自研的列式存储文件格式。

  • 删除TsFile‌:

    REMOVE '/path/to/tsfile';
  • 加载TsFile‌:

    LOAD '/path/to/tsfile' autoregister=false,sglevel=1,verify=true;

2.2 存储组管理

  • 创建存储组‌:

    CREATE STORAGE GROUP root.ln;
  • 查看存储组‌:

    SHOW STORAGE GROUP;
  • 删除存储组‌:

    DELETE STORAGE GROUP root.BHSFC;
  • 统计存储组数量‌:

    DELETE STORAGE GROUP root.BHSFC;

2.3 时间序列管理

  • 创建对齐时间序列‌:

    CREATE ALIGNED TIMESERIES root.ln.wf01(status BOOLEAN encoding=PLAIN compressor=SNAPPY, temperature FLOAT encoding=PLAIN compressor=SNAPPY);
  • 查询时间序列‌:

    SHOW TIMESERIES;
  • 删除时间序列‌:

    DELETE TIMESERIES root.ln.wf01.temperature;
  • 统计时间序列总数‌:

    COUNT TIMESERIES root.**;

2.4 元数据模板管理

  • 创建元数据模板‌:

    CREATE SCHEMA TEMPLATE t1 ALIGNED (1 FLOAT encoding=Gorilla, 2 FLOAT encoding=Gorilla);
  • 挂载元数据模板‌:

    SET SCHEMA TEMPLATE t1 TO root.ln.wf01;
  • 查看元数据模板‌:

    SHOW SCHEMA TEMPLATES;
  • 卸载/删除元数据模板‌:

    UNSET SCHEMA TEMPLATE t1 FROM root.ln.wf01;
    DROP SCHEMA TEMPLATE t1;

2.5 节点管理

  • 查看子路径‌:

    SHOW CHILD PATHS root.BHSFC;
  • 查看子节点‌:

    SHOW CHILD NODES root;
  • 统计节点数‌:

    COUNT NODES root.BHSFC.Q1.* LEVEL=3;

三、时区设置

IoTDB中的数据点以时间戳保存,查询时以当前系统默认时区转换时间。时区设置不当可能导致查询结果不正确。

3.1 背景与问题

当查询特定时间点的数据时,若时区设置不匹配,可能导致查询结果为空。

3.2 解决方法

3.2.1 方法一:查询时指定时区

在查询时间后增加时区,如:

SELECT WROT_HubTmp FROM root.BHSFC.Q1.W002 WHERE time=2022-01-12T10:48:51.000-08:00;
3.2.2 方法二:设置系统时区与IoTDB时区一致

调整系统时区与IoTDB时区相同,如:

SET TIME_ZONE=-07:00;

四、结语

通过本文,您应该对Apache IoTDB的数据写入、删除、导出、元数据管理及时区设置有了全面的了解。希望这些信息能帮助您更好地使用IoTDB。

相关文章:

  • 网站后台登录不显示验证码一起来看在线观看免费
  • 大庆城市投资建设网站网站片区
  • 进入淘宝官网网站网络营销第三版课本
  • 协会网站建设制作百度网页pc版登录
  • 顺义电大网上作业在那个网站做在百度如何发布作品
  • 重庆市门户网站制作百度推广客服电话
  • Linux操作系统Nginx Web服务
  • 16、nrf52840蓝牙学习(唯一ID加密与解密)
  • VRRP:解决路由器单点故障的终极方案
  • wpa_supplicant连接到了路由,但是 udhcpc会分配到不同网段的ip,路由器ip为192.168.0网段,板子分配ip为192.168.1的网段
  • 2025.6.24总结
  • 数组题解——​合并区间【LeetCode】
  • Python 猜数字小游戏:Tkinter 实现的互动猜数挑战
  • json.decoder.JSONDecodeError: Unexpected UTF-8 BOM (decode using utf-8-sig)
  • 【计算机组成原理01】:主存与Cache的地址映射
  • 【Docker基础】Docker容器管理:docker stop详解
  • 洛谷 删数的问题 贪心
  • C/C++库开发完全指南:从静态库到动态链接的深度解析
  • Unity反射机制
  • 【Linux网络与网络编程】15.DNS与ICMP协议
  • 报错:macOS 安装 sentencepiece
  • VIVADO导出仿真数据到MATLAB中进行分析
  • Spring Boot 中整合 Redis
  • 防御OSS Bucket泄露:RAM权限策略+日志审计+敏感数据扫描三重防护
  • 10.多进程服务器端
  • 复制 生成二维码