{"id":823,"date":"2018-01-10T12:32:49","date_gmt":"2018-01-10T12:32:49","guid":{"rendered":"https:\/\/techvidvan.com\/tutorials\/?p=823"},"modified":"2018-01-10T12:32:49","modified_gmt":"2018-01-10T12:32:49","slug":"apache-spark-vs-hadoop-mapreduce","status":"publish","type":"post","link":"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/","title":{"rendered":"Battle: Apache Spark vs Hadoop MapReduce"},"content":{"rendered":"<p>Spark vs Hadoop is a popular battle nowadays increasing the popularity of Apache Spark, is an initial point of this battle. In the big data world, Spark and Hadoop are popular Apache projects.<\/p>\n<p>We can say, Apache Spark is an improvement on the original Hadoop MapReduce component. As Spark is 100x faster than Hadoop, even comfortable APIs, so some people think this could be the end of Hadoop era.<\/p>\n<p>Still, there is a debate on whether Spark is replacing the Apache Hadoop. Also, people are thinking who is becoming the top big data analytics tool. Ultimately, we will see who wins the battle, Hadoop or Spark.<\/p>\n<p>In this blog, we will compare both on the basis of different features. So, we will get answers to all our questions. At first, we will learn the introduction of each to understand the comparison well.<\/p>\n<p>Afterwards, we will move forward towards the difference between Spark and Hadoop MapReduce. That will help us to conclude who wins the battle between Hadoop vs spark.<\/p>\n<h3>Introduction: Spark vs Hadoop<\/h3>\n<h4>1. Hadoop MapReduce<\/h4>\n<p>Hadoop MapReduce is an <strong>open source framework<\/strong> for writing applications. Through MapReduce, it is possible to process structured and unstructured data. In Hadoop, data is stored in HDFS.<\/p>\n<p>Hadoop MapReduce is able to handle the large volume of data on a cluster of commodity hardware. It can process data in batch mode.<\/p>\n<h4>2. Apache Spark<\/h4>\n<p>Apache Spark is also an <strong>open source big data framework<\/strong>. It is <strong>100x faster<\/strong> than MapReduce. Also, general purpose data processing engine. The basic idea behind its design is fast computation. Apart from batch processing, it also covers the wide range of workloads. For example, interactive, iterative and streaming.<\/p>\n<p>Now, let&#8217;s start the battle, Hadoop MapReduce vs Spark on the basis of their features.<\/p>\n<h3>Apache Spark vs Hadoop MapReduce<\/h3>\n<h4>1. Language Developed<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> It is developed in j<em>ava language<\/em>.<\/p>\n<p><strong>Apache Spark:<\/strong> It is developed in Scala<em> language<\/em>.<\/p>\n<h4>2. Programming Language support<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> Initially Hadoop MapReduce supported Java. In addition, other languages are also supported using Hadoop streaming. For example C, C++, Ruby, Groovy, Perl, Python.<\/p>\n<p><strong>Apache Spark: <\/strong>Spark has rich APIs. It supports Scala, Java, Python, R as well as SQL.<\/p>\n<h4>3. Real-time analysis<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> When we talk about real-time data processing, <em>MapReduce fails<\/em>. Purposely to perform batch processing on huge amounts of data, Hadoop MapReduce was designed.<\/p>\n<p><strong>Apache Spark:<\/strong> \u00a0Spark easily <em>supports Real-Time<\/em> Data Processing. It can process real-time data. Like real-time event streams, at the rate of millions of events\/ second data can process by Spark.<\/p>\n<p>For Example, twitter data for instance or Facebook sharing\/posting. In other words, it is Spark\u2019s strength, that it is able to process live streams efficiently.<\/p>\n<h4>4. Speed<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> Processing speed is <em>slow<\/em>, due to read and write process from disk.<\/p>\n<p><strong>Apache Spark:<\/strong> While we talk about running applications in spark, it runs up to <em>100x faster<\/em> in memory. While spark runs 10x faster on disk than Hadoop.<\/p>\n<p>Since, In Spark, the number of read\/write cycle to disk is reduced. Also, storing intermediate data in-memory Spark makes it possible.<\/p>\n<h4>5. Interactive mode<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> It does <em>not support Interactive Mode<\/em>.<\/p>\n<p><strong>Apache Spark:<\/strong> \u00a0In Spark, data<em> can process interactively<\/em>.<\/p>\n<h4>6. Latency<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> It provides <em>high latency<\/em> computing.<\/p>\n<p><strong>Apache Spark:<\/strong> Spark is a <em>low latency<\/em> computing framework.<\/p>\n<h4>7. Difficulty<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> It is <em>not easy<\/em> to work on Hadoop MapReduce. Since here developers need to hand code each operation.<\/p>\n<p><strong>Apache Spark:<\/strong> Basically, RDD (Resilient Distributed Dataset) have tons of high-level operators. Therefore, Spark is <em>easy<\/em> to program.<\/p>\n<h4>8. Streaming<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> We can only process data in <em>batch mode<\/em>.<\/p>\n<p><strong>Apache Spark:<\/strong> Through Spark Streaming, Spark can process <em>real-time data<\/em>.<\/p>\n<h4>9. Easy to Manage<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> While working with Hadoop MapReduce, we are <em>dependent<\/em> on different engines. For example- Storm, Giraph, Impala, etc. for other requirements. Since MapReduce only provides the batch engine. Hence, it is very difficult to manage many components.<\/p>\n<p><strong>Apache Spark:<\/strong> Spark is a <em>complete<\/em> data analytics engine. It can perform<em> batch<\/em> and<em> interactive<\/em> processing. Also, can perform Machine Learning and Stream over the same cluster.<\/p>\n<p><span class=\"complexword\">Therefore<\/span>, there is no need to manage different component for each need. <span class=\"adverb\">Ultimately<\/span>, Installing Spark over the cluster is enough to fulfill all requirements.<\/p>\n<h4>10. Ease of use<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> As we need to handle<em> low-level<\/em> APIs to process the data. That requires lots of hand coding. As a result, MapReduce is <em>more complex<\/em>.<\/p>\n<p><strong>Apache Spark:<\/strong> In Spark RDD enables users to process data using <em>high-level operators<\/em>. Also, provides rich APIs in Java, Scala, Python, and R. Therefore, Spark is <em>easier<\/em> to use.<\/p>\n<h4>11. Fault tolerance<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> MapReduce is <em>Highly fault-tolerant<\/em>. Hence, in case of any failure, there is no need to restart the application from scratch.<\/p>\n<p><strong>Apache Spark:<\/strong> Like \u00a0MapReduce, Apache Spark is also <em>fault-tolerant<\/em>. Thus, in case of any failure, there is no need to restart the application from scratch.<\/p>\n<h4>12. Scheduler<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> To schedule complex flows, MapReduce needs an <em>external job scheduler<\/em>. For Example, Oozie.<\/p>\n<p><strong>Apache Spark: <\/strong>Spark has its own flow scheduler, because of <em>in-memory computation<\/em>.<\/p>\n<h4>13. Recovery<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> As we know, Hadoop MapReduce is the highly fault-tolerant system. Therefore, it is naturally resilient to system faults or failures.<\/p>\n<p><strong>Apache Spark:<\/strong> By RDDs, we can recover partitions on failed nodes by re-computation of DAG. Basically, it offers a more similar recovery style to Hadoop by way of checkpointing. Also, reduces the dependencies of an RDD.<\/p>\n<h4>14. Cost<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> While comparing it in terms of cost, it is a<em> cheaper<\/em> option available.<\/p>\n<p><strong>Apache Spark:<\/strong> \u00a0It is more <em>costly<\/em> than Hadoop MapReduce. Since it requires a lot of RAM to run in-memory. Therefore, it increases the cluster.<\/p>\n<h4>15. Security<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> Due to the presence of <em>Kerberos<\/em>. Also Access Control Lists (ACLs), a traditional file permission model. Hadoop MapReduce is <em>more secure<\/em>.<\/p>\n<p><strong>Apache Spark:<\/strong> It supports the only authentication through shared <em>secret password authentication<\/em>. Therefore, Spark is little <em>less secure<\/em> in comparison to MapReduce.<\/p>\n<h4>16. License<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> It has <em>Apache License 2<\/em>.<\/p>\n<p><strong>Apache Spark:<\/strong> As similar as Hadoop, It also belongs from <em>Apache License 2<\/em>.<\/p>\n<h4>17. OS support<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> It<em> supports cross-platform<\/em>.<\/p>\n<p><strong>Apache Spark:<\/strong> It <em>also supports cross-platform<\/em>.<\/p>\n<h4>18. Category<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> Hadoop MapReduce is a<em> basic data processing engine<\/em>.<\/p>\n<p><strong>Apache Spark:<\/strong> It is a choice for Data Scientist. As It is <em>data analytics engine<\/em>.<\/p>\n<h4>19. Community<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> Its community has been <em>shifted to Spark<\/em>.<\/p>\n<p><strong>Apache Spark: <\/strong>Spark has a very <em>strong community<\/em>. Since it is one of the most active projects at Apache.<\/p>\n<h4>20. Scalability<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> We can keep adding n number of nodes in the cluster. Also, a largest known Hadoop cluster is of <em>14000 nodes<\/em>. Hence, MapReduce is <em>highly scalable<\/em>.<\/p>\n<p><strong>Apache Spark:<\/strong> We can add n number of nodes in the cluster. Also, a largest known Spark Cluster is of <em>8000 nodes<\/em>. Hence, <b>\u00a0<\/b>Spark is also<em> highly scalable<\/em>.<\/p>\n<h4>21. SQL support<\/h4>\n<p><b>Hadoop MapReduce:<\/b> By using <em>Apache Hive<\/em>, it enables users to run SQL queries.<\/p>\n<p><b>Apache Spark: <\/b>By using <em>Spark SQL<\/em>, it enables the user to run SQL queries.<\/p>\n<h4>22. Machine Learning<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> Apache Mahout is a machine learning tool that Hadoop uses.<\/p>\n<p><strong>Apache Spark:<\/strong> A set of machine learning, MLlib is already present in Spark.<\/p>\n<h4>23. The line of code<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> It is developed in <em>1,20,000<\/em> line of codes.<\/p>\n<p><strong>Apache Spark:<\/strong><b> \u00a0<\/b>It has merely <em>20000<\/em> line of codes.<\/p>\n<h4>24. Caching<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> For future requirements, MapReduce <em>cannot cache<\/em> the data in memory. As a result, system performance decreases.<\/p>\n<p><strong>Apache Spark:<\/strong> For further iterations, Spark <em>can cache<\/em> data in memory. Thus, it increases the system performance.<\/p>\n<h4>25. Hardware Requirements<\/h4>\n<p><strong>Hadoop MapReduce:<\/strong> On commodity hardware, MapReduce<em> runs very well<\/em><b>.<\/b><\/p>\n<p><strong>Apache Spark: <\/strong>It requires <em>mid to high-level<\/em> hardware.<\/p>\n<h3>Conclusion<\/h3>\n<p>As a result, we have seen, Spark has excellent performance and is highly <em>cost-effective<\/em>. It also supports in-memory data processing. Even so, it\u2019s compatible with all of Hadoop\u2019s data sources and file formats.<\/p>\n<p>Also, it has friendly APIs that are available in several languages. So its bit difficult to conclude, who wins the battle, between Spark vs MapReduce.<\/p>\n<p>However, \u00a0<strong>Spark looks like the big winner<\/strong>. Yet, we can not use it alone. As we still need HDFS to store the data. Also possible that we want to use HBase, Hive, Pig, Impala or other projects of Hadoop. That signifies we need to run Hadoop and MapReduce alongside Spark for a full Big Data package.<\/p>\n<p>Hence, we have seen a complete comparison between Hadoop MapReduce and Spark along with their features. Hope we have answered each question, coming into your mind regarding Apache Spark vs Hadoop MapReduce.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Spark vs Hadoop is a popular battle nowadays increasing the popularity of Apache Spark, is an initial point of this battle. In the big data world, Spark and Hadoop are popular Apache projects. We&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":73070,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[614],"tags":[716,717,718,719,203,720,721,722,723,724],"class_list":["post-823","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-apache-spark","tag-apache-spark-vs-hadoop-mapreduce","tag-battle-apache-spark-vs-hadoop-mapreduce","tag-fault-tolerant","tag-hadoop-mapreduce-vs-apache-spark-who-wins-the-battle","tag-machine-learning","tag-mapreduce-vs-spark","tag-spark-vs-hadoop-mapreduce","tag-spark-vs-hadoop-mapreduce-which-big-data-framework-to-choose","tag-what-is-apache-spark","tag-what-is-hadoop-mapreduce"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Battle: Apache Spark vs Hadoop MapReduce - TechVidvan<\/title>\n<meta name=\"description\" content=\"Spark vs Hadoop: Introduction and features of Apache spark &amp; Hadoop,Apache spark vs Hadoop mapreduce,fault tolerance,speed,caching,scalability,recovery,cost,security\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Battle: Apache Spark vs Hadoop MapReduce - TechVidvan\" \/>\n<meta property=\"og:description\" content=\"Spark vs Hadoop: Introduction and features of Apache spark &amp; Hadoop,Apache spark vs Hadoop mapreduce,fault tolerance,speed,caching,scalability,recovery,cost,security\" \/>\n<meta property=\"og:url\" content=\"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/\" \/>\n<meta property=\"og:site_name\" content=\"TechVidvan\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/TechVidvan\/\" \/>\n<meta property=\"article:published_time\" content=\"2018-01-10T12:32:49+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2019\/11\/Apache-Spark-vs-Hadoop-MapReduce-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=\"TechVidvan Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@vidvantech\" \/>\n<meta name=\"twitter:site\" content=\"@vidvantech\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"TechVidvan 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":"Battle: Apache Spark vs Hadoop MapReduce - TechVidvan","description":"Spark vs Hadoop: Introduction and features of Apache spark & Hadoop,Apache spark vs Hadoop mapreduce,fault tolerance,speed,caching,scalability,recovery,cost,security","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:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/","og_locale":"en_US","og_type":"article","og_title":"Battle: Apache Spark vs Hadoop MapReduce - TechVidvan","og_description":"Spark vs Hadoop: Introduction and features of Apache spark & Hadoop,Apache spark vs Hadoop mapreduce,fault tolerance,speed,caching,scalability,recovery,cost,security","og_url":"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/","og_site_name":"TechVidvan","article_publisher":"https:\/\/www.facebook.com\/TechVidvan\/","article_published_time":"2018-01-10T12:32:49+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2019\/11\/Apache-Spark-vs-Hadoop-MapReduce-01.jpg","type":"image\/jpeg"}],"author":"TechVidvan Team","twitter_card":"summary_large_image","twitter_creator":"@vidvantech","twitter_site":"@vidvantech","twitter_misc":{"Written by":"TechVidvan Team","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/#article","isPartOf":{"@id":"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/"},"author":{"name":"TechVidvan Team","@id":"https:\/\/techvidvan.com\/tutorials\/#\/schema\/person\/e9c26e74dd3d87421f7ada9433b8cd22"},"headline":"Battle: Apache Spark vs Hadoop MapReduce","datePublished":"2018-01-10T12:32:49+00:00","mainEntityOfPage":{"@id":"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/"},"wordCount":1405,"commentCount":0,"publisher":{"@id":"https:\/\/techvidvan.com\/tutorials\/#organization"},"image":{"@id":"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/#primaryimage"},"thumbnailUrl":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2019\/11\/Apache-Spark-vs-Hadoop-MapReduce-01.jpg","keywords":["Apache Spark vs Hadoop MapReduce","Battle: Apache Spark vs Hadoop MapReduce","Fault-Tolerant","Hadoop MapReduce vs. Apache Spark Who Wins the Battle?","machine learning","MapReduce vs spark","Spark vs Hadoop MapReduce","Spark vs. Hadoop MapReduce: Which big data framework to choose","what is apache spark","what is Hadoop MapReduce"],"articleSection":["Spark Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/","url":"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/","name":"Battle: Apache Spark vs Hadoop MapReduce - TechVidvan","isPartOf":{"@id":"https:\/\/techvidvan.com\/tutorials\/#website"},"primaryImageOfPage":{"@id":"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/#primaryimage"},"image":{"@id":"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/#primaryimage"},"thumbnailUrl":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2019\/11\/Apache-Spark-vs-Hadoop-MapReduce-01.jpg","datePublished":"2018-01-10T12:32:49+00:00","description":"Spark vs Hadoop: Introduction and features of Apache spark & Hadoop,Apache spark vs Hadoop mapreduce,fault tolerance,speed,caching,scalability,recovery,cost,security","breadcrumb":{"@id":"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/#primaryimage","url":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2019\/11\/Apache-Spark-vs-Hadoop-MapReduce-01.jpg","contentUrl":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2019\/11\/Apache-Spark-vs-Hadoop-MapReduce-01.jpg","width":1200,"height":628,"caption":"apache spark vs hadoop mapReduce"},{"@type":"BreadcrumbList","@id":"https:\/\/techvidvan.com\/tutorials\/apache-spark-vs-hadoop-mapreduce\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/techvidvan.com\/tutorials\/"},{"@type":"ListItem","position":2,"name":"Battle: Apache Spark vs Hadoop MapReduce"}]},{"@type":"WebSite","@id":"https:\/\/techvidvan.com\/tutorials\/#website","url":"https:\/\/techvidvan.com\/tutorials\/","name":"TechVidvan Blogs","description":"","publisher":{"@id":"https:\/\/techvidvan.com\/tutorials\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/techvidvan.com\/tutorials\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/techvidvan.com\/tutorials\/#organization","name":"TechVidvan","url":"https:\/\/techvidvan.com\/tutorials\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/techvidvan.com\/tutorials\/#\/schema\/logo\/image\/","url":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2024\/03\/techvidvan-logo-200x50-1.webp","contentUrl":"https:\/\/techvidvan.com\/tutorials\/wp-content\/uploads\/2024\/03\/techvidvan-logo-200x50-1.webp","width":200,"height":50,"caption":"TechVidvan"},"image":{"@id":"https:\/\/techvidvan.com\/tutorials\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/TechVidvan\/","https:\/\/x.com\/vidvantech"]},{"@type":"Person","@id":"https:\/\/techvidvan.com\/tutorials\/#\/schema\/person\/e9c26e74dd3d87421f7ada9433b8cd22","name":"TechVidvan Team","description":"The TechVidvan Team delivers practical, beginner-friendly tutorials on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. Our experts are here to help you upskill and excel in today\u2019s tech industry."}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/posts\/823","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/comments?post=823"}],"version-history":[{"count":0,"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/posts\/823\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/media\/73070"}],"wp:attachment":[{"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/media?parent=823"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/categories?post=823"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/techvidvan.com\/tutorials\/wp-json\/wp\/v2\/tags?post=823"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}