IoTDB 运维必备:元数据导入导出工具使用指南

IoTDB 运维必备:元数据导入导出工具使用指南
在这里插入图片描述

IoTDB 数据导入全攻略:工具、自动加载与 Load SQL 详解

在 IoTDB 的日常运维和数据管理工作中,元数据的导入导出是非常关键的操作。它可以帮助我们实现元数据的备份、迁移以及批量创建。本文将详细介绍 IoTDB 中 import-schemaexport-schema 两款工具的参数配置、运行命令以及实操案例,帮助大家快速掌握元数据的导入导出方法。
在这里插入图片描述

一、元数据导入工具 import-schema

import-schema 工具的作用是将指定路径下创建元数据的脚本文件导入到 IoTDB 中,工具脚本位于 tools 目录下,支持 Unix/OS X 和 Windows 系统。

1.1 参数详解

参数缩写参数全称参数含义是否必填默认值补充说明
-h–host主机名127.0.0.1-
-p–port端口号6667-
-u–username用户名root-
-pw–password密码root-
-sql_dialect–sql_dialect选择 server 模型(tree/table)tree支持树模型和表模型两种类型
-db–database目标数据库-元数据要导入的数据库
-table–table目标表-仅在 sql_dialect 为 table 时生效
-s–source待加载脚本文件(夹)路径-本地目录下的脚本文件或文件夹路径
-fd–fail_dir失败文件保存目录-导入失败的文件会保存到该目录
-lpf–lines_per_failed_file失败文件最大行数100000仅在 sql_dialect 为 table 时生效,范围 0~2147483647
-help–help显示帮助信息--

1.2 运行命令

(1)Unix/OS X 系统
tools/import-schema.sh [-sql_dialect<sql_dialect>] -db<database> -table<table>[-h <host>][-p <port>][-u <username>][-pw <password>] -s <source>[-fd <fail_dir>][-lpf <lines_per_failed_file>]
(2)Windows 系统
  • V2.0.4.x 版本之前
tools\import-schema.bat [-sql_dialect<sql_dialect>] -db<database> -table<table>[-h <host>][-p <port>][-u <username>][-pw <password>] -s <source>[-fd <fail_dir>][-lpf <lines_per_failed_file>]
  • V2.0.4.x 版本及之后
tools\windows\schema\import-schema.bat [-sql_dialect<sql_dialect>] -db<database> -table<table>[-h <host>][-p <port>][-u <username>][-pw <password>] -s <source>[-fd <fail_dir>][-lpf <lines_per_failed_file>]

1.3 实操案例

导入后验证
再次查看时间序列,确认元数据导入成功:

IoTDB>show timeseries root.treedb.**+------------------------------+-----+-----------+--------+--------+-----------+----+----------+--------+------------------+--------+| Timeseries|Alias|Database|DataType|Encoding|Compression|Tags|Attributes|Deadband|DeadbandParameters|ViewType|+------------------------------+-----+-----------+--------+--------+-----------+----+----------+--------+------------------+--------+|root.treedb.device.temperature|null|root.treedb|DOUBLE| GORILLA| LZ4|null|null|null|null| BASE|| root.treedb.device.humidity|null|root.treedb|DOUBLE| GORILLA| LZ4|null|null|null|null| BASE|+------------------------------+-----+-----------+--------+--------+-----------+----+----------+--------+------------------+--------+

执行导入命令
采用树模型,将 /home/dump0_0.csv 中的元数据导入到 root.treedb 数据库:

./import-schema.sh -sql_dialect tree -s /home/dump0_0.csv -db root.treedb 

导入前验证
先通过 IoTDB 客户端查看目标数据库下的时间序列,确认当前无相关元数据:

IoTDB>show timeseries root.treedb.**+----------+-----+--------+--------+--------+-----------+----+----------+--------+------------------+--------+|Timeseries|Alias|Database|DataType|Encoding|Compression|Tags|Attributes|Deadband|DeadbandParameters|ViewType|+----------+-----+--------+--------+--------+-----------+----+----------+--------+------------------+--------++----------+-----+--------+--------+--------+-----------+----+----------+--------+------------------+--------+

二、元数据导出工具 export-schema

export-schema 工具可以将 IoTDB 中指定数据库下的元数据导出为脚本文件,工具脚本同样位于 tools 目录下,支持多系统运行。

2.1 参数详解

参数缩写参数全称参数含义是否必填默认值补充说明
-h–host主机名127.0.0.1-
-p–port端口号6667-
-u–username用户名root-
-pw–password密码root-
-sql_dialect–sql_dialect选择 server 模型(tree/table)tree支持树模型和表模型两种类型
-db–database目标数据库-仅在 sql_dialect 为 table 时必填
-table–table目标表-仅在 sql_dialect 为 table 时生效
-t–target输出文件目标文件夹-路径不存在时会自动新建
-path–path_pattern导出元数据的路径匹配模式-仅在 sql_dialect 为 tree 时必填
-pfn–prefix_file_name导出文件名称前缀dump_dbname.sql导出文件的命名前缀
-lpf–lines_per_file导出文件最大行数10000仅在 sql_dialect 为 tree 时生效
-timeout–query_timeout会话查询超时时间(ms)-1范围 -1~9223372036854775807
-help–help显示帮助信息--

