การศึกษา10 คอร์สสอน Scala และ Apache Spark ออนไลน์ชั้นยอดที่นำไปใช้ได้จริง

10 คอร์สสอน Scala และ Apache Spark ออนไลน์ชั้นยอดที่นำไปใช้ได้จริง

Scala Programming Language หรือ Scala คือภาษาระดับสูงที่รวมทั้งฟีเจอร์ทางด้าน object-oriented programming และ functional programming ให้เป็นหนึ่งเดียว

ตัวภาษาใช้ระบบ Static Type System ซึ่งจะช่วยป้องกัน bugs ที่อาจจะเกิดขึ้นใน application ระดับสูง และยังสามารถใช้งานร่วม (Language interoperability) กับภาษายอดนิยมอย่าง Java ได้อีกด้วย

สำหรับสายงาน Data Science, Big Data หรือว่า Machine Learning แล้ว การใช้งาน Scala มักจะใช้ไปกับ Apache Spark (เรียกสั้นๆ ว่า Spark) ซึ่งก็คือ analytics engine ที่ใช้ในการประมวลผลข้อมูลจำนวนมาก (large-scale data processing)

จุดแข็งของ Apache Spark ที่น่าสนใจคือในเรื่อง Performance เพราะเป็น processing engine ที่รวดเร็วมาก นอกจากนี้ยังสามารถ run ได้ในทุกที่ทุกแห่ง ไม่ว่าจะเป็นใน Hadoop, Kubernetes, Cloud, Mesos ฯลฯ

นักพัฒนายังมีตัวเลือกมากขึ้นด้วยเช่นกัน เพราะสามารถเขียน applications ได้ในหลายภาษาไม่ว่าจะเป็น Scala, Python, Java หรือ R

ในปัจจุบันการใช้งาน Apache Spark เพิ่มขึ้นอย่างรวดเร็วด้วยอัตราเติบโตถึง 67% แบบปีต่อปีไปจนถึงปี ค.ศ.2022 เลยทีเดียว (จากการประเมินของ marketanalysis.com) ทำให้ทั้ง Scala และ Apache Spark เป็นทักษะที่น่าสนใจยิ่งที่เหล่านักพัฒนาควรจะเรียนรู้และเก็บไว้ในคลังทักษะของคุณ

ดังนั้นในโพสนี้ผมจะมาแนะนำคอร์สสอน Scala และ Apache Spark ออนไลน์ที่น่าสนใจครับ ซึ่งคุณจะเรียนได้ทุกที่ทุกแห่ง และไม่จำเป็นต้องไปเรียนที่สถาบันอีกต่อไปครับ

ข้อควรทราบ:

  1. ราคาและเงื่อนไขของแต่ละคอร์สอาจจะเปลี่ยนแปลงไปได้ ก่อนที่จะซื้อผมแนะนำให้ตรวจสอบอีกครั้งที่เว็บไซต์ผู้ให้บริการครับ
  2. ในทุกคอร์สสอน Scala และ Apache Spark คุณจะถูกคาดหวังให้เคยเขียนโปรแกรมมาก่อนแล้วในระดับหนึ่ง ยกตัวอย่างเช่น Java หรือ Python เป็นต้น ดังนั้นถ้ามือใหม่แกะกล่องเลย คุณจะยังไม่พร้อมสำหรับการเรียนเนื้อหาเหล่านี้ครับ

แนะนำแพลตฟอร์ม

แพลตฟอร์มที่ผมจะกล่าวถึงมีด้วยกัน 3 แพลตฟอร์มด้วยกัน นั่นคือ Udemy, Coursera และ Edureka ถ้าใครอยากทราบรายละเอียดเพิ่มเติม อย่างเช่นข้อดีข้อเสีย โปรดอ่านเพิ่มเติมได้ที่บทความแพลตฟอร์มเรียนออนไลน์ครับ

ส่วนอีกแพลตฟอร์มหนึ่งหรือ Datacamp นั้นผมได้ระบุลงไปในโพสนี้แล้วครับ

Udemy

คอร์สที่ 1-6 อยู่ในแพลตฟอร์มของ Udemy

