blob: 5860a2d0ba8b475bf4868fe7afecc304e4311d05 [file] [log] [blame]
import{_ as o,r as p,o as l,c as r,a as i,d as n,e as s,b as e,f as t}from"./app-dNeAgOFp.js";const c={},d=t(`<h1 id="运维工具" tabindex="-1"><a class="header-anchor" href="#运维工具" aria-hidden="true">#</a> 运维工具</h1><h2 id="集群版部署" tabindex="-1"><a class="header-anchor" href="#集群版部署" aria-hidden="true">#</a> 集群版部署</h2><h3 id="集群管理工具部署" tabindex="-1"><a class="header-anchor" href="#集群管理工具部署" aria-hidden="true">#</a> 集群管理工具部署</h3><p>IoTDB 集群管理工具是一款易用的运维工具(企业版工具)。旨在解决 IoTDB 分布式系统多节点的运维难题,主要包括集群部署、集群启停、弹性扩容、配置更新、数据导出等功能,从而实现对复杂数据库集群的一键式指令下发,极大降低管理难度。本文档将说明如何用集群管理工具远程部署、配置、启动和停止 IoTDB 集群实例。</p><h4 id="部署集群管理工具" tabindex="-1"><a class="header-anchor" href="#部署集群管理工具" aria-hidden="true">#</a> 部署集群管理工具</h4><h5 id="环境依赖" tabindex="-1"><a class="header-anchor" href="#环境依赖" aria-hidden="true">#</a> 环境依赖</h5><p>IoTDB 要部署的机器需要依赖jdk 8及以上版本、lsof 或者 netstat、unzip功能如果没有请自行安装,可以参考文档最后的一节环境所需安装命令。</p><p>提示:IoTDB集群管理工具需要使用具有root权限的账号</p><h5 id="部署方法" tabindex="-1"><a class="header-anchor" href="#部署方法" aria-hidden="true">#</a> 部署方法</h5><h6 id="下载安装" tabindex="-1"><a class="header-anchor" href="#下载安装" aria-hidden="true">#</a> 下载安装</h6><p>本工具为TimechoDB(基于IoTDB的企业版数据库)配套工具,您可以联系您的销售获取工具下载方式。</p><p>注意:由于二进制包仅支持GLIBC2.17 及以上版本,因此最低适配Centos7版本</p><ul><li>在在iotd目录内输入以下指令后:</li></ul><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code><span class="token function">bash</span> install-iotd.sh
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>即可在之后的 shell 内激活 iotd 关键词,如检查部署前所需的环境指令如下所示:</p><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>iotd cluster check example
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li>也可以不激活iotd直接使用 &lt;iotd absolute path&gt;/sbin/iotd 来执行命令,如检查部署前所需的环境:</li></ul><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code><span class="token operator">&lt;</span>iotd absolute path<span class="token operator">&gt;</span>/sbin/iotd cluster check example
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h4 id="集群配置文件介绍" tabindex="-1"><a class="header-anchor" href="#集群配置文件介绍" aria-hidden="true">#</a> 集群配置文件介绍</h4><ul><li>在<code>iotd/config</code> 目录下有集群配置的yaml文件,yaml文件名字就是集群名字yaml 文件可以有多个,为了方便用户配置yaml文件在iotd/config目录下面提供了<code>default_cluster.yaml</code>示例。</li><li>yaml 文件配置由<code>global</code>、<code>confignode_servers</code>、<code>datanode_servers</code>、<code>grafana_servers</code>(功能待开发)四大部分组成</li><li>global 是通用配置主要配置机器用户名密码、IoTDB本地安装文件、Jdk配置等。在<code>iotd/config</code>目录中提供了一个<code>default_cluster.yaml</code>样例数据,<br> 用户可以复制修改成自己集群名字并参考里面的说明进行配置iotdb集群,在<code>default_cluster.yaml</code>样例中没有注释的均为必填项,已经注释的为非必填项。</li></ul><p>例如要执行<code>default_cluster.yaml</code>检查命令则需要执行命令<code>iotd cluster check default_cluster</code>即可,<br> 更多详细命令请参考下面命令列表。</p>`,21),u=n("thead",null,[n("tr",null,[n("th",null,"参数"),n("th",null,"说明"),n("th",null,"是否必填")])],-1),k=n("tr",null,[n("td",null,"iotdb_zip_dir"),n("td",null,[s("IoTDB 部署分发目录,如果值为空则从"),n("code",null,"iotdb_download_url"),s("指定地址下载")]),n("td",null,"非必填")],-1),b=n("tr",null,[n("td",null,"iotdb_download_url"),n("td",null,[s("IoTDB 下载地址,如果"),n("code",null,"iotdb_zip_dir"),s(" 没有值则从指定地址下载")]),n("td",null,"非必填")],-1),m=n("tr",null,[n("td",null,"jdk_tar_dir"),n("td",null,"jdk 本地目录,可使用该 jdk 路径进行上传部署至目标节点。"),n("td",null,"非必填")],-1),v=n("tr",null,[n("td",null,"jdk_deploy_dir"),n("td",null,[s("jdk 远程机器部署目录,会将 jdk 部署到目标节点该文件夹下最终部署完成的路径是"),n("code",null,"<jdk_deploy_dir>/jdk_iotdb")]),n("td",null,"非必填")],-1),h=n("tr",null,[n("td",null,"iotdb_lib_dir"),n("td",null,"IoTDB lib 目录或者IoTDB 的lib 压缩包仅支持.zip格式 ,仅用于IoTDB升级,默认处于注释状态,如需升级请打开注释"),n("td",null,"非必填")],-1),g=n("tr",null,[n("td",null,"user"),n("td",null,"ssh登陆部署机器的用户名"),n("td",null,"必填")],-1),f=n("tr",null,[n("td",null,"password"),n("td",null,"ssh登录的密码, 如果password未指定使用pkey登陆, 请确保已配置节点之间ssh登录免密钥"),n("td",null,"非必填")],-1),_=n("tr",null,[n("td",null,"pkey"),n("td",null,"密钥登陆如果password 有值优先使用password否则使用pkey登陆"),n("td",null,"非必填")],-1),T=n("tr",null,[n("td",null,"ssh_port"),n("td",null,"ssh登录端口"),n("td",null,"必填")],-1),x=n("tr",null,[n("td",null,"deploy_dir"),n("td",null,[s("iotdb 部署目录,会把 iotdb 部署到目标节点该文件夹下最终部署完成的路径是"),n("code",null,"<deploy_dir>/iotdb")]),n("td",null,"必填")],-1),y={href:"http://datanode-env.sh",target:"_blank",rel:"noopener noreferrer"},D=n("td",null,[s("对应"),n("code",null,"iotdb/config/datanode-env.sh")],-1),I=n("td",null,"非必填",-1),N={href:"http://confignode-env.sh",target:"_blank",rel:"noopener noreferrer"},B=n("td",null,[s("对应"),n("code",null,"iotdb/config/confignode-env.sh")],-1),F=n("td",null,"非必填",-1),S=n("tr",null,[n("td",null,"iotdb-common.properties"),n("td",null,[s("对应"),n("code",null,"iotdb/config/iotdb-common.properties")]),n("td",null,"非必填")],-1),C=n("tr",null,[n("td",null,"cn_target_config_node_list"),n("td",null,[s("集群配置地址指向存活的ConfigNode,默认指向confignode_x,在"),n("code",null,"global"),s("与"),n("code",null,"confignode_servers"),s("同时配置值时优先使用"),n("code",null,"confignode_servers"),s("中的值,对应"),n("code",null,"iotdb/config/iotdb-confignode.properties"),s("中的"),n("code",null,"cn_target_config_node_list")]),n("td",null,"必填")],-1),w=n("tr",null,[n("td",null,"dn_target_config_node_list"),n("td",null,[s("集群配置地址指向存活的ConfigNode,默认指向confignode_x,在"),n("code",null,"global"),s("与"),n("code",null,"datanode_servers"),s("同时配置值时优先使用"),n("code",null,"datanode_servers"),s("中的值,对应"),n("code",null,"iotdb/config/iotdb-datanode.properties"),s("中的"),n("code",null,"dn_target_config_node_list")]),n("td",null,"必填")],-1),V=t('<ul><li>confignode_servers 是部署IoTDB Confignodes配置,里面可以配置多个Confignode<br> 默认将第一个启动的ConfigNode节点node1当作Seed-ConfigNode</li></ul><table><thead><tr><th>参数</th><th>说明</th><th>是否必填</th></tr></thead><tbody><tr><td>name</td><td>Confignode 名称</td><td>必填</td></tr><tr><td>deploy_dir</td><td>IoTDB config node 部署目录,注:该目录不能与下面的IoTDB data node部署目录相同</td><td>必填|</td></tr><tr><td>iotdb-confignode.properties</td><td>对应<code>iotdb/config/iotdb-confignode.properties</code>更加详细请参看<code>iotdb-confignode.properties</code>文件说明</td><td>非必填</td></tr><tr><td>cn_internal_address</td><td>对应iotdb/内部通信地址,对应<code>iotdb/config/iotdb-confignode.properties</code>中的<code>cn_internal_address</code></td><td>必填</td></tr><tr><td>cn_target_config_node_list</td><td>集群配置地址指向存活的ConfigNode,默认指向confignode_x,在<code>global</code>与<code>confignode_servers</code>同时配置值时优先使用<code>confignode_servers</code>中的值,对应<code>iotdb/config/iotdb-confignode.properties</code>中的<code>cn_target_config_node_list</code></td><td>必填</td></tr><tr><td>cn_internal_port</td><td>内部通信端口,对应<code>iotdb/config/iotdb-confignode.properties</code>中的<code>cn_internal_port</code></td><td>必填</td></tr><tr><td>cn_consensus_port</td><td>对应<code>iotdb/config/iotdb-confignode.properties</code>中的<code>cn_consensus_port</code></td><td>非必填</td></tr><tr><td>cn_data_dir</td><td>对应<code>iotdb/config/iotdb-confignode.properties</code>中的<code>cn_data_dir</code></td><td>必填</td></tr><tr><td>iotdb-common.properties</td><td>对应<code>iotdb/config/iotdb-common.properties</code>在<code>global</code>与<code>confignode_servers</code>同时配置值优先使用confignode_servers中的值</td><td>非必填</td></tr></tbody></table><ul><li>datanode_servers 是部署IoTDB Datanodes配置,里面可以配置多个Datanode</li></ul><table><thead><tr><th>参数</th><th>说明</th><th>是否必填</th></tr></thead><tbody><tr><td>name</td><td>Datanode 名称</td><td>必填</td></tr><tr><td>deploy_dir</td><td>IoTDB data node 部署目录,注:该目录不能与下面的IoTDB config node部署目录相同</td><td>必填</td></tr><tr><td>iotdb-datanode.properties</td><td>对应<code>iotdb/config/iotdb-datanode.properties</code>更加详细请参看<code>iotdb-datanode.properties</code>文件说明</td><td>非必填</td></tr><tr><td>dn_rpc_address</td><td>datanode rpc 地址对应<code>iotdb/config/iotdb-datanode.properties</code>中的<code>dn_rpc_address</code></td><td>必填</td></tr><tr><td>dn_internal_address</td><td>内部通信地址,对应<code>iotdb/config/iotdb-datanode.properties</code>中的<code>dn_internal_address</code></td><td>必填</td></tr><tr><td>dn_target_config_node_list</td><td>集群配置地址指向存活的ConfigNode,默认指向confignode_x,在<code>global</code>与<code>datanode_servers</code>同时配置值时优先使用<code>datanode_servers</code>中的值,对应<code>iotdb/config/iotdb-datanode.properties</code>中的<code>dn_target_config_node_list</code></td><td>必填</td></tr><tr><td>dn_rpc_port</td><td>datanode rpc端口地址,对应<code>iotdb/config/iotdb-datanode.properties</code>中的<code>dn_rpc_port</code></td><td>必填</td></tr><tr><td>dn_internal_port</td><td>内部通信端口,对应<code>iotdb/config/iotdb-datanode.properties</code>中的<code>dn_internal_port</code></td><td>必填</td></tr><tr><td>iotdb-common.properties</td><td>对应<code>iotdb/config/iotdb-common.properties</code>在<code>global</code>与<code>datanode_servers</code>同时配置值优先使用<code>datanode_servers</code>中的值</td><td>非必填</td></tr></tbody></table><ul><li>grafana_servers 是部署Grafana 相关配置<br> 该模块暂不支持</li></ul><p>注意:如何配置yaml key对应的值包含特殊字符如:等建议整个value使用双引号,对应的文件路径中不要使用包含空格的路径,防止出现识别出现异常问题。</p><h4 id="命令格式" tabindex="-1"><a class="header-anchor" href="#命令格式" aria-hidden="true">#</a> 命令格式</h4><p>本工具的基本用法为:</p><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>iotd cluster <span class="token operator">&lt;</span>key<span class="token operator">&gt;</span> <span class="token operator">&lt;</span>cluster name<span class="token operator">&gt;</span> <span class="token punctuation">[</span>params <span class="token punctuation">(</span>Optional<span class="token punctuation">)</span><span class="token punctuation">]</span>\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li><p>key 表示了具体的命令。</p></li><li><p>cluster name 表示集群名称(即<code>iotd/config</code> 文件中yaml文件名字)。</p></li><li><p>params 表示了命令的所需参数(选填)。</p></li><li><p>例如部署default_cluster集群的命令格式为:</p></li></ul><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>iotd cluster deploy default_cluster\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li>集群的功能及参数列表如下:</li></ul><table><thead><tr><th>命令</th><th>功能</th><th>参数</th></tr></thead><tbody><tr><td>check</td><td>检测集群是否可以部署</td><td>集群名称列表</td></tr><tr><td>clean</td><td>清理集群</td><td>集群名称</td></tr><tr><td>deploy</td><td>部署集群</td><td>集群名称</td></tr><tr><td>list</td><td>打印集群及状态列表</td><td>无</td></tr><tr><td>start</td><td>启动集群</td><td>集群名称,-N,节点名称(可选)</td></tr><tr><td>stop</td><td>关闭集群</td><td>集群名称,-N,节点名称(可选)</td></tr><tr><td>restart</td><td>重启集群</td><td>集群名称</td></tr><tr><td>show</td><td>查看集群信息,details字段表示展示集群信息细节</td><td>集群名称, details(可选)</td></tr><tr><td>destroy</td><td>销毁集群</td><td>集群名称</td></tr><tr><td>scaleout</td><td>集群扩容</td><td>集群名称</td></tr><tr><td>scalein</td><td>集群缩容</td><td>集群名称,-N,集群节点名字或集群节点ip+port</td></tr><tr><td>reload</td><td>集群热加载</td><td>集群名称</td></tr><tr><td>distribute</td><td>集群配置文件分发</td><td>集群名称</td></tr><tr><td>dumplog</td><td>备份指定集群日志</td><td>集群名称,-N,集群节点名字 -h 备份至目标机器ip -pw 备份至目标机器密码 -p 备份至目标机器端口 -path 备份的目录 -startdate 起始时间 -enddate 结束时间 -loglevel 日志类型 -l 传输速度</td></tr><tr><td>dumpdata</td><td>备份指定集群数据</td><td>集群名称, -h 备份至目标机器ip -pw 备份至目标机器密码 -p 备份至目标机器端口 -path 备份的目录 -startdate 起始时间 -enddate 结束时间 -l 传输速度</td></tr><tr><td>upgrade</td><td>lib 包升级</td><td>集群名字(升级完后请重启)</td></tr></tbody></table><h4 id="详细命令执行过程" tabindex="-1"><a class="header-anchor" href="#详细命令执行过程" aria-hidden="true">#</a> 详细命令执行过程</h4><p>下面的命令都是以default_cluster.yaml 为示例执行的,用户可以修改成自己的集群文件来执行</p><h5 id="检查集群部署环境命令" tabindex="-1"><a class="header-anchor" href="#检查集群部署环境命令" aria-hidden="true">#</a> 检查集群部署环境命令</h5><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>iotd cluster check default_cluster\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li><p>根据 cluster-name 找到默认位置的 yaml 文件,获取<code>confignode_servers</code>和<code>datanode_servers</code>配置信息</p></li><li><p>验证目标节点是否能够通过 SSH 登录</p></li><li><p>验证对应节点上的 JDK 版本是否满足IoTDB jdk1.8及以上版本、服务器是否按照unzip、是否安装lsof 或者netstat</p></li><li><p>如果看到下面提示<code>Info:example check successfully!</code> 证明服务器已经具备安装的要求,<br> 如果输出<code>Warn:example check fail!</code> 证明有部分条件没有满足需求可以查看上面的Warn日志进行修复,假如jdk没有满足要求,我们可以自己在yaml 文件中配置一个jdk1.8 及以上版本的进行部署不影响后面使用,如果检查lsof、netstat或者unzip 不满足要求需要在服务器上自行安装</p></li></ul><h5 id="部署集群命令" tabindex="-1"><a class="header-anchor" href="#部署集群命令" aria-hidden="true">#</a> 部署集群命令</h5><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>iotd cluster deploy default_cluster\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li><p>根据 cluster-name 找到默认位置的 yaml 文件,获取<code>confignode_servers</code>和<code>datanode_servers</code>配置信息</p></li><li><p>根据<code>confignode_servers</code> 和<code>datanode_servers</code>中的节点信息上传iotdb压缩包和jdk压缩包(如果yaml中配置<code>jdk_tar_dir</code>和<code>jdk_deploy_dir</code>值)</p></li><li><p>根据yaml文件节点配置信息生成并上传<code>iotdb-common.properties</code>、<code>iotdb-confignode.properties</code>、<code>iotdb-datanode.properties</code></p></li></ul><p>提示:这里的confignode 和datanode部署到同一台机器上时目录不能为相同,否则会被后部署的节点文件覆盖</p><h5 id="启动集群命令" tabindex="-1"><a class="header-anchor" href="#启动集群命令" aria-hidden="true">#</a> 启动集群命令</h5><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>iotd cluster check default_cluster\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li><p>根据 cluster-name 找到默认位置的 yaml 文件,获取<code>confignode_servers</code>和<code>datanode_servers</code>配置信息</p></li><li><p>启动confignode,根据yaml配置文件中<code>confignode_servers</code>中的顺序依次启动同时根据进程id检查confignode是否正常,第一个confignode 为seek config</p></li><li><p>启动datanode,根据yaml配置文件中<code>datanode_servers</code>中的顺序依次启动同时根据进程id检查datanode是否正常</p></li><li><p>如果根据进程id检查进程存在后,通过cli依次检查集群列表中每个服务是否正常,如果cli链接失败则每隔10s重试一次直到成功最多重试5次</p></li></ul><p><em>启动单个节点命令</em></p><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>iotd cluster start default_cluster <span class="token parameter variable">-N</span> datanode_1\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>or</p><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>iotd cluster start default_cluster <span class="token parameter variable">-N</span> <span class="token number">192.168</span>.1.5:6667\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li><p>根据 cluster-name 找到默认位置的 yaml 文件</p></li><li><p>根据提供的节点名称或者ip:port找到对于节点位置信息,如果启动的节点是<code>data_node</code>则ip使用yaml 文件中的<code>dn_rpc_address</code>、port 使用的是yaml文件中datanode_servers 中的<code>dn_rpc_port</code>。<br> 如果启动的节点是<code>config_node</code>则ip使用的是yaml文件中confignode_servers 中的<code>cn_internal_address</code> 、port 使用的是<code>cn_internal_port</code></p></li><li><p>启动该节点</p></li></ul><h5 id="查看集群状态命令" tabindex="-1"><a class="header-anchor" href="#查看集群状态命令" aria-hidden="true">#</a> 查看集群状态命令</h5><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>iotd cluster show default_cluster\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>or</p><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>iotd cluster show default_cluster details\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li><p>根据 cluster-name 找到默认位置的 yaml 文件,获取<code>confignode_servers</code>和<code>datanode_servers</code>配置信息</p></li><li><p>依次在datanode通过cli执行<code>show cluster details</code> 如果有一个节点执行成功则不会在后续节点继续执行cli直接返回结果</p></li></ul><h5 id="停止集群命令" tabindex="-1"><a class="header-anchor" href="#停止集群命令" aria-hidden="true">#</a> 停止集群命令</h5><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>iotd cluster stop default_cluster\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li><p>根据 cluster-name 找到默认位置的 yaml 文件,获取<code>confignode_servers</code>和<code>datanode_servers</code>配置信息</p></li><li><p>根据<code>datanode_servers</code>中datanode节点信息,按照配置先后顺序依次停止datanode节点</p></li><li><p>根据<code>confignode_servers</code>中confignode节点信息,按照配置依次停止confignode节点</p></li></ul><p><em>停止单个节点命令</em></p><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>iotd cluster stop default_cluster <span class="token parameter variable">-N</span> datanode_1\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>or</p><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>iotd cluster stop default_cluster <span class="token parameter variable">-N</span> <span class="token number">192.168</span>.1.5:6667\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li><p>根据 cluster-name 找到默认位置的 yaml 文件</p></li><li><p>根据提供的节点名称或者ip:port找到对于节点位置信息,如果停止的节点是<code>data_node</code>则ip使用yaml 文件中的<code>dn_rpc_address</code>、port 使用的是yaml文件中datanode_servers 中的<code>dn_rpc_port</code>。<br> 如果停止的节点是<code>config_node</code>则ip使用的是yaml文件中confignode_servers 中的<code>cn_internal_address</code> 、port 使用的是<code>cn_internal_port</code></p></li><li><p>停止该节点</p></li></ul><h2 id="数据文件夹概览工具" tabindex="-1"><a class="header-anchor" href="#数据文件夹概览工具" aria-hidden="true">#</a> 数据文件夹概览工具</h2><p>IoTDB数据文件夹概览工具用于打印出数据文件夹的结构概览信息,工具位置为 tools/tsfile/print-iotdb-data-dir。</p><h3 id="用法" tabindex="-1"><a class="header-anchor" href="#用法" aria-hidden="true">#</a> 用法</h3><ul><li>Windows:</li></ul><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>.<span class="token punctuation">\\</span>print-iotdb-data-dir.bat <span class="token operator">&lt;</span>IoTDB数据文件夹路径,如果是多个文件夹用逗号分隔<span class="token operator">&gt;</span> <span class="token punctuation">(</span><span class="token operator">&lt;</span>输出结果的存储路径<span class="token operator">&gt;</span><span class="token punctuation">)</span> \n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li>Linux or MacOs:</li></ul><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>./print-iotdb-data-dir.sh <span class="token operator">&lt;</span>IoTDB数据文件夹路径,如果是多个文件夹用逗号分隔<span class="token operator">&gt;</span> <span class="token punctuation">(</span><span class="token operator">&lt;</span>输出结果的存储路径<span class="token operator">&gt;</span><span class="token punctuation">)</span>\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>注意:如果没有设置输出结果的存储路径, 将使用相对路径&quot;IoTDB_data_dir_overview.txt&quot;作为默认值。</p><h3 id="示例" tabindex="-1"><a class="header-anchor" href="#示例" aria-hidden="true">#</a> 示例</h3><p>以Windows系统为例:</p><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>.<span class="token punctuation">\\</span>print-iotdb-data-dir.bat D:<span class="token punctuation">\\</span>github<span class="token punctuation">\\</span>master<span class="token punctuation">\\</span>iotdb<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>datanode<span class="token punctuation">\\</span>data\n```````````````````````<span class="token variable"><span class="token variable">`</span>\nStarting Printing the IoTDB Data Directory Overview\n<span class="token variable">`</span></span>```````````````````````\noutput save path:IoTDB_data_dir_overview.txt\ndata <span class="token function">dir</span> num:1\n<span class="token number">143</span> <span class="token punctuation">[</span>main<span class="token punctuation">]</span> WARN o.a.i.t.c.conf.TSFileDescriptor - not found iotdb-common.properties, use the default configs.\n<span class="token operator">|</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span>\n<span class="token operator">|</span>D:<span class="token punctuation">\\</span>github<span class="token punctuation">\\</span>master<span class="token punctuation">\\</span>iotdb<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>datanode<span class="token punctuation">\\</span>data\n<span class="token operator">|</span>--sequence\n<span class="token operator">|</span> <span class="token operator">|</span>--root.redirect0\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--1\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--0\n<span class="token operator">|</span> <span class="token operator">|</span>--root.redirect1\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--2\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--0\n<span class="token operator">|</span> <span class="token operator">|</span>--root.redirect2\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--3\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--0\n<span class="token operator">|</span> <span class="token operator">|</span>--root.redirect3\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--4\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--0\n<span class="token operator">|</span> <span class="token operator">|</span>--root.redirect4\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--5\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--0\n<span class="token operator">|</span> <span class="token operator">|</span>--root.redirect5\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--6\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--0\n<span class="token operator">|</span> <span class="token operator">|</span>--root.sg1\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--0\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--0\n<span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span> <span class="token operator">|</span>--2760\n<span class="token operator">|</span>--unsequence\n<span class="token operator">|</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span><span class="token operator">==</span>\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="tsfile概览工具" tabindex="-1"><a class="header-anchor" href="#tsfile概览工具" aria-hidden="true">#</a> TsFile概览工具</h2><p>TsFile概览工具用于以概要模式打印出一个TsFile的内容,工具位置为 tools/tsfile/print-tsfile。</p><h3 id="用法-1" tabindex="-1"><a class="header-anchor" href="#用法-1" aria-hidden="true">#</a> 用法</h3><ul><li>Windows:</li></ul><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>.<span class="token punctuation">\\</span>print-tsfile-sketch.bat <span class="token operator">&lt;</span>TsFile文件路径<span class="token operator">&gt;</span> <span class="token punctuation">(</span><span class="token operator">&lt;</span>输出结果的存储路径<span class="token operator">&gt;</span><span class="token punctuation">)</span> \n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li>Linux or MacOs:</li></ul><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>./print-tsfile-sketch.sh <span class="token operator">&lt;</span>TsFile文件路径<span class="token operator">&gt;</span> <span class="token punctuation">(</span><span class="token operator">&lt;</span>输出结果的存储路径<span class="token operator">&gt;</span><span class="token punctuation">)</span> \n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>注意:如果没有设置输出结果的存储路径, 将使用相对路径&quot;TsFile_sketch_view.txt&quot;作为默认值。</p><h3 id="示例-1" tabindex="-1"><a class="header-anchor" href="#示例-1" aria-hidden="true">#</a> 示例</h3><p>以Windows系统为例:</p><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>.<span class="token punctuation">\\</span>print-tsfile.bat D:<span class="token punctuation">\\</span>github<span class="token punctuation">\\</span>master<span class="token punctuation">\\</span><span class="token number">1669359533965</span>-1-0-0.tsfile D:<span class="token punctuation">\\</span>github<span class="token punctuation">\\</span>master<span class="token punctuation">\\</span>sketch.txt\n```````````````````````<span class="token variable"><span class="token variable">`</span>\nStarting Printing the TsFile Sketch\n<span class="token variable">`</span></span>```````````````````````\nTsFile path:D:<span class="token punctuation">\\</span>github<span class="token punctuation">\\</span>master<span class="token punctuation">\\</span><span class="token number">1669359533965</span>-1-0-0.tsfile\nSketch save path:D:<span class="token punctuation">\\</span>github<span class="token punctuation">\\</span>master<span class="token punctuation">\\</span>sketch.txt\n<span class="token number">148</span> <span class="token punctuation">[</span>main<span class="token punctuation">]</span> WARN o.a.i.t.c.conf.TSFileDescriptor - not found iotdb-common.properties, use the default configs.\n-------------------------------- TsFile Sketch --------------------------------\n<span class="token function">file</span> path: D:<span class="token punctuation">\\</span>github<span class="token punctuation">\\</span>master<span class="token punctuation">\\</span><span class="token number">1669359533965</span>-1-0-0.tsfile\n<span class="token function">file</span> length: <span class="token number">2974</span>\n\n POSITION<span class="token operator">|</span> CONTENT\n -------- -------\n <span class="token number">0</span><span class="token operator">|</span> <span class="token punctuation">[</span>magic head<span class="token punctuation">]</span> TsFile\n <span class="token number">6</span><span class="token operator">|</span> <span class="token punctuation">[</span>version number<span class="token punctuation">]</span> <span class="token number">3</span>\n<span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">|</span> <span class="token punctuation">[</span>Chunk Group<span class="token punctuation">]</span> of root.sg1.d1, num of Chunks:3\n <span class="token number">7</span><span class="token operator">|</span> <span class="token punctuation">[</span>Chunk Group Header<span class="token punctuation">]</span>\n <span class="token operator">|</span> <span class="token punctuation">[</span>marker<span class="token punctuation">]</span> <span class="token number">0</span>\n <span class="token operator">|</span> <span class="token punctuation">[</span>deviceID<span class="token punctuation">]</span> root.sg1.d1\n <span class="token number">20</span><span class="token operator">|</span> <span class="token punctuation">[</span>Chunk<span class="token punctuation">]</span> of root.sg1.d1.s1, startTime: <span class="token number">1669359533948</span> endTime: <span class="token number">1669359534047</span> count: <span class="token number">100</span> <span class="token punctuation">[</span>minValue:-9032452783138882770,maxValue:9117677033041335123,firstValue:7068645577795875906,lastValue:-5833792328174747265,sumValue:5.795959009889246E19<span class="token punctuation">]</span>\n <span class="token operator">|</span> <span class="token punctuation">[</span>chunk header<span class="token punctuation">]</span> <span class="token assign-left variable">marker</span><span class="token operator">=</span><span class="token number">5</span>, <span class="token assign-left variable">measurementID</span><span class="token operator">=</span>s1, <span class="token assign-left variable">dataSize</span><span class="token operator">=</span><span class="token number">864</span>, <span class="token assign-left variable">dataType</span><span class="token operator">=</span>INT64, <span class="token assign-left variable">compressionType</span><span class="token operator">=</span>SNAPPY, <span class="token assign-left variable">encodingType</span><span class="token operator">=</span>RLE\n <span class="token operator">|</span> <span class="token punctuation">[</span>page<span class="token punctuation">]</span> UncompressedSize:862, CompressedSize:860\n <span class="token number">893</span><span class="token operator">|</span> <span class="token punctuation">[</span>Chunk<span class="token punctuation">]</span> of root.sg1.d1.s2, startTime: <span class="token number">1669359533948</span> endTime: <span class="token number">1669359534047</span> count: <span class="token number">100</span> <span class="token punctuation">[</span>minValue:-8806861312244965718,maxValue:9192550740609853234,firstValue:1150295375739457693,lastValue:-2839553973758938646,sumValue:8.2822564314572677E18<span class="token punctuation">]</span>\n <span class="token operator">|</span> <span class="token punctuation">[</span>chunk header<span class="token punctuation">]</span> <span class="token assign-left variable">marker</span><span class="token operator">=</span><span class="token number">5</span>, <span class="token assign-left variable">measurementID</span><span class="token operator">=</span>s2, <span class="token assign-left variable">dataSize</span><span class="token operator">=</span><span class="token number">864</span>, <span class="token assign-left variable">dataType</span><span class="token operator">=</span>INT64, <span class="token assign-left variable">compressionType</span><span class="token operator">=</span>SNAPPY, <span class="token assign-left variable">encodingType</span><span class="token operator">=</span>RLE\n <span class="token operator">|</span> <span class="token punctuation">[</span>page<span class="token punctuation">]</span> UncompressedSize:862, CompressedSize:860\n <span class="token number">1766</span><span class="token operator">|</span> <span class="token punctuation">[</span>Chunk<span class="token punctuation">]</span> of root.sg1.d1.s3, startTime: <span class="token number">1669359533948</span> endTime: <span class="token number">1669359534047</span> count: <span class="token number">100</span> <span class="token punctuation">[</span>minValue:-9076669333460323191,maxValue:9175278522960949594,firstValue:2537897870994797700,lastValue:7194625271253769397,sumValue:-2.126008424849926E19<span class="token punctuation">]</span>\n <span class="token operator">|</span> <span class="token punctuation">[</span>chunk header<span class="token punctuation">]</span> <span class="token assign-left variable">marker</span><span class="token operator">=</span><span class="token number">5</span>, <span class="token assign-left variable">measurementID</span><span class="token operator">=</span>s3, <span class="token assign-left variable">dataSize</span><span class="token operator">=</span><span class="token number">864</span>, <span class="token assign-left variable">dataType</span><span class="token operator">=</span>INT64, <span class="token assign-left variable">compressionType</span><span class="token operator">=</span>SNAPPY, <span class="token assign-left variable">encodingType</span><span class="token operator">=</span>RLE\n <span class="token operator">|</span> <span class="token punctuation">[</span>page<span class="token punctuation">]</span> UncompressedSize:862, CompressedSize:860\n<span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">|</span> <span class="token punctuation">[</span>Chunk Group<span class="token punctuation">]</span> of root.sg1.d1 ends\n <span class="token number">2656</span><span class="token operator">|</span> <span class="token punctuation">[</span>marker<span class="token punctuation">]</span> <span class="token number">2</span>\n <span class="token number">2657</span><span class="token operator">|</span> <span class="token punctuation">[</span>TimeseriesIndex<span class="token punctuation">]</span> of root.sg1.d1.s1, tsDataType:INT64, startTime: <span class="token number">1669359533948</span> endTime: <span class="token number">1669359534047</span> count: <span class="token number">100</span> <span class="token punctuation">[</span>minValue:-9032452783138882770,maxValue:9117677033041335123,firstValue:7068645577795875906,lastValue:-5833792328174747265,sumValue:5.795959009889246E19<span class="token punctuation">]</span>\n <span class="token operator">|</span> <span class="token punctuation">[</span>ChunkIndex<span class="token punctuation">]</span> <span class="token assign-left variable">offset</span><span class="token operator">=</span><span class="token number">20</span>\n <span class="token number">2728</span><span class="token operator">|</span> <span class="token punctuation">[</span>TimeseriesIndex<span class="token punctuation">]</span> of root.sg1.d1.s2, tsDataType:INT64, startTime: <span class="token number">1669359533948</span> endTime: <span class="token number">1669359534047</span> count: <span class="token number">100</span> <span class="token punctuation">[</span>minValue:-8806861312244965718,maxValue:9192550740609853234,firstValue:1150295375739457693,lastValue:-2839553973758938646,sumValue:8.2822564314572677E18<span class="token punctuation">]</span>\n <span class="token operator">|</span> <span class="token punctuation">[</span>ChunkIndex<span class="token punctuation">]</span> <span class="token assign-left variable">offset</span><span class="token operator">=</span><span class="token number">893</span>\n <span class="token number">2799</span><span class="token operator">|</span> <span class="token punctuation">[</span>TimeseriesIndex<span class="token punctuation">]</span> of root.sg1.d1.s3, tsDataType:INT64, startTime: <span class="token number">1669359533948</span> endTime: <span class="token number">1669359534047</span> count: <span class="token number">100</span> <span class="token punctuation">[</span>minValue:-9076669333460323191,maxValue:9175278522960949594,firstValue:2537897870994797700,lastValue:7194625271253769397,sumValue:-2.126008424849926E19<span class="token punctuation">]</span>\n <span class="token operator">|</span> <span class="token punctuation">[</span>ChunkIndex<span class="token punctuation">]</span> <span class="token assign-left variable">offset</span><span class="token operator">=</span><span class="token number">1766</span>\n <span class="token number">2870</span><span class="token operator">|</span> <span class="token punctuation">[</span>IndexOfTimerseriesIndex Node<span class="token punctuation">]</span> <span class="token assign-left variable">type</span><span class="token operator">=</span>LEAF_MEASUREMENT\n <span class="token operator">|</span> <span class="token operator">&lt;</span>s1, <span class="token number">265</span><span class="token operator"><span class="token file-descriptor important">7</span>&gt;</span>\n <span class="token operator">|</span> <span class="token operator">&lt;</span>endOffset, <span class="token number">287</span><span class="token operator"><span class="token file-descriptor important">0</span>&gt;</span>\n<span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">|</span> <span class="token punctuation">[</span>TsFileMetadata<span class="token punctuation">]</span> begins\n <span class="token number">2891</span><span class="token operator">|</span> <span class="token punctuation">[</span>IndexOfTimerseriesIndex Node<span class="token punctuation">]</span> <span class="token assign-left variable">type</span><span class="token operator">=</span>LEAF_DEVICE\n <span class="token operator">|</span> <span class="token operator">&lt;</span>root.sg1.d1, <span class="token number">287</span><span class="token operator"><span class="token file-descriptor important">0</span>&gt;</span>\n <span class="token operator">|</span> <span class="token operator">&lt;</span>endOffset, <span class="token number">289</span><span class="token operator"><span class="token file-descriptor important">1</span>&gt;</span>\n <span class="token operator">|</span> <span class="token punctuation">[</span>meta offset<span class="token punctuation">]</span> <span class="token number">2656</span>\n <span class="token operator">|</span> <span class="token punctuation">[</span>bloom filter<span class="token punctuation">]</span> bit vector byte array <span class="token assign-left variable">length</span><span class="token operator">=</span><span class="token number">31</span>, <span class="token assign-left variable">filterSize</span><span class="token operator">=</span><span class="token number">256</span>, <span class="token assign-left variable">hashFunctionSize</span><span class="token operator">=</span><span class="token number">5</span>\n<span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">||</span><span class="token operator">|</span> <span class="token punctuation">[</span>TsFileMetadata<span class="token punctuation">]</span> ends\n <span class="token number">2964</span><span class="token operator">|</span> <span class="token punctuation">[</span>TsFileMetadataSize<span class="token punctuation">]</span> <span class="token number">73</span>\n <span class="token number">2968</span><span class="token operator">|</span> <span class="token punctuation">[</span>magic tail<span class="token punctuation">]</span> TsFile\n <span class="token number">2974</span><span class="token operator">|</span> END of TsFile\n---------------------------- IndexOfTimerseriesIndex Tree -----------------------------\n <span class="token punctuation">[</span>MetadataIndex:LEAF_DEVICE<span class="token punctuation">]</span>\n └──────<span class="token punctuation">[</span>root.sg1.d1,2870<span class="token punctuation">]</span>\n <span class="token punctuation">[</span>MetadataIndex:LEAF_MEASUREMENT<span class="token punctuation">]</span>\n └──────<span class="token punctuation">[</span>s1,2657<span class="token punctuation">]</span>\n---------------------------------- TsFile Sketch End ----------------------------------\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>解释:</p><ul><li>以&quot;|&quot;为分隔,左边是在TsFile文件中的实际位置,右边是梗概内容。</li><li>&quot;|||||||||||||||||||||&quot;是为增强可读性而添加的导引信息,不是TsFile中实际存储的数据。</li><li>最后打印的&quot;IndexOfTimerseriesIndex Tree&quot;是对TsFile文件末尾的元数据索引树的重新整理打印,便于直观理解,不是TsFile中存储的实际数据。</li></ul><h2 id="tsfile-resource概览工具" tabindex="-1"><a class="header-anchor" href="#tsfile-resource概览工具" aria-hidden="true">#</a> TsFile Resource概览工具</h2><p>TsFile resource概览工具用于打印出TsFile resource文件的内容,工具位置为 tools/tsfile/print-tsfile-resource-files。</p><h3 id="用法-2" tabindex="-1"><a class="header-anchor" href="#用法-2" aria-hidden="true">#</a> 用法</h3><ul><li>Windows:</li></ul><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>.<span class="token punctuation">\\</span>print-tsfile-resource-files.bat <span class="token operator">&lt;</span>TsFile resource文件所在的文件夹路径,或者单个TsFile resource文件路径<span class="token operator">&gt;</span>\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><ul><li>Linux or MacOs:</li></ul><div class="language-text line-numbers-mode" data-ext="text"><pre class="language-text"><code>./print-tsfile-resource-files.sh &lt;TsFile resource文件所在的文件夹路径,或者单个TsFile resource文件路径&gt; \n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><h3 id="示例-2" tabindex="-1"><a class="header-anchor" href="#示例-2" aria-hidden="true">#</a> 示例</h3><p>以Windows系统为例:</p><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>.<span class="token punctuation">\\</span>print-tsfile-resource-files.bat D:<span class="token punctuation">\\</span>github<span class="token punctuation">\\</span>master<span class="token punctuation">\\</span>iotdb<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>datanode<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>sequence<span class="token punctuation">\\</span>root.sg1<span class="token punctuation">\\</span><span class="token number">0</span><span class="token punctuation">\\</span><span class="token number">0</span>\n```````````````````````<span class="token variable"><span class="token variable">`</span>\nStarting Printing the TsFileResources\n<span class="token variable">`</span></span>```````````````````````\n<span class="token number">147</span> <span class="token punctuation">[</span>main<span class="token punctuation">]</span> WARN o.a.i.t.c.conf.TSFileDescriptor - not found iotdb-common.properties, use the default configs.\n<span class="token number">230</span> <span class="token punctuation">[</span>main<span class="token punctuation">]</span> WARN o.a.iotdb.db.conf.IoTDBDescriptor - Cannot <span class="token function">find</span> IOTDB_HOME or IOTDB_CONF environment variable when loading config <span class="token function">file</span> iotdb-common.properties, use default configuration\n<span class="token number">231</span> <span class="token punctuation">[</span>main<span class="token punctuation">]</span> WARN o.a.iotdb.db.conf.IoTDBDescriptor - Couldn<span class="token string">&#39;t load the configuration iotdb-common.properties from any of the known sources.\n233 [main] WARN o.a.iotdb.db.conf.IoTDBDescriptor - Cannot find IOTDB_HOME or IOTDB_CONF environment variable when loading config file iotdb-datanode.properties, use default configuration\n237 [main] WARN o.a.iotdb.db.conf.IoTDBDescriptor - Couldn&#39;</span>t load the configuration iotdb-datanode.properties from any of the known sources.\nAnalyzing D:<span class="token punctuation">\\</span>github<span class="token punctuation">\\</span>master<span class="token punctuation">\\</span>iotdb<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>datanode<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>sequence<span class="token punctuation">\\</span>root.sg1<span class="token punctuation">\\</span><span class="token number">0</span><span class="token punctuation">\\</span><span class="token number">0</span><span class="token punctuation">\\</span><span class="token number">1669359533489</span>-1-0-0.tsfile <span class="token punctuation">..</span>.\n\nResource plan index range <span class="token punctuation">[</span><span class="token number">9223372036854775807</span>, -9223372036854775808<span class="token punctuation">]</span>\ndevice root.sg1.d1, start <span class="token function">time</span> <span class="token number">0</span> <span class="token punctuation">(</span><span class="token number">1970</span>-01-01T08:00+08:00<span class="token punctuation">[</span>GMT+08:00<span class="token punctuation">]</span><span class="token punctuation">)</span>, end <span class="token function">time</span> <span class="token number">99</span> <span class="token punctuation">(</span><span class="token number">1970</span>-01-01T08:00:00.099+08:00<span class="token punctuation">[</span>GMT+08:00<span class="token punctuation">]</span><span class="token punctuation">)</span>\n\nAnalyzing the resource <span class="token function">file</span> folder D:<span class="token punctuation">\\</span>github<span class="token punctuation">\\</span>master<span class="token punctuation">\\</span>iotdb<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>datanode<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>sequence<span class="token punctuation">\\</span>root.sg1<span class="token punctuation">\\</span><span class="token number">0</span><span class="token punctuation">\\</span><span class="token number">0</span> finished.\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code>.<span class="token punctuation">\\</span>print-tsfile-resource-files.bat D:<span class="token punctuation">\\</span>github<span class="token punctuation">\\</span>master<span class="token punctuation">\\</span>iotdb<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>datanode<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>sequence<span class="token punctuation">\\</span>root.sg1<span class="token punctuation">\\</span><span class="token number">0</span><span class="token punctuation">\\</span><span class="token number">0</span><span class="token punctuation">\\</span><span class="token number">1669359533489</span>-1-0-0.tsfile.resource\n```````````````````````<span class="token variable"><span class="token variable">`</span>\nStarting Printing the TsFileResources\n<span class="token variable">`</span></span>```````````````````````\n<span class="token number">178</span> <span class="token punctuation">[</span>main<span class="token punctuation">]</span> WARN o.a.iotdb.db.conf.IoTDBDescriptor - Cannot <span class="token function">find</span> IOTDB_HOME or IOTDB_CONF environment variable when loading config <span class="token function">file</span> iotdb-common.properties, use default configuration\n<span class="token number">186</span> <span class="token punctuation">[</span>main<span class="token punctuation">]</span> WARN o.a.i.t.c.conf.TSFileDescriptor - not found iotdb-common.properties, use the default configs.\n<span class="token number">187</span> <span class="token punctuation">[</span>main<span class="token punctuation">]</span> WARN o.a.iotdb.db.conf.IoTDBDescriptor - Couldn<span class="token string">&#39;t load the configuration iotdb-common.properties from any of the known sources.\n188 [main] WARN o.a.iotdb.db.conf.IoTDBDescriptor - Cannot find IOTDB_HOME or IOTDB_CONF environment variable when loading config file iotdb-datanode.properties, use default configuration\n192 [main] WARN o.a.iotdb.db.conf.IoTDBDescriptor - Couldn&#39;</span>t load the configuration iotdb-datanode.properties from any of the known sources.\nAnalyzing D:<span class="token punctuation">\\</span>github<span class="token punctuation">\\</span>master<span class="token punctuation">\\</span>iotdb<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>datanode<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>sequence<span class="token punctuation">\\</span>root.sg1<span class="token punctuation">\\</span><span class="token number">0</span><span class="token punctuation">\\</span><span class="token number">0</span><span class="token punctuation">\\</span><span class="token number">1669359533489</span>-1-0-0.tsfile <span class="token punctuation">..</span>.\n\nResource plan index range <span class="token punctuation">[</span><span class="token number">9223372036854775807</span>, -9223372036854775808<span class="token punctuation">]</span>\ndevice root.sg1.d1, start <span class="token function">time</span> <span class="token number">0</span> <span class="token punctuation">(</span><span class="token number">1970</span>-01-01T08:00+08:00<span class="token punctuation">[</span>GMT+08:00<span class="token punctuation">]</span><span class="token punctuation">)</span>, end <span class="token function">time</span> <span class="token number">99</span> <span class="token punctuation">(</span><span class="token number">1970</span>-01-01T08:00:00.099+08:00<span class="token punctuation">[</span>GMT+08:00<span class="token punctuation">]</span><span class="token punctuation">)</span>\n\nAnalyzing the resource <span class="token function">file</span> D:<span class="token punctuation">\\</span>github<span class="token punctuation">\\</span>master<span class="token punctuation">\\</span>iotdb<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>datanode<span class="token punctuation">\\</span>data<span class="token punctuation">\\</span>sequence<span class="token punctuation">\\</span>root.sg1<span class="token punctuation">\\</span><span class="token number">0</span><span class="token punctuation">\\</span><span class="token number">0</span><span class="token punctuation">\\</span><span class="token number">1669359533489</span>-1-0-0.tsfile.resource finished.\n</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div>',78);function E(O,A){const a=p("ExternalLinkIcon");return l(),r("div",null,[i(`
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
`),d,n("table",null,[u,n("tbody",null,[k,b,m,v,h,g,f,_,T,x,n("tr",null,[n("td",null,[n("a",y,[s("datanode-env.sh"),e(a)])]),D,I]),n("tr",null,[n("td",null,[n("a",N,[s("confignode-env.sh"),e(a)])]),B,F]),S,C,w])]),V])}const z=o(c,[["render",E],["__file","Maintenance-Tool_timecho.html.vue"]]);export{z as default};