

{"id":3903,"date":"2017-09-01T11:14:12","date_gmt":"2017-09-01T11:14:12","guid":{"rendered":"http:\/\/data-flair.training\/blogs\/?p=3903"},"modified":"2017-09-01T11:14:12","modified_gmt":"2017-09-01T11:14:12","slug":"apache-hive-metastore","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/","title":{"rendered":"Hive Metastore &#8211; Different Ways to Configure Hive Metastore"},"content":{"rendered":"<p>In this tutorial, we are going to introduce <strong>Hive<\/strong> <strong>Metastore<\/strong> in detail. Metastore is the central repository of Hive Metadata. It stores the meta data for Hive tables and relations. For example, Schema and Locations etc.<\/p>\n<p>This Hive tutorial will cover what is Hive Metastore, how the Hive Metastore works, what is Derby in Hive, how to Configure Hive Metastore and What are the Databases Supported by Hive? We will discuss the answer to all the above questions in detail.<\/p>\n<p>So, let&#8217;s start Hive Metastore Tutorial.<\/p>\n<div id=\"attachment_42610\" style=\"width: 1210px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-42610\" class=\"size-full wp-image-42610\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2.jpg\" alt=\"Hive Metastore - Different Ways to Configure Hive Metastore\" width=\"1200\" height=\"628\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2.jpg 1200w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2-150x79.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2-300x157.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2-768x402.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2-1024x536.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2-520x272.jpg 520w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/a><p id=\"caption-attachment-42610\" class=\"wp-caption-text\">Hive Metastore &#8211; Different Ways to Configure Hive Metastore<\/p><\/div>\n<h2>What is Hive Metastore?<\/h2>\n<p><strong>Metastore<\/strong> is the central repository of Apache Hive metadata. It stores metadata for Hive tables (like their schema and location) and<strong> partitions <\/strong>in a relational database. It provides client access to this information by using metastore service API.<\/p>\n<p>Hive metastore consists of two fundamental units:<\/p>\n<ol>\n<li>A service\u00a0that\u00a0provides metastore\u00a0access to other\u00a0Apache Hive services.<\/li>\n<li>Disk storage for\u00a0the Hive metadata which is separate from <strong>HDFS<\/strong> storage.<\/li>\n<\/ol>\n<h2>Hive Metastore Modes<\/h2>\n<p>There are three modes for Hive Metastore deployment:<\/p>\n<ul>\n<li>Embedded Metastore<\/li>\n<li>Local Metastore<\/li>\n<li>Remote Metastore<\/li>\n<\/ul>\n<p>Let&#8217;s now discuss the above three Hive Metastore deployment modes one by one-<\/p>\n<p><strong>i. Embedded Metastore<\/strong><\/p>\n<p>In <strong>Hive<\/strong> by default, metastore service runs in the same JVM as the Hive service. It uses embedded <strong>derby<\/strong> database stored on the local file system in this mode. Thus both metastore service and hive service runs in the same JVM by using embedded Derby Database.<\/p>\n<p>But, this mode also has limitation that, as only one embedded Derby database can access the database files on disk at any one time, so only one Hive session could be open at a time.<\/p>\n<div id=\"attachment_3909\" style=\"width: 812px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-embedded-metastore.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-3909\" class=\"wp-image-3909 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-embedded-metastore.jpg\" alt=\"Embedded Deployment mode for Hive Metastore\" width=\"802\" height=\"300\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-embedded-metastore.jpg 802w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-embedded-metastore-150x56.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-embedded-metastore-300x112.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-embedded-metastore-768x287.jpg 768w\" sizes=\"auto, (max-width: 802px) 100vw, 802px\" \/><\/a><p id=\"caption-attachment-3909\" class=\"wp-caption-text\">Embedded Deployment mode for Hive Metastore<\/p><\/div>\n<p>If we try to start the second session it produces an error when it attempts to open a connection to the metastore. So, to allow many services to connect the Metastore, it configures Derby as a network server. This mode is good for unit testing. But it is not good for the practical solutions.<\/p>\n<p><strong style=\"font-family: Verdana, Geneva, sans-serif\">ii. Local Metastore<\/strong><\/p>\n<p>Hive is the data-warehousing framework, so hive does not prefer single session. To overcome this limitation of Embedded Metastore, for <strong>Local Metastore<\/strong> was introduced. This mode allows us to have many Hive sessions i.e. many users can use the metastore at the same time.<\/p>\n<p>We can achieve by using any JDBC compliant like MySQL which runs in a separate JVM or different machines than that of the Hive service and metastore service which are running in the same JVM.<\/p>\n<div id=\"attachment_3910\" style=\"width: 812px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-local-metastore.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-3910\" class=\"wp-image-3910 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-local-metastore.jpg\" alt=\"Local Deployment mode for Hive Metastore\" width=\"802\" height=\"300\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-local-metastore.jpg 802w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-local-metastore-150x56.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-local-metastore-300x112.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-local-metastore-768x287.jpg 768w\" sizes=\"auto, (max-width: 802px) 100vw, 802px\" \/><\/a><p id=\"caption-attachment-3910\" class=\"wp-caption-text\">Local Metastore<\/p><\/div>\n<p>This configuration is called as local metastore because metastore service still runs in the same process as the Hive. But it connects to a database running in a separate process, either on the same machine or on a remote machine.<\/p>\n<p>Before starting Apache Hive client, add the JDBC \/ ODBC driver libraries to the Hive lib folder<strong>. <\/strong><\/p>\n<p>MySQL is a popular choice for the standalone metastore. In this case, the <strong><em>javax.jdo.option.ConnectionURL<\/em><\/strong> property is set to <em><strong>jdbc:mysql:\/\/host\/dbname?<\/strong><\/em> <strong>createDatabaseIfNotExist=true<\/strong>, and <em><strong>javax.jdo.option.ConnectionDriverName<\/strong><\/em> is set to <em><strong>com.mysql.jdbc.Driver.<\/strong><\/em> The JDBC driver JAR file for MySQL (Connector\/J) must be on Hive\u2019s classpath, which is achieved by placing it in Hive\u2019s lib directory.<\/p>\n<p><strong style=\"font-family: Verdana, Geneva, sans-serif\">iii. Remote Metastore<\/strong><\/p>\n<p>Moving further, another metastore configuration called <strong>Remote Metastore<\/strong>. In this mode, metastore runs on its own separate JVM, not in the Hive service JVM. If other processes want to communicate with the metastore server they can communicate using Thrift Network APIs.<\/p>\n<p>We can also have one more metastore servers in this case to provide more availability. This also brings better manageability\/security because the database tier can be completely firewalled off. And the clients no longer need share database credentials with each Hiver user to access the metastore database.<\/p>\n<div id=\"attachment_3911\" style=\"width: 812px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-remote-metastore.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-3911\" class=\"wp-image-3911 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-remote-metastore.jpg\" alt=\"Remote deployment mode for Hive Metastore\" width=\"802\" height=\"300\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-remote-metastore.jpg 802w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-remote-metastore-150x56.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-remote-metastore-300x112.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-remote-metastore-768x287.jpg 768w\" sizes=\"auto, (max-width: 802px) 100vw, 802px\" \/><\/a><p id=\"caption-attachment-3911\" class=\"wp-caption-text\">Remote Metastore<\/p><\/div>\n<p>To use this remote metastore, you should configure Hive service by setting <em><strong>hive.metastore.uris<\/strong><\/em> to the metastore server URI(s). Metastore server URIs are of the form<em> thrift:\/\/host:port,<\/em> where the port corresponds to the one set by METASTORE_PORT when starting the metastore server.<\/p>\n<h2>Databases Supported by Hive<\/h2>\n<p>Hive supports 5 backend databases which are as follows:<\/p>\n<ul>\n<li>Derby<\/li>\n<li>MySQL<\/li>\n<li>MS SQL Server<\/li>\n<li>Oracle<\/li>\n<li>Postgres<\/li>\n<\/ul>\n<p>So, this was all in Hive Metastore. Hope you likeour explanation.<\/p>\n<h2>Conclusion &#8211; Hive Metastore<\/h2>\n<p>In conclusion, we can say that Hive Metadata is a central repository for storing all the Hive metadata information. Metadata includes various types of information like the structure of tables, relations etc. Above we have also discussed all the three metastore modes in detail. you can also Learn the other <strong>big data<\/strong> technologies like<strong> Apache Hadoop<\/strong>, <strong>Spark<\/strong>, <strong>Flink<\/strong> etc in detail.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this tutorial, we are going to introduce Hive Metastore in detail. Metastore is the central repository of Hive Metadata. It stores the meta data for Hive tables and relations. For example, Schema and&#46;&#46;&#46;<\/p>\n","protected":false},"author":7,"featured_media":42610,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26],"tags":[800,809,2878,5675,5707,5748,5752,5774],"class_list":["post-3903","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hive","tag-apache-hive","tag-apache-hive-metastore","tag-configure-hive","tag-hive","tag-hive-embedded-metastore","tag-hive-local-metastore","tag-hive-metastore","tag-hive-remote-metastore"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Hive Metastore - Different Ways to Configure Hive Metastore - DataFlair<\/title>\n<meta name=\"description\" content=\"Apache Hive tutorial cover Hive Metastore Introduction,Configuring Hive Metastore,modes for Hive metastore deployment,Hive Local,embedded &amp; remote metastore\" \/>\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\/apache-hive-metastore\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Hive Metastore - Different Ways to Configure Hive Metastore - DataFlair\" \/>\n<meta property=\"og:description\" content=\"Apache Hive tutorial cover Hive Metastore Introduction,Configuring Hive Metastore,modes for Hive metastore deployment,Hive Local,embedded &amp; remote metastore\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/\" \/>\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=\"2017-09-01T11:14:12+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2.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=\"5 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Hive Metastore - Different Ways to Configure Hive Metastore - DataFlair","description":"Apache Hive tutorial cover Hive Metastore Introduction,Configuring Hive Metastore,modes for Hive metastore deployment,Hive Local,embedded & remote metastore","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\/apache-hive-metastore\/","og_locale":"en_US","og_type":"article","og_title":"Hive Metastore - Different Ways to Configure Hive Metastore - DataFlair","og_description":"Apache Hive tutorial cover Hive Metastore Introduction,Configuring Hive Metastore,modes for Hive metastore deployment,Hive Local,embedded & remote metastore","og_url":"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2017-09-01T11:14:12+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2.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":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/beb0cab24b7aa54423a3b50e669a9dcd"},"headline":"Hive Metastore &#8211; Different Ways to Configure Hive Metastore","datePublished":"2017-09-01T11:14:12+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/"},"wordCount":822,"commentCount":8,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2.jpg","keywords":["apache hive","Apache Hive metastore","Configure Hive","hive","Hive embedded Metastore","Hive Local metastore","hive Metastore","Hive remote Metastore"],"articleSection":["Hive Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/","url":"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/","name":"Hive Metastore - Different Ways to Configure Hive Metastore - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2.jpg","datePublished":"2017-09-01T11:14:12+00:00","description":"Apache Hive tutorial cover Hive Metastore Introduction,Configuring Hive Metastore,modes for Hive metastore deployment,Hive Local,embedded & remote metastore","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2.jpg","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2017\/09\/hive-metastore-tutorial-2.jpg","width":1200,"height":628,"caption":"Hive Metastore - Different Ways to Configure Hive Metastore"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/apache-hive-metastore\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"Hive Tutorials","item":"https:\/\/data-flair.training\/blogs\/category\/hive\/"},{"@type":"ListItem","position":3,"name":"Hive Metastore &#8211; Different Ways to Configure Hive Metastore"}]},{"@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\/3903","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=3903"}],"version-history":[{"count":0,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/3903\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/42610"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=3903"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=3903"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=3903"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}