แพลตฟอร์มที่ผมจะกล่าวถึงเป็นตัวแรกคือ Udemy เพราะเป็นแพลตฟอร์มคอร์สเรียนออนไลน์ที่น่าจะใหญ่ที่สุดในโลกแล้วในปัจจุบัน ทำให้คุณหาคอร์สสอน Scala และ Apache Spark คุณภาพเยี่ยมได้ไม่ยากเลยละครับ

สิ่งหนึ่งที่อยากจะเน้นก็คือ เวลาซื้อคอร์สของ Udemy ควรซื้อในช่วงลดราคานะครับ เพราะจะได้ส่วนลดมากถึง 90% ทำให้คุณได้คอร์สไม่กี่ร้อยบาทเท่านั้นเอง การลดราคานี้จะมีทุกสัปดาห์เลยก็ว่าได้

สมมติว่าคอร์สอยู่ราคาเต็ม (อย่างในรูปด้านล่าง) ผมแนะนำให้รอ 2-5 วัน หรือสมัครแจ้งเตือนกับ Victory Tale ครับ

เราไปดูกันดีกว่าคอร์สสอน Scala และ Apache Spark ที่น่าสนใจใน Udemy มีคอร์สไหนบ้าง

1. Scala & Functional Programming for Beginners

คอร์สสอน Scala Programming ที่จัดทำโดย Daniel Ciocîrlan วิศวกรซอฟต์แวร์ที่มีประสบการณ์การใช้งาน Scala และ JVM (Java Virtual Machine) มาอย่างยาวนาน ตัวเขาเองเคยได้ไปสอนให้กับทีมวิศวกรของ Adobe และ Apple ด้วยครับ

สำหรับคอร์สนี้จะเจาะลึก Scala อย่างเดียว (ไม่มีสอน Apache Spark) แต่คุณจะได้เรียนทักษะที่มีประโยชน์ต่อการใช้งาน Scala Framework ทุกตัวซึ่งรวมไปถึง Apache Spark ด้วยครับ

อย่างในรูปนี้ คอร์สจะไม่ลดราคา ถ้าเปิดเข้าไปเจอแบบนี้ ผมแนะนำให้รอ 2-5 วันครับ แต่ถ้าเปิดเข้าไปแล้ว คอร์สลดราคา ผมแนะนำให้ซื้อได้เลย

เนื้อหาที่คุณจะได้เรียนในคอร์สนี้ประกอบด้วย

  • Scala Basics อย่างเช่น Variables, Types, Expressions, Functions ฯลฯ
  • Object-Oriented Programming (OOP) อย่างเช่น Inheritance ใน Scala
  • Functional Programming ใน Scala ยกตัวอย่างเช่น Sequences, Tuples, Maps, Anonymous Functions
  • Pattern Matching
  • Project: A Small File System – โปรเจคที่คุณจะได้ลองใช้ Scala ในการสร้างขึ้นมาครับ
  • และอื่นๆ อีกมากมาย

โดยรวมแล้วคุณจะได้เรียนเนื้อหา Scala ที่เป็นการผสมผสานระหว่างทฤษฎีและปฏิบัติอย่างลงตัว ครูผู้สอนจะแยกส่วน Scala อย่างเป็นระบบเพื่อให้คุณเข้าใจตัวโครงสร้างของภาษามากขึ้น หลังจากที่คุณเข้าใจทฤษฎีทั้งหมดแล้ว คุณก็จะได้ลอง code ใน Scala ครับ

รวมแล้วคอร์สนี้มีเนื้อหาทั้งหมด 15.5 ชั่วโมง และได้คะแนนรีวิวสูงถึง 4.6/5.0 จากนักเรียน 24,600 คนครับ

2. Advanced Scala and Functional Programming | Rock the JVM

คอร์สสอน Scala ที่จัดทำโดย Daniel Ciocîrlan คนเดิม แต่เพิ่มเติมคือเนื้อหาที่สูงมากขึ้นโดยเฉพาะในส่วนของ Functional Programming ครับ คุณจะได้ลองใช้งาน framework และ API ที่ซับซ้อนขึ้นไปกว่าคอร์สแรกครับ