2.2 运行命令

(1)Unix/OS X 系统
> tools/export-schema.sh [-sql_dialect<sql_dialect>] -db<database> -table<table>[-h <host>][-p <port>][-u <username>][-pw <password>] -t <target_directory>[-path <exportPathPattern>][-pfn <prefix_file_name>][-lpf <lines_per_file>][-timeout <query_timeout>]
(2)Windows 系统
  • V2.0.4.x 版本之前
> tools\export-schema.bat [-sql_dialect<sql_dialect>] -db<database> -table<table>[-h <host>][-p <port>][-u <username>][-pw <password>] -t <target_directory>[-path <exportPathPattern>][-pfn <prefix_file_name>][-lpf <lines_per_file>][-timeout <query_timeout>]
  • V2.0.4.x 版本及之后
> tools\windows\schema\export-schema.bat [-sql_dialect<sql_dialect>] -db<database> -table<table>[-h <host>][-p <port>][-u <username>][-pw <password>] -t <target_directory>[-path <exportPathPattern>][-pfn <prefix_file_name>][-lpf <lines_per_file>][-timeout <query_timeout>]

2.3 实操案例

执行如下命令,将 root.treedb 路径下的元数据导出到 /home/ 目录下:

./export-schema.sh -sql_dialect tree -t /home/ -path "root.treedb.**"

导出后的文件内容格式如下:

Timeseries,Alias,DataType,Encoding,Compression root.treedb.device.temperature,,DOUBLE,GORILLA,LZ4 root.treedb.device.humidity,,DOUBLE,GORILLA,LZ4 

三、总结

本文详细介绍了 IoTDB 元数据导入导出的两款核心工具。import-schema 用于将本地脚本中的元数据批量导入 IoTDB,export-schema 则可以将 IoTDB 中的元数据导出为文件,方便备份与迁移。在实际使用过程中,需要根据系统版本选择对应的命令,同时注意区分树模型和表模型的参数差异。掌握这两款工具的使用,能够极大提升 IoTDB 元数据管理的效率。

🌐 附:IoTDB的各大版本

📄 Apache IoTDB 是一款工业物联网时序数据库管理系统,采用端边云协同的轻量化架构,支持一体化的物联网时序数据收集、存储、管理与分析 ,具有多协议兼容、超高压缩比、高通量读写、工业级稳定、极简运维等特点。

版本IoTDB 二进制包IoTDB 源代码发布说明
2.0.5- All-in-one
- AINode
- SHA512
- ASC
- 源代码
- SHA512
- ASC
release notes
1.3.5- All-in-one
- AINode
- SHA512
- ASC
- 源代码
- SHA512
- ASC
release notes
0.13.4- All-in-one
- Grafana 连接器
- Grafana 插件
- SHA512
- ASC
- 源代码
- SHA512
- ASC
release notes

✨ 目前最新版本为2.0.6,去获取:https://archive.apache.org/dist/iotdb/

联系博主

    xcLeigh 博主,全栈领域优质创作者,博客专家,目前,活跃在ZEEKLOG、微信公众号、小红书、知乎、掘金、快手、思否、微博、51CTO、B站、腾讯云开发者社区、阿里云开发者社区等平台,全网拥有几十万的粉丝,全网统一IP为 xcLeigh。希望通过我的分享,让大家能在喜悦的情况下收获到有用的知识。主要分享编程、开发工具、算法、技术学习心得等内容。很多读者评价他的文章简洁易懂,尤其对于一些复杂的技术话题,他能通过通俗的语言来解释,帮助初学者更好地理解。博客通常也会涉及一些实践经验,项目分享以及解决实际开发中遇到的问题。如果你是开发领域的初学者,或者在学习一些新的编程语言或框架,关注他的文章对你有很大帮助。

    亲爱的朋友,无论前路如何漫长与崎岖,都请怀揣梦想的火种,因为在生活的广袤星空中,总有一颗属于你的璀璨星辰在熠熠生辉,静候你抵达。

     愿你在这纷繁世间,能时常收获微小而确定的幸福,如春日微风轻拂面庞,所有的疲惫与烦恼都能被温柔以待,内心永远充盈着安宁与慰藉。

    至此,文章已至尾声,而您的故事仍在续写,不知您对文中所叙有何独特见解?期待您在心中与我对话,开启思想的新交流。


     💞 关注博主 🌀 带你实现畅游前后端!

     🏰 大屏可视化 🌀 带你体验酷炫大屏!

     💯 神秘个人简介 🌀 带你体验不一样得介绍!

     🥇 从零到一学习Python 🌀 带你玩转Python技术流!

     🏆 前沿应用深度测评 🌀 前沿AI产品热门应用在线等你来发掘!

     💦 :本文撰写于ZEEKLOG平台,作者:xcLeigh所有权归作者所有)https://xcleigh.blog.ZEEKLOG.net/,如果相关下载没有跳转,请查看这个地址,相关链接没有跳转,皆是抄袭本文,转载请备注本文原地址。


