

{"id":7093,"date":"2018-02-02T10:09:38","date_gmt":"2018-02-02T10:09:38","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?p=7093"},"modified":"2021-12-07T13:20:09","modified_gmt":"2021-12-07T07:50:09","slug":"sqoop-validation","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/sqoop-validation\/","title":{"rendered":"Sqoop Validation &#8211; Interfaces &amp; Limitations of Sqoop Validate"},"content":{"rendered":"<p><span style=\"font-weight: 400\"><a href=\"https:\/\/data-flair.training\/blogs\/sqoop-introduction\/\"><strong>Sqoop<\/strong><\/a> Validation is nothing but to validate the data copied. In this article, we will learn the whole concept of validation in Sqoop. After the introduction, we will learn the purpose of validation in sqoop. Moreover, we will also cover sqoop validation interface, Sqoop validation syntax &amp; configuration, examples and limitations\u00a0of sqoop validation as well.<\/span><\/p>\n<h3>Introduction to Sqoop Validation<\/h3>\n<p><span style=\"font-weight: 400\">a. Sqoop validation simply means validate the data copied. Basically, either import or <a href=\"https:\/\/data-flair.training\/blogs\/sqoop-export\/\"><strong>Export<\/strong><\/a> by comparing the row counts from the source as well as the target post copy.<\/span><br \/>\n<span style=\"font-weight: 400\">b. Moreover, we use this option to compare the row counts between source as well as the target just after <a href=\"https:\/\/data-flair.training\/blogs\/sqoop-import-all-tables\/\"><strong>data imported into HDFS<\/strong><\/a>.<\/span><br \/>\n<span style=\"font-weight: 400\">c. While during the imports, all the rows are deleted or added, Sqoop tracks this change. Also updates the log file.<\/span><\/p>\n<div id=\"attachment_7096\" style=\"width: 1090px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Process-01-1.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7096\" class=\"wp-image-7096 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Process-01-1.jpg\" alt=\"Sqoop Validation\" width=\"1080\" height=\"1080\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Process-01-1.jpg 1080w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Process-01-1-150x150.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Process-01-1-300x300.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Process-01-1-768x768.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Process-01-1-1024x1024.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Process-01-1-100x100.jpg 100w\" sizes=\"auto, (max-width: 1080px) 100vw, 1080px\" \/><\/a><p id=\"caption-attachment-7096\" class=\"wp-caption-text\">Sqoop Validation &#8211; Sqoop Process<\/p><\/div>\n<h3>Interfaces of Sqoop Validation<\/h3>\n<p><span style=\"font-weight: 400\">Basically, there are 3 interfaces of Sqoop Validation such as:<\/span><\/p>\n<h4>a. ValidationThreshold<\/h4>\n<p><span style=\"font-weight: 400\">We use the ValidationThreshold to determine whether the error margin between the source and target are acceptable: Absolute, Percentage Tolerant and many more. However, the default implementation is AbsoluteValidationThreshold.<\/span><br \/>\n<span style=\"font-weight: 400\">Basically, that ensures that the row counts from source as well as targets are the same.<\/span><\/p>\n<h4>b. ValidationFailureHandler<\/h4>\n<p><span style=\"font-weight: 400\">Also, it has once interface with ValidationFailureHandler, that is responsible for handling failures here. Such as log an error\/warning, abort and many more. Although default implementation is LogOnFailureHandler. Here that logs a warning message to the configured logger.<\/span><\/p>\n<h4>c. Validator<\/h4>\n<p><span style=\"font-weight: 400\"> Basically, by delegating the decision to ValidationThreshold Validator drives the validation logic. Also delegates failure handling to ValidationFailureHandler. Moreover, the default implementation is RowCountValidator here. That validates the row counts from source as well as the target.<\/span><\/p>\n<h3>Purpose to Validate in Sqoop<\/h3>\n<p><span style=\"font-weight: 400\">Validation in sqoop&#8217;s main purpose is to validate the data copied. Basically,\u00a0 either <a href=\"https:\/\/data-flair.training\/blogs\/sqoop-import\/\">Sqoop import<\/a> or Export by comparing the row counts from the source as well as the target post copy.<\/span><\/p>\n<div id=\"attachment_7097\" style=\"width: 1004px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-process-with-validate-option.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7097\" class=\"wp-image-7097 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-process-with-validate-option.png\" alt=\"Sqoop Validation\" width=\"994\" height=\"239\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-process-with-validate-option.png 994w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-process-with-validate-option-150x36.png 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-process-with-validate-option-300x72.png 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-process-with-validate-option-768x185.png 768w\" sizes=\"auto, (max-width: 994px) 100vw, 994px\" \/><\/a><p id=\"caption-attachment-7097\" class=\"wp-caption-text\">Sqoop Validation &#8211; Purpose<\/p><\/div>\n<h3>Syntax of Sqoop Validation<\/h3>\n<p>$ sqoop import (generic-args) (import-args)<br \/>\n$ sqoop export (generic-args) (export-args)<br \/>\n<span style=\"font-weight: 400\">Basically, validation arguments are part of import and export arguments.<\/span><\/p>\n<h3>Sqoop Validation Configuration<\/h3>\n<p><span style=\"font-weight: 400\">We can say that the validation framework is extensible as well as pluggable in nature. However, it comes with default implementations. Yet we can extend the interfaces to allow custom implementations. Basically, it is possible by passing them as part of the command line arguments as shown below.<\/span><\/p>\n<h4>a. Validator<\/h4>\n<table>\n<tbody>\n<tr>\n<td><strong>Property<\/strong><\/td>\n<td><strong>Validator<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Description<\/td>\n<td><span style=\"font-weight: 400\">It is a Driver for validation, must implement org.apache.sqoop.validation.Validator<\/span><\/td>\n<\/tr>\n<tr>\n<td>Supported values<\/td>\n<td><span style=\"font-weight: 400\">Important to note that, the value has to be a fully qualified class name<\/span><\/td>\n<\/tr>\n<tr>\n<td>Default value<\/td>\n<td><span style=\"font-weight: 400\">org.apache.sqoop.validation.RowCountValidator<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>b. Validation Threshold<\/h4>\n<table style=\"height: 230px\" width=\"840\">\n<tbody>\n<tr>\n<td><strong>Property<\/strong><\/td>\n<td><strong>Validation-threshold<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Description<\/td>\n<td><span style=\"font-weight: 400\">It drives the decision on the basis of validation meeting the threshold or not. Must implement\u00a0 \u00a0\u00a0<\/span><span style=\"font-weight: 400\">\u00a0 org.apache.sqoop.validation.ValidationThreshold<\/span><\/td>\n<\/tr>\n<tr>\n<td>Supported values<\/td>\n<td><span style=\"font-weight: 400\">Here, also it is important that the value has to be a fully qualified class name.<\/span><\/td>\n<\/tr>\n<tr>\n<td>Default value<\/td>\n<td><span style=\"font-weight: 400\">org.apache.sqoop.validation.AbsoluteValidationThreshold<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>c. Validation Failure Handler<\/h4>\n<table>\n<tbody>\n<tr>\n<td><strong>Property<\/strong><\/td>\n<td><strong>Validation-failurehandler<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Description<\/td>\n<td><span style=\"font-weight: 400\">Basically, it is responsible for handling failures, must implement<\/span><span style=\"font-weight: 400\">\u00a0org.apache.sqoop.validation.ValidationFailureHandler<\/span><\/td>\n<\/tr>\n<tr>\n<td>Supported values<\/td>\n<td><span style=\"font-weight: 400\">Likewise, again it is important that the value has to be a fully qualified class name<\/span><\/td>\n<\/tr>\n<tr>\n<td>Default value<\/td>\n<td><span style=\"font-weight: 400\">org.apache.sqoop.validation.AbortOnFailureHandler<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Limitations of Sqoop Validation<\/h3>\n<p><span style=\"font-weight: 400\">Since it validates only data copied from a single table into <a href=\"https:\/\/data-flair.training\/blogs\/apache-hadoop-hdfs-introduction-tutorial\/\"><strong>HDFS<\/strong><\/a> currently. So, there are several limitations in the current implementation. Such as:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Firstly, all-tables option.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Since it is free-form query option.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Basically,\u00a0 data is only imported into <a href=\"https:\/\/data-flair.training\/blogs\/apache-hive-tutorial\/\"><strong>Hive<\/strong><\/a>, <a href=\"https:\/\/data-flair.training\/blogs\/hadoop-hbase-tutorial\/\"><strong>HBase<\/strong><\/a> or Accumulo.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Moreover, we use &#8211;where argument for table imports. <\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Also, incremental imports.<\/span><\/li>\n<\/ul>\n<h3>Example Invocations of Sqoop Validation<\/h3>\n<p><span style=\"font-weight: 400\">However, a basic import of a table named EMPLOYEES in the corp database. basically, that uses validation to validate the row counts:<\/span><br \/>\n<strong>For Example,<\/strong><br \/>\n$ sqoop import &#8211;connect jdbc:mysql:\/\/db.foo.com\/corp \u00a0\\<br \/>\n&#8211;table EMPLOYEES &#8211;validate<br \/>\n<span style=\"font-weight: 400\">Moreover, a basic export to populate a table named bar with sqoop validation enabled:<\/span><br \/>\n<strong>For Example,<\/strong><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\">Now, another example that overrides the sqoop validation args:<\/span><br \/>\n<strong>For Example,<\/strong><br \/>\n$ sqoop import &#8211;connect jdbc:mysql:\/\/db.foo.com\/corp &#8211;table EMPLOYEES \\<br \/>\n&#8211;validate &#8211;validator org.apache.sqoop.validation.RowCountValidator \\<br \/>\n&#8211;validation-threshold \\<br \/>\norg.apache.sqoop.validation.AbsoluteValidationThreshold \\<br \/>\n&#8211;validation-failurehandler \\<br \/>\norg.apache.sqoop.validation.AbortOnFailureHandler<\/p>\n<h3>Conclusion<\/h3>\n<p>In this blog, we have learned the whole concept of Sqoop Validation. Also, we have seen various examples of Validation in sqoop. However, if you want to ask any Query regarding, please ask through the comment section. Then, we will definitely get back to you.<\/p>\n<p>See Also- <a href=\"https:\/\/data-flair.training\/blogs\/sqoop-import-mainframe\/\"><strong>Sqoop Import Mainframe<\/strong><\/a> &amp; <a href=\"https:\/\/data-flair.training\/blogs\/sqoop-troubleshooting-tips\/\"><strong>Sqoop Troubleshooting<\/strong><\/a><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>Sqoop Validation is nothing but to validate the data copied. In this article, we will learn the whole concept of validation in Sqoop. After the introduction, we will learn the purpose of validation in&#46;&#46;&#46;<\/p>\n","protected":false},"author":9,"featured_media":42539,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[68],"tags":[8272,10257,13682,13683,14113,15323,15324,15327,15988],"class_list":["post-7093","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sqoop","tag-limitations-of-sqoop-validation","tag-purpose-of-sqoop-validation","tag-sqoop-validate","tag-sqoop-validation-configurations","tag-syntax-of-sqoop-validation","tag-validation-failure-handler","tag-validation-threshold","tag-validator","tag-what-is-sqoop-validation"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Sqoop Validation - Interfaces &amp; Limitations of Sqoop Validate - DataFlair<\/title>\n<meta name=\"description\" content=\"Sqoop Validation- Validation process, purpose &amp; Syntax of validation in Sqoop,interfaces in Sqoop validation,Configuration &amp; limitations of Sqoop Validation\" \/>\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-validation\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sqoop Validation - Interfaces &amp; Limitations of Sqoop Validate - DataFlair\" \/>\n<meta property=\"og:description\" content=\"Sqoop Validation- Validation process, purpose &amp; Syntax of validation in Sqoop,interfaces in Sqoop validation,Configuration &amp; limitations of Sqoop Validation\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/sqoop-validation\/\" \/>\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-02T10:09:38+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-12-07T07:50:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Validation-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=\"4 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Sqoop Validation - Interfaces &amp; Limitations of Sqoop Validate - DataFlair","description":"Sqoop Validation- Validation process, purpose & Syntax of validation in Sqoop,interfaces in Sqoop validation,Configuration & limitations of Sqoop Validation","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-validation\/","og_locale":"en_US","og_type":"article","og_title":"Sqoop Validation - Interfaces &amp; Limitations of Sqoop Validate - DataFlair","og_description":"Sqoop Validation- Validation process, purpose & Syntax of validation in Sqoop,interfaces in Sqoop validation,Configuration & limitations of Sqoop Validation","og_url":"https:\/\/data-flair.training\/blogs\/sqoop-validation\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2018-02-02T10:09:38+00:00","article_modified_time":"2021-12-07T07:50:09+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Validation-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":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/sqoop-validation\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/sqoop-validation\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/6e11a88eea98179e861a0933f8959f8f"},"headline":"Sqoop Validation &#8211; Interfaces &amp; Limitations of Sqoop Validate","datePublished":"2018-02-02T10:09:38+00:00","dateModified":"2021-12-07T07:50:09+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/sqoop-validation\/"},"wordCount":784,"commentCount":2,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/sqoop-validation\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Validation-01.jpg","keywords":["limitations of sqoop validation","purpose of sqoop validation","Sqoop Validate","sqoop validation configurations","syntax of sqoop validation","Validation Failure Handler","Validation Threshold","Validator","what is sqoop validation"],"articleSection":["Sqoop Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/sqoop-validation\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/sqoop-validation\/","url":"https:\/\/data-flair.training\/blogs\/sqoop-validation\/","name":"Sqoop Validation - Interfaces &amp; Limitations of Sqoop Validate - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/sqoop-validation\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/sqoop-validation\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Validation-01.jpg","datePublished":"2018-02-02T10:09:38+00:00","dateModified":"2021-12-07T07:50:09+00:00","description":"Sqoop Validation- Validation process, purpose & Syntax of validation in Sqoop,interfaces in Sqoop validation,Configuration & limitations of Sqoop Validation","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/sqoop-validation\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/sqoop-validation\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/sqoop-validation\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Validation-01.jpg","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/02\/Sqoop-Validation-01.jpg","width":1200,"height":628,"caption":"Sqoop Validation - Interfaces &amp; Limitations of Sqoop Validate"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/sqoop-validation\/#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 Validation &#8211; Interfaces &amp; Limitations of Sqoop Validate"}]},{"@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\/7093","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=7093"}],"version-history":[{"count":7,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/7093\/revisions"}],"predecessor-version":[{"id":105352,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/7093\/revisions\/105352"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/42539"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=7093"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=7093"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=7093"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}