สิ่งที่คุณจะได้เรียนในคอร์สนี้ได้แก่

  • Advanced Scala – เนื้อหาการใช้งาน Scala ระดับสูง อาทิเช่น Advanced Pattern Matching
  • Advanced Functional Programming อย่างเช่นคอนเซปต์อย่าง Functional Collections, Currying, Lazy Evaluation, Monads
  • Functional Concurrent Programming อย่างเช่น Parallel Programming, Concurrency, Futures and Promises
  • เจาะลึก Implicits และ Type Classes รวมไปถึง Conversions ระหว่าง Java และ Scala
  • เจาะลึกทุกสิ่งที่เกี่ยวข้องกับ Type System ใน Scala อย่างเช่น Variance, Inner Types, Structural Types, Self Types, Recursive Types
  • และอื่นๆ อีกมากมาย

โครงสร้างของคอร์สนี้จะเหมือนกับคอร์สที่แล้วในแง่ที่ว่าคุณจะได้รับการอธิบายในส่วนของทฤษฎีอย่างละเอียด ตามมาด้วยการเรียนภาคปฏิบัติใน Live Code รวมแล้วคอร์สนี้จะมีเนื้อหากว่า 14 ชั่วโมงด้วยกันครับ

อย่างไรก็ดีในการเรียนคอร์สนี้ คุณจะต้องผ่านคอร์สแรกมาก่อน หรือมิฉะนั้นก็ต้องมีความรู้พื้นฐานของ Scala และ Functional Programming มาเป็นอย่างดีครับ มือใหม่ไม่สามารถเรียนคอร์สนี้ได้ครับ

คะแนนรีวิวคอร์สนี้ได้ไปสูงมากนั่นคือ 4.8/5.0 จากนักเรียนทั้งหมด 11,800 คนครับ

3. Spark 3.0 & Big Data Essentials with Scala | Rock the JVM

คอร์สนี้เป็นคอร์สสอน Apache Spark ที่จัดทำโดย Daniel Ciocîrlan เช่นเดียวกับคอร์สที่ 1-2 ซึ่งทางผู้สอนเองก็แจ้งว่าคุณก็ควรเรียนคอร์สที่ 1-2 มาก่อนเช่นกัน เพื่อที่จะเข้าใจการเขียนโปรแกรมโดยใช้ Scala มาก่อนครับ

ภายในคอร์สนี้ ผู้สอนของคุณจะสอนคุณถึงการใช้งาน Apache Spark โดยประกอบด้วยเนื้อหาดังต่อไปนี้

  • Spark Structured API: DataFrames (แนะนำเนื้อหา DataFrames, Data Sources, Columns & Expressions, DataFrame Aggregations ฯลฯ)
  • Spark Data Types + Managing Nulls
  • Spark SQL สำหรับการทำ Data Processing
  • RDD และการทำงานกับ Low-level Spark APIs
  • ประยุกต์ใช้ Big Data Principles
  • และอื่นๆ อีกมากมาย

โดยรวมแล้วคอร์สนี้ถือว่าเป็นคอร์สสอน Apache Spark ระดับเบื้องต้นที่ยอดเยี่ยม คุณจะได้ลองฝึกฝนการทำ Spark DataFrames operations จากตัวอย่างและแบบฝึกหัดกว่า 100 ชิ้น ซึ่งจะช่วยเพิ่มความมั่นใจของคุณในฐานะ Spark Programmer อย่างมากเลยครับ

คอร์สนี้ได้คะแนนรีวิวสูงถึง 4.7/5.0 จากผู้เรียนกว่า 3,600 คน

4. Apache Spark with Scala – Hands On with Big Data!

คอร์สนี้เป็นคอร์สสอน Apache Spark โดยใช้ Scala ที่จัดทำโดย Frank Kane วิศวกรที่มีสิทธิบัตรในวงการ data mining และ machine learning รวมไปถึง distributed computing ถึง 17 รายการด้วยกัน และในปัจจุบันเขาเป็นเจ้าของบริษัทอย่าง Sundog Software ที่พัฒนาเทคโนโลยีอย่าง VR ครับ ดังนั้นความรู้ของเขาในสาย data นั้นมากมาย เขาเองก็พร้อมแล้วที่จะถ่ายทอดมันให้กับคุณครับ

เนื้อหาส่วนใหญ่ในคอร์สนี้จะเน้นไปที่การใช้ Apache Spark กับ Scala ซึ่งในคอร์สจะมีสอน Scala ในระดับเบื้องต้น แต่ผมมองว่าถ้าคุณเรียน Scala จากที่อื่นมาก่อน (อย่างเช่นคอร์สที่ 1) น่าจะเป็นตัวเลือกที่ดีกว่าครับ เพราะที่สอนในคอร์สนี้มีแค่ 1 ชั่วโมงเท่านั้น ซึ่งอาจจะสั้นเกินไปครับ

