Beginning Apache Spark | 3 Pdf

from pyspark.sql import SparkSession spark = SparkSession.builder .appName("MyApp") .config("spark.sql.adaptive.enabled", "true") .getOrCreate() 3.1 RDD – The Original Foundation RDDs (Resilient Distributed Datasets) are low‑level, immutable, partitioned collections. They provide fault tolerance via lineage. However, they are not recommended for new projects because they lack optimization.

Example:

from pyspark.sql.functions import udf def squared(x): return x * x beginning apache spark 3 pdf

from pyspark.sql.functions import window words.withWatermark("timestamp", "10 minutes") .groupBy(window("timestamp", "5 minutes"), "word") .count() 7.1 Data Serialization Use Kryo serialization instead of Java serialization: from pyspark

spark.stop()

df.createOrReplaceTempView("sales") result = spark.sql("SELECT region, COUNT(*) FROM sales WHERE amount > 1000 GROUP BY region") This makes Spark accessible to analysts familiar with SQL. 4.1 Reading and Writing Data Supported formats: Parquet, ORC, Avro, JSON, CSV, text, JDBC, and more. Example: from pyspark

query.awaitTermination() Structured Streaming uses checkpointing and write‑ahead logs to guarantee end‑to‑end exactly‑once processing. 6.4 Event Time and Watermarks Handle late data efficiently: