blob: e7b4131d2345db56f894c80870e364c77f6eab89 [file] [log] [blame]
import{_ as p,r as o,o as l,c as r,b as a,d as s,a as t,e as n}from"./app-Bx8hKGcu.js";const c={},i=n('<h1 id="import-export-tool" tabindex="-1"><a class="header-anchor" href="#import-export-tool"><span>Import Export Tool</span></a></h1><p>For different scenarios, IoTDB provides users with a variety of operation methods for batch importing data. This chapter introduces the two most commonly used methods for importing in the form of CSV text and importing in the form of TsFile files.</p><h2 id="tsfile-load-and-export-tool" tabindex="-1"><a class="header-anchor" href="#tsfile-load-and-export-tool"><span>TsFile Load And Export Tool</span></a></h2><h3 id="tsfile-load-tool" tabindex="-1"><a class="header-anchor" href="#tsfile-load-tool"><span>TsFile Load Tool</span></a></h3><h4 id="introduction" tabindex="-1"><a class="header-anchor" href="#introduction"><span>Introduction</span></a></h4><p>The load external tsfile tool allows users to load tsfiles, delete a tsfile, or move a tsfile to target directory from the running Apache IoTDB instance. Alternatively, you can use scripts to load tsfiles into IoTDB, for more information.</p><h4 id="load-with-sql" tabindex="-1"><a class="header-anchor" href="#load-with-sql"><span>Load with SQL</span></a></h4><p>The user sends specified commands to the Apache IoTDB system through the Cli tool or JDBC to use the tool.</p><h5 id="load-tsfiles" tabindex="-1"><a class="header-anchor" href="#load-tsfiles"><span>Load Tsfiles</span></a></h5><p>The command to load tsfiles is <code>load &lt;path/dir&gt; [sglevel=int][verify=true/false][onSuccess=delete/none]</code>.</p><p>This command has two usages:</p><ol><li>Load a single tsfile by specifying a file path (absolute path).</li></ol><p>The first parameter indicates the path of the tsfile to be loaded. This command has three options: sglevel, verify, onSuccess.</p><p>SGLEVEL option. If the database correspond to the tsfile does not exist, the user can set the level of database through the fourth parameter. By default, it uses the database level which is set in <code>iotdb-datanode.properties</code>.</p><p>VERIFY option. If this parameter is true, All timeseries in this loading tsfile will be compared with the timeseries in IoTDB. If existing a measurement which has different datatype with the measurement in IoTDB, the loading process will be stopped and exit. If consistence can be promised, setting false for this parameter will be a better choice.</p><p>ONSUCCESS option. The default value is DELETE, which means the processing method of successfully loaded tsfiles, and DELETE means after the tsfile is successfully loaded, it will be deleted. NONE means after the tsfile is successfully loaded, it will be remained in the origin dir.</p><p>If the <code>.resource</code> file corresponding to the file exists, it will be loaded into the data directory and engine of the Apache IoTDB. Otherwise, the corresponding <code>.resource</code> file will be regenerated from the tsfile file.</p><p>Examples:</p><ul><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39;</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; verify=true</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; verify=false</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; sglevel=1</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; onSuccess=delete</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; verify=true sglevel=1</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; verify=false sglevel=1</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; verify=true onSuccess=none</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; verify=false sglevel=1 onSuccess=delete</code></li></ul><ol start="2"><li>Load a batch of files by specifying a folder path (absolute path).</li></ol><p>The first parameter indicates the path of the tsfile to be loaded. The options above also works for this command.</p><p>Examples:</p><ul><li><code>load &#39;/Users/Desktop/data&#39;</code></li><li><code>load &#39;/Users/Desktop/data&#39; verify=false</code></li><li><code>load &#39;/Users/Desktop/data&#39; verify=true</code></li><li><code>load &#39;/Users/Desktop/data&#39; verify=true sglevel=1</code></li><li><code>load &#39;/Users/Desktop/data&#39; verify=false sglevel=1 onSuccess=delete</code></li></ul><p><strong>NOTICE</strong>: When <code>$IOTDB_HOME$/conf/iotdb-datanode.properties</code> has <code>enable_auto_create_schema=true</code>, it will automatically create metadata in TSFILE, otherwise it will not be created automatically.</p><h4 id="load-with-script" tabindex="-1"><a class="header-anchor" href="#load-with-script"><span>Load with Script</span></a></h4>',25),u={href:"http://rewrite-tsfile.sh",target:"_blank",rel:"noopener noreferrer"},d=n(`<div class="language-bash line-numbers-mode" data-ext="sh" data-title="sh"><pre class="language-bash"><code>./load-tsfile.bat <span class="token parameter variable">-f</span> filePath <span class="token punctuation">[</span>-h host<span class="token punctuation">]</span> <span class="token punctuation">[</span>-p port<span class="token punctuation">]</span> <span class="token punctuation">[</span>-u username<span class="token punctuation">]</span> <span class="token punctuation">[</span>-pw password<span class="token punctuation">]</span> <span class="token punctuation">[</span>--sgLevel int<span class="token punctuation">]</span> <span class="token punctuation">[</span>--verify true/false<span class="token punctuation">]</span> <span class="token punctuation">[</span>--onSuccess none/delete<span class="token punctuation">]</span>
<span class="token parameter variable">-f</span> File/Directory to be load, required
<span class="token parameter variable">-h</span> IoTDB Host address, optional field, <span class="token number">127.0</span>.0.1 by default
<span class="token parameter variable">-p</span> IoTDB port, optional field, <span class="token number">6667</span> by default
<span class="token parameter variable">-u</span> IoTDB user name, optional field, root by default
<span class="token parameter variable">-pw</span> IoTDB password, optional field, root by default
<span class="token parameter variable">--sgLevel</span> Sg level of loading Tsfile, optional field, default_storage_group_level <span class="token keyword">in</span> iotdb-common.properties by default
<span class="token parameter variable">--verify</span> Verify schema or not, optional field, True by default
<span class="token parameter variable">--onSuccess</span> Delete or remain origin TsFile after loading, optional field, none by default
</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></div><h5 id="example" tabindex="-1"><a class="header-anchor" href="#example"><span>Example</span></a></h5><p>Assuming that an IoTDB instance is running on server 192.168.0.101:6667, you want to load all TsFile files from the locally saved TsFile backup folder D:\\IoTDB\\data into this IoTDB instance.</p><p>First move to the folder <code>$IOTDB_HOME/tools/</code>, open the command line, and execute</p><div class="language-bash line-numbers-mode" data-ext="sh" data-title="sh"><pre class="language-bash"><code>./load-rewrite.bat <span class="token parameter variable">-f</span> D:<span class="token punctuation">\\</span>IoTDB<span class="token punctuation">\\</span>data <span class="token parameter variable">-h</span> <span class="token number">192.168</span>.0.101 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>After waiting for the script execution to complete, you can check that the data in the IoTDB instance has been loaded correctly.</p><h5 id="q-a" tabindex="-1"><a class="header-anchor" href="#q-a"><span>Q&amp;A</span></a></h5><ul><li>Cannot find or load the main class <ul><li>It may be because the environment variable $IOTDB_HOME is not set, please set the environment variable and try again</li></ul></li><li>-f option must be set! <ul><li>The input command is missing the -f field (file or folder path to be loaded) or the -u field (user name), please add it and re-execute</li></ul></li><li>What if the execution crashes in the middle and you want to reload? <ul><li>You re-execute the command just now, reloading the data will not affect the correctness after loading</li></ul></li></ul><p>TsFile can help you export the result set in the format of TsFile file to the specified path by executing the sql, command line sql, and sql file.</p><h3 id="tsfile-export-tool" tabindex="-1"><a class="header-anchor" href="#tsfile-export-tool"><span>TsFile Export Tool</span></a></h3><h4 id="syntax" tabindex="-1"><a class="header-anchor" href="#syntax"><span>Syntax</span></a></h4><div class="language-bash line-numbers-mode" data-ext="sh" data-title="sh"><pre class="language-bash"><code><span class="token comment"># Unix/OS X</span>
<span class="token operator">&gt;</span> tools/export-tsfile.sh <span class="token parameter variable">-h</span> <span class="token operator">&lt;</span>ip<span class="token operator">&gt;</span> <span class="token parameter variable">-p</span> <span class="token operator">&lt;</span>port<span class="token operator">&gt;</span> <span class="token parameter variable">-u</span> <span class="token operator">&lt;</span>username<span class="token operator">&gt;</span> <span class="token parameter variable">-pw</span> <span class="token operator">&lt;</span>password<span class="token operator">&gt;</span> <span class="token parameter variable">-td</span> <span class="token operator">&lt;</span>directory<span class="token operator">&gt;</span> <span class="token punctuation">[</span>-f <span class="token operator">&lt;</span>export filename<span class="token operator">&gt;</span> <span class="token parameter variable">-q</span> <span class="token operator">&lt;</span>query command<span class="token operator">&gt;</span> <span class="token parameter variable">-s</span> <span class="token operator">&lt;</span>sql file<span class="token operator">&gt;</span><span class="token punctuation">]</span>
<span class="token comment"># Windows</span>
<span class="token operator">&gt;</span> tools<span class="token punctuation">\\</span>export-tsfile.bat <span class="token parameter variable">-h</span> <span class="token operator">&lt;</span>ip<span class="token operator">&gt;</span> <span class="token parameter variable">-p</span> <span class="token operator">&lt;</span>port<span class="token operator">&gt;</span> <span class="token parameter variable">-u</span> <span class="token operator">&lt;</span>username<span class="token operator">&gt;</span> <span class="token parameter variable">-pw</span> <span class="token operator">&lt;</span>password<span class="token operator">&gt;</span> <span class="token parameter variable">-td</span> <span class="token operator">&lt;</span>directory<span class="token operator">&gt;</span> <span class="token punctuation">[</span>-f <span class="token operator">&lt;</span>export filename<span class="token operator">&gt;</span> <span class="token parameter variable">-q</span> <span class="token operator">&lt;</span>query command<span class="token operator">&gt;</span> <span class="token parameter variable">-s</span> <span class="token operator">&lt;</span>sql file<span class="token operator">&gt;</span><span class="token punctuation">]</span>
</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></div><ul><li><code>-h &lt;host&gt;</code>: <ul><li>The host address of the IoTDB service.</li></ul></li><li><code>-p &lt;port&gt;</code>: <ul><li>The port number of the IoTDB service.</li></ul></li><li><code>-u &lt;username&gt;</code>: <ul><li>The username of the IoTDB service.</li></ul></li><li><code>-pw &lt;password&gt;</code>: <ul><li>Password for IoTDB service.</li></ul></li><li><code>-td &lt;directory&gt;</code>: <ul><li>Specify the output path for the exported TsFile file.</li></ul></li><li><code>-f &lt;tsfile name&gt;</code>: <ul><li>For the file name of the exported TsFile file, just write the file name, and cannot include the file path and suffix. If the sql file or console input contains multiple sqls, multiple files will be generated in the order of sql.</li><li>Example: There are three SQLs in the file or command line, and -f param is &quot;dump&quot;, then three TsFile files: dump0.tsfile、dump1.tsfile、dump2.tsfile will be generated in the target path.</li></ul></li><li><code>-q &lt;query command&gt;</code>: <ul><li>Directly specify the query statement you want to execute in the command.</li><li>Example: <code>select * from root.** limit 100</code></li></ul></li><li><code>-s &lt;sql file&gt;</code>: <ul><li>Specify a SQL file that contains one or more SQL statements. If an SQL file contains multiple SQL statements, the SQL statements should be separated by newlines. Each SQL statement corresponds to an output TsFile file.</li></ul></li><li><code>-t &lt;timeout&gt;</code>: <ul><li>Specifies the timeout period for session queries, in milliseconds</li></ul></li></ul><p>In addition, if you do not use the <code>-s</code> and <code>-q</code> parameters, after the export script is started, you need to enter the query statement as prompted by the program, and different query results will be saved to different TsFile files.</p><h4 id="example-1" tabindex="-1"><a class="header-anchor" href="#example-1"><span>Example</span></a></h4><div class="language-bash line-numbers-mode" data-ext="sh" data-title="sh"><pre class="language-bash"><code><span class="token comment"># Unix/OS X</span>
<span class="token operator">&gt;</span> tools/export-tsfile.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./
<span class="token comment"># or</span>
<span class="token operator">&gt;</span> tools/export-tsfile.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-q</span> <span class="token string">&quot;select * from root.** align by device&quot;</span>
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-tsfile.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-s</span> ./sql.txt
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-tsfile.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-s</span> ./sql.txt <span class="token parameter variable">-f</span> myTsFile
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-tsfile.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-s</span> ./sql.txt <span class="token parameter variable">-f</span> myTsFile <span class="token parameter variable">-t</span> <span class="token number">10000</span>
<span class="token comment"># Windows</span>
<span class="token operator">&gt;</span> tools/export-tsfile.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-tsfile.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-q</span> <span class="token string">&quot;select * from root.** align by device&quot;</span>
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-tsfile.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-s</span> ./sql.txt
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-tsfile.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-s</span> ./sql.txt <span class="token parameter variable">-f</span> myTsFile
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-tsfile.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-s</span> ./sql.txt <span class="token parameter variable">-f</span> myTsFile <span class="token parameter variable">-t</span> <span class="token number">10000</span>
</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></div><h4 id="q-a-1" tabindex="-1"><a class="header-anchor" href="#q-a-1"><span>Q&amp;A</span></a></h4><ul><li>It is recommended not to execute the write data command at the same time when loading data, which may lead to insufficient memory in the JVM.</li></ul><h2 id="csv-tool" tabindex="-1"><a class="header-anchor" href="#csv-tool"><span>CSV Tool</span></a></h2><p>The CSV tool can help you import data in CSV format to IoTDB or export data from IoTDB to a CSV file.</p>`,20),k={id:"usage-of-export-csv-sh",tabindex:"-1"},m={class:"header-anchor",href:"#usage-of-export-csv-sh"},b={href:"http://export-csv.sh",target:"_blank",rel:"noopener noreferrer"},v=n(`<h4 id="syntax-1" tabindex="-1"><a class="header-anchor" href="#syntax-1"><span>Syntax</span></a></h4><div class="language-bash line-numbers-mode" data-ext="sh" data-title="sh"><pre class="language-bash"><code><span class="token comment"># Unix/OS X</span>
<span class="token operator">&gt;</span> tools/export-csv.sh <span class="token parameter variable">-h</span> <span class="token operator">&lt;</span>ip<span class="token operator">&gt;</span> <span class="token parameter variable">-p</span> <span class="token operator">&lt;</span>port<span class="token operator">&gt;</span> <span class="token parameter variable">-u</span> <span class="token operator">&lt;</span>username<span class="token operator">&gt;</span> <span class="token parameter variable">-pw</span> <span class="token operator">&lt;</span>password<span class="token operator">&gt;</span> <span class="token parameter variable">-td</span> <span class="token operator">&lt;</span>directory<span class="token operator">&gt;</span> <span class="token punctuation">[</span>-tf <span class="token operator">&lt;</span>time-format<span class="token operator">&gt;</span> <span class="token parameter variable">-datatype</span> <span class="token operator">&lt;</span>true/false<span class="token operator">&gt;</span> <span class="token parameter variable">-q</span> <span class="token operator">&lt;</span>query command<span class="token operator">&gt;</span> <span class="token parameter variable">-s</span> <span class="token operator">&lt;</span>sql file<span class="token operator">&gt;</span> <span class="token parameter variable">-linesPerFile</span> <span class="token operator">&lt;</span>int<span class="token operator">&gt;</span><span class="token punctuation">]</span>
<span class="token comment"># Windows</span>
<span class="token operator">&gt;</span> tools<span class="token punctuation">\\</span>export-csv.bat <span class="token parameter variable">-h</span> <span class="token operator">&lt;</span>ip<span class="token operator">&gt;</span> <span class="token parameter variable">-p</span> <span class="token operator">&lt;</span>port<span class="token operator">&gt;</span> <span class="token parameter variable">-u</span> <span class="token operator">&lt;</span>username<span class="token operator">&gt;</span> <span class="token parameter variable">-pw</span> <span class="token operator">&lt;</span>password<span class="token operator">&gt;</span> <span class="token parameter variable">-td</span> <span class="token operator">&lt;</span>directory<span class="token operator">&gt;</span> <span class="token punctuation">[</span>-tf <span class="token operator">&lt;</span>time-format<span class="token operator">&gt;</span> <span class="token parameter variable">-datatype</span> <span class="token operator">&lt;</span>true/false<span class="token operator">&gt;</span> <span class="token parameter variable">-q</span> <span class="token operator">&lt;</span>query command<span class="token operator">&gt;</span> <span class="token parameter variable">-s</span> <span class="token operator">&lt;</span>sql file<span class="token operator">&gt;</span> <span class="token parameter variable">-linesPerFile</span> <span class="token operator">&lt;</span>int<span class="token operator">&gt;</span><span class="token punctuation">]</span>
</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></div><p>Description:</p>`,3),h=n("<li><code>-datatype</code>: <ul><li>true (by default): print the data type of timesries in the head line of CSV file. i.e., <code>Time, root.sg1.d1.s1(INT32), root.sg1.d1.s2(INT64)</code>.</li><li>false: only print the timeseries name in the head line of the CSV file. i.e., <code>Time, root.sg1.d1.s1 , root.sg1.d1.s2</code></li></ul></li><li><code>-q &lt;query command&gt;</code>: <ul><li>specifying a query command that you want to execute</li><li>example: <code>select * from root.** limit 100</code>, or <code>select * from root.** limit 100 align by device</code></li></ul></li><li><code>-s &lt;sql file&gt;</code>: <ul><li>specifying a SQL file which can consist of more than one sql. If there are multiple SQLs in one SQL file, the SQLs should be separated by line breaks. And, for each SQL, a output CSV file will be generated.</li></ul></li><li><code>-td &lt;directory&gt;</code>: <ul><li>specifying the directory that the data will be exported</li></ul></li>",4),f=a("code",null,"-tf <time-format>",-1),g={href:"https://calendars.wikia.org/wiki/ISO_8601",target:"_blank",rel:"noopener noreferrer"},y=a("code",null,"-tf timestamp",-1),T=a("li",null,[s("example: "),a("code",null,"-tf yyyy-MM-dd\\ HH:mm:ss"),s(" or "),a("code",null,"-tf timestamp")],-1),w=n("<li><code>-linesPerFile &lt;int&gt;</code>: <ul><li>Specifying lines of each dump file, <code>10000</code> is default.</li><li>example: <code>-linesPerFile 1</code></li></ul></li><li><code>-t &lt;timeout&gt;</code>: <ul><li>Specifies the timeout period for session queries, in milliseconds</li></ul></li>",2),x=n(`<p>More, if you don&#39;t use one of <code>-s</code> and <code>-q</code>, you need to enter some queries after running the export script. The results of the different query will be saved to different CSV files.</p><h4 id="example-2" tabindex="-1"><a class="header-anchor" href="#example-2"><span>Example</span></a></h4><div class="language-bash line-numbers-mode" data-ext="sh" data-title="sh"><pre class="language-bash"><code><span class="token comment"># Unix/OS X</span>
<span class="token operator">&gt;</span> tools/export-csv.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-csv.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-tf</span> yyyy-MM-dd<span class="token punctuation">\\</span> HH:mm:ss
<span class="token comment"># or</span>
<span class="token operator">&gt;</span> tools/export-csv.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-q</span> <span class="token string">&quot;select * from root.** align by device&quot;</span>
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-csv.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-s</span> sql.txt
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-csv.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-tf</span> yyyy-MM-dd<span class="token punctuation">\\</span> HH:mm:ss <span class="token parameter variable">-s</span> sql.txt
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-csv.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-tf</span> yyyy-MM-dd<span class="token punctuation">\\</span> HH:mm:ss <span class="token parameter variable">-s</span> sql.txt <span class="token parameter variable">-linesPerFile</span> <span class="token number">10</span>
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-csv.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-tf</span> yyyy-MM-dd<span class="token punctuation">\\</span> HH:mm:ss <span class="token parameter variable">-s</span> sql.txt <span class="token parameter variable">-linesPerFile</span> <span class="token number">10</span> <span class="token parameter variable">-t</span> <span class="token number">10000</span>
<span class="token comment"># Windows</span>
<span class="token operator">&gt;</span> tools/export-csv.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-csv.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-tf</span> yyyy-MM-dd<span class="token punctuation">\\</span> HH:mm:ss
<span class="token comment"># or</span>
<span class="token operator">&gt;</span> tools/export-csv.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-q</span> <span class="token string">&quot;select * from root.** align by device&quot;</span>
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-csv.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-s</span> sql.txt
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-csv.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-tf</span> yyyy-MM-dd<span class="token punctuation">\\</span> HH:mm:ss <span class="token parameter variable">-s</span> sql.txt
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-csv.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-tf</span> yyyy-MM-dd<span class="token punctuation">\\</span> HH:mm:ss <span class="token parameter variable">-s</span> sql.txt <span class="token parameter variable">-linesPerFile</span> <span class="token number">10</span>
<span class="token comment"># Or</span>
<span class="token operator">&gt;</span> tools/export-csv.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-td</span> ./ <span class="token parameter variable">-tf</span> yyyy-MM-dd<span class="token punctuation">\\</span> HH:mm:ss <span class="token parameter variable">-s</span> sql.txt <span class="token parameter variable">-linesPerFile</span> <span class="token number">10</span> <span class="token parameter variable">-t</span> <span class="token number">10000</span>
</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></div><h4 id="sample-sql-file" tabindex="-1"><a class="header-anchor" href="#sample-sql-file"><span>Sample SQL file</span></a></h4><div class="language-sql line-numbers-mode" data-ext="sql" data-title="sql"><pre class="language-sql"><code><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span><span class="token punctuation">;</span>
<span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> align <span class="token keyword">by</span> device<span class="token punctuation">;</span>
</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div></div></div><p>The result of <code>select * from root.**</code></p><div class="language-sql line-numbers-mode" data-ext="sql" data-title="sql"><pre class="language-sql"><code><span class="token keyword">Time</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf04<span class="token punctuation">.</span>wt04<span class="token punctuation">.</span><span class="token keyword">status</span><span class="token punctuation">(</span><span class="token keyword">BOOLEAN</span><span class="token punctuation">)</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf03<span class="token punctuation">.</span>wt03<span class="token punctuation">.</span>hardware<span class="token punctuation">(</span><span class="token keyword">TEXT</span><span class="token punctuation">)</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span><span class="token punctuation">(</span><span class="token keyword">BOOLEAN</span><span class="token punctuation">)</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span>hardware<span class="token punctuation">(</span><span class="token keyword">TEXT</span><span class="token punctuation">)</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span>hardware<span class="token punctuation">(</span><span class="token keyword">TEXT</span><span class="token punctuation">)</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span><span class="token keyword">status</span><span class="token punctuation">(</span><span class="token keyword">BOOLEAN</span><span class="token punctuation">)</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.001</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span><span class="token boolean">true</span><span class="token punctuation">,</span><span class="token string">&quot;v1&quot;</span><span class="token punctuation">,</span><span class="token boolean">true</span><span class="token punctuation">,</span><span class="token string">&quot;v1&quot;</span><span class="token punctuation">,</span>v1<span class="token punctuation">,</span><span class="token boolean">true</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.002</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span><span class="token boolean">true</span><span class="token punctuation">,</span><span class="token string">&quot;v1&quot;</span><span class="token punctuation">,</span><span class="token punctuation">,</span><span class="token punctuation">,</span><span class="token punctuation">,</span><span class="token boolean">true</span>
</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></div><p>The result of <code>select * from root.** align by device</code></p><div class="language-sql line-numbers-mode" data-ext="sql" data-title="sql"><pre class="language-sql"><code><span class="token keyword">Time</span><span class="token punctuation">,</span>Device<span class="token punctuation">,</span>hardware<span class="token punctuation">(</span><span class="token keyword">TEXT</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token keyword">status</span><span class="token punctuation">(</span><span class="token keyword">BOOLEAN</span><span class="token punctuation">)</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.001</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">,</span><span class="token string">&quot;v1&quot;</span><span class="token punctuation">,</span><span class="token boolean">true</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.002</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">,</span><span class="token punctuation">,</span><span class="token boolean">true</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.001</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">,</span><span class="token string">&quot;v1&quot;</span><span class="token punctuation">,</span><span class="token boolean">true</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.001</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf03<span class="token punctuation">.</span>wt03<span class="token punctuation">,</span><span class="token string">&quot;v1&quot;</span><span class="token punctuation">,</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.002</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf03<span class="token punctuation">.</span>wt03<span class="token punctuation">,</span><span class="token string">&quot;v1&quot;</span><span class="token punctuation">,</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.001</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf04<span class="token punctuation">.</span>wt04<span class="token punctuation">,</span><span class="token punctuation">,</span><span class="token boolean">true</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.002</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf04<span class="token punctuation">.</span>wt04<span class="token punctuation">,</span><span class="token punctuation">,</span><span class="token boolean">true</span>
</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></div><p>The data of boolean type signed by <code>true</code> and <code>false</code> without double quotes. And the text data will be enclosed in double quotes.</p><h4 id="note" tabindex="-1"><a class="header-anchor" href="#note"><span>Note</span></a></h4><p>Note that if fields exported by the export tool have the following special characters:</p><ol><li><code>,</code>: the field will be escaped by <code>\\</code>.</li></ol>`,13),q={id:"usage-of-import-csv-sh",tabindex:"-1"},E={class:"header-anchor",href:"#usage-of-import-csv-sh"},I={href:"http://import-csv.sh",target:"_blank",rel:"noopener noreferrer"},D=n(`<h4 id="create-metadata-optional" tabindex="-1"><a class="header-anchor" href="#create-metadata-optional"><span>Create Metadata (optional)</span></a></h4><div class="language-sql line-numbers-mode" data-ext="sql" data-title="sql"><pre class="language-sql"><code><span class="token keyword">CREATE</span> <span class="token keyword">DATABASE</span> root<span class="token punctuation">.</span>fit<span class="token punctuation">.</span>d1<span class="token punctuation">;</span>
<span class="token keyword">CREATE</span> <span class="token keyword">DATABASE</span> root<span class="token punctuation">.</span>fit<span class="token punctuation">.</span>d2<span class="token punctuation">;</span>
<span class="token keyword">CREATE</span> <span class="token keyword">DATABASE</span> root<span class="token punctuation">.</span>fit<span class="token punctuation">.</span>p<span class="token punctuation">;</span>
<span class="token keyword">CREATE</span> TIMESERIES root<span class="token punctuation">.</span>fit<span class="token punctuation">.</span>d1<span class="token punctuation">.</span>s1 <span class="token keyword">WITH</span> DATATYPE<span class="token operator">=</span>INT32<span class="token punctuation">,</span>ENCODING<span class="token operator">=</span>RLE<span class="token punctuation">;</span>
<span class="token keyword">CREATE</span> TIMESERIES root<span class="token punctuation">.</span>fit<span class="token punctuation">.</span>d1<span class="token punctuation">.</span>s2 <span class="token keyword">WITH</span> DATATYPE<span class="token operator">=</span><span class="token keyword">TEXT</span><span class="token punctuation">,</span>ENCODING<span class="token operator">=</span>PLAIN<span class="token punctuation">;</span>
<span class="token keyword">CREATE</span> TIMESERIES root<span class="token punctuation">.</span>fit<span class="token punctuation">.</span>d2<span class="token punctuation">.</span>s1 <span class="token keyword">WITH</span> DATATYPE<span class="token operator">=</span>INT32<span class="token punctuation">,</span>ENCODING<span class="token operator">=</span>RLE<span class="token punctuation">;</span>
<span class="token keyword">CREATE</span> TIMESERIES root<span class="token punctuation">.</span>fit<span class="token punctuation">.</span>d2<span class="token punctuation">.</span>s3 <span class="token keyword">WITH</span> DATATYPE<span class="token operator">=</span>INT32<span class="token punctuation">,</span>ENCODING<span class="token operator">=</span>RLE<span class="token punctuation">;</span>
<span class="token keyword">CREATE</span> TIMESERIES root<span class="token punctuation">.</span>fit<span class="token punctuation">.</span>p<span class="token punctuation">.</span>s1 <span class="token keyword">WITH</span> DATATYPE<span class="token operator">=</span>INT32<span class="token punctuation">,</span>ENCODING<span class="token operator">=</span>RLE<span class="token punctuation">;</span>
</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></div><p>IoTDB has the ability of type inference, so it is not necessary to create metadata before data import. However, we still recommend creating metadata before importing data using the CSV import tool, as this can avoid unnecessary type conversion errors.</p><h4 id="sample-csv-file-to-be-imported" tabindex="-1"><a class="header-anchor" href="#sample-csv-file-to-be-imported"><span>Sample CSV File to Be Imported</span></a></h4><p>The data aligned by time, and headers without data type.</p><div class="language-sql line-numbers-mode" data-ext="sql" data-title="sql"><pre class="language-sql"><code><span class="token keyword">Time</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>t1<span class="token punctuation">.</span>str<span class="token punctuation">,</span>root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>t2<span class="token punctuation">.</span>str<span class="token punctuation">,</span>root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>t2<span class="token punctuation">.</span><span class="token keyword">int</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.001</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span><span class="token string">&quot;123hello world&quot;</span><span class="token punctuation">,</span><span class="token string">&quot;123\\,abc&quot;</span><span class="token punctuation">,</span><span class="token number">100</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.002</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span><span class="token string">&quot;123&quot;</span><span class="token punctuation">,</span><span class="token punctuation">,</span>
</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></div><p>The data aligned by time, and headers with data type.(Text type data supports double quotation marks and no double quotation marks)</p><div class="language-sql line-numbers-mode" data-ext="sql" data-title="sql"><pre class="language-sql"><code><span class="token keyword">Time</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>t1<span class="token punctuation">.</span>str<span class="token punctuation">(</span><span class="token keyword">TEXT</span><span class="token punctuation">)</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>t2<span class="token punctuation">.</span>str<span class="token punctuation">(</span><span class="token keyword">TEXT</span><span class="token punctuation">)</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>t2<span class="token punctuation">.</span><span class="token keyword">int</span><span class="token punctuation">(</span>INT32<span class="token punctuation">)</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.001</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span><span class="token string">&quot;123hello world&quot;</span><span class="token punctuation">,</span><span class="token string">&quot;123\\,abc&quot;</span><span class="token punctuation">,</span><span class="token number">100</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.002</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span><span class="token number">123</span><span class="token punctuation">,</span>hello world<span class="token punctuation">,</span><span class="token number">123</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.003</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span><span class="token string">&quot;123&quot;</span><span class="token punctuation">,</span><span class="token punctuation">,</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.004</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span><span class="token number">123</span><span class="token punctuation">,</span><span class="token punctuation">,</span><span class="token number">12</span>
</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></div><p>The data aligned by device, and headers without data type.</p><div class="language-sql line-numbers-mode" data-ext="sql" data-title="sql"><pre class="language-sql"><code><span class="token keyword">Time</span><span class="token punctuation">,</span>Device<span class="token punctuation">,</span>str<span class="token punctuation">,</span><span class="token keyword">int</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.001</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>t1<span class="token punctuation">,</span><span class="token string">&quot;123hello world&quot;</span><span class="token punctuation">,</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.002</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>t1<span class="token punctuation">,</span><span class="token string">&quot;123&quot;</span><span class="token punctuation">,</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.001</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>t2<span class="token punctuation">,</span><span class="token string">&quot;123\\,abc&quot;</span><span class="token punctuation">,</span><span class="token number">100</span>
</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></div><p>The data aligned by device, and headers with data type.(Text type data supports double quotation marks and no double quotation marks)</p><div class="language-sql line-numbers-mode" data-ext="sql" data-title="sql"><pre class="language-sql"><code><span class="token keyword">Time</span><span class="token punctuation">,</span>Device<span class="token punctuation">,</span>str<span class="token punctuation">(</span><span class="token keyword">TEXT</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token keyword">int</span><span class="token punctuation">(</span>INT32<span class="token punctuation">)</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.001</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>t1<span class="token punctuation">,</span><span class="token string">&quot;123hello world&quot;</span><span class="token punctuation">,</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.002</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>t1<span class="token punctuation">,</span>hello world<span class="token punctuation">,</span><span class="token number">123</span>
<span class="token number">1970</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T08:<span class="token number">00</span>:<span class="token number">00.003</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span>root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>t1<span class="token punctuation">,</span><span class="token punctuation">,</span><span class="token number">123</span>
</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></div><h4 id="syntax-2" tabindex="-1"><a class="header-anchor" href="#syntax-2"><span>Syntax</span></a></h4><div class="language-bash line-numbers-mode" data-ext="sh" data-title="sh"><pre class="language-bash"><code><span class="token comment"># Unix/OS X</span>
<span class="token operator">&gt;</span> tools/import-csv.sh <span class="token parameter variable">-h</span> <span class="token operator">&lt;</span>ip<span class="token operator">&gt;</span> <span class="token parameter variable">-p</span> <span class="token operator">&lt;</span>port<span class="token operator">&gt;</span> <span class="token parameter variable">-u</span> <span class="token operator">&lt;</span>username<span class="token operator">&gt;</span> <span class="token parameter variable">-pw</span> <span class="token operator">&lt;</span>password<span class="token operator">&gt;</span> <span class="token parameter variable">-f</span> <span class="token operator">&lt;</span>xxx.csv<span class="token operator">&gt;</span> <span class="token punctuation">[</span>-fd <span class="token operator">&lt;</span>./failedDirectory<span class="token operator">&gt;</span><span class="token punctuation">]</span> <span class="token punctuation">[</span>-aligned <span class="token operator">&lt;</span>true<span class="token operator">&gt;</span><span class="token punctuation">]</span> <span class="token punctuation">[</span>-tp <span class="token operator">&lt;</span>ms/ns/us<span class="token operator">&gt;</span><span class="token punctuation">]</span> <span class="token punctuation">[</span>-typeInfer <span class="token operator">&lt;</span>boolean<span class="token operator">=</span>text,float<span class="token operator">=</span>double<span class="token punctuation">..</span>.<span class="token operator">&gt;</span><span class="token punctuation">]</span>
<span class="token comment"># Windows</span>
<span class="token operator">&gt;</span> tools<span class="token punctuation">\\</span>import-csv.bat <span class="token parameter variable">-h</span> <span class="token operator">&lt;</span>ip<span class="token operator">&gt;</span> <span class="token parameter variable">-p</span> <span class="token operator">&lt;</span>port<span class="token operator">&gt;</span> <span class="token parameter variable">-u</span> <span class="token operator">&lt;</span>username<span class="token operator">&gt;</span> <span class="token parameter variable">-pw</span> <span class="token operator">&lt;</span>password<span class="token operator">&gt;</span> <span class="token parameter variable">-f</span> <span class="token operator">&lt;</span>xxx.csv<span class="token operator">&gt;</span> <span class="token punctuation">[</span>-fd <span class="token operator">&lt;</span>./failedDirectory<span class="token operator">&gt;</span><span class="token punctuation">]</span> <span class="token punctuation">[</span>-aligned <span class="token operator">&lt;</span>true<span class="token operator">&gt;</span><span class="token punctuation">]</span> <span class="token punctuation">[</span>-tp <span class="token operator">&lt;</span>ms/ns/us<span class="token operator">&gt;</span><span class="token punctuation">]</span> <span class="token punctuation">[</span>-typeInfer <span class="token operator">&lt;</span>boolean<span class="token operator">=</span>text,float<span class="token operator">=</span>double<span class="token punctuation">..</span>.<span class="token operator">&gt;</span><span class="token punctuation">]</span>
</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></div><p>Description:</p><ul><li><p><code>-f</code>:</p><ul><li>the CSV file that you want to import, and it could be a file or a folder. If a folder is specified, all TXT and CSV files in the folder will be imported in batches.</li><li>example: <code>-f filename.csv</code></li></ul></li><li><p><code>-fd</code>:</p><ul><li>specifying a directory to save files which save failed lines. If you don&#39;t use this parameter, the failed file will be saved at original directory, and the filename will be the source filename with suffix <code>.failed</code>.</li><li>example: <code>-fd ./failed/</code></li></ul></li><li><p><code>-aligned</code>:</p><ul><li>whether to use the aligned interface? The option <code>false</code> is default.</li><li>example: <code>-aligned true</code></li></ul></li><li><p><code>-batch</code>:</p><ul><li>specifying the point&#39;s number of a batch. If the program throw the exception <code>org.apache.thrift.transport.TTransportException: Frame size larger than protect max size</code>, you can lower this parameter as appropriate.</li><li>example: <code>-batch 100000</code>, <code>100000</code> is the default value.</li></ul></li><li><p><code>-tp &lt;time-precision&gt;</code>:</p><ul><li>specifying a time precision. Options includes <code>ms</code>(millisecond), <code>ns</code>(nanosecond), and <code>us</code>(microsecond), <code>ms</code> is default.</li></ul></li><li><p><code>-typeInfer &lt;srcTsDataType1=dstTsDataType1,srcTsDataType2=dstTsDataType2,...&gt;</code>:</p><ul><li>specifying rules of type inference.</li><li>Option <code>srcTsDataType</code> includes <code>boolean</code>,<code>int</code>,<code>long</code>,<code>float</code>,<code>double</code>,<code>NaN</code>.</li><li>Option <code>dstTsDataType</code> includes <code>boolean</code>,<code>int</code>,<code>long</code>,<code>float</code>,<code>double</code>,<code>text</code>.</li><li>When <code>srcTsDataType</code> is <code>boolean</code>, <code>dstTsDataType</code> should be between <code>boolean</code> and <code>text</code>.</li><li>When <code>srcTsDataType</code> is <code>NaN</code>, <code>dstTsDataType</code> should be among <code>float</code>, <code>double</code> and <code>text</code>.</li><li>When <code>srcTsDataType</code> is Numeric type, <code>dstTsDataType</code> precision should be greater than <code>srcTsDataType</code>.</li><li>example: <code>-typeInfer boolean=text,float=double</code></li></ul></li><li><p><code>-linesPerFailedFile &lt;int&gt;</code>:</p><ul><li>Specifying lines of each failed file, <code>10000</code> is default.</li><li>example: <code>-linesPerFailedFile 1</code></li></ul></li></ul><h4 id="example-3" tabindex="-1"><a class="header-anchor" href="#example-3"><span>Example</span></a></h4><div class="language-bash line-numbers-mode" data-ext="sh" data-title="sh"><pre class="language-bash"><code><span class="token comment"># Unix/OS X</span>
<span class="token operator">&gt;</span> tools/import-csv.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-f</span> example-filename.csv <span class="token parameter variable">-fd</span> ./failed
<span class="token comment"># or</span>
<span class="token operator">&gt;</span> tools/import-csv.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-f</span> example-filename.csv <span class="token parameter variable">-fd</span> ./failed
<span class="token comment"># or</span>
<span class="token operator">&gt;</span> tools<span class="token punctuation">\\</span>import-csv.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-f</span> example-filename.csv <span class="token parameter variable">-fd</span> ./failed <span class="token parameter variable">-tp</span> ns
<span class="token comment"># or</span>
<span class="token operator">&gt;</span> tools<span class="token punctuation">\\</span>import-csv.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-f</span> example-filename.csv <span class="token parameter variable">-fd</span> ./failed <span class="token parameter variable">-tp</span> ns <span class="token parameter variable">-typeInfer</span> <span class="token assign-left variable">boolean</span><span class="token operator">=</span>text,float<span class="token operator">=</span>double
<span class="token comment"># or</span>
<span class="token operator">&gt;</span> tools<span class="token punctuation">\\</span>import-csv.sh <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-f</span> example-filename.csv <span class="token parameter variable">-fd</span> ./failed <span class="token parameter variable">-tp</span> ns <span class="token parameter variable">-typeInfer</span> <span class="token assign-left variable">boolean</span><span class="token operator">=</span>text,float<span class="token operator">=</span>double <span class="token parameter variable">-linesPerFailedFile</span> <span class="token number">10</span>
<span class="token comment"># Windows</span>
<span class="token operator">&gt;</span> tools<span class="token punctuation">\\</span>import-csv.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-f</span> example-filename.csv
<span class="token comment"># or</span>
<span class="token operator">&gt;</span> tools<span class="token punctuation">\\</span>import-csv.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-f</span> example-filename.csv <span class="token parameter variable">-fd</span> .<span class="token punctuation">\\</span>failed
<span class="token comment"># or</span>
<span class="token operator">&gt;</span> tools<span class="token punctuation">\\</span>import-csv.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-f</span> example-filename.csv <span class="token parameter variable">-fd</span> .<span class="token punctuation">\\</span>failed <span class="token parameter variable">-tp</span> ns
<span class="token comment"># or</span>
<span class="token operator">&gt;</span> tools<span class="token punctuation">\\</span>import-csv.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-f</span> example-filename.csv <span class="token parameter variable">-fd</span> .<span class="token punctuation">\\</span>failed <span class="token parameter variable">-tp</span> ns <span class="token parameter variable">-typeInfer</span> <span class="token assign-left variable">boolean</span><span class="token operator">=</span>text,float<span class="token operator">=</span>double
<span class="token comment"># or</span>
<span class="token operator">&gt;</span> tools<span class="token punctuation">\\</span>import-csv.bat <span class="token parameter variable">-h</span> <span class="token number">127.0</span>.0.1 <span class="token parameter variable">-p</span> <span class="token number">6667</span> <span class="token parameter variable">-u</span> root <span class="token parameter variable">-pw</span> root <span class="token parameter variable">-f</span> example-filename.csv <span class="token parameter variable">-fd</span> .<span class="token punctuation">\\</span>failed <span class="token parameter variable">-tp</span> ns <span class="token parameter variable">-typeInfer</span> <span class="token assign-left variable">boolean</span><span class="token operator">=</span>text,float<span class="token operator">=</span>double <span class="token parameter variable">-linesPerFailedFile</span> <span class="token number">10</span>
</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></div><h4 id="note-1" tabindex="-1"><a class="header-anchor" href="#note-1"><span>Note</span></a></h4><p>Note that the following special characters in fields need to be checked before importing:</p><ol><li><code>,</code> : fields containing <code>,</code> should be escaped by <code>\\</code>.</li><li>you can input time format like <code>yyyy-MM-dd&#39;T&#39;HH:mm:ss</code>, <code>yyy-MM-dd HH:mm:ss</code>, or <code>yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSSZ</code>.</li><li>the <code>Time</code> column must be the first one.</li></ol>`,21);function S(_,O){const e=o("ExternalLinkIcon");return l(),r("div",null,[i,a("p",null,[s("Run rewrite-tsfile.bat if you are in a Windows environment, or "),a("a",u,[s("rewrite-tsfile.sh"),t(e)]),s(" if you are on Linux or Unix.")]),d,a("h3",k,[a("a",m,[a("span",null,[s("Usage of "),a("a",b,[s("export-csv.sh"),t(e)])])])]),v,a("ul",null,[h,a("li",null,[f,s(": "),a("ul",null,[a("li",null,[s("specifying a time format that you want. The time format have to obey "),a("a",g,[s("ISO 8601"),t(e)]),s(" standard. If you want to save the time as the timestamp, then setting "),y]),T])]),w]),x,a("h3",q,[a("a",E,[a("span",null,[s("Usage of "),a("a",I,[s("import-csv.sh"),t(e)])])])]),D])}const F=p(c,[["render",S],["__file","Import-Export-Tool.html.vue"]]),B=JSON.parse('{"path":"/UserGuide/latest/Tools-System/Import-Export-Tool.html","title":"Import Export Tool","lang":"en-US","frontmatter":{"description":"Import Export Tool For different scenarios, IoTDB provides users with a variety of operation methods for batch importing data. This chapter introduces the two most commonly used...","head":[["link",{"rel":"alternate","hreflang":"zh-cn","href":"https://iotdb.apache.org/zh/UserGuide/latest/Tools-System/Import-Export-Tool.html"}],["meta",{"property":"og:url","content":"https://iotdb.apache.org/UserGuide/latest/Tools-System/Import-Export-Tool.html"}],["meta",{"property":"og:site_name","content":"IoTDB Website"}],["meta",{"property":"og:title","content":"Import Export Tool"}],["meta",{"property":"og:description","content":"Import Export Tool For different scenarios, IoTDB provides users with a variety of operation methods for batch importing data. This chapter introduces the two most commonly used..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:locale:alternate","content":"zh-CN"}],["meta",{"property":"og:updated_time","content":"2024-02-02T03:31:29.000Z"}],["meta",{"property":"article:modified_time","content":"2024-02-02T03:31:29.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"Import Export Tool\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-02-02T03:31:29.000Z\\",\\"author\\":[]}"]]},"headers":[{"level":2,"title":"TsFile Load And Export Tool","slug":"tsfile-load-and-export-tool","link":"#tsfile-load-and-export-tool","children":[{"level":3,"title":"TsFile Load Tool","slug":"tsfile-load-tool","link":"#tsfile-load-tool","children":[]},{"level":3,"title":"TsFile Export Tool","slug":"tsfile-export-tool","link":"#tsfile-export-tool","children":[]}]},{"level":2,"title":"CSV Tool","slug":"csv-tool","link":"#csv-tool","children":[{"level":3,"title":"Usage of export-csv.sh","slug":"usage-of-export-csv-sh","link":"#usage-of-export-csv-sh","children":[]},{"level":3,"title":"Usage of import-csv.sh","slug":"usage-of-import-csv-sh","link":"#usage-of-import-csv-sh","children":[]}]}],"git":{"createdTime":1690869728000,"updatedTime":1706844689000,"contributors":[{"name":"CritasWang","email":"critas@outlook.com","commits":1},{"name":"wanghui42","email":"105700158+wanghui42@users.noreply.github.com","commits":1}]},"readingTime":{"minutes":10.2,"words":3059},"filePathRelative":"UserGuide/latest/Tools-System/Import-Export-Tool.md","localizedDate":"August 1, 2023","autoDesc":true}');export{F as comp,B as data};