สิ่งที่คุณจะได้เรียนในคอร์สนี้ได้แก่

  • แนะนำ Apache Spark + เนื้อหา Scala ที่จำเป็นต้องใช้
  • การใช้ Resilient Distributed Datasets (RDDs)
  • การใช้ SparkSQL, DataFrames และ DataSets
  • Run Spark บน Cluster
  • Machine Learning กับ Spark ML
  • แนะนำ Spark Streaming เบื้องต้น และ GraphX
  • และอื่นๆ อีกมากมาย

จุดแข็งสำคัญของคอร์สนี้คือสารพัดตัวอย่างที่ผู้สอนจะนำมาให้คุณเข้าใจถึงการใช้ Scala อาทิเช่นการจัดการข้อมูลคะแนน Ratings ของภาพยนตร์เรื่องต่างๆ หรือแม้กระทั่งวิจัย Superhero จากจักรวาล Marvel รวมแล้วกว่า 20 ตัวอย่างด้วยกัน

นอกจากนี้คุณยังจะได้เขียนและ run code ต่างๆ เพื่อวิเคราะห์ข้อมูลบน Amazon Elastic MapReduce อีกด้วยครับ

โดยรวมแล้วคอร์สนี้มีเนื้อหาทั้งหมด 9 ชั่วโมง นักเรียนที่ซื้อคอร์สไปแล้วมากถึง 62,000 คน และได้คะแนนรีวิวไป 4.5/5.0 เลยทีเดียวครับ

สำหรับใครที่อยากเรียน Apache Spark กับ Python มากกว่ากับ Scala ผมแนะนำให้ลงอีกคอร์สนึงนั่นคือ Taming Big Data with Apache Spark and Python – Hands On! ซึ่งผู้สอนจะเป็นคนเดียวกัน และเนื้อหาก็ใกล้เคียงกันกับคอร์สนี้ทุกประการ แต่แค่เปลี่ยนจากการใช้ Scala เป็น Python เท่านั้นเองครับ

5. Streaming Big Data with Spark Streaming & Scala – Hands On!

คอร์สนี้สอนโดย Frank Kane คนเดิม แต่เพิ่มเนื้อหา Apache Spark ที่ลงลึกกว่าเดิม นั่นคือจะเจาะลึกในส่วนของ Spark Streaming และการจัดการ Big Data นั่นเองครับ

สิ่งที่คุณจะได้เรียนได้แก่

  • ทบทวน Apache Spark และ Scala (เนื้อหาสั้นมากไม่ถึงชั่วโมง ควรจะเรียนคอร์สที่ 1 และ 3 มาก่อนครับ)
  • แนะนำคอนเซปต์ของ Spark Streaming และตัวอย่างที่น่าสนใจ (Twitter/Clickstream)
  • การทำ Integration กับระบบอื่นๆ อย่างเช่น Apache Kafka, Apache Flume, Cassandra และ Amazon Kinesis
  • Streaming K-Means Clustering และ Linear Regression
  • Spark Streaming in Production
  • สร้าง Spark Applications โดยใช้ Scala และเทรน Machine Learning Models
  • และอื่นๆ อีกมากมาย

นอกจากทฤษฎีและตัวอย่างที่มีให้เรียนมากมายในวีดิโอกว่า 6 ชั่วโมงแล้ว คุณจะได้เรียนการ deploy ตัว Spark Streaming Code ไปยัง Hadoop Cluster โดยใช้ Amazon Elastic MapReduce ครับ หลังจากที่คุณเรียนจบแล้ว คุณจะสร้าง Spark Streaming Scripts ใน Scala ได้อย่างคล่องแคล่วครับ

คอร์สนี้ได้คะแนนรีวิวไป 4.6/5.0 จากผู้เรียนมากกว่า 20,000 คนครับ

6. Apache Spark for Java Developers

