PySpark: Spark กับ Python

Big Data Fundamentals with PySpark

Upendra Devisetty

Science Analyst, CyVerse

ภาพรวมของ PySpark

  • Apache Spark เขียนด้วย Scala

  • เพื่อรองรับ Python ชุมชน Apache Spark จึงเปิดตัว PySpark

  • ความเร็วและพลังในการประมวลผลใกล้เคียงกับ Scala

  • API ของ PySpark คล้ายกับ Pandas และ Scikit-learn

Big Data Fundamentals with PySpark

Spark shell คืออะไร?

  • สภาพแวดล้อมแบบโต้ตอบสำหรับรันงาน Spark

  • เหมาะสำหรับการสร้างต้นแบบอย่างรวดเร็ว

  • Spark shell ช่วยให้โต้ตอบกับข้อมูลบนดิสก์หรือในหน่วยความจำได้

  • Spark shell มี 3 ประเภท:

    • Spark-shell สำหรับ Scala

    • PySpark-shell สำหรับ Python

    • SparkR สำหรับ R

Big Data Fundamentals with PySpark

PySpark shell

  • PySpark shell คือเครื่องมือบรรทัดคำสั่งที่ใช้ Python

  • PySpark shell ช่วยให้นักวิทยาศาสตร์ข้อมูลโต้ตอบกับโครงสร้างข้อมูลของ Spark ได้

  • PySpark shell รองรับการเชื่อมต่อกับคลัสเตอร์

Big Data Fundamentals with PySpark

ทำความเข้าใจ SparkContext

  • SparkContext คือจุดเริ่มต้นในการเข้าสู่โลกของ Spark

  • จุดเริ่มต้นนี้คือช่องทางเชื่อมต่อกับคลัสเตอร์ Spark

  • เปรียบได้กับกุญแจที่ใช้เปิดบ้าน

  • PySpark มี SparkContext เริ่มต้นชื่อ sc

1 https://www.datacamp.com/cheat-sheet/pyspark-cheat-sheet-spark-in-python
Big Data Fundamentals with PySpark

ตรวจสอบ SparkContext

  • เวอร์ชัน: ดึงข้อมูลเวอร์ชันของ SparkContext
sc.version
2.3.1
  • เวอร์ชัน Python: ดึงข้อมูลเวอร์ชัน Python ของ SparkContext
sc.pythonVer
3.6
  • Master: URL ของคลัสเตอร์ หรือสตริง local สำหรับรันในโหมด local ของ SparkContext
sc.master
local[*]
1 https://www.datacamp.com/cheat-sheet/pyspark-cheat-sheet-spark-in-python
Big Data Fundamentals with PySpark

โหลดข้อมูลใน PySpark

  • เมธอด parallelize() ของ SparkContext
rdd = sc.parallelize([1,2,3,4,5])
  • เมธอด textFile() ของ SparkContext
rdd2 = sc.textFile("test.txt")
1 https://www.datacamp.com/cheat-sheet/pyspark-cheat-sheet-spark-in-python
Big Data Fundamentals with PySpark

มาฝึกกันเถอะ!

Big Data Fundamentals with PySpark

Preparing Video For Download...