Spark SQL

Python Spark SQL 入門

Mark Plutowski Phd

Data Scientist

建立 SQL 資料表並查詢

Pyspark Shell 游標

Python Spark SQL 入門

從檔案載入 dataframe

df = spark.read.csv(filename)
df = spark.read.csv(filename, header=True)
Python Spark SQL 入門

建立 SQL 資料表並查詢

df.createOrReplaceTempView("schedule")

spark.sql("SELECT * FROM schedule WHERE station = 'San Jose'") .show()
+--------+--------+-----+
|train_id| station| time|
+--------+--------+-----+
|     324|San Jose|9:05a|
|     217|San Jose|6:59a|
+--------+--------+-----+
Python Spark SQL 入門

檢視資料表綱要

result = spark.sql("SHOW COLUMNS FROM tablename")
result = spark.sql("SELECT * FROM tablename LIMIT 0")
result = spark.sql("DESCRIBE tablename")
result.show()
print(result.columns)
Python Spark SQL 入門

Frame

Python Spark SQL 入門

DataFrame

Python Spark SQL 入門

表格資料

+--------+-------------+-----+
|train_id|      station| time|
+--------+-------------+-----+
|     324|San Francisco|7:59a| 
|     324|  22nd Street|8:03a|
|     324|     Millbrae|8:16a|
|     324|    Hillsdale|8:24a|
|     324| Redwood City|8:31a|
|     324|    Palo Alto|8:37a|
|     324|     San Jose|9:05a|
|     217|       Gilroy|6:06a|
|     217|   San Martin|6:15a|
|     217|  Morgan Hill|6:21a|
|     217| Blossom Hill|6:36a|
|     217|      Capitol|6:42a|
|     217|       Tamien|6:50a|
|     217|     San Jose|6:59a|
+--------+-------------+-----+
Python Spark SQL 入門

兩個 DataFrame

Python Spark SQL 入門

兩個 DataFrame 串接

Python Spark SQL 入門

一個 DataFrame

Python Spark SQL 入門

分割 DataFrame 1

Python Spark SQL 入門

分割 DataFrame 2

Python Spark SQL 入門

分割 DataFrame 3

Python Spark SQL 入門

分割 DataFrame 4

Python Spark SQL 入門

分割 DataFrame 5

Python Spark SQL 入門

分割 DataFrame 6

Python Spark SQL 入門

分散式分割的 DataFrame

Python Spark SQL 入門

SQL

Python Spark SQL 入門

結構化查詢語言

Python Spark SQL 入門

查詢

Python Spark SQL 入門

分散式資料

Python Spark SQL 入門

分散式資料 + 查詢

Python Spark SQL 入門

載入分隔文字

將逗號分隔的檔案 trainsched.txt 載入成名為 df 的 dataframe:

df = spark.read.csv("trainsched.txt", header=True)
Python Spark SQL 入門

載入分隔文字

df = spark.read.csv("trainsched.txt", header=True)
df.show()
+--------+-------------+-----+
|train_id|      station| time|
+--------+-------------+-----+
|     324|San Francisco|7:59a|
|     324|  22nd Street|8:03a|
|     324|     Millbrae|8:16a|
|     324|    Hillsdale|8:24a|
|     324| Redwood City|8:31a|
|     ...|          ...|  ...|
|     217| Blossom Hill|6:36a|
|     217|      Capitol|6:42a|
|     217|       Tamien|6:50a|
|     217|     San Jose|6:59a|
+--------+-------------+-----+
Python Spark SQL 入門

Pyspark Shell

Python Spark SQL 入門

Pyspark Shell 游標

Python Spark SQL 入門

Pyspark Shell

Python Spark SQL 入門

Pyspark Shell 游標

Python Spark SQL 入門

Pyspark Shell

Python Spark SQL 入門

Python Spark SQL 入門

Pyspark Shell

Python Spark SQL 入門

Pyspark Shell 游標

Python Spark SQL 入門

Pyspark Shell

Python Spark SQL 入門

Pyspark Shell 游標

Python Spark SQL 入門

Pyspark Shell

Python Spark SQL 入門

Pyspark Shell 游標

Python Spark SQL 入門

一起來練習吧!

Python Spark SQL 入門

Preparing Video For Download...