คอร์สนี้จะสอนการใช้งาน Apache Spark กับ Java (ไม่ได้ใช้ Scala) ดังนั้นจะเหมาะเป็นพิเศษสำหรับนักพัฒนา Java ที่ต้องการเรียน Apache Spark แต่ไม่ต้องการเรียนภาษาใหม่ครับ ตัวคอร์สจัดทำโดย Virtual Pair Programmers ทีมงานนักพัฒนาและวิศวกรซอฟต์แวร์ที่แต่ละคนมีประสบการณ์ทางด้านนี้มาถึง 20 ปีครับ

สำหรับเนื้อหาจะยาวถึง 21.5 ชั่วโมง โดยจะครอบคลุมสิ่งต่อไปนี้

  • RDDs, Mapping and Outputting, Tuples
  • FlatMaps and Filters
  • Sorts and Coalesce, Joins
  • SparkSQL อย่างเช่น Data Formatting, DataFrames API
  • SparkML – Linear Regression Models, Feature Selection. Logistic Regression, Decision Trees, K Means Clustering ฯลฯ
  • Spark Streaming กับ Apache Kafka
  • และอื่นๆ อีกมากมาย

สำหรับคอร์สนี้คุณไม่จำเป็นต้องมีพื้นฐานใดๆ ทั้งสิ้นนอกจาก Java ครับ ทั้งนี้คุณจะได้ใช้ Java 8 ในการ coding เพราะ Apache Spark ยังไม่ support ตัว Java 9 หรือสูงกว่าครับ

คะแนนรีวิวของคอร์สนี้ได้ไป 4.5/5.0 จากนักเรียนทั้งหมด 7,800 คน

Coursera

คอร์สที่ 7 อยู่ในแพลตฟอร์มของ Coursera

7. Functional Programming in Scala Specialization

หลักสูตรนี้จัดทำโดย École Polytechnique Fédérale de Lausanne มหาวิทยาลัยชื่อดังของประเทศสวิสเซอร์แลนด์ โดยในหลักสูตรจะครอบคลุมทั้งเนื้อหา Scala และ Apache Spark แบบหมดจดครับ

คอร์สย่อยในหลักสูตรมีทั้งหมด 5 คอร์ส ประกอบด้วย

  1. Functional Programming Principles in Scala – เรียนพื้นฐานของ Scala และหลักการของ Functional Programming รวมไปถึงวิธีการประยุกต์ใช้จริง อาทิเช่น Conditionals, Functions, Recursion, Higher Order Functions, Data and Abstraction, Scala Type System
  2. Functional Program Design in Scala – เรียนการใช้ Functional Programming ในการออกแบบ apps ที่ใหญ่และซับซ้อนขึ้น รวมไปถึงคอนเซปต์ที่สำคัญอย่างเช่น Lazy Evaluation, Monads รวมไปถึงการใช้ Infinite Data Structures และ Functional Reactive Programming
  3. Parallel Programming – คอร์สนี้จะสอนพื้นฐานของ Parallel Programming ตั้งแต่ Task Parallelism จนถึง Data Parallelism และ parallel collections
  4. Big Data Analysis with Scala and Spark – เจาะลึกการใช้งาน Apache Spark และ Scala ในการจัดการข้อมูล และการทำ data analysis
  5. Capstone – นำความรู้ทั้งหมดจากทั้ง 4 คอร์สมาสร้าง application ขนาดใหญ่ที่ใช้ข้อมูล real-world data

สำหรับหลักสูตรนี้ คุณควรจะมีพื้นฐานการเขียนโปรแกรมมาก่อน 1 ปี โดยเฉพาะ Java หรือ C# แต่ Python, JavaScript หรือว่า Ruby ก็สามารถเรียนได้เช่นกันครับ

ค่าเรียนคอร์สนี้จะอยู่ที่ $49 หรือประมาณ 1,470 บาทต่อเดือน โดยทางมหาวิทยาลัยแจ้งว่าคุณจะเรียนจบใน 7 เดือน ถ้าคุณใช้เวลาเรียน 7 ชั่วโมงต่อสัปดาห์ครับ ดังนั้นค่าเรียนทั้งหมดจะอยู่ที่ 10,290 บาทครับ แต่แน่นอนว่าอาจจะน้อยกว่านี้ได้ ถ้าคุณเรียนจบเร็วนั่นเอง

Coursera Plus

