| to point to new deep storage locations (S3, HDFS, and local rewrite paths are supported).</p><p>The tool has the following limitations:</p><ul><li>Only exporting from Derby metadata is currently supported</li><li>If rewriting load specs for deep storage migration, only migrating from local deep storage is currently supported.</li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="export-metadata-options"><code>export-metadata</code> Options<a href="#export-metadata-options" class="hash-link" aria-label="Direct link to export-metadata-options" title="Direct link to export-metadata-options"></a></h2><p>The <code>export-metadata</code> tool provides the following options:</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="connection-properties">Connection Properties<a href="#connection-properties" class="hash-link" aria-label="Direct link to Connection Properties" title="Direct link to Connection Properties"></a></h3><ul><li><code>--connectURI</code>: The URI of the Derby database, e.g. <code>jdbc:derby://localhost:1527/var/druid/metadata.db;create=true</code></li><li><code>--user</code>: Username</li><li><code>--password</code>: Password</li><li><code>--base</code>: corresponds to the value of <code>druid.metadata.storage.tables.base</code> in the configuration, <code>druid</code> by default.</li></ul><h3 class="anchor anchorWithStickyNavbar_LWe7" id="output-path">Output Path<a href="#output-path" class="hash-link" aria-label="Direct link to Output Path" title="Direct link to Output Path"></a></h3><ul><li><code>--output-path</code>, <code>-o</code>: The output directory of the tool. CSV files for the Druid segments, rules, config, datasource, and supervisors tables will be written to this directory.</li></ul><h3 class="anchor anchorWithStickyNavbar_LWe7" id="export-format-options">Export Format Options<a href="#export-format-options" class="hash-link" aria-label="Direct link to Export Format Options" title="Direct link to Export Format Options"></a></h3><ul><li><code>--use-hex-blobs</code>, <code>-x</code>: If set, export BLOB payload columns as hexadecimal strings. This needs to be set if importing back into Derby. Default is false.</li><li><code>--booleans-as-strings</code>, <code>-t</code>: If set, write boolean values as "true" or "false" instead of "1" and "0". This needs to be set if importing back into Derby. Default is false.</li></ul><h3 class="anchor anchorWithStickyNavbar_LWe7" id="deep-storage-migration">Deep Storage Migration<a href="#deep-storage-migration" class="hash-link" aria-label="Direct link to Deep Storage Migration" title="Direct link to Deep Storage Migration"></a></h3><h4 class="anchor anchorWithStickyNavbar_LWe7" id="migration-to-s3-deep-storage">Migration to S3 Deep Storage<a href="#migration-to-s3-deep-storage" class="hash-link" aria-label="Direct link to Migration to S3 Deep Storage" title="Direct link to Migration to S3 Deep Storage"></a></h4><p>By setting the options below, the tool will rewrite the segment load specs to point to a new S3 deep storage location.</p><p>This helps users migrate segments stored in local deep storage to S3.</p><ul><li><code>--s3bucket</code>, <code>-b</code>: The S3 bucket that will hold the migrated segments</li><li><code>--s3baseKey</code>, <code>-k</code>: The base S3 key where the migrated segments will be stored</li></ul><p>When copying the local deep storage segments to S3, the rewrite performed by this tool requires that the directory structure of the segments be unchanged.</p><p>For example, if the cluster had the following local deep storage configuration:</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#bfc7d5;--prism-background-color:#292d3e"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#bfc7d5"><span class="token plain">druid.storage.type=local</span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain">druid.storage.storageDirectory=/druid/segments</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>If the target S3 bucket was <code>migration</code>, with a base key of <code>example</code>, the contents of <code>s3://migration/example/</code> must be identical to that of <code>/druid/segments</code> on the old local filesystem.</p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="migration-to-hdfs-deep-storage">Migration to HDFS Deep Storage<a href="#migration-to-hdfs-deep-storage" class="hash-link" aria-label="Direct link to Migration to HDFS Deep Storage" title="Direct link to Migration to HDFS Deep Storage"></a></h4><p>By setting the options below, the tool will rewrite the segment load specs to point to a new HDFS deep storage location.</p><p>This helps users migrate segments stored in local deep storage to HDFS.</p><p><code>--hadoopStorageDirectory</code>, <code>-h</code>: The HDFS path that will hold the migrated segments</p><p>When copying the local deep storage segments to HDFS, the rewrite performed by this tool requires that the directory structure of the segments be unchanged, with the exception of directory names containing colons (<code>:</code>).</p><p>For example, if the cluster had the following local deep storage configuration:</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#bfc7d5;--prism-background-color:#292d3e"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#bfc7d5"><span class="token plain">druid.storage.type=local</span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain">druid.storage.storageDirectory=/druid/segments</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>If the target hadoopStorageDirectory was <code>/migration/example</code>, the contents of <code>hdfs:///migration/example/</code> must be identical to that of <code>/druid/segments</code> on the old local filesystem.</p><p>Additionally, the segments paths in local deep storage contain colons(<code>:</code>) in their names, e.g.:</p><p><code>wikipedia/2016-06-27T02:00:00.000Z_2016-06-27T03:00:00.000Z/2019-05-03T21:57:15.950Z/1/index.zip</code></p><p>HDFS cannot store files containing colons, and this tool expects the colons to be replaced with underscores (<code>_</code>) in HDFS.</p><p>In this example, the <code>wikipedia</code> segment above under <code>/druid/segments</code> in local deep storage would need to be migrated to HDFS under <code>hdfs:///migration/example/</code> with the following path:</p><p><code>wikipedia/2016-06-27T02_00_00.000Z_2016-06-27T03_00_00.000Z/2019-05-03T21_57_15.950Z/1/index.zip</code></p><h4 class="anchor anchorWithStickyNavbar_LWe7" id="migration-to-new-local-deep-storage-path">Migration to New Local Deep Storage Path<a href="#migration-to-new-local-deep-storage-path" class="hash-link" aria-label="Direct link to Migration to New Local Deep Storage Path" title="Direct link to Migration to New Local Deep Storage Path"></a></h4><p>By setting the options below, the tool will rewrite the segment load specs to point to a new local deep storage location.</p><p>This helps users migrate segments stored in local deep storage to a new path (e.g., a new NFS mount).</p><p><code>--newLocalPath</code>, <code>-n</code>: The new path on the local filesystem that will hold the migrated segments</p><p>When copying the local deep storage segments to a new path, the rewrite performed by this tool requires that the directory structure of the segments be unchanged.</p><p>For example, if the cluster had the following local deep storage configuration:</p><div class="codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#bfc7d5;--prism-background-color:#292d3e"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#bfc7d5"><span class="token plain">druid.storage.type=local</span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain">druid.storage.storageDirectory=/druid/segments</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>If the new path was <code>/migration/example</code>, the contents of <code>/migration/example/</code> must be identical to that of <code>/druid/segments</code> on the local filesystem.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="running-the-tool">Running the tool<a href="#running-the-tool" class="hash-link" aria-label="Direct link to Running the tool" title="Direct link to Running the tool"></a></h2><p>To use the tool, you can run the following from the root of the Druid package:</p><div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#bfc7d5;--prism-background-color:#292d3e"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#bfc7d5"><span class="token builtin class-name" style="color:rgb(255, 203, 107)">cd</span><span class="token plain"> </span><span class="token variable" style="color:rgb(191, 199, 213)">${DRUID_ROOT}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">mkdir</span><span class="token plain"> -p /tmp/csv</span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain">java -classpath </span><span class="token string" style="color:rgb(195, 232, 141)">"lib/*"</span><span class="token plain"> -Dlog4j.configurationFile</span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token plain">conf/druid/cluster/_common/log4j2.xml -Ddruid.extensions.directory</span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token string" style="color:rgb(195, 232, 141)">"extensions"</span><span class="token plain"> -Ddruid.extensions.loadList</span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token punctuation" style="color:rgb(199, 146, 234)">[</span><span class="token punctuation" style="color:rgb(199, 146, 234)">]</span><span class="token plain"> org.apache.druid.cli.Main tools export-metadata --connectURI </span><span class="token string" style="color:rgb(195, 232, 141)">"jdbc:derby://localhost:1527/var/druid/metadata.db;"</span><span class="token plain"> -o /tmp/csv</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>In the example command above:</p><ul><li><code>lib</code> is the Druid lib directory</li><li><code>extensions</code> is the Druid extensions directory</li><li><code>/tmp/csv</code> is the output directory. Please make sure that this directory exists.</li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="importing-metadata">Importing Metadata<a href="#importing-metadata" class="hash-link" aria-label="Direct link to Importing Metadata" title="Direct link to Importing Metadata"></a></h2><p>After running the tool, the output directory will contain <code><table-name>_raw.csv</code> and <code><table-name>.csv</code> files.</p><p>The <code><table-name>_raw.csv</code> files are intermediate files used by the tool, containing the table data as exported by Derby without modification.</p><p>The <code><table-name>.csv</code> files are used for import into another database such as MySQL and PostgreSQL and have any configured deep storage location rewrites applied.</p><p>Example import commands for Derby, MySQL, and PostgreSQL are shown below.</p><p>These example import commands expect <code>/tmp/csv</code> and its contents to be accessible from the server. For other options, such as importing from the client filesystem, please refer to the database's documentation.</p><h3 class="anchor anchorWithStickyNavbar_LWe7" id="derby">Derby<a href="#derby" class="hash-link" aria-label="Direct link to Derby" title="Direct link to Derby"></a></h3><div class="language-sql codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#bfc7d5;--prism-background-color:#292d3e"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-sql codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#bfc7d5"><span class="token keyword" style="font-style:italic">CALL</span><span class="token plain"> SYSCS_UTIL</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token plain">SYSCS_IMPORT_TABLE </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token boolean" style="color:rgb(255, 88, 116)">null</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'DRUID_SEGMENTS'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_segments.csv'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'"'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token boolean" style="color:rgb(255, 88, 116)">null</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token number" style="color:rgb(247, 140, 108)">0</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token keyword" style="font-style:italic">CALL</span><span class="token plain"> SYSCS_UTIL</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token plain">SYSCS_IMPORT_TABLE </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token boolean" style="color:rgb(255, 88, 116)">null</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'DRUID_RULES'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_rules.csv'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'"'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token boolean" style="color:rgb(255, 88, 116)">null</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token number" style="color:rgb(247, 140, 108)">0</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token keyword" style="font-style:italic">CALL</span><span class="token plain"> SYSCS_UTIL</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token plain">SYSCS_IMPORT_TABLE </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token boolean" style="color:rgb(255, 88, 116)">null</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'DRUID_CONFIG'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_config.csv'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'"'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token boolean" style="color:rgb(255, 88, 116)">null</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token number" style="color:rgb(247, 140, 108)">0</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token keyword" style="font-style:italic">CALL</span><span class="token plain"> SYSCS_UTIL</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token plain">SYSCS_IMPORT_TABLE </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token boolean" style="color:rgb(255, 88, 116)">null</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'DRUID_DATASOURCE'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_dataSource.csv'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'"'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token boolean" style="color:rgb(255, 88, 116)">null</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token number" style="color:rgb(247, 140, 108)">0</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token keyword" style="font-style:italic">CALL</span><span class="token plain"> SYSCS_UTIL</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token plain">SYSCS_IMPORT_TABLE </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token boolean" style="color:rgb(255, 88, 116)">null</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'DRUID_SUPERVISORS'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_supervisors.csv'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">'"'</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token boolean" style="color:rgb(255, 88, 116)">null</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token number" style="color:rgb(247, 140, 108)">0</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h3 class="anchor anchorWithStickyNavbar_LWe7" id="mysql">MySQL<a href="#mysql" class="hash-link" aria-label="Direct link to MySQL" title="Direct link to MySQL"></a></h3><div class="language-sql codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#bfc7d5;--prism-background-color:#292d3e"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-sql codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#bfc7d5"><span class="token keyword" style="font-style:italic">LOAD</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">DATA</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">INFILE</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_segments.csv'</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">INTO</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">TABLE</span><span class="token plain"> druid_segments </span><span class="token keyword" style="font-style:italic">FIELDS</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">TERMINATED</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">BY</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">OPTIONALLY</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">ENCLOSED</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">BY</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'\"'</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">id</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">dataSource</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">created_date</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token keyword" style="font-style:italic">start</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token keyword" style="font-style:italic">end</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">partitioned</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">version</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">used</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">payload</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">SHOW</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">WARNINGS</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token keyword" style="font-style:italic">LOAD</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">DATA</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">INFILE</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_rules.csv'</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">INTO</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">TABLE</span><span class="token plain"> druid_rules </span><span class="token keyword" style="font-style:italic">FIELDS</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">TERMINATED</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">BY</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">OPTIONALLY</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">ENCLOSED</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">BY</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'\"'</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">id</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">dataSource</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">version</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">payload</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">SHOW</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">WARNINGS</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token keyword" style="font-style:italic">LOAD</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">DATA</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">INFILE</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_config.csv'</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">INTO</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">TABLE</span><span class="token plain"> druid_config </span><span class="token keyword" style="font-style:italic">FIELDS</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">TERMINATED</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">BY</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">OPTIONALLY</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">ENCLOSED</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">BY</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'\"'</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">name</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">payload</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">SHOW</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">WARNINGS</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token keyword" style="font-style:italic">LOAD</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">DATA</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">INFILE</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_dataSource.csv'</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">INTO</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">TABLE</span><span class="token plain"> druid_dataSource </span><span class="token keyword" style="font-style:italic">FIELDS</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">TERMINATED</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">BY</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">OPTIONALLY</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">ENCLOSED</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">BY</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'\"'</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">dataSource</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">created_date</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">commit_metadata_payload</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">commit_metadata_sha1</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">SHOW</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">WARNINGS</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token keyword" style="font-style:italic">LOAD</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">DATA</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">INFILE</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_supervisors.csv'</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">INTO</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">TABLE</span><span class="token plain"> druid_supervisors </span><span class="token keyword" style="font-style:italic">FIELDS</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">TERMINATED</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">BY</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">OPTIONALLY</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">ENCLOSED</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">BY</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'\"'</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">id</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">spec_id</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">created_date</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">payload</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">SHOW</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">WARNINGS</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><h3 class="anchor anchorWithStickyNavbar_LWe7" id="postgresql">PostgreSQL<a href="#postgresql" class="hash-link" aria-label="Direct link to PostgreSQL" title="Direct link to PostgreSQL"></a></h3><div class="language-sql codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#bfc7d5;--prism-background-color:#292d3e"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-sql codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#bfc7d5"><span class="token plain">COPY druid_segments</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">id</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">dataSource</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">created_date</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token keyword" style="font-style:italic">start</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token string" style="color:rgb(195, 232, 141)">"end"</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">partitioned</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">version</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">used</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">payload</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">FROM</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_segments.csv'</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">DELIMITER</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token plain"> CSV</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain">COPY druid_rules</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">id</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">dataSource</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">version</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">payload</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">FROM</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_rules.csv'</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">DELIMITER</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token plain"> CSV</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain">COPY druid_config</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">name</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">payload</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">FROM</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_config.csv'</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">DELIMITER</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token plain"> CSV</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain">COPY druid_dataSource</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">dataSource</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">created_date</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">commit_metadata_payload</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">commit_metadata_sha1</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">FROM</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_dataSource.csv'</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">DELIMITER</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token plain"> CSV</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain">COPY druid_supervisors</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">id</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">spec_id</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">created_date</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain">payload</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">FROM</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">'/tmp/csv/druid_supervisors.csv'</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">DELIMITER</span><span class="token plain"> </span><span class="token string" style="color:rgb(195, 232, 141)">','</span><span class="token plain"> CSV</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div></div></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href="/docs/26.0.0/operations/deep-storage-migration"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">Deep storage migration</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/docs/26.0.0/operations/metadata-migration"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">Metadata Migration</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#export-metadata-options" class="table-of-contents__link toc-highlight"><code>export-metadata</code> Options</a><ul><li><a href="#connection-properties" class="table-of-contents__link toc-highlight">Connection Properties</a></li><li><a href="#output-path" class="table-of-contents__link toc-highlight">Output Path</a></li><li><a href="#export-format-options" class="table-of-contents__link toc-highlight">Export Format Options</a></li><li><a href="#deep-storage-migration" class="table-of-contents__link toc-highlight">Deep Storage Migration</a></li></ul></li><li><a href="#running-the-tool" class="table-of-contents__link toc-highlight">Running the tool</a></li><li><a href="#importing-metadata" class="table-of-contents__link toc-highlight">Importing Metadata</a><ul><li><a href="#derby" class="table-of-contents__link toc-highlight">Derby</a></li><li><a href="#mysql" class="table-of-contents__link toc-highlight">MySQL</a></li><li><a href="#postgresql" class="table-of-contents__link toc-highlight">PostgreSQL</a></li></ul></li></ul></div></div></div></div></main></div></div><footer class="footer"><div class="container container-fluid"><div class="footer__bottom text--center"><div class="margin-bottom--sm"><img src="/img/favicon.png" class="themedImage_ToTc themedImage--light_HNdA footer__logo"><img src="/img/favicon.png" class="themedImage_ToTc themedImage--dark_i4oU footer__logo"></div><div class="footer__copyright">Copyright © 2023 Apache Software Foundation. Except where otherwise noted, licensed under CC BY-SA 4.0. Apache Druid, Druid, and the Druid logo are either registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries.</div></div></div></footer></div> |