Curated Learning Resources for Spark and Scala Beginners
This article compiles a comprehensive list of tutorials, books, online courses, and tools to help beginners get started with Apache Spark and the Scala programming language, including setup instructions, code snippets, and links to free and paid learning materials.
Author: chszs (source: http://blog.csdn.net/chszs). This article provides a curated collection of learning resources for beginners of Spark and Scala.
1. Scala Workshop on GitHub
https://github.com/airisdata/scalaworkshop
2. Setup Resources
Download Scala 2.11.8: http://www.scala-lang.org/download/
Download Apache Spark 1.6.1: http://spark.apache.org/downloads.html
3. Scala Installation
http://www.scala-lang.org/download/install.html
4. General Setup
Ensure Java 7 or Java 8 is installed, then download Scala 2.11.8, SBT, Spark, and optionally Maven.
5. Fix Local Spark Issues
export SPARK_MASTER_IP=127.0.0.1
export SPARK_LOCAL_IP=127.0.0.1
export SCALA_HOME=~/Downloads/scala-2.10.6
export PATH=$PATH:$SCALA_HOME/binFor Windows systems, use the SET command instead of EXPORT.
6. Recommended Books
Learning Spark – https://www.amazon.com/Learning-Spark-Lightning-Fast-Data-Analysis/dp/1449358624
Scala by Example (Odersky) – http://www.scala-lang.org/docu/files/ScalaByExample.pdf
Scala Overview (Odersky) – http://www.scala-lang.org/docu/files/ScalaOverview.pdf
Programming in Scala, First Edition (Odersky) – http://www.artima.com/pins1ed/
Structure and Interpretation of Computer Programs – http://mitpress.mit.edu/sicp/full-text/book/book.html
Scala for the Impatient – http://www.amazon.com/Scala-Impatient-Cay-S-Horstmann/dp/0321774094
Programming Scala – http://www.amazon.com/Programming-Scala-Scalability-Functional-Objects/dp/0596155956
Advanced Analytics with Spark – http://www.amazon.com/Advanced-Analytics-Spark-Patterns-Learning/dp/1491912766
Spark Cookbook – http://www.amazon.com/Spark-Cookbook-Rishi-Yadav/dp/1783987065
7. Online Guides
Scala for Java Programmers – http://docs.scala-lang.org/tutorials/scala-for-java-programmers.html
Scala Tutorial – http://www.scala-lang.org/docu/files/ScalaTutorial.pdf
Effective Scala (Twitter) – http://twitter.github.io/effectivescala/
Scala Tour – http://www.scala-tour.com/#/welcome
8. E‑Books
Books at Lightbend (Typesafe) – http://www.lightbend.com/resources/e-books
AtomicScala (sample) – http://www.atomicscala.com/free-sample/
9. Scala Koans / Exercises
Scala Exercises – http://scala-exercises.47deg.com/
Scala Koans – http://www.scalakoans.org/
10. Additional Resources
Scala Roundup for Java Engineers – http://www.codecommit.com/blog/scala/roundup-scala-for-java-refugees
Scala Info on StackOverflow – http://stackoverflow.com/tags/scala/info
Scala Cheat Sheets – http://docs.scala-lang.org/cheatsheets/
Scala Notes – http://aperiodic.net/phil/scala/s-99/
Cake Solutions Blog – http://www.cakesolutions.net/teamblogs
Scala School (Twitter) – https://twitter.github.io/scala_school/
Functional Programming in Scala – http://nerd.kelseyinnis.com/blog/2013/01/07/resources-for-getting-started-with-functional-programming-and-scala/
How to Learn Scala – http://blog.codacy.com/2015/07/03/how-to-learn-scala/#gs.GX=delw
Scala Lang Overviews – http://docs.scala-lang.org/overviews/
Learning Scala in Small Bites – http://matt.might.net/articles/learning-scala-in-small-bites/
11. Free Online Scala Courses
Functional Programming with Scala – https://www.coursera.org/course/progfun
Reactive Programming with Scala – https://www.coursera.org/course/reactive
12. Free Online Spark Courses
Big Data Analysis with Spark – https://www.edx.org/course/big-data-analysis-spark-uc-berkeleyx-cs110x
Distributed Machine Learning with Spark – https://www.edx.org/course/distributed-machine-learning-spark-uc-berkeleyx-cs120x
Introduction to Spark – https://www.coursera.org/learn/hadoop/lecture/9cq0R/introduction-to-apache-spark
Spark Fundamentals – http://bigdatauniversity.com/courses/spark-fundamentals/
Data Science / Engineering Spark – https://www.edx.org/xseries/data-science-engineering-spark
CS100 – https://courses.edx.org/courses/BerkeleyX/CS100.1x/1T2015/
CS190 – https://courses.edx.org/courses/BerkeleyX/CS190.1x/1T2015/
© The content is sourced from the web; copyright belongs to the original authors. We strive to credit authors and sources, and will remove any infringing material upon notification.
Architecture Digest
Focusing on Java backend development, covering application architecture from top-tier internet companies (high availability, high performance, high stability), big data, machine learning, Java architecture, and other popular fields.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.