อีกทางเลือกหนึ่งที่น่าสนใจก็คือการใช้บริการ Coursera Plus โดยค่าใช้จ่ายจะอยู่ที่ $399 หรือประมาณ 11,970 บาทต่อปี (เฉลี่ยแล้ว $33.25 หรือประมาณ 1,000 บาทต่อเดือน) แต่คุณจะเข้าถึงหลักสูตรด้านบนได้พร้อมกับคอร์สและหลักสูตรอื่นๆ กว่า 3,000 คอร์สด้วยกันครับ

ถ้าคิดในเรื่องความคุ้มค่าแล้ว ผมบอกเลยว่าการสมัคร Coursera Plus คุ้มกว่าการสมัครสมาชิกคอร์สด้านบนแน่นอน เพราะนอกจากจะได้เข้าถึงคอร์สอื่นเพิ่มแล้ว ค่าเรียนต่อเดือนก็ยังถูกกว่าอีกด้วย

นอกจากนี้ถ้าคุณลองพิจารณาดูว่า การเรียน 7 ชั่วโมงต่อสัปดาห์ให้จบภายใน 7 เดือนนั้นไม่ใช่เรื่องง่ายเลย โดยเฉพาะถ้าคุณทำงานประจำ คุณมีโอกาสที่จะต้องเสียค่าเรียนอีก 1-3 เดือน ซึ่งนั่นจะแพงกว่าการสมัคร Coursera Plus ไปแล้วเรียบร้อย

สำหรับใครที่ชอบเรียนทักษะ IT อันหลากหลาย ผมยิ่งแนะนำให้สมัครไปเลยครับ เพราะนอกจาก Scala และ Spark แล้ว ในแพลตฟอร์มของ Coursera ยังมีหลักสูตรและคอร์สชั้นยอดอีกมากมายให้คุณได้เรียนครับ

Datacamp

Datacamp เป็นแพลตฟอร์มออนไลน์ที่สอนทักษะต่างๆ ในสาขา Data Science โดยตรง ไม่ว่าจะเป็น Python หรือ R Programming โดย Scala ก็เป็นหนึ่งในนั้นครับ

รูปแบบการสอนของ Datacamp จะต่างจากแพลตฟอร์มอื่นอย่างชัดเจน นั่นคือจะเป็นแบบ Interactive กล่าวคือคุณจะได้รับคำอธิบายในเนื้อหาต่างๆ รวมไปถึงคำถามที่ให้คุณหาคำตอบ หลังจากนั้นคุณจะต้องลอง coding จนหาคำตอบออกมาให้ได้ครับ เมื่อได้คำตอบออกมาก็จะเป็นคะแนนเก็บเหมือนกับทำ Quest ในเกมแบบนั้นเลยครับ

ตัวอย่างการเรียนกับ Datacamp

จุดแข็งอีกอย่างหนึ่งของ Datacamp คือคุณจะเรียนทุกอย่างผ่านทาง Browser ดังนั้นไม่จำเป็นต้อง install ใดๆ ทั้งสิ้น นอกจากนี้การเรียนผ่าน app ยังสะดวกสบายมากๆ ด้วยครับ

8. คอร์สสอน Apache Spark และ Scala ของ Datacamp

Datacamp จะใช้วิธีแบ่งคอร์สออกเป็นคอร์สเล็กๆ ที่ให้คุณค่อยๆ เรียนไปตามลำดับ โดยคอร์สทั้งหมดมี 7 คอร์สด้วยกัน ส่วนมากจะเป็นคอร์สสอน Apache Spark ใน Python ครับ และไม่มีการใช้งาน Apache Spark ใน Scala เลย สำหรับ Scala นั้นมีคอร์สเดียวเท่านั้นครับ

คอร์สของ Datacamp ที่เกี่ยวข้องได้แก่

  1. Introduction to Scala – คอร์สสอน Scala คอร์สเดียวของ Datacamp
  2. Introduction to Spark SQL in Python
  3. Introduction to Spark with sparklyr in R – คอร์ศนี้จัดว่าหาเรียนยากพอสมควร เพราะเป็นการใช้งาน Apache Spark ใน R
  4. Introduction to PySpark (PySpark คือ Python API สำหรับ Apache Spark ครับ ซึ่งก็เป็นการร่วมมือกันระหว่าง Apache Spark และ Python นั่นเอง)
  5. Machine Learning with PySpark
  6. Cleaning Data with PySpark
  7. Big Data Fundamentals with PySpark

