Chevron Left
Back to Big Data Analysis with Scala and Spark

Learner Reviews & Feedback for Big Data Analysis with Scala and Spark by École Polytechnique Fédérale de Lausanne

4.7
stars
2,383 ratings
494 reviews

About the Course

Manipulating big data distributed over a cluster using functional concepts is rampant in industry, and is arguably one of the first widespread industrial uses of functional ideas. This is evidenced by the popularity of MapReduce and Hadoop, and most recently Apache Spark, a fast, in-memory distributed collections framework written in Scala. In this course, we'll see how the data parallel paradigm can be extended to the distributed case, using Spark throughout. We'll cover Spark's programming model in detail, being careful to understand how and when it differs from familiar programming models, like shared-memory parallel collections or sequential Scala collections. Through hands-on examples in Spark and Scala, we'll learn when important issues related to distribution like latency and network communication should be considered and how they can be addressed effectively for improved performance. Learning Outcomes. By the end of this course you will be able to: - read data from persistent storage and load it into Apache Spark, - manipulate data with Spark and Scala, - express algorithms for data analysis in a functional style, - recognize how to avoid shuffles and recomputation in Spark, Recommended background: You should have at least one year programming experience. Proficiency with Java or C# is ideal, but experience with other languages such as C/C++, Python, Javascript or Ruby is also sufficient. You should have some familiarity using the command line. This course is intended to be taken after Parallel Programming: https://www.coursera.org/learn/parprog1....

Top reviews

CC
Jun 7, 2017

The sessions where clearly explained and focused. Some of the exercises contained slightly confusing hints and information, but I'm sure those mistakes will be ironed out in future iterations. Thanks!

BP
Nov 28, 2019

Excellent overview of Spark, including exercises that solidify what you learn during the lectures. The development environment setup tutorials were also very helpful, as I had not yet worked with sbt.

Filter by:

426 - 450 of 477 Reviews for Big Data Analysis with Scala and Spark

By Lucas F

May 15, 2017

Great lectures and great content!

By Роман В

Jun 24, 2018

I would like to learn some more.

By Hoon P

Apr 18, 2017

Learned Spark APIs, internals.

By Alberto P d P

May 12, 2017

Very good and concise course.

By Stéphane L

Oct 13, 2017

Very useful

By Srinivasu N

May 15, 2020

good

By Devaraja K R

Nov 13, 2018

Good

By Jim N

Apr 12, 2017

I understand that creating such a course is a tremendous amount of work. Let me congratulation the developers for all their hard work. I learned a lot. I'm glad I good the course, and I'm speechless that I finally finished it with a passing albeit imperfect score. This was the maiden voyage and it has some problems that should probably be corrected. That's my opinion.

There were generally two sets of challenges with each assignment exercise (1) undemanding the scala/big-data component, and (2) understand what's being asked. Sometimes the comment in the code are wrong or misleading. In particular in the 2nd set of exercises. The functions are very poorly specified, and there are no unit tests. there should be one or the other. Without a specification the user cannot write his own tests. In addition the 2nd exercise is intended to be do-able, but not efficiently until the user views week 3's videos. Because of this the text output is EXTREMELY verbose, making it impossible to read the error messages and understand them. When the user finally submits the assignment it fails and the grader gives misleading error messages. A failing unit test should at the very least explain what the test was, what the measured value was, and what was expected. This is especially true when the user is forbidden from looking at the actual testing code. An additional problem with exercise 2, is that the student is asked to calculate a particular percentage, but it is not explained what this is a percentage OF and there are several ways to interpret it. I didn't realize until wasting 2 weeks that there was an alternate interpretation which I could try.

In the 3rd exercise some of the comments in the code are wrong/misleading. Particularly with regard to classifiedColumns. comment #3 should read:* 3. other activities (leisure). These are the columns starting with “t02”, “t04”, “t06”, “t07”, “t08”, “t09”, “t10”, “t12”, “t13”, “t14”, “t15”, “t16” and “t18” BUT EXCLUDING those which are not part of the previous groups only. Otherwise the sentence is at best grammatically incorrect, and at worst misleading.

Another significant issue with this "Bit Data" course is that it assumes a user understands data base and can construct sql queries. Well, such background is not a prerequisite, but the student needs such information to successfully finish the exercises. I can understand the temptation by the course developers to include a section on SQLspark, as this is a very powerful set of spark libraries, but I believe it is beyond the prerequisites. I could not have finished the course if I hadn't had an SQL/data-base expert in the same office, who I could pose questions to.

I hope you find my comments useful.

By Harold O

Apr 16, 2017

This is a really excellent course. It deals with difficult content clearly, thoroughly and at a good pace. I would now be happy to use Spark in my work and feel I have a strong base to go on to further study. The exercises are well conceived covering fairly realistic use cases and are of about the right complexity. BUT, the feedback from the automatic grading really lets it down.

The auto grading tests are at too high a granularity, each test tests too many things. They give cryptic errors such as '<some random element> is empty'. You have no idea why the element is empty as the students are given a different dataset to the one tested on. Moreover, the failed tests are invariably nothing to do with learnt course content, but trivial rounding/formatting errors. The forums are a lifesaver, but I still spent a good two weekends working on bugs once I'd got the assignments 70% right. I would not recommend to a completist!

All the same, thanks to Heather for the wonderful work she's done putting it together and the excellent lectures she gives.

By Tom C

Apr 5, 2017

Good information, but a little rough around the edges, possibly due to being its first time out of the gate. Should be amplified with additional weeks of topics, e.g. on Spark Streaming, etc.

