PySpark入門

PySpark入門

Benjamin Schmidt

Data Engineer

講師の紹介

  • PySparkで約10年のデータ経験
  • 機械学習、ETLなどでPySparkを活用

  • 新ツールの指導に情熱あり

-Ben Schmidt

PySpark入門

PySparkとは

  • 分散処理:クラスターで大規模データを処理

  • CSV、Parquet、JSONなど多様な形式に対応

  • SQL統合:Python/SQLの両方でクエリ可能

  • 大規模でも高速に最適化

データエコシステム

PySpark入門

PySparkの主な用途

  • ビッグデータ分析

  • 分散データ処理

  • リアルタイムストリーミング

  • 大規模データでの機械学習

  • ETL・ELTパイプライン

  • 多様なデータソース

    1. CSV
    2. JSON
    3. Parquet
    4. そのほか多数
PySpark入門

Sparkクラスター

マスターノード

  • クラスター管理、タスク調整、ジョブのスケジューリング

ワーカーノード

  • マスターからのタスクを実行
  • 計算を実施し、データをメモリまたはディスクに保存

マスターノード

ワーカーノード

PySpark入門

SparkSession

  • SparkSessionはSparkクラスターへの入口で、PySpark利用に必須です。
# Import SparkSession
from pyspark.sql import SparkSession

# Initialize a SparkSession
spark = SparkSession.builder.appName("MySparkApp").getOrCreate()

$$

  • .builder() セッションを設定
  • getOrCreate() 新規作成または取得
  • .appName() 複数セッションの管理に役立つ
PySpark入門

PySparkのDataFrame

  • 他のDataFrameと同様だが
  • PySpark向けに最適化
# Import and initialize a Spark session
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName("MySparkApp").getOrCreate()

# Create a DataFrame
census_df = spark.read.csv("census.csv",
                ["gender","age","zipcode","salary_range_usd","marriage_status"])

# Show the DataFrame
census_df.show()

PySpark入門

演習に進みましょう!

PySpark入門

Preparing Video For Download...