แต่ละคอร์สนี้จะมีความยาวไม่มากนัก โดยทาง Datacamp แจ้งว่าใช้เวลาคอร์สละ 3-4 ชั่วโมง แต่จากที่ผมเรียนจริงๆ ถือว่าน้อยกว่านั้นพอสมควรเลยครับ เรื่องความละเอียดของเนื้อหา ผมมองว่ายังสู้ Udemy และ Coursera ไม่ได้ แต่ถ้าเปรียบเทียบกับความสนุกกัน ผมบอกเลยว่า Datacamp กินขาดครับ

สำหรับในเรื่องราคา Datacamp คิดราคาเป็นแบบสมาชิกรายเดือน โดยประกอบด้วย 2 แพลนหลักๆ ได้แก่

  • Premium – $12.42 หรือประมาณ 370 บาทต่อเดือน
  • Teams – $25 หรือประมาณ 750 บาทต่อเดือน

สมาชิกแบบ Premium นั้นเข้าถึงคอร์สและโปรเจคทุกอย่างบนแพลตฟอร์ม ดังนั้นคุณไม่มีความจำเป็นต้องสมัครแพลน Teams เลยครับ แค่ Premium ก็เพียงพอแล้วอย่างแน่นอน

ทั้งนี้ผมมองว่า Datacamp เหมาะกับใครที่ต้องการเรียน Data Science แบบองค์รวมเท่านั้นถึงจะคุ้มค่า แต่ถ้าคุณต้องการเรียนแค่ Scala หรือ Apache Spark การเรียนกับ Udemy และ Coursera น่าจะดีกว่า เพราะเนื้อหาลงลึกกว่าอย่างมีนัยสำคัญครับ

Edureka

คอร์สที่ 9 อยู่ในแพลตฟอร์มของ Edureka

9. Apache Spark and Scala Certification Training

คอร์สสอน Apache Spark และ Scala ของ Edureka น่าจะเป็นคอร์สที่ละเอียดที่สุดในโลกออนไลน์เลยก็ว่าได้ เพราะประกอบด้วยเนื้อหามากถึง 36 ชั่วโมงด้วยกัน โดยคุณจะได้เรียนสิ่งต่อไปนี้ในคอร์สครับ

  • Introduction to Big Data Hadoop and Spark – สอนพื้นฐานของ Hadoop และ Apache Spark ไม่ว่าจะเป็น HDFS, Hadoop Cluster Architecture ฯลฯ
  • Introduction to Scala for Apache Spark – สอนพื้นฐานของ Scala เช่น Operations, Variable Types, Control Structures, Functions ฯลฯ
  • Functional Programming and OOPs Concepts in Scala – เจาะลึก Functional Programming, Functions และ Classes ต่างๆ
  • Deep Dive in to Apache Spark Framework – สอนวิธีการสร้าง Spark Applications, การทำ data ingestion โดยใช้ Sqoop
  • Playing with Spark RDDs – เจาะลึกในส่วนของ RDDs และการใช้งานต่างๆ
  • DataFrames and Spark SQL – อธิบาย SparkSQL อย่างละเอียด เช่น dataFrames, Datasets ใน SparkSQL และ Operations ต่างๆ
  • Machine Learning Using Spark MLlib – เจาะลึกในส่วนของ Machine Learning ตั้งแต่คอนเซปต์ทั่วไปไปจนถึง Algorithms ต่างๆ
  • Apache Kafka and Apache Flume – ส่วนนี้จะอธิบาย Apache Kafka และ Apache Cluster รวมไปถึง Apache Flume คุณจะได้เรียนรู้โครงสร้างและวิธีการ integrate กับ Apache Kafka สำหรับ event processing
  • Apache Spark Streaming – สอน Spark Streaming ซึ่งจะสร้าง scalable applications โดยคุณจะได้เรียนรู้ streaming operators ที่ใช้งานบ่อยอย่างเช่น Sliding Window Operators เป็นต้น นอกจากนี้คุณยังจะได้เรียนการทำ streaming data sources ซึ่งจะช่วยให้คุณสร้าง spark streaming apps ที่ใช้งานได้จริง

