

{"id":19865,"date":"2018-06-22T14:07:18","date_gmt":"2018-06-22T08:37:18","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?p=19865"},"modified":"2023-08-16T08:22:35","modified_gmt":"2023-08-16T02:52:35","slug":"hcatalog-tutorial","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/","title":{"rendered":"Apache HCatalog Tutorial For Beginners"},"content":{"rendered":"<p><span style=\"font-weight: 400\">Today, we are introducing a new journey towards Apache HCatalog. In this HCatalog tutorial, we are providing a guide of the ever-useful HCatalog storage management layer for<strong> Hadoop<\/strong>. <\/span><\/p>\n<p><span style=\"font-weight: 400\">Also, we will explain what it does as well as how it works. Moreover, in this HCatalog Tutorial, we will also discuss HCatalog architecture along with its benefits to get it well. So, get ready to dive into the HCatalog Tutorial.<\/span><\/p>\n<p>So, let&#8217;s start the Apache HCatalog.<\/p>\n<h3><span style=\"font-weight: 400\">What is HCatalog?<\/span><\/h3>\n<p><span style=\"font-weight: 400\">Basically, a table as well as a storage management layer for Hadoop is what we call HCatalog. Its main function is that it enables users with different data processing tools,\u00a0for example,<strong> Pig<\/strong>, <strong>MapReduce<\/strong> to\u00a0make the read and write data easily on the grid. <\/span><\/p>\n<p><span style=\"font-weight: 400\">In addition, its abstraction presents users with a relational view of data in the Hadoop distributed file system (<strong>HDFS<\/strong>). Also, it makes sure that where or in what format their data is stored like the RCFile format, text files, SequenceFiles, or ORC files, users need not worry about.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Hence we can say in any format for which a SerDe (serializer-deserializer) can be written, HCatalog supports reading and writing files. <\/span><\/p>\n<p><span style=\"font-weight: 400\">Moreover, it supports RCFile, CSV, JSON, and SequenceFile, and ORC file formats, by default. Although, make sure to provide the InputFormat, OutputFormat, and SerDe, to use a custom format.<\/span><\/p>\n<h3><span style=\"font-weight: 400\">Intended Audience for <\/span><span style=\"font-weight: 400\">HCatalog Tutorial <\/span><\/h3>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">For the professionals who want to make a <strong>career in<\/strong> <strong>Big Data<\/strong> Analytics using Hadoop Framework, HCatalog tutorial is specially designed for them. <\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Also, ETL developers, as well as analytics professionals, may go through this tutorial for good effect.<\/span><\/li>\n<\/ul>\n<h3><span style=\"font-weight: 400\">Prerequisites to <\/span><span style=\"font-weight: 400\">HCatalog<\/span><\/h3>\n<p>The Apache Hadoop ecosystem includes HCatalog, which offers a table and storage management layer for information stored in the Hadoop Distributed File System (HDFS). You require a functional Hadoop cluster with HDFS installed, Hive installed as the metadata store, Java Development Kit (JDK), access to HDFS, HCatalog server and client libraries, and Apache Thrift for serialisation in order to use HCatalog.<\/p>\n<p>For the Hadoop ecosystem to function smoothly, HCatalog, Hive, Hadoop, and other components must be compatible with one another and configured correctly.<\/p>\n<h3><span style=\"font-weight: 400\">Why HCatalog?<\/span><\/h3>\n<p><strong>1. Enabling right tool for right job<\/strong><\/p>\n<p><span style=\"font-weight: 400\">As we know for data processing such as <strong>Hive<\/strong>, Pig, and MapReduce, Hadoop ecosystem contains different tools. However, they do not need metadata, so, they can benefit from it when it is present only. Hence, n<\/span><span style=\"font-weight: 400\">o loading or transfer steps are required.<\/span><\/p>\n<p><strong>2. Capture processing states to enable sharing<\/strong><\/p>\n<p><span style=\"font-weight: 400\">We can publish our analytics results by HCatalog. Hence via \u201cREST\u201d the other programmer can access our analytics platform also.\u00a0<\/span><\/p>\n<p><strong>3. Integrate Hadoop with everything<\/strong><\/p>\n<p><span style=\"font-weight: 400\">In the form of processing as well as storage environment, Hadoop opens up a lot of opportunities for the enterprise. So, with a familiar API and SQL-like language, REST services open up the platform to the enterprise. <\/span><\/p>\n<p><span style=\"font-weight: 400\">As a result, to more deeply integrate with the Hadoop platform, Enterprise data management systems use HCatalog.<\/span><\/p>\n<h3><span style=\"font-weight: 400\">HCatalog Architecture<\/span><\/h3>\n<p>The Hadoop Distributed File System (HDFS) uses the HCatalog component of the Apache Hadoop ecosystem as a metadata repository and storage management layer. For the purpose of managing metadata on tables, partitions, and schemas, it interfaces with the Hive Metastore.<\/p>\n<p>Through its central HCatalog server, HCatalog offers REST APIs and web interfaces for users and applications to interact with the metadata and conduct actions on data while abstracting the HDFS underpinnings. In order to handle Hadoop data operations consistently and effectively, it&#8217;s design offers smooth data access, modification, and sharing between multiple Hadoop components and external applications.<\/p>\n<p><span style=\"font-weight: 400\">Basically, on top of the <strong>Hive metastore<\/strong>, HCatalog is built and\u00a0it incorporates <strong>Hive&#8217;s DDL<\/strong>.\u00a0Also, it offers read and writes interfaces for Pig as well as MapReduce and also for issuing data definition and metadata exploration commands, it uses Hive&#8217;s command line interface.<\/span><\/p>\n<div id=\"attachment_19873\" style=\"width: 1210px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Hcatalog-Architecture.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-19873\" class=\"wp-image-19873 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Hcatalog-Architecture.png\" alt=\"HCatalog\" width=\"1200\" height=\"628\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Hcatalog-Architecture.png 1200w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Hcatalog-Architecture-150x79.png 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Hcatalog-Architecture-300x157.png 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Hcatalog-Architecture-768x402.png 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Hcatalog-Architecture-1024x536.png 1024w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/a><p id=\"caption-attachment-19873\" class=\"wp-caption-text\">HCatalog Architecture<\/p><\/div>\n<h3>HCatalog Tutorial &#8211; Data Flow Example<\/h3>\n<p><span style=\"font-weight: 400\">Here, is a simple data flow example which explains how HCatalog can help grid users to share as well as to access data:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400\"><strong>First: Copy Data to the Grid<\/strong><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400\">At very first, to get data onto the grid, John uses distcp in data acquisition.<\/span><\/p>\n<pre class=\"EnlighterJSRAW\">hadoop distcp file:\/\/\/file.dat hdfs:\/\/data\/rawevents\/20100819\/data\r\nhcat \"alter table rawevents add partition (ds='20100819') location 'hdfs:\/\/data\/rawevents\/20100819\/data'\"<\/pre>\n<ul>\n<li style=\"font-weight: 400\"><strong>Second: Prepare the Data<\/strong><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400\">Then to cleanse and prepare the data, Samuel uses Pig, in data processing.<\/span><br \/>\n<span style=\"font-weight: 400\">However, \u00a0Samuel must be manually informed by John when data is available, or poll on HDFS, without HCatalog.<\/span><br \/>\n<b>A = load &#8216;\/data\/rawevents\/20100819\/data&#8217; as (alpha:int, beta:chararray, &#8230;);<\/b><br \/>\n<b>B = filter A by bot_finder(zeta) = 0;<\/b><br \/>\n<b>&#8230;<\/b><br \/>\n<b>store Z into &#8216;data\/processedevents\/20100819\/data&#8217;;<\/b><br \/>\n<span style=\"font-weight: 400\">Further, HCatalog will send a JMS message that data is available, with HCatalog. Afterward, Pig job starts:<\/span><br \/>\n<b>A = load &#8216;rawevents&#8217; using org.apache.hive.hcatalog.pig.HCatLoader();<\/b><br \/>\n<b>B = filter A by date = &#8216;20100819&#8217; and by bot_finder(zeta) = 0;<\/b><br \/>\n<b>&#8230;<\/b><br \/>\n<b>store Z into &#8216;processedevents&#8217; using org.apache.hive.hcatalog.pig.HCatStorer(&#8220;date=20100819&#8221;);<\/b><\/p>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\"><strong>Third: Analyze the Data<\/strong><\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400\">Further, to analyze his clients&#8217; results, Ross uses Hive in client management.<\/span><br \/>\n<span style=\"font-weight: 400\">So, Ross must alter the table to add the required partition, without the HCatalog.<\/span><\/p>\n<p><b>alter table processedevents add partition 20100819 hdfs:\/\/data\/processedevents\/20100819\/data<\/b><br \/>\n<b>select advertiser_id, count(clicks)<\/b><br \/>\n<b>from processedevents<\/b><br \/>\n<b>where date = &#8216;20100819&#8217;<\/b><br \/>\n<b>group by advertiser_id;<\/b><br \/>\n<span style=\"font-weight: 400\">Although, Ross does not need to modify the table structure, with HCatalog.<\/span><br \/>\n<b>select advertiser_id, count(clicks)<\/b><br \/>\n<b>from processedevents<\/b><br \/>\n<b>where date = \u201820100819\u2019<\/b><br \/>\n<b>group by advertiser_id;<\/b><\/p>\n<h3><span style=\"font-weight: 400\">How HCatalog Works?<\/span><\/h3>\n<div id=\"attachment_49187\" style=\"width: 676px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Working-of-HCatalog-.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-49187\" class=\" wp-image-49187\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Working-of-HCatalog-.png\" alt=\"how HCatalog works\" width=\"666\" height=\"640\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Working-of-HCatalog-.png 816w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Working-of-HCatalog--150x144.png 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Working-of-HCatalog--300x288.png 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Working-of-HCatalog--768x738.png 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/06\/Working-of-HCatalog--520x500.png 520w\" sizes=\"auto, (max-width: 666px) 100vw, 666px\" \/><\/a><p id=\"caption-attachment-49187\" class=\"wp-caption-text\">Working of HCatalog<\/p><\/div>\n<p><span style=\"font-weight: 400\">On top of the <strong>Hive metastore<\/strong>, HCatalog is built. Basically, it incorporates components from the Hive DDL. So, for Pig and MapReduce, the HCatalog provides read and write interfaces. <\/span><\/p>\n<p><span style=\"font-weight: 400\">Also, for issuing data definition and metadata exploration commands, it uses the Hive\u2019s command line interface. In addition, to\u00a0permit external tools access to Hive DDL operations, it also presents a REST interface,\u00a0such as \u201ccreate table\u201d and \u201cdescribe table.\u201d<\/span><\/p>\n<p><span style=\"font-weight: 400\">Further, it presents a relational view of data. Here, data save in table format and further these tables go into databases. However, we can partition the table on one or more keys. So, there will be one partition that contains all rows with that value (or set of values), for a given value of a key (or set of keys).<\/span><\/p>\n<h3><span style=\"font-weight: 400\">HCatalog Web API<\/span><\/h3>\n<p><span style=\"font-weight: 400\">Basically, for HCatalog, WebHCat is a REST API. Where REST refers to &#8220;representational state transfer&#8221;. It is a style of API, which relies on HTTP verbs. However, Templeton was the name of WebHCat, originally. <\/span><\/p>\n<h3><span style=\"font-weight: 400\">Benefits of HCatalog<\/span><\/h3>\n<p><span style=\"font-weight: 400\">There are several benefits that Apache HCatalog offers:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">With the table abstraction, it frees the user from having to know\u00a0the location of stored data.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Moreover, it enables notifications of data availability.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Also, it offers visibility for data cleaning and archiving tools.<\/span><\/li>\n<\/ul>\n<p>So, this was all about HCatalog Tutorial. Hope you like our explanation<\/p>\n<h3><span style=\"font-weight: 400\">Summary<\/span><\/h3>\n<p><span style=\"font-weight: 400\">Hence, in this HCatalog tutorial, we have learned the whole about HCatalog in detail. Moreover, we discussed the meaning and need of HCatalog. Also, we discussed HCatalog Architecture and examples. <\/span><\/p>\n<p><span style=\"font-weight: 400\">Along with this, we discussed the working of HCatalog, HCatalog Web API, and the benefits ofHCatalog. However, if any doubt in the HCatalog tutorial, feel free to ask in the comment tab.\u00a0<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Today, we are introducing a new journey towards Apache HCatalog. In this HCatalog tutorial, we are providing a guide of the ever-useful HCatalog storage management layer for Hadoop. Also, we will explain what it&#46;&#46;&#46;<\/p>\n","protected":false},"author":7,"featured_media":20160,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[24],"tags":[798,3309,5504,5535,5538,5883],"class_list":["post-19865","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hcatalog","tag-apache-hcatalog","tag-data-flow-example","tag-hcatalog","tag-hcatalog-tutorial","tag-hcatalog-web-api","tag-how-hcatalog-works"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Apache HCatalog Tutorial For Beginners - DataFlair<\/title>\n<meta name=\"description\" content=\"HCatalog tutorial, what is HCatalog, prerequisites for using HCatalog, HCatalog benefits,HCatalog Working,HCatalog Web API,Data Flow Example\" \/>\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\/hcatalog-tutorial\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Apache HCatalog Tutorial For Beginners - DataFlair\" \/>\n<meta property=\"og:description\" content=\"HCatalog tutorial, what is HCatalog, prerequisites for using HCatalog, HCatalog benefits,HCatalog Working,HCatalog Web API,Data Flow Example\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/\" \/>\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-06-22T08:37:18+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-08-16T02:52:35+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/HCatalog-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=\"6 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Apache HCatalog Tutorial For Beginners - DataFlair","description":"HCatalog tutorial, what is HCatalog, prerequisites for using HCatalog, HCatalog benefits,HCatalog Working,HCatalog Web API,Data Flow Example","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\/hcatalog-tutorial\/","og_locale":"en_US","og_type":"article","og_title":"Apache HCatalog Tutorial For Beginners - DataFlair","og_description":"HCatalog tutorial, what is HCatalog, prerequisites for using HCatalog, HCatalog benefits,HCatalog Working,HCatalog Web API,Data Flow Example","og_url":"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2018-06-22T08:37:18+00:00","article_modified_time":"2023-08-16T02:52:35+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/HCatalog-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":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/beb0cab24b7aa54423a3b50e669a9dcd"},"headline":"Apache HCatalog Tutorial For Beginners","datePublished":"2018-06-22T08:37:18+00:00","dateModified":"2023-08-16T02:52:35+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/"},"wordCount":1181,"commentCount":0,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/HCatalog-Tutorial-01.jpg","keywords":["Apache HCatalog","Data Flow Example","HCatalog","HCatalog Tutorial","HCatalog Web API","How HCatalog Works"],"articleSection":["HCatalog Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/","url":"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/","name":"Apache HCatalog Tutorial For Beginners - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/HCatalog-Tutorial-01.jpg","datePublished":"2018-06-22T08:37:18+00:00","dateModified":"2023-08-16T02:52:35+00:00","description":"HCatalog tutorial, what is HCatalog, prerequisites for using HCatalog, HCatalog benefits,HCatalog Working,HCatalog Web API,Data Flow Example","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/HCatalog-Tutorial-01.jpg","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/07\/HCatalog-Tutorial-01.jpg","width":1200,"height":628,"caption":"Apache HCatalog Tutorial For Beginners 2018"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/hcatalog-tutorial\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"HCatalog Tutorials","item":"https:\/\/data-flair.training\/blogs\/category\/hcatalog\/"},{"@type":"ListItem","position":3,"name":"Apache HCatalog Tutorial For Beginners"}]},{"@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\/beb0cab24b7aa54423a3b50e669a9dcd","name":"DataFlair Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/c322416204232f4dd97ef3901b0a499a5d34d7ba7fe333f4bfe53a907873d293?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c322416204232f4dd97ef3901b0a499a5d34d7ba7fe333f4bfe53a907873d293?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c322416204232f4dd97ef3901b0a499a5d34d7ba7fe333f4bfe53a907873d293?s=96&d=mm&r=g","caption":"DataFlair Team"},"description":"DataFlair Team specializes in creating clear, actionable content on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. Backed by industry expertise, we make learning easy and career-oriented for beginners and pros alike.","url":"https:\/\/data-flair.training\/blogs\/author\/dfteam3\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/19865","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\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=19865"}],"version-history":[{"count":3,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/19865\/revisions"}],"predecessor-version":[{"id":118054,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/19865\/revisions\/118054"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/20160"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=19865"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=19865"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=19865"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}