CertMaster

🧱 Apache Spark Fundamentals

DataFrame API, Spark SQL, transformations, actions, optimizatsiya

Databricks Data Engineer · DE-Associate · ⏱️ 25 min · ❓ 6 savol

⚡ Spark Architecture

Driver — SparkContext yaratadi, DAG rejalashtiradi. Executors — haqiqiy ishni bajaradi (task). Cluster Manager: YARN, Kubernetes, Databricks (k8s asosida). DAG (Directed Acyclic Graph) — transformations rejasi. StageTask ierarxiyasi.

🔄 Transformations vs Actions

Lazy Evaluation — transformation bajarilmaydi, action chaqirilguncha. Narrow transformations: filter, select, map — shuffle yo'q. Wide transformations: groupBy, join, distinct — shuffle kerak (expensive!). Actions: show(), count(), collect(), write().

📊 DataFrame API

Structured API. `spark.read`, `df.select()`, `df.filter()`, `df.groupBy().agg()`, `df.join()`, `df.write`. Catalyst Optimizer — query optimallashtiradi. Tungsten — memory management. Adaptive Query Execution (AQE) — runtime optimallashtirish.

💡 Spark SQL & Caching

SQL queries to'g'ridan-to'g'ri Spark'da. `spark.sql("SELECT ...")`. Temp Views: `df.createOrReplaceTempView("name")`. Caching: `df.cache()` yoki `df.persist(StorageLevel.MEMORY_AND_DISK)`. Cache — faqat bir xil datasetni ko'p marta ishlatganda foydali.
💡 Asosiy nuqtalar
📋 Kod misoli
from pyspark.sql import functions as F

# DataFrame operations
df = spark.read.format("delta").load("/data/sales")

result = (df
  .filter(F.col("date") >= "2024-01-01")
  .groupBy("category")
  .agg(
    F.sum("amount").alias("total"),
    F.count("*").alias("count")
  )
  .orderBy(F.desc("total"))
)

result.show(10)

# Spark SQL alternative
df.createOrReplaceTempView("sales")
spark.sql("""
  SELECT category, SUM(amount) as total
  FROM sales
  WHERE date >= '2024-01-01'
  GROUP BY category
  ORDER BY total DESC
""")
🎯 Imtihon maslahatlari
⚠️ Ko'p adashadigan
🧠 Eslab qolish: "FAST Cache" = Filter/select (narrow, fast), Aggregation/Sort/Transformation wide, Cache for reuse. "Actions Start Computation: show, count, write, collect"

Apache Spark Fundamentals bo'yicha o'zingizni sinab ko'ring

Bepul interaktiv quiz, mock imtihon va to'liq darslar — CertMaster platformasida.

Bepul boshlash →