ในส่วนของเนื้อหานั้น เราคงปฏิเสธไม่ได้เลยว่าคอร์สนี้เยี่ยมยอดจริงๆ ทั้งนี้ Edureka มีให้คุณได้ทดลองเรียนก่อนด้วย (คลิก play ได้เลยตามด้านล่าง) ผมแนะนำให้ลองเรียนก่อนครับเพราะผู้เรียนบางคนเคยมีปัญหากับสำเนียงของครูของทางสถาบันมาแล้ว

สำหรับในเรื่องราคา คอร์สนี้จะอยู่ที่ $449 หรือประมาณ 13,470 บาทครับ ถ้าซื้อไปแล้ว ผมแนะนำให้ตรวจสอบคุณภาพให้ดีครับ ถ้าไม่ชอบก็รีบแจ้งขอคืนเงิน เพราะการคืนคอร์สของ Edureka สามารถขอคืนได้ในเวลา 3 วันเท่านั้นครับ

10. ProjectPro (ระดับสูง)

สำหรับใครที่ใครที่ผ่านคอร์สเรียน Scala และ Spark มาแล้ว แต่ยังขาดความมั่นใจที่จะทำโปรเจคต่างๆ ผมแนะนำเป็นอย่างยิ่งให้คุณพิจารณาสมัครสมาชิกของ ProjectPro ครับ ทั้งนี้ Project Pro เป็นเว็บไซต์ที่รวบรวมโปรเจคของสาย data science ไว้มากกว่า 120 ชิ้นด้วยกัน และเปิดโอกาสให้คุณได้ฝึกฝนโดยปราศจากแรงกดดันจากบริษัทหรือลูกค้าครับ เมื่อคุณทำเสร็จแล้ว คุณก็สามารถนำไปใส่ใน Github Portfolio ของคุณได้อีกด้วย

สำหรับ Spark นั้น โปรเจคมีหลากหลายมาก อาทิเช่น

  • Build a Real-Time Dashboard with Spark, Grafana, and InfluxDB – สำหรับโปรเจคนี้ คุณจะได้สร้าง dashboard เพื่อวิเคราะห์ผู้เข้าใช้งานให้กับบริษัท eCommerce แห่งหนึ่ง โดยใช้ Spark, Grafana และ InfluxDB
  • Spark Project-Measuring US Non-Farm Payroll Forex Impact – ในโปรเจคนี้ คุณจะได้ใช้ Spark ในการวิเคราะห์ผลกระทบของข้อมูลการจ้างงาน (Non-farm Payroll) ที่มีต่อตลาดเงินตราระหว่างประเทศ
  • Chicago Crime Data Analysis on Apache Spark – คุณจะได้ใช้ Spark ในการทำ data analysis ตัวฐานข้อมูลของอาชญากรรมในเมืองชิคาโกของประเทศสหรัฐอเมริกา

ทั้งนี้ ProjectPro ไม่ได้ให้แค่ Project เปล่าๆ แล้วให้คุณไปลุยเองครับ แต่จะให้วิดีโอเฉลยขั้นตอนการทำโปรเจคแต่ละชิ้นอย่างละเอียด (ยาว 3-5 ชั่วโมงต่อโปรเจค) รวมไปถึง Source code ติดมาด้วย และถ้าคุณติดขัดตรงไหนก็สามารถสอบถามผู้เชี่ยวชาญได้ ดังนั้นคุณไม่ต้องกังวลว่าถ้าทำโปรเจคไม่ได้แล้วจะไปปรึกษาใครที่ไหนครับ

สนนราคาค่าสมาชิกอยู่ที่ $780 หรือประมาณ 23,400 บาทต่อปีครับ ถ้าสนใจก็สามารถสมัครได้เลยตามลิงค์ด้านล่าง

หลังจากสมัครแล้ว คุณมีสิทธิ์ขอเงินคืนทุกบาททุกสตางค์ได้ในเวลา 90 วันครับ เพราะฉะนั้นถ้าเรียนไปแล้วไม่ชอบก็ขอเงินคืนได้ทันที ความเสี่ยงในการสมัครจึงเรียกได้ว่าไม่มีครับ

บทความการศึกษา

Victory Tale ไม่อนุญาตให้คัดลอกบทความไปโพสที่ใดทุกกรณี การฝ่าฝืนมีโทษทางกฎหมาย

error: Content is protected !!