

{"id":36050,"date":"2018-09-25T15:16:44","date_gmt":"2018-09-25T09:46:44","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?page_id=36050"},"modified":"2024-12-08T21:03:04","modified_gmt":"2024-12-08T15:33:04","slug":"spark-tutorials-home","status":"publish","type":"page","link":"https:\/\/data-flair.training\/blogs\/spark-tutorials-home\/","title":{"rendered":"Learn Spark \u2013 Spark Tutorials"},"content":{"rendered":"<div id=\"pl-36050\"  class=\"panel-layout\" ><div id=\"pg-36050-0\"  class=\"panel-grid panel-no-style\" ><div id=\"pgc-36050-0-0\"  class=\"panel-grid-cell\" ><div id=\"panel-36050-0-0-0\" class=\"so-panel widget widget_text panel-first-child panel-last-child\" data-index=\"0\" >\t\t\t<div class=\"textwidget\"><h1 class=\"tutorial-heading\">Getting Started with Spark<\/h1>\n<p>Install Spark on your machine now and get started with Spark today.<\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><div id=\"pg-36050-1\"  class=\"panel-grid panel-no-style\" ><div id=\"pgc-36050-1-0\"  class=\"panel-grid-cell\" ><div id=\"panel-36050-1-0-0\" class=\"so-panel widget widget_text panel-first-child\" data-index=\"1\" ><div class=\"tutorial-heading panel-widget-style panel-widget-style-for-36050-1-0-0\" >\t\t\t<div class=\"textwidget\"><h4>Apache Spark Concepts<\/h4>\n<ul class=\"tutHomeList starBefore listStyle \">\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-tutorial\/\" target=\"_blank\" rel=\"noopener\">Spark Tutorial <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/introduction-to-apache-spark-video-tutorial\/\" target=\"_blank\" rel=\"noopener\">Introduction to Apache Spark <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/what-is-apache-spark\/\" target=\"_blank\" rel=\"noopener\">What is Apache Spark <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/what-is-spark\/\" target=\"_blank\" rel=\"noopener\">What is Spark <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/install-spark-ubuntu\/\" target=\"_blank\" rel=\"noopener\">Install Spark On Ubuntu<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-installation-standalone-mode\/\" target=\"_blank\" rel=\"noopener\">Spark Installation in Standalone Mode <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/install-apache-spark-multi-node-cluster\/\" target=\"_blank\" rel=\"noopener\">Install Apache Spark on Multi-Node Cluster<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-terminologies-concepts-you-must-know\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Terminologies <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-ecosystem-components\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Ecosystem <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/how-apache-spark-works\/\" target=\"_blank\" rel=\"noopener\">How Apache Spark Works <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/reasons-to-learn-apache-spark\/\" target=\"_blank\" rel=\"noopener\">Reasons To Learn Apache Spark<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-features\/\" target=\"_blank\" rel=\"noopener\">Features of Apache Spark <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/scala-spark-shell-commands\/\" target=\"_blank\" rel=\"noopener\">Spark Shell Commands <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/learn-apache-spark-sparkcontext\/\" target=\"_blank\" rel=\"noopener\">SparkContext <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-notes\/\" target=\"_blank\" rel=\"noopener\">Spark Notes <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/best-apache-spark-scala-books\/\" target=\"_blank\" rel=\"noopener\">Apache Spark and Scala Books <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-careers-job-opportunity\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Careers and Job Opportunities<\/a><\/li>\n<\/ul>\n<\/div>\n\t\t<\/div><\/div><div id=\"panel-36050-1-0-1\" class=\"so-panel widget widget_text\" data-index=\"2\" ><div class=\"tutorial-heading panel-widget-style panel-widget-style-for-36050-1-0-1\" >\t\t\t<div class=\"textwidget\"><h4>Spark RDD<\/h4>\n<ul class=\"tutHomeList starBefore listStyle \">\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-rdd-tutorial\/\" target=\"_blank\" rel=\"noopener\">Spark RDD <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-rdd-persistence-caching\/\" target=\"_blank\" rel=\"noopener\">RDD Persistence and Caching<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-rdd-features\/\" target=\"_blank\" rel=\"noopener\">Features of Spark RDD <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-rdd-limitations\/\" target=\"_blank\" rel=\"noopener\">Limitations of RDD<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-rdd-operations-transformations-actions\/\" target=\"_blank\" rel=\"noopener\">Spark RDD Operations-Transformation &amp; Action <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/rdd-lineage\/\" target=\"_blank\" rel=\"noopener\">RDD lineage in Spark<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/create-rdds-in-apache-spark\/\" target=\"_blank\" rel=\"noopener\">RDDs in Apache Spark<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-paired-rdd\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Paired RDD<\/a><\/li>\n<\/ul>\n<\/div>\n\t\t<\/div><\/div><div id=\"panel-36050-1-0-2\" class=\"so-panel widget widget_text\" data-index=\"3\" ><div class=\"tutorial-heading panel-widget-style panel-widget-style-for-36050-1-0-2\" >\t\t\t<div class=\"textwidget\"><h4>Spark SQL<\/h4>\n<ul class=\"tutHomeList starBefore listStyle \">\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-sql-tutorial\/\" target=\"_blank\" rel=\"noopener\">Spark SQL Tutorial <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-sql\/\" target=\"_blank\" rel=\"noopener\">Apache Spark SQL Tutorial <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-sql-features\/\" target=\"_blank\" rel=\"noopener\">Spark SQL Features <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-sql-dataframe-tutorial\/\" target=\"_blank\" rel=\"noopener\">Spark SQL DataFrame Tutorial <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-sql-optimization\/\" target=\"_blank\" rel=\"noopener\">Spark SQL Optimization<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-sql-performance-tuning\/\" target=\"_blank\" rel=\"noopener\">Spark SQL Performance Tuning <\/a><\/li>\n<\/ul>\n<\/div>\n\t\t<\/div><\/div><div id=\"panel-36050-1-0-3\" class=\"so-panel widget widget_text\" data-index=\"4\" ><div class=\"tutorial-heading panel-widget-style panel-widget-style-for-36050-1-0-3\" >\t\t\t<div class=\"textwidget\"><h4>Intermediate<\/h4>\n<ul class=\"tutHomeList starBefore listStyle \">\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-in-memory-computing\/\" target=\"_blank\" rel=\"noopener\">Spark In-Memory Computing <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-lazy-evaluation\/\" target=\"_blank\" rel=\"noopener\">Lazy Evaluation in Apache Spark <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/fault-tolerance-in-apache-spark\/\" target=\"_blank\" rel=\"noopener\">Fault tolerance in Apache Spark <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/dag-in-apache-spark\/\" target=\"_blank\" rel=\"noopener\">DAG in Apache Spark<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-cluster-managers-tutorial\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Cluster Managers<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-hadoop-compatibility\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Compatibility with Hadoop<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-performance-tuning\/\" target=\"_blank\" rel=\"noopener\">Spark Performance Tuning<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-executor\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Executor <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-stage\/\" target=\"_blank\" rel=\"noopener\">Spark Stage<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/limitations-of-apache-spark\/\" target=\"_blank\" rel=\"noopener\">Limitations of Apache Spark <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/data-type-mapping-between-r-and-spark\/\" target=\"_blank\" rel=\"noopener\">Data Type Mapping Between R and Spark<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-mesos-tutorial\/\" target=\"_blank\" rel=\"noopener\">Apache Mesos Tutorial <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-mesos-books\/\" target=\"_blank\" rel=\"noopener\">Apache Mesos Books <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-dataset-tutorial\/\" target=\"_blank\" rel=\"noopener\">Spark Dataset Tutorial <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-use-cases\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Use Cases<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/big-data-use-cases-case-studies-hadoop-spark-flink\/\" target=\"_blank\" rel=\"noopener\">Big Data Use Cases \u2013 Hadoop, Spark and Flink Case Studies<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-certifications\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Certifications <\/a><\/li>\n<\/ul>\n<\/div>\n\t\t<\/div><\/div><div id=\"panel-36050-1-0-4\" class=\"so-panel widget widget_text panel-last-child\" data-index=\"5\" ><div class=\"tutorial-heading panel-widget-style panel-widget-style-for-36050-1-0-4\" >\t\t\t<div class=\"textwidget\"><h4>About SparkR<\/h4>\n<ul class=\"tutHomeList starBefore listStyle \">\n<li><a href=\"https:\/\/data-flair.training\/blogs\/sparkr\/\" target=\"_blank\" rel=\"noopener\">SparkR in Apache Spark <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/sparksession-and-rstudio\/\" target=\"_blank\" rel=\"noopener\">Using Sparksession or RStudio<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/sparkr-dataframe\/\" target=\"_blank\" rel=\"noopener\">SparkR DataFrame <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/create-sparkdataframes\/\" target=\"_blank\" rel=\"noopener\">Ways to Create SparkDataFrames<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/structured-streaming-in-sparkr\/\" target=\"_blank\" rel=\"noopener\">Structured Streaming in SparkR<\/a><\/li>\n<\/ul>\n<\/div>\n\t\t<\/div><\/div><\/div><div id=\"pgc-36050-1-1\"  class=\"panel-grid-cell\" ><div id=\"panel-36050-1-1-0\" class=\"so-panel widget widget_text panel-first-child\" data-index=\"6\" ><div class=\"tutorial-heading panel-widget-style panel-widget-style-for-36050-1-1-0\" >\t\t\t<div class=\"textwidget\"><h4>Apache Spark Advanced Concepts<\/h4>\n<ul class=\"tutHomeList starBefore listStyle \">\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-streaming-tutorial\/\" target=\"_blank\" rel=\"noopener\">Spark Streaming Tutorial<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-dstream-discretized-streams\/\" target=\"_blank\" rel=\"noopener\">Apache Spark DStream (Discretized Streams)<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-streaming-transformation-operations\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Streaming Transformation Operations<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-streaming-checkpoint\/\" target=\"_blank\" rel=\"noopener\">Spark Streaming Checkpoint <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/graphx-api-spark\/\" target=\"_blank\" rel=\"noopener\">GraphX API in Apache Spark<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-graphx-features\/\" target=\"_blank\" rel=\"noopener\">Spark GraphX Features <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-machine-learning-with-r\/\" target=\"_blank\" rel=\"noopener\">Spark Machine Learning with R<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-mllib\/\" target=\"_blank\" rel=\"noopener\">Apache Spark MLlib Algorithms<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-mllib-data-types\/\" target=\"_blank\" rel=\"noopener\">Spark MLlib Data Types<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-machine-learning-algorithm\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Machine Learning Algorithm <\/a><\/li>\n<\/ul>\n<\/div>\n\t\t<\/div><\/div><div id=\"panel-36050-1-1-1\" class=\"so-panel widget widget_text\" data-index=\"7\" ><div class=\"tutorial-heading panel-widget-style panel-widget-style-for-36050-1-1-1\" >\t\t\t<div class=\"textwidget\"><h4>Comparison<\/h4>\n<ul class=\"tutHomeList starBefore listStyle \">\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-map-vs-flatmap\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Map vs FlatMap <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/batch-processing-vs-real-time-processing\/\" target=\"_blank\" rel=\"noopener\">Batch Processing vs Real Time Processing <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/comparison-apache-flink-vs-apache-spark\/\" target=\"_blank\" rel=\"noopener\">Apache Flink vs Apache Spark <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/hadoop-vs-spark-vs-flink\/\" target=\"_blank\" rel=\"noopener\">Hadoop vs Spark vs Flink <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-vs-hadoop-mapreduce\/\" target=\"_blank\" rel=\"noopener\">Apache Spark vs Hadoop MapReduce <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-storm-vs-spark-streaming\/\" target=\"_blank\" rel=\"noopener\">Apache Storm vs Spark Streaming <\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-hive-vs-spark-sql\/\" target=\"_blank\" rel=\"noopener\">Apache Hive vs Spark SQL<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-rdd-vs-dataframe-vs-dataset\/\" target=\"_blank\" rel=\"noopener\">Apache Spark RDD vs DataFrame vs DataSet<\/a><\/li>\n<\/ul>\n<\/div>\n\t\t<\/div><\/div><div id=\"panel-36050-1-1-2\" class=\"so-panel widget widget_text\" data-index=\"8\" ><div class=\"tutorial-heading panel-widget-style panel-widget-style-for-36050-1-1-2\" >\t\t\t<div class=\"textwidget\"><h4>Apache Spark Project<\/h4>\n<ul class=\"tutHomeList starBefore listStyle \">\n<li><a href=\"https:\/\/data-flair.training\/blogs\/create-spark-scala-project\/\" target=\"_blank\" rel=\"noopener\">Spark Project in Scala With Eclipse Without Maven<\/a><\/li>\n<\/ul>\n<\/div>\n\t\t<\/div><\/div><div id=\"panel-36050-1-1-3\" class=\"so-panel widget widget_text\" data-index=\"9\" ><div class=\"tutorial-heading panel-widget-style panel-widget-style-for-36050-1-1-3\" >\t\t\t<div class=\"textwidget\"><h4>Apache Spark Interview Questions <\/h4>\n<ul class=\"tutHomeList starBefore listStyle \">\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-interview-questions-answers\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Interview Questions and Answers Part &#8211; 1<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-interview-questions\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Interview Questions and Answers Part &#8211; 2<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-interview-questions-and-answers\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Interview Questions and Answers Part &#8211; 3<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-interview-questions\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Interview Questions and Answers Part &#8211; 4<\/a><\/li>\n<\/ul>\n<\/div>\n\t\t<\/div><\/div><div id=\"panel-36050-1-1-4\" class=\"so-panel widget widget_text panel-last-child\" data-index=\"10\" ><div class=\"tutorial-heading panel-widget-style panel-widget-style-for-36050-1-1-4\" >\t\t\t<div class=\"textwidget\"><h4>Apache Spark Quizzes<\/h4>\n<ul class=\"tutHomeList starBefore listStyle \">\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-online-quiz-part-1\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Quiz Part &#8211; 1<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-quiz-questions-part-2\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Quiz Part &#8211; 2<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-mcqs-part-3\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Quiz Part &#8211; 3<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-online-quiz-part-4\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Quiz Part &#8211; 4<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/apache-spark-multiple-choice-questions\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Quiz Part &#8211; 5<\/a><\/li>\n<li><a href=\"https:\/\/data-flair.training\/blogs\/spark-scala-quiz-part-6\/\" target=\"_blank\" rel=\"noopener\">Apache Spark Quiz Part &#8211; 6<\/a><\/li>\n<\/ul>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><div id=\"pg-36050-2\"  class=\"panel-grid panel-no-style\" ><div id=\"pgc-36050-2-0\"  class=\"panel-grid-cell\" ><div id=\"panel-36050-2-0-0\" class=\"so-panel widget widget_siteorigin-panels-builder panel-first-child panel-last-child\" data-index=\"11\" ><div id=\"pl-w65084522bcd3b\"  class=\"panel-layout\" ><div id=\"pg-w65084522bcd3b-0\"  class=\"panel-grid panel-no-style\" ><div id=\"pgc-w65084522bcd3b-0-0\"  class=\"panel-grid-cell\" ><div id=\"panel-w65084522bcd3b-0-0-0\" class=\"so-panel widget panel-first-child\" data-index=\"0\" ><\/div><div id=\"panel-w65084522bcd3b-0-0-1\" class=\"so-panel widget widget_text panel-last-child\" data-index=\"1\" ><div id=\"tutorials\" class=\"panel-widget-style panel-widget-style-for-w65084522bcd3b-0-0-1\" >\t\t\t<div class=\"textwidget\"><p><a id=\"tutorials\"><\/a><\/p>\n<h5>Learn PySpark<\/h5>\n<p>Done with Spark? Move ahead to PySpark.<\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><div id=\"pg-w65084522bcd3b-1\"  class=\"panel-grid panel-no-style\" ><div id=\"pgc-w65084522bcd3b-1-0\"  class=\"panel-grid-cell\" ><div id=\"panel-w65084522bcd3b-1-0-0\" class=\"so-panel widget widget_media_image panel-first-child\" data-index=\"2\" ><img loading=\"lazy\" decoding=\"async\" width=\"401\" height=\"135\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/beginner.jpg\" class=\"image wp-image-34706  attachment-full size-full\" alt=\"Beginner\" style=\"max-width: 100%; height: auto;\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/beginner.jpg 401w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/beginner-150x50.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/beginner-300x101.jpg 300w\" sizes=\"auto, (max-width: 401px) 100vw, 401px\" \/><\/div><div id=\"panel-w65084522bcd3b-1-0-1\" class=\"so-panel widget widget_text panel-last-child\" data-index=\"3\" >\t\t\t<div class=\"textwidget\"><p style=\"color: #a9a9a9;font-size: 1.1em\">Wipe the slate clean and learn PySpark from scratch<\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/pyspark-tutorial\/\">Introduction to PySpark<\/a><br \/>\n<a href=\"https:\/\/data-flair.training\/blogs\/pyspark-pros-and-cons\/\">Pros and Cons of PySpark<\/a><br \/>\n<a href=\"https:\/\/data-flair.training\/blogs\/pyspark-sparkfiles\/\">PySpark SparkFiles &amp; their Class Methods<\/a><br \/>\n<a href=\"https:\/\/data-flair.training\/blogs\/pyspark-rdd\/\">PySpark RDD with Operations &amp; Commands<\/a><br \/>\n<a href=\"https:\/\/data-flair.training\/blogs\/pyspark-career\/\">PySpark Career Opportunities<\/a><br \/>\n<a href=\"https:\/\/data-flair.training\/blogs\/pyspark-books\/\">Best PySpark Books<\/a><\/p>\n<\/div>\n\t\t<\/div><\/div><div id=\"pgc-w65084522bcd3b-1-1\"  class=\"panel-grid-cell\" ><div id=\"panel-w65084522bcd3b-1-1-0\" class=\"so-panel widget widget_media_image panel-first-child\" data-index=\"4\" ><img loading=\"lazy\" decoding=\"async\" width=\"401\" height=\"135\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/intermediate.jpg\" class=\"image wp-image-34707  attachment-full size-full\" alt=\"Intermediate\" style=\"max-width: 100%; height: auto;\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/intermediate.jpg 401w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/intermediate-150x50.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/intermediate-300x101.jpg 300w\" sizes=\"auto, (max-width: 401px) 100vw, 401px\" \/><\/div><div id=\"panel-w65084522bcd3b-1-1-1\" class=\"so-panel widget widget_text panel-last-child\" data-index=\"5\" >\t\t\t<div class=\"textwidget\"><p style=\"color: #a9a9a9;font-size: 1.1em\">Level up to more exciting and challenging chapters<\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/pyspark-sparkconf\/\">PySpark SparkConf- Attributes &amp; Applications<\/a><br \/>\n<a href=\"https:\/\/data-flair.training\/blogs\/pyspark-sparkcontext\/\">PySpark SparkContext and its Parameters<\/a><br \/>\n<a href=\"https:\/\/data-flair.training\/blogs\/pyspark-mllib\/\">PySpark MLlib- Algorithms &amp; Parameters<\/a><br \/>\n<a href=\"https:\/\/data-flair.training\/blogs\/pyspark-profiler\/\">PySpark Profiler- Methods &amp; Functions<\/a><br \/>\n<a href=\"https:\/\/data-flair.training\/blogs\/pyspark-serializers\/\">PySpark Serializers- Marshal &amp; Pickle<\/a><\/p>\n<\/div>\n\t\t<\/div><\/div><div id=\"pgc-w65084522bcd3b-1-2\"  class=\"panel-grid-cell\" ><div id=\"panel-w65084522bcd3b-1-2-0\" class=\"so-panel widget widget_media_image panel-first-child\" data-index=\"6\" ><img loading=\"lazy\" decoding=\"async\" width=\"401\" height=\"135\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/expert.jpg\" class=\"image wp-image-34708  attachment-full size-full\" alt=\"Expert\" style=\"max-width: 100%; height: auto;\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/expert.jpg 401w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/expert-150x50.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/expert-300x101.jpg 300w\" sizes=\"auto, (max-width: 401px) 100vw, 401px\" \/><\/div><div id=\"panel-w65084522bcd3b-1-2-1\" class=\"so-panel widget widget_text panel-last-child\" data-index=\"7\" >\t\t\t<div class=\"textwidget\"><p style=\"color: #a9a9a9;font-size: 1.1em\">Master new skills and evolve as an expert<\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/pyspark-storagelevel\/\">PySpark StorageLevel<\/a><br \/>\n<a href=\"https:\/\/data-flair.training\/blogs\/pyspark-statustracker\/\">PySpark StatusTracker(jtracker)<\/a><br \/>\n<a href=\"https:\/\/data-flair.training\/blogs\/pyspark-broadcast-and-accumulator\/\">PySpark Broadcast &amp; Accumulator<\/a><br \/>\n<a href=\"https:\/\/data-flair.training\/blogs\/pyspark-interview-questions\/\">PySpark Interview Questions<\/a><\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><\/div><\/div><\/div><div id=\"pg-36050-3\"  class=\"panel-grid panel-has-style\" ><div class=\"siteorigin-panels-stretch panel-row-style panel-row-style-for-36050-3\" data-stretch-type=\"full\" ><div id=\"pgc-36050-3-0\"  class=\"panel-grid-cell\" ><div id=\"panel-36050-3-0-0\" class=\"so-panel widget widget_siteorigin-panels-builder panel-first-child panel-last-child\" data-index=\"12\" ><div id=\"pl-w6755bc30395fc\"  class=\"panel-layout\" ><div id=\"pg-w6755bc30395fc-0\"  class=\"panel-grid panel-no-style\" ><div id=\"pgc-w6755bc30395fc-0-0\"  class=\"panel-grid-cell\" ><div id=\"panel-w6755bc30395fc-0-0-0\" class=\"so-panel widget widget_siteorigin-panels-builder panel-first-child\" data-index=\"0\" ><div id=\"pl-w5baa1881a124a\"  class=\"panel-layout\" ><div id=\"pg-w5baa1881a124a-0\"  class=\"panel-grid panel-no-style\" ><div id=\"pgc-w5baa1881a124a-0-0\"  class=\"panel-grid-cell\" ><div id=\"panel-w5baa1881a124a-0-0-0\" class=\"so-panel widget widget_text panel-first-child\" data-index=\"0\" ><h5 class=\"widget-title\">Exploring the Framework<\/h5>\t\t\t<div class=\"textwidget\"><p>Let&#8217;s take a look at some facts about Spark and its philosophies.<\/p>\n<\/div>\n\t\t<\/div><div id=\"panel-w5baa1881a124a-0-0-1\" class=\"so-panel widget widget_text panel-last-child\" data-index=\"1\" >\t\t\t<div class=\"textwidget\"><p>Spark first showed up at UC Berkeley&#8217;s AMPLab in 2014. In 2010, it was open-sourced under a BSD license. Then in 2013, Zaharia donated the project to the Apache Software Foundation under an Apache 2.0 license. By February of 2014, it was a top-level Apache project. Today, Spark is\u00a0an open-source distributed general-purpose cluster-computing framework; the Apache Software Foundation maintains it. It gives us an interface for programming whole clusters implementing implicit data parallelism and fault tolerance.<\/p>\n<p>Essentially, Apache Spark is a unified analytics engine for large-scale data processing.<\/p>\n<\/div>\n\t\t<\/div><\/div><div id=\"pgc-w5baa1881a124a-0-1\"  class=\"panel-grid-cell\" ><div id=\"panel-w5baa1881a124a-0-1-0\" class=\"so-panel widget widget_media_image panel-first-child\" data-index=\"2\" ><div class=\"panel-widget-style panel-widget-style-for-w5baa1881a124a-0-1-0\" ><img loading=\"lazy\" decoding=\"async\" width=\"260\" height=\"260\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/zaharia-300x300.png\" class=\"image wp-image-36066  attachment-260x260 size-260x260\" alt=\"Apache Spark Founder Matei Zaharia\" style=\"max-width: 100%; height: auto;\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/zaharia-300x300.png 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/zaharia-150x150.png 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/zaharia-768x768.png 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/zaharia-160x160.png 160w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/zaharia-320x320.png 320w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/zaharia-520x520.png 520w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2018\/09\/zaharia.png 802w\" sizes=\"auto, (max-width: 260px) 100vw, 260px\" \/><\/div><\/div><div id=\"panel-w5baa1881a124a-0-1-1\" class=\"so-panel widget widget_text panel-last-child\" data-index=\"3\" ><div class=\"panel-widget-style panel-widget-style-for-w5baa1881a124a-0-1-1\" >\t\t\t<div class=\"textwidget\"><p><em>Matei Zaharia<\/em><\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><\/div><\/div><div id=\"panel-w6755bc30395fc-0-0-1\" class=\"so-panel widget widget_text panel-last-child\" data-index=\"1\" >\t\t\t<div class=\"textwidget\"><h4>What makes Spark so popular?<\/h4>\n<p>The project lists the following benefits:<\/p>\n<p>1. Speed- Spark runs workloads 100x faster. It achieves this by minimizing disk read\/write operations for intermediate results. It stores in memory and performs disk operations only when essential.<br \/>\n2. Ease of Use- Spark lets you quickly write applications in languages as Java, Scala, Python, R, and SQL. With over 80 high-level operators, it is easy to build parallel apps. These can be availed interactively from the Scala, Python, R, and SQL shells.<br \/>\n3. Generality- Spark combines SQL, streaming, and complex analytics. With a stack of libraries like SQL and DataFrames, MLlib for machine learning, GraphX, and Spark Streaming, it is also possible to combine these into one application.<br \/>\n4. Runs Everywhere- Spark runs on Hadoop, Apache Mesos, or on Kubernetes. It will also run standalone or in the cloud, and can access diverse data sources.<\/p>\n<\/div>\n\t\t<\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>Getting Started with Spark Install Spark on your machine now and get started with Spark today. Apache Spark Concepts Spark Tutorial Introduction to Apache Spark What is Apache Spark What is Spark Install Spark&#46;&#46;&#46;<\/p>\n","protected":false},"author":10,"featured_media":120903,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-36050","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Learn Spark \u2013 Spark Tutorials - DataFlair<\/title>\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\/spark-tutorials-home\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Learn Spark \u2013 Spark Tutorials - DataFlair\" \/>\n<meta property=\"og:description\" content=\"Getting Started with Spark Install Spark on your machine now and get started with Spark today. Apache Spark Concepts Spark Tutorial Introduction to Apache Spark What is Apache Spark What is Spark Install Spark&#046;&#046;&#046;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/spark-tutorials-home\/\" \/>\n<meta property=\"og:site_name\" content=\"DataFlair\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DataFlairWS\/\" \/>\n<meta property=\"article:modified_time\" content=\"2024-12-08T15:33:04+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2023\/09\/170-Apache-spark-Tutorials.webp\" \/>\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\/webp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"5 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Learn Spark \u2013 Spark Tutorials - DataFlair","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\/spark-tutorials-home\/","og_locale":"en_US","og_type":"article","og_title":"Learn Spark \u2013 Spark Tutorials - DataFlair","og_description":"Getting Started with Spark Install Spark on your machine now and get started with Spark today. Apache Spark Concepts Spark Tutorial Introduction to Apache Spark What is Apache Spark What is Spark Install Spark&#46;&#46;&#46;","og_url":"https:\/\/data-flair.training\/blogs\/spark-tutorials-home\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_modified_time":"2024-12-08T15:33:04+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2023\/09\/170-Apache-spark-Tutorials.webp","type":"image\/webp"}],"twitter_card":"summary_large_image","twitter_site":"@DataFlairWS","twitter_misc":{"Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/spark-tutorials-home\/","url":"https:\/\/data-flair.training\/blogs\/spark-tutorials-home\/","name":"Learn Spark \u2013 Spark Tutorials - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/spark-tutorials-home\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/spark-tutorials-home\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2023\/09\/170-Apache-spark-Tutorials.webp","datePublished":"2018-09-25T09:46:44+00:00","dateModified":"2024-12-08T15:33:04+00:00","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/spark-tutorials-home\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/spark-tutorials-home\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/spark-tutorials-home\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2023\/09\/170-Apache-spark-Tutorials.webp","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2023\/09\/170-Apache-spark-Tutorials.webp","width":1200,"height":628,"caption":"170+ Apache spark Tutorials"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/spark-tutorials-home\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"Learn Spark \u2013 Spark Tutorials"}]},{"@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"]}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/pages\/36050","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=36050"}],"version-history":[{"count":64,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/pages\/36050\/revisions"}],"predecessor-version":[{"id":143708,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/pages\/36050\/revisions\/143708"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/120903"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=36050"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}