Scala Essential Training for Data Science
2h 14mIntermediate2025-07-11
Authors

Dan Sullivan
Enterprise Architect, Big Data Expert
Course details
Get an introduction to the Scala functional programming language. Instructor Dan Sullivan emphasizes the features most useful to data scientists, including custom functions, parallel processing, and programming Spark with Scala. Dan begins with a brief introduction to Scala for programmers familiar with other programming languages, such as Python or Java. The course then moves to describe how to use SQL from Scala, which will be particularly useful to data scientists since they most often extract data from relational databases. Then, learn about parallel processing constructs in Scala. These techniques are useful for medium size data sets that can be analyzed on a single server with multiple cores. As data sizes increase, data scientists often turn to distributed processing platforms, such as Spark, and this course includes two chapters on using Scala with Spark. The course concludes with a summary of advantages of using Scala for data science.
Skills covered
ScalaApache SparkApacheData Science FoundationsSQLDatabase AdministrationData EngineeringDatabase DevelopmentDatabase ManagementData AnalysisProgramming LanguagesData ScienceBusiness Analysis and StrategyBusiness Software and ToolsOpen SourceSoftware DevelopmentOne-Off
Concepts
0. Introduction
- 01 - Welcome
- 02 - What you should know
- 03 - Using the exercise files
- 04 - Tour of CoderPad
1. Introduction to Scala
- 05 - The advantages of Scala for data science
- 06 - Installing Scala
- 07 - Scala data types
- 08 - Working with data types in the Scala REPL
- 09 - Challenge Intro - Create variables
- 10 - Solution - Create variables
- 11 - Scala collections
- 12 - Operations on sets
- 13 - Operations on arrays, vectors, and ranges
- 14 - Operations on maps
- 15 - Challenge Intro - Create arrays, vectors, and ranges
- 16 - Solution - Create arrays, vectors, and ranges
- 17 - Scala expressions
- 18 - Challenge Intro - Create expressions
- 19 - Solution - Create expressions
- 20 - Scala functions
- 21 - Challenge Intro - Create functions
- 22 - Solution - Create functions
- 23 - Creating classes in Scala
- 24 - Creating operations in Scala
- 25 - Challenge Intro - Define a Class
- 26 - Solution - Define a class
2. Parallel Processing in Scala
- 27 - Advantages of parallel collections
- 28 - Creating parallel collections
- 29 - Challenge Intro - Create Parallel Collections
- 30 - Solution - Create parallel collections
- 31 - Mapping functions over parallel collections
- 32 - Filtering parallel collections
- 33 - When and when not to use parallel collections
3. Using SQL in Scala
- 34 - Installing PostgreSQL
- 35 - Loading data into PostgreSQL
- 36 - Connecting to PostgreSQL
- 37 - Querying with SQL strings
- 38 - Querying with prepared statements
- 39 - Summary of SQL in Scala
4. Scala and Spark DataFrames
- 40 - Introduction to Spark
- 41 - Installing Docker Desktop
- 42 - Installing Spark using Docker
- 43 - Creating DataFrames in Spark
- 44 - Grouping and filtering DataFrames
- 45 - Joining DataFrames
- 46 - Working with JSON files
- 47 - Challenge - Functions over DataFrames
- 48 - Solution - Functions over DataFrames
5. Scala and Spark Datasets
- 49 - Introduction to Spark Datasets
- 50 - Creating Spark Datasets
- 51 - Applying lambda functions to datasets
- 52 - Challenge - Creating a dataset
- 53 - Solution - Create a dataset
Conclusion
- 54 - Next steps