

{"id":7013,"date":"2018-02-01T12:20:42","date_gmt":"2018-02-01T12:20:42","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?p=7013"},"modified":"2021-12-07T13:33:58","modified_gmt":"2021-12-07T08:03:58","slug":"sqoop-export","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/sqoop-export\/","title":{"rendered":"Sqoop Export &#8211; Exporting From HDFS to RDBMS"},"content":{"rendered":"<p>After <a href=\"https:\/\/data-flair.training\/blogs\/sqoop-import\/\"><strong>Sqoop Import<\/strong><\/a>, there is a tool which exports a set of files from<a href=\"https:\/\/data-flair.training\/blogs\/hadoop-hdfs-tutorial\/\"><strong> HDFS<\/strong> <\/a>back to RDBMS, that tool is what we call an Export Tool in <a href=\"https:\/\/data-flair.training\/blogs\/sqoop-introduction\/\"><strong>Apache Sqoop<\/strong><\/a>. In this article, we will learn the whole concept of Sqoop Export. Along with Sqoop Export introduction and Purpose. Moreover, we will learn Sqoop Export syntax with example invocations to understand it well.<\/p>\n<p>So, let&#8217;s start the Sqoop Export tutorial.<\/p>\n<h3>Introduction to Sqoop Export and its Purpose<\/h3>\n<p>A tool which exports a set of files from <a href=\"https:\/\/data-flair.training\/blogs\/features-of-hadoop-hdfs\/\"><strong>HDFS<\/strong> <\/a>back to RDBMS. That tool is what we call a Sqooop Export Tool. There is one condition for it, that in the database, target\u00a0the table must already exist. However,\u00a0the input files are read and parsed according to the user-specified delimiters into a set of records.<\/p>\n<p>In addition, the default operation is to transform these into a set of INSERT statements that inject the records into the database. In &#8220;update mode,&#8221; sqoop will generate UPDATE statements that replace existing records in the database, and in &#8220;call mode&#8221; sqoop will make a stored procedure call for each record.<\/p>\n<h3>Sqoop Export Syntax<\/h3>\n<p>$ sqoop export (generic-args) (export-args)<br \/>\n$ sqoop-export (generic-args) (export-args)<br \/>\nHowever, the export arguments can be entered in any order with respect to one another, but the <strong><a href=\"https:\/\/data-flair.training\/blogs\/hadoop-tutorial\/\">Hadoop <\/a><\/strong>generic arguments must precede any export arguments.<br \/>\n<b>Table 1. Common arguments<\/b><\/p>\n<table>\n<tbody>\n<tr>\n<td><strong>Argument<\/strong><\/td>\n<td><strong>Description<\/strong><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;connect &lt;jdbc-uri&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Specify JDBC connect string<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;connection-manager &lt;class-name&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Specify connection manager class to use<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;driver &lt;class-name&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Manually specify JDBC driver class to use<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;hadoop-mapred-home &lt;dir&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Override $HADOOP_MAPRED_HOME<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;help<\/span><\/td>\n<td><span style=\"font-weight: 400\">Print usage instructions<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;password-file<\/span><\/td>\n<td><span style=\"font-weight: 400\">Set path for a file containing the authentication password<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">-P<\/span><\/td>\n<td><span style=\"font-weight: 400\">Read password from console<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;password &lt;password&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Set authentication password<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;username &lt;username&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Set authentication username<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;verbose<\/span><\/td>\n<td><span style=\"font-weight: 400\">Print more information while working<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;connection-param-file &lt;filename&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Optional properties file that provides connection parameters<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><b>Table 2. Validation arguments More Details<\/b><\/p>\n<table>\n<tbody>\n<tr>\n<td><strong>Argument<\/strong><\/td>\n<td><strong>Description<\/strong><\/td>\n<\/tr>\n<tr>\n<td>&#8211;validate<\/td>\n<td>Enable validation of data copied, supports single table copy only.<\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;validator &lt;class-name&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Specify validator class to use.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;validation-threshold &lt;class-name&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Specify validation threshold class to use.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;validation-failurehandler &lt;class-name&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Specify validation failure handler class to use.<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><b>Table 3. Export control arguments:<\/b><\/p>\n<table>\n<tbody>\n<tr>\n<td><strong>Argument<\/strong><\/td>\n<td><strong>Description<\/strong><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;columns &lt;col,col,col\u2026&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Columns to export to table<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;direct<\/span><\/td>\n<td><span style=\"font-weight: 400\">Use direct export fast path<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;export-dir &lt;dir&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">HDFS source path for the export<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">-m,&#8211;num-mappers &lt;n&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Use n map tasks to export in parallel<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;table &lt;table-name&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Table to populate<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;call &lt;stored-proc-name&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Stored Procedure to call<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;update-key &lt;col-name&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Anchor column to use for updates. Use a comma separated list of columns if there are more than one column.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;update-mode &lt;mode&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Specify how updates are performed when new rows are found with non-matching keys in database.<\/span><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td><span style=\"font-weight: 400\">Legal values for mode include updateonly (default) and allowinsert.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;input-null-string &lt;null-string&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">The string to be interpreted as null for string columns<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;input-null-non-string &lt;null-string&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">The string to be interpreted as null for non-string columns<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;staging-table &lt;staging-table-name&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">The table in which data will be staged before being inserted into the destination table.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;clear-staging-table<\/span><\/td>\n<td><span style=\"font-weight: 400\">Indicates that any data present in the staging table can be deleted.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;batch<\/span><\/td>\n<td><span style=\"font-weight: 400\">Use batch mode for underlying statement execution.<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Basically, we need both the &#8211;export-dir argument and one of &#8211;table or &#8211;call. Although, it specifies the table to populate in the database (or the stored procedure to call). Also, the directory in <a href=\"https:\/\/data-flair.training\/blogs\/rack-awareness-hadoop-hdfs\/\"><strong>HDFS<\/strong> <\/a>that contains the source data.<\/p>\n<p>In addition, all columns within a table are selected for export in Sqoop, by default. Moreover, by using the &#8211;columns argument we can select a subset of columns and control their ordering. Although, it should include a comma-delimited list of columns to export. Like: &#8211;columns &#8220;col1,col2,col3&#8221;.<\/p>\n<p><strong>Note:<\/strong>\u00a0Columns that are not included in the &#8211;columns parameter need to have either defined default value or allow NULL values.<\/p>\n<h3>Difference between Inserts vs. Updates in Sqoop<\/h3>\n<p><span style=\"font-weight: 400\">As we know, sqoop export appends new rows to a table. Here each input record is transformed into an INSERT statement that adds a row to the target database table. However, if our table\u00a0already contains data and has constraints, we must take care to avoid inserting records. <\/span><\/p>\n<p><span style=\"font-weight: 400\">Since, that violate these constraints. Make sure that if an INSERT statement fails the export process will fail. However, for exporting records to a new this mode is primarily intended. Since, empty table intended to receive these results.<\/span><\/p>\n<p><span style=\"font-weight: 400\">In addition,\u00a0Sqoop will modify an existing dataset in the database, if we specify the &#8211;update-key argument. Although, here each input record is considered as an UPDATE statement. Basically, that modifies an existing row.\u00a0<\/span><br \/>\nCREATE TABLE foo(<br \/>\nid INT NOT NULL PRIMARY KEY,<br \/>\nmsg VARCHAR(32),<br \/>\nbar INT);<br \/>\n<span style=\"font-weight: 400\">In <a href=\"https:\/\/data-flair.training\/blogs\/hadoop-hdfs-architecture\/\"><strong>HDFS<\/strong><\/a>, consider also a dataset containing records like these:<\/span><br \/>\n0,this is a test,42<br \/>\n1,some more data,100<br \/>\n&#8230;<br \/>\n<span style=\"font-weight: 400\">Also, Running sqoop-export &#8211;table foo &#8211;update-key id &#8211;export-dir \/path\/to\/data &#8211;connect \u2026 will run an export job that executes SQL statements based on the data like so:<\/span><br \/>\nUPDATE foo SET msg=&#8217;this is a test&#8217;, bar=42 WHERE id=0;<br \/>\nUPDATE foo SET msg=&#8217;some more data&#8217;, bar=100 WHERE id=1;<br \/>\n&#8230;<br \/>\nWe can also specify the &#8211;update-mode argument with allowinsert mode depending on the target database, if we want to update rows, if they exist in the database already or insert rows if they do not exist yet.<br \/>\n<b>Table 4. Input parsing arguments:<\/b><\/p>\n<table>\n<tbody>\n<tr>\n<td><strong>Argument<\/strong><\/td>\n<td><strong>Description<\/strong><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;input-enclosed-by &lt;char&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Sets a required field encloser<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;input-escaped-by &lt;char&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Sets the input escape character<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;input-fields-terminated-by &lt;char&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Sets the input field separator<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;input-lines-terminated-by &lt;char&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Sets the input end-of-line character<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;input-optionally-enclosed-by &lt;char&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Sets a field enclosing character<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><b>Table 5. Output line formatting arguments:<\/b><\/p>\n<table>\n<tbody>\n<tr>\n<td><strong>Argument<\/strong><\/td>\n<td><strong>Description<\/strong><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;enclosed-by &lt;char&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Sets a required field enclosing character<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;escaped-by &lt;char&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Sets the escape character<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;fields-terminated-by &lt;char&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Sets the field separator character<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;lines-terminated-by &lt;char&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Sets the end-of-line character<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;mysql-delimiters<\/span><\/td>\n<td><span style=\"font-weight: 400\">Uses MySQL\u2019s default delimiter set: fields: , lines: \\n escaped-by: \\ optionally-enclosed-by: <\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;optionally-enclosed-by &lt;char&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Sets a field enclosing character<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Moreover, Sqoop will fail to find enough columns per line, if we specify incorrect delimiters. Basically, that will cause export map tasks to fail by throwing ParseExceptions.<br \/>\n<strong>Table 6. Code generation arguments:<\/strong><\/p>\n<table>\n<tbody>\n<tr>\n<td><strong>Argument<\/strong><\/td>\n<td><strong>Description<\/strong><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;bindir &lt;dir&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Output directory for compiled objects<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;class-name &lt;name&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Sets the generated class name. This overrides &#8211;package-name. When combined with &#8211;jar-file, sets the input class.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;jar-file &lt;file&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Disable code generation; use specified jar<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;outdir &lt;dir&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Output directory for generated code<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;package-name &lt;name&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Put auto-generated classes in this package<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400\">&#8211;map-column-java &lt;m&gt;<\/span><\/td>\n<td><span style=\"font-weight: 400\">Override default mapping from SQL type to Java type for configured columns.<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Exports and Transactions in Sqoop<\/h3>\n<p><span style=\"font-weight: 400\">However, by multiple writers in parallel Exports are performed. Basically, each writer uses a separate connection to the database. These have separate transactions from one another. Although, to insert up to 100 records per statement Sqoop uses the multi-row INSERT syntax. The current transaction within a writing task is committed, every 100 statements, that is causing a commit every 10,000 rows. <\/span><\/p>\n<p><span style=\"font-weight: 400\">That ensures that transaction buffers do not grow without bound. Also, cause out-of-memory conditions. Hence, a Sqoop export is not an atomic process. Note that, before the export is complete Partial results from the export will become visible.<\/span><\/p>\n<h3>Failed Sqoop Export<\/h3>\n<p><span style=\"font-weight: 400\">There are various reasons due to which export in sqoop may fail such as:<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400\">Due to loss of connectivity from the <a href=\"https:\/\/data-flair.training\/blogs\/how-hadoop-works-internally\/\"><strong>Hadoop<\/strong> <\/a>cluster to the database. Either due to a hardware fault, or server software crashes.<\/span><\/li>\n<li><span style=\"font-weight: 400\">By attempting to INSERT a row. That violates a consistency constraint. For example, inserting a duplicate primary key value.<\/span><\/li>\n<li><span style=\"font-weight: 400\">Also, attempting to parse an incomplete or malformed record from the <a href=\"https:\/\/data-flair.training\/blogs\/hadoop-hdfs-federation-tutorial\/\"><strong>HDFS<\/strong><\/a> source data<\/span><\/li>\n<li><span style=\"font-weight: 400\">Through attempting to parse records using incorrect delimiters<\/span><\/li>\n<li><span style=\"font-weight: 400\">Due to capacity issues. like insufficient RAM or disk space.<\/span><\/li>\n<\/ul>\n<h3>Sqoop Exports Example<\/h3>\n<p><span style=\"font-weight: 400\">To populate a table named bar, a basic export in Sqoop is:<\/span><br \/>\n$ sqoop export &#8211;connect jdbc:mysql:\/\/db.example.com\/foo &#8211;table bar \u00a0\\<br \/>\n&#8211;export-dir \/results\/bar_data<br \/>\n<span style=\"font-weight: 400\">Here, this example takes the files in \/results\/bar_data. Afterwards injects their contents into the bar table in the foo database on db.example.com. However, the first condition is that\u00a0in the database the target table must already exist. Also, Sqoop performs a set of INSERT INTO operations, without regard for existing content.<\/span><br \/>\nTo populate a table named bar with validation enabled: More Details, another basic Sqoop export<br \/>\n$ sqoop export &#8211;connect jdbc:mysql:\/\/db.example.com\/foo &#8211;table bar \u00a0\\<br \/>\n&#8211;export-dir \/results\/bar_data &#8211;validate<br \/>\n<span style=\"font-weight: 400\">For every record in \/results\/bar_data\u00a0 an export that calls a stored procedure named barproc\u00a0would look like:<\/span><br \/>\n$ sqoop export &#8211;connect jdbc:mysql:\/\/db.example.com\/foo &#8211;call barproc \\<br \/>\n&#8211;export-dir \/results\/bar_data<\/p>\n<h3>Conclusion &#8211; Sqoop Export Tutorial<\/h3>\n<p>As a result, we have learned the whole concept of Sqoop Export, its purpose, syntax, Sqoop export updates vs insert, Exports and transactions in Sqoop, Failed Export in sqoop an example invocation. However, if you want to ask any Query, feel free to ask in the comment section.<br \/>\n<strong>See Also- <a href=\"https:\/\/data-flair.training\/blogs\/sqoop-architecture-and-working\/\">Sqoop Architecture<\/a> <\/strong>&amp;<strong> <a href=\"https:\/\/data-flair.training\/blogs\/sqoop-job\/\">Sqoop Jobs<\/a><\/strong><br \/>\n<a href=\"http:\/\/sqoop.apache.org\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>For reference<\/strong><\/a><span hidden class=\"__iawmlf-post-loop-links\" data-iawmlf-links=\"[{&quot;id&quot;:2028,&quot;href&quot;:&quot;http:\\\/\\\/sqoop.apache.org&quot;,&quot;archived_href&quot;:&quot;http:\\\/\\\/web-wp.archive.org\\\/web\\\/20250925155903\\\/https:\\\/\\\/sqoop.apache.org\\\/&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2025-12-10 22:16:24&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-13 23:03:34&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-17 06:30:42&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-20 10:18:24&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-24 02:01:17&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-27 19:00:12&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2025-12-30 19:52:56&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-02 23:02:08&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-06 11:12:12&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-11 07:39:38&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-14 14:00:02&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-19 20:14:32&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-23 07:39:12&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-01-26 22:35:53&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-02 09:53:53&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-09 06:23:03&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-12 18:07:52&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-16 05:01:07&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-20 15:46:49&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-23 20:42:32&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-02 19:22:48&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-06 04:01:50&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-10 04:30:56&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-16 11:20:34&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-20 07:53:03&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-23 12:38:35&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-31 03:58:55&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-03 07:44:35&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-06 10:04:08&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-09 14:27:25&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-14 16:47:23&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-21 15:59:43&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-26 17:43:51&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-30 00:21:38&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-04 07:58:56&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-07 14:39:59&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-12 19:37:57&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-17 18:39:42&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-21 10:10:02&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-26 11:21:43&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-01 06:33:57&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-05 02:07:45&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-10 06:22:15&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-14 04:14:00&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-18 03:31:28&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-21 19:29:51&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-25 17:04:32&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-06-29 06:32:15&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-02 14:31:23&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-06 12:01:37&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-09 21:39:27&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-13 05:53:35&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-16 16:20:34&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-07-16 16:20:34&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;}]\"><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>After Sqoop Import, there is a tool which exports a set of files from HDFS back to RDBMS, that tool is what we call an Export Tool in Apache Sqoop. In this article, we&#46;&#46;&#46;<\/p>\n","protected":false},"author":9,"featured_media":35175,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[68],"tags":[4534,10249,13623,13624,13625,13626,13674,15712,15981],"class_list":["post-7013","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sqoop","tag-failed-sqoop-export","tag-purpose-of-export-in-sqoop","tag-sqoop-export-in-sqoop","tag-sqoop-export-purpose","tag-sqoop-export-syntax","tag-sqoop-exports-and-transactions","tag-sqoop-transaction-and-exports","tag-what-is-export-in-sqoop","tag-what-is-sqoop-export"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Sqoop Export - Exporting From HDFS to RDBMS - DataFlair<\/title>\n<meta name=\"description\" content=\"Sqoop Export, purpose of export in Sqoop, sqoop export syntax, insert vs Updates, exports and transactions in sqoop, failed sqoop export, example invocation\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/data-flair.training\/blogs\/sqoop-export\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sqoop Export - Exporting From HDFS to RDBMS - DataFlair\" \/>\n<meta property=\"og:description\" content=\"Sqoop Export, purpose of export in Sqoop, sqoop export syntax, insert vs Updates, exports and transactions in sqoop, failed sqoop export, example invocation\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/sqoop-export\/\" \/>\n<meta property=\"og:site_name\" content=\"DataFlair\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DataFlairWS\/\" \/>\n<meta property=\"article:published_time\" content=\"2018-02-01T12:20:42+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-12-07T08:03:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Export-tutorial-01.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"DataFlair Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:site\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DataFlair Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Sqoop Export - Exporting From HDFS to RDBMS - DataFlair","description":"Sqoop Export, purpose of export in Sqoop, sqoop export syntax, insert vs Updates, exports and transactions in sqoop, failed sqoop export, example invocation","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/data-flair.training\/blogs\/sqoop-export\/","og_locale":"en_US","og_type":"article","og_title":"Sqoop Export - Exporting From HDFS to RDBMS - DataFlair","og_description":"Sqoop Export, purpose of export in Sqoop, sqoop export syntax, insert vs Updates, exports and transactions in sqoop, failed sqoop export, example invocation","og_url":"https:\/\/data-flair.training\/blogs\/sqoop-export\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2018-02-01T12:20:42+00:00","article_modified_time":"2021-12-07T08:03:58+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Export-tutorial-01.jpg","type":"image\/jpeg"}],"author":"DataFlair Team","twitter_card":"summary_large_image","twitter_creator":"@DataFlairWS","twitter_site":"@DataFlairWS","twitter_misc":{"Written by":"DataFlair Team","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/sqoop-export\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/sqoop-export\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/6e11a88eea98179e861a0933f8959f8f"},"headline":"Sqoop Export &#8211; Exporting From HDFS to RDBMS","datePublished":"2018-02-01T12:20:42+00:00","dateModified":"2021-12-07T08:03:58+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/sqoop-export\/"},"wordCount":1524,"commentCount":5,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/sqoop-export\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Export-tutorial-01.jpg","keywords":["Failed Sqoop Export","purpose of Export in sqoop","Sqoop Export in Sqoop","sqoop export purpose","Sqoop Export Syntax","sqoop Exports and Transactions","Sqoop transaction and exports","what is Export in Sqoop","what is Sqoop Export"],"articleSection":["Sqoop Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/sqoop-export\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/sqoop-export\/","url":"https:\/\/data-flair.training\/blogs\/sqoop-export\/","name":"Sqoop Export - Exporting From HDFS to RDBMS - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/sqoop-export\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/sqoop-export\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Export-tutorial-01.jpg","datePublished":"2018-02-01T12:20:42+00:00","dateModified":"2021-12-07T08:03:58+00:00","description":"Sqoop Export, purpose of export in Sqoop, sqoop export syntax, insert vs Updates, exports and transactions in sqoop, failed sqoop export, example invocation","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/sqoop-export\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/sqoop-export\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/sqoop-export\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Export-tutorial-01.jpg","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Export-tutorial-01.jpg","width":1200,"height":628,"caption":"Sqoop Export - Exporting From HDFS to RDBMS"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/sqoop-export\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"Sqoop Tutorials","item":"https:\/\/data-flair.training\/blogs\/category\/sqoop\/"},{"@type":"ListItem","position":3,"name":"Sqoop Export &#8211; Exporting From HDFS to RDBMS"}]},{"@type":"WebSite","@id":"https:\/\/data-flair.training\/blogs\/#website","url":"https:\/\/data-flair.training\/blogs\/","name":"DataFlair","description":"Learn Today. Lead Tomorrow.","publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/data-flair.training\/blogs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/data-flair.training\/blogs\/#organization","name":"DataFlair","url":"https:\/\/data-flair.training\/blogs\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","width":106,"height":48,"caption":"DataFlair"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DataFlairWS\/","https:\/\/x.com\/DataFlairWS","https:\/\/www.linkedin.com\/company\/dataflair-web-services-pvt-ltd\/","https:\/\/www.youtube.com\/user\/DataFlairWS"]},{"@type":"Person","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/6e11a88eea98179e861a0933f8959f8f","name":"DataFlair Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/54363d8635c383dcd7e3be0ef00dbeef4217c45bf323d27bc2c92366b724df08?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/54363d8635c383dcd7e3be0ef00dbeef4217c45bf323d27bc2c92366b724df08?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/54363d8635c383dcd7e3be0ef00dbeef4217c45bf323d27bc2c92366b724df08?s=96&d=mm&r=g","caption":"DataFlair Team"},"description":"At DataFlair, our team of experts is committed to offering high-quality tutorials on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. We simplify learning to help you advance your career in the tech world.","url":"https:\/\/data-flair.training\/blogs\/author\/dfteam5\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/7013","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=7013"}],"version-history":[{"count":6,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/7013\/revisions"}],"predecessor-version":[{"id":105357,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/7013\/revisions\/105357"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/35175"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=7013"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=7013"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=7013"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}