The real power and value proposition of Apache Spark is its speed and platform to execute data processing and data science tasks. Sounds interesting? Let’s see how easy it is!
Packt’s Video Learning Paths are a series of individual video products put together in a logical and stepwise manner such that each video builds on the skills learned in the video before it.
Spark is one of the most widely-used large-scale data processing engines and runs extremely fast. It is a framework that has tools that are equally useful for application developers as well as data scientists. Spark's unique use case is that it combines ETL, batch analytics, real-time stream analysis, machine learning, graph processing, and visualizations to allow data scientists to tackle the complexities that come with raw unstructured datasets.
This Learning Path starts with an introduction tour of Apache Spark 2. We will look at the basics of Spark, introduce SparkR, then look at the charting and plotting features of Python in conjunction with Spark data processing, and finally take a thorough look at Spark's data processing libraries. We then develop a real-world Spark application. Next, we will help you become comfortable and confident working with Spark for data science by exploring Spark’s data science libraries on a dataset of tweets.
The goal of this course to introduce you to Apache Spark 2 and teach you its data processing and data science libraries so that you are equipped with the skills required from modern data scientists.
This Learning Path is authored by some of the best in their fields.
Rajanarayanan Thottuvaikkatumana, or Raj, is a seasoned technologist with more than 23 years of software development experience at various multinational companies. His experience includes architecting, designing, and developing software applications. He has worked on various technologies including major databases, application development platforms, web technologies, and big data technologies. Currently he is building a next generation Hadoop YARN-based data processing platform and an application suite built with Spark using Scala.
Eric Charles has 10 years’ experience in the field of Data Science and is the founder of Datalayer, a social network for Data Scientists. His typical day includes building efficient processing with advanced machine learning algorithms, easy SQL, streaming and graph analytics. He also focuses a lot on visualization and result sharing. He is passionate about open source and is an active Apache Member. He regularly gives talks to corporate clients and at open source events.
This video will take you through the overview of Apache Hadoop. You will also explore the Apache Hadoop Framework and the MapReduce process.
By the end of this video, you will learn in depth about Spark and its advantages. You will also go through the Spark libraries and then dive into Spark Programming Paradigm.
In this video, you will learn Python installation and also how to install R. Finally, you will be able to set up the Spark environment for your machine.
Ability to get consistent results from a program or function because of the side effect that the program logic has, which makes many applications very complex
Learn to process data using RDDs from the relevant data source, such as text files and NoSQL data stores
Learn to handle the tools for monitoring the jobs running in a given Spark ecosystem
Ability to explain the core concepts from which the elementary data items have been picked up.
Ability to handle the appropriate Spark connector program to be used and the appropriate API to be used for reading data.
What if you could not make use of the RDD-based Spark programming model as it requires some amount of functional programming? The solution to this is Spark SQL, which you will learn in this video.
This video will take you through the structure and internal workings of Spark SQL.
This video will demonstrate to you two types of DataFrame programming models, one using the SQL queries and the other usingthe DataFrameAPIs for Spark.
Spark SQL allows the aggregation of data. Instead of running SQL statements on a single data source located in a single machine, you can use SparkSQL to do the same on distributed data sources.
This video will show you the methods used to create a Dataset, along with its usage, conversion of RDD to DataFrame, and conversion of DataFrame to dataset. You will also learn the usage of Catalog API in Scala and Python.
This video will make you understand the necessity of SparkR and the basic data types in the R language.
You may encounter several situations where you need to convert an R DataFrame to a Spark DataFrame or vice versa. Let’s see how to do it
This video will show you how to write programs with SQL and R DataFrame APIs.
In SQL, the aggregation of data is very flexible. The same thing is true in Spark SQL too. Let’s see its use and the implementation of multi-datasource joins
This video will walk you through the Charting and Plotting Libraries and give a brief description of the application stack. You will also learn how to set up a dataset with Spark in conjunction with Python, NumPy, SciPy, and matplotlib.
There are several instances where you need to create various charts and plots to visually represent the various aspects of the dataset and then perform data processing, charting, and plotting. This video will enable you to do this with Spark.
This video will let you explore more on the different types of charts and bars, namely Stacked Bar Chart, Donut Chart, Box Plot, and Vertical Bar Chart. So, let’s do it!
Through this video, you will learn in detail about scatter plot and line graph using Spark. You will also see how to enhance scatter plot in depth.
Data sources generate data like a stream, and many real-world use cases require them to be processed in real time. This video will give you a deep understanding of Stream processing in Spark.
These days, it is very common to have a central repository of application log events in many enterprises. Also, the log events are streamed live to data processing applications in order to monitor the performance of the running applications on a real-time basis. This video demonstrates the real-time processing of log events using a Spark Streaming data processing application.
This video will let you know the different processing options that you can pick up in Spark to work in a smart way with any data.
Kafka is a publish-subscribe messaging system used by many IoT applications to process a huge number of messages. Let’s see how to use it!
When a Spark Streaming application is processing the incoming data, it is very important to have an uninterrupted data processing capability so that all the data that is getting ingested is processed. This video will take you through those tasks that enable you to achieve this goal.
This video will let you know the basics of machine learning and understand the ability of Spark to achieve the goals of machine learning in an efficient manner.
By the end of this video, you will be able to perform predictions on huge data such as the Wine quality, which is a widely used data set in data analysis.
Let’s use Spark to perform Wine classification by using various algorithms.
Spam filtering is a very common use case that is used in many applications. It is ubiquitous in e-mail applications. It is one of the most widely used classification problems. This video will enable you to deal with this problem and show you the best approach to resolve it in Spark.
It is not very easy to get raw data in the appropriate form of features and labels in order to train the model. Through this video, you will be able to play with the raw data and use it efficiently for processing.
Graphs are widely used in data analysis. Let’s explore some commonly used graphs and their usage.
Many libraries are available in the open source world. Giraph, Pregel, GraphLab, and Spark GraphX are some of them. Spark GraphX is one of the recent entrantsinto this space. Let’s dive into it!
Just like any other data structure, a graph also undergoes lots of changes because of the change in the underlying data. Let’s learn to process these changes.
Since the basic graph processing fundamentals are in place, now it is time to take up a real-world use case that uses graphs. Let’s take the tennis tournament's results for it.
When searching the web using Google, pages that are ranked highly by its algorithm are displayed. In the context of graphs, instead of web pages, if vertices are ranked based on the same algorithm, lots of new inferences can be made. Let’s jump right in and see how to do this.
In a graph, finding a subgraph consisting of connected vertices is a very common requirement with tremendous applications. This video will enable you to find the connected vertices, making it easy for you to work on the given data.
GraphFrames is a new graph processing library available as an external Spark package developed by Databricks. Though this video, you will learn the concepts and queries used in GraphFrames.
Application architecture is very important for any kind of software development. Lambda Architecture is a recent and popular architecture that's ideal for developing data processing applications. Let’s dive into it!
In the recent years, the concept of microblogging included the general public in the culture of blogging. Let’s see how we could work it and have fun!
Since the Lambda Architecture is a technology-agnostic architecture framework, when designing applications with it, it is imperative to capture the technology choices used in the specific implementations. This video does exactly that.
You may require using different coding styles and performing data ingestion. This video will enhance your knowledge and enable you to implement these tasks with ease.
This video will show you how to create the purposed views and queries discussed in the previous videos of this section.
Let’s explore custom data processes with this video!
Big data solutions such as Spark are hard to setup, time consuming to learn, and obscure for non-technical users. The aim of the video is to give you just enough information to find your way through this complex ecosystem.
The goal of this video is to show the steps to install Spark on your laptop. This will allow you to easily test and prototype on a limited dataset size. If you want to process real big data, you will need a cluster in the cloud. We will also show you how to achieve this.
This video shows you how to set up Apache Zeppelin, a tool to execute and visualize your Spark analysis.
Manipulate data with the core RDD API.
Load files with the more advanced Spark data structures, the Dataframe, and Dataset, and perform basic operations on the loaded data.
Manipulate the rows and columns of Dataframe. This is needed to feature engineer your datasets.
Often the received dataset is not what you expect it to be. You will need to convert the encoding and format.
Visualization is a powerful way to make sense from data.
Data scientists use complex algorithms to analyze data with high-level libraries. Spark ships an out-of-the-box, complete solution for distributed machine learning.
Dataframes are not the best suited data structures for data science algorithms which mainly deal with matrices and vectors. We haven't seen the use of the Spark optimized distributed data structure for this.
Before applying the algorithms, we need to cleanse the datasets and create new features.
With big data, we may have an explosion of features which can cause noise. We need to be able to work on only the relevant features.
Data analysis works out in multiple steps to be sequentially executed—Spark fulfils this need with pipelines.
We want to connect to the Twitter API and store collected tweets in a persistent way.
Get introduced to and visualize streaming information.
Build a clean and usable from the raw collected data.
We want an easy and fast view of our dataset.
The aim of this video is to understand your dataset better.
The aim of this video is to validate statistical relevance.
Algorithms have sometimes difficulties with many features which can be redundant. We will see what SVD and PCA can bring to reduce the number of features for later modeling.
In this video, you will learn to extend the basic statistics for your needs.
Free text is difficult for algorithms. We need to convert words into numerical values.
Standard Spark functions does not meet the Tweet specificities. Let's see how we can do a better job.
We need to enrich our Dataset with more features we generate. This is a common process in Data Science analysis. We will add Sentiment features based on free text Feature Vectors.
Once again, we want to add generate features from the ones we have. Topics can be considered, although they are not easy to apply on Tweets.
The aim of this video is to visualize word clouds of data in Spark DataFrame.
We want to aggregated view on uses locations. Therefore we will preprocess the users' locations with Geohash.
Your data analysis has to be an iterative and collaborative process.
We want to get feedback as soon as possible from the end-users and from our business stakeholders.
The aim of the video is to review the available Spark Algorithms to classify and prepare the needed datasets.
The aim of this video is to train a Classification Model.
The aim of this video is to apply the Model on the Test Dataset and evaluate its performance.
This video aims at automating the Model Selection.
The aim of the video is to introduce clustering algorithms and run K-Means to identify a cluster based on User Followers and Friends.
This video helps us to Cluster users by location with the 'ml' package.
The aim of this video is to show how to adapt to changing sources.
Recommendation is widely use on web sites. It needs to learn from preferences. We don't do that in our Tweet dataset. The aim of this video is to show you alternatives techniques to recommend users.
The aim of this video is to have a view on how the user's mentions are linked.
In this course, all the existing topics have not been covered and new topics pop up every day. Hence, we need to give pointers to the viewers to know where to learn more.
Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work.
With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now.
From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer.
Packt Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.