在这里插入图片描述

     📣 亲,码字不易,动动小手,欢迎 点赞 ➕ 收藏,如 🈶 问题请留言(或者关注下方公众号,看见后第一时间回复,还有海量编程资料等你来领!),博主看见后一定及时给您答复 💌💌💌

Read more

Java 开发者如何搞定百度地图 SN 权限签名实践-以搜索2.0接口为例

Java 开发者如何搞定百度地图 SN 权限签名实践-以搜索2.0接口为例

目录 前言 一、SN签名简介 1、SN签名是什么 2、如何开启SN签名 3、SN签名算法 二、在Java中的应用 1、请求Map参数化 2、SN签名生成 3、搜索接口调用 三、APP SN校验失败可能的原因 1、字符编码问题 2、参数顺序 3、timestamp的设置 四、总结 前言         在当今数字化时代,地图服务已成为众多应用程序不可或缺的功能模块。无论是出行导航、位置分享,还是基于地理位置的业务拓展,地图服务都发挥着关键作用。百度地图作为地图服务提供商,为开发者提供了丰富多样的 API 接口,助力各类应用实现强大的地图功能。然而,对于 Java 开发者而言,在使用百度地图 API 时,SN 权限签名这一环节常常成为开发过程中的一个技术难点,

By Ne0inhk
使用飞算JavaAI快速搭建药房管理系统

使用飞算JavaAI快速搭建药房管理系统

使用飞算JavaAI快速搭建药房管理系统 飞算JavaAI炫技赛主题(毕设):使用飞算JavaAI快速搭建药房管理系统。 技术选型方案 采用Spring Boot + MyBatis Plus + MySQL + Redis的技术架构组合: 使用Spring Boot作为主框架提供快速开发和自动配置能力 集成Spring Security + JWT实现用户认证和细粒度权限控制 数据持久层采用MyBatis Plus简化药品、库存、处方的CRUD操作和复杂查询 MySQL 8.0作为主数据库存储药品信息、库存记录、处方数据、供应商信息等核心业务数据 Redis用于缓存热点数据(如药品目录、库存状态、用户会话)和实现分布式锁机制 同时整合Swagger生成API文档,使用Maven进行项目依赖管理 飞算JavaAI开发实录 接下来我会使用智能引导功能来一步一步的完成整个系统的搭建。 1.需求分析与规划 采用Spring Boot + MyBatis Plus + MySQL + Redis技术架构,实现药品库存管理、供应商管理、处方审核处理、药品销售管理和财务统计分析等核心功能

By Ne0inhk
Java连接电科金仓数据库(KingbaseES)实战指南

Java连接电科金仓数据库(KingbaseES)实战指南

摘要:本文分享了KingbaseES V8.6数据库与SpringBoot 2.7.x框架的集成实战经验。内容包括:1. 环境准备(Ubuntu系统安装配置、驱动获取方式);2. JDBC基础操作(连接、查询、事务处理);3. SpringBoot项目完整配置(pom依赖、数据源配置);4. MyBatis-Plus集成(实体类、Mapper、Service层实现);5. RESTful接口开发示例。文章提供了详细的代码示例,涵盖从数据库安装到应用开发的完整流程,帮助开发者快速实现国产数据库适配。 目录 前言 一、环境准备与驱动获取 1.1 数据库安装与配置 1.2 JDBC驱动获取与配置 1.3 创建测试数据库 二、基础JDBC连接与操作 2.1 最基础的JDBC连接示例 2.

By Ne0inhk
【前端基础】HTML + CSS + JavaScript 快速入门(一):HTML 详解

【前端基础】HTML + CSS + JavaScript 快速入门(一):HTML 详解

【前端基础】HTML + CSS + JavaScript 快速入门(一):HTML 详解 我的主页:寻星探路个人专栏:《JAVA(SE)----如此简单!!! 》《从青铜到王者,就差这讲数据结构!!!》 《数据库那些事!!!》《JavaEE 初阶启程记:跟我走不踩坑》 《JavaEE 进阶:从架构到落地实战 》《测试开发漫谈》 《测开视角・力扣算法通关》《从 0 到 1 刷力扣:算法 + 代码双提升》 《Python 全栈测试开发之路》没有人天生就会编程,但我生来倔强!!! 寻星探路的个人简介: 【前端基础】HTML + CSS + JavaScript 快速入门(一):HTML 详解 摘要:本文是前端开发系列教程的第一篇。我们将从零开始认识 HTML 的基本结构,

By Ne0inhk