The Grader often returns opaque errors ("The Grader Failed"), when the actual problem was that the program ran out of memory or out of disk space. Grader can reject solutions, e.g. on the last assignment, if the programmer uses a different rounder implementation that returns subtly-different results, though the results print out as the same to the rounded degree of precision.

The Grader should be written to accept results that are "acceptably close" to the desired result, e.g. if the desired result is 34.1, to accept perhaps numbers between 34.099 and 34.101 -- perhaps consult with other course-runners for best practices here.

It might be helpful if the course provided a quick intro to running the assignments on DataBricks.

Good first effort.

By Aleksei M

Apr 19, 2017

The selection of content is very good. Yet, the course requires solid amount of polishing. I had a feeling that the real teaching started only in the 4th week, with lots of walking around the subject in the beginning. Worth to mention that in contrast to the first 3 courses in Scala specialisation this one is very heavy on visual aspect. You actually have to see the picture, as the voice channel just references it.

I can certainly recommend this course to people curious about data analysis. If you have had some experience and would like to try Spark or get better at it, then probably a good book can save your time.

By Sam Z

May 3, 2017

good: the concepts and on-hands skills taught by the course are good.

bad: the assignments. you cannot complete them just by following the course material, forcing you to waste quite a lot of time either: (1) learning from other sources; (2) looking for answers on the forum; or (3) brute forcing an answer till rage quitting :)

another bad point: the course is supposed to be focused on spark & big data analysis but it has 1-2 lectures (around 40-60 mins) pretty much devoted to showing some SQL. << this could be summarized to around 10-20 mins and/or give a link to quickly learn/try to some other source.

By Horia R

Apr 5, 2017

The course was interesting but it was clear that it is the first iteration. The course seems rushed, there are not very clear explanations on certain areas. Mostly, I had problems completing the assignments based on what I've learned during the lectures.

The previous courses had difficult assignments and you had to think about how you wanted to do something, here the problem was using the Spark API and understanding things which weren't explained in the lectures. Also, not all the areas of the assignments were described.

I am sure the course will become better in time.

By Allen S

Jul 11, 2017

It's a good course with still some room for improvement. Some lectures are too long and lack dynamism. The code of the assignments is surprisingly un-Scala-ish (var and for loops) for a Scala Specialisation course.

On the plus side we get a very good understanding of the basics of the Spark engine, the different APIs and the SQL module with hands on practice and a forum, all the benefits of a Coursera MOOC.

It's a good start for those who want to learn about Spark with Scala.

By Rob S

Oct 15, 2018

Lots of good knowledge in this course. Took a star away for the second exercise, which taught me more about how to pass the second exercise than anything useful. Took a second star away for not having test coverage that helps the students. You wind up submitting and waiting for the grader to run.

Yes - I know we can write our own tests, but in a graded course like this with sometimes unclear problems the tests can make all the difference in the world.

By Luis V

Sep 30, 2017

Good course but with many outdated concepts (mostly valid for Spark 1.x) and some pitfalls. Need many improvements, actualization and some reshaping in the distribution of the topics and sessions of the course. The topics left for the last week are some of the most important and central in current Spark 2.x and they include at least as many fundamental concepts as the rest of the course.

By Jeff B

Jul 5, 2017

The course content is fine, I did learn about Spark and how to work with it in Scala. The only disappointing thing is the homework assignments all use Spark in local mode, so it runs only on my laptop. I really wanted to see an assignment run in a real cluster, for real. So having some kind of cookbook recipe to follow for putting an assignment into Databricks would caus

By Vesa P

Jul 2, 2017

I learned a lot and the lectures were good.

The feedback from the automatic grader was sometimes absolutely awful. Cache an RDD in the main -> grader does not execute main -> OOM exception with no stack trace. I guess it prepares you for real life since EMR Spark also has absolutely useless log output if you go OOM.

Thank goodness for forums.

By Waqas A

Nov 15, 2020

Overall the course is a highlevel one and suitable for beginners. Specially the assignment of Stackoverflow requires the need of other course in the specialization. I think the instructor need to make assignments reated to the concepts discussed in the video. In the current scenario assignments require a through look at other resources.

By Lance F

Mar 27, 2017

This course took a lot of work to create. I would have like more quizzes during the lectures and the assignments to have walk through the steps more. The best course I have seen online is the Machine learning course by Andrew Ng. https://www.coursera.org/learn/machine-learning/home/welcome.

I did really enjoy the course. Thank you.

By Aaron S

Jun 4, 2017

Very average. Lectures could be a fraction of their current length, too much time spent rephrasing the same point (sometimes 3+ times!). It was driving me nuts, my mind would wonder if I didn't focus. It would be nice to have local tests that incrementally check progress similar to Andrew Ng's Machine Learning coursera.

By Rafael G

Mar 31, 2017

The material in this course is very interesting. However, there were a few important issues:

Lots of typos in the slides

Lots of problems with the assignments

At the end, I feel like a beta-tester (it would be OK if it was clearly stated and if we had a discount).

It could also be nice to add 1 or 2 weeks to this course.

By Korbinian K

Oct 10, 2017

I really liked the lectures and the good and fun explanations by the instructor. However, I found the assignments over complicated with unnecessary machine learning concepts involved. I think a course about Spark should be about core Spark ONLY and applications to machine learning should happen in a separate course.

By Andre H

Aug 5, 2017

The material of the fourth week is quite dense, this could be split over two weeks (including splitting it into two exercises). The exercise of the fourth week is quite a dissatisfying experience, there is too little detail in the error messages about what failed for students to improve their solution.

By Jeni R

Nov 29, 2019

It felt like the course material skipped over a great deal of syntax and how-to. It was useful for concepts; but I found that I had to dig a great deal to be able to complete the assignments and that there is a lot of folklore in stackOverflow that potentially send you in a wrong direction.