PySpark DataFrames का परिचय

PySpark के साथ Big Data Fundamentals

Upendra Devisetty

Science Analyst, CyVerse

PySpark DataFrames क्या हैं?

  • PySpark SQL, Spark की लाइब्रेरी है जो structured डेटा के लिए है. यह डेटा और computation की संरचना पर अधिक जानकारी देता है

  • PySpark DataFrame नामित कॉलमों वाला, अपरिवर्तनीय, वितरित डेटा संग्रह है

  • structured (जैसे relational database) और semi-structured डेटा (जैसे JSON) दोनों के लिए बनाया गया

  • DataFrame API Python, R, Scala, और Java में उपलब्ध है

  • PySpark में DataFrames SQL क्वेरीज़ (SELECT * from table) और expression methods (df.select()) दोनों सपोर्ट करते हैं

PySpark के साथ Big Data Fundamentals

SparkSession - DataFrame API का entry point

  • SparkContext, RDDs बनाने का मुख्य entry point है

  • SparkSession, Spark DataFrames से इंटरैक्ट करने का एकल entry point देता है

  • SparkSession से DataFrame बनाते हैं, DataFrames रजिस्टर करते हैं, SQL क्वेरी चलाते हैं

  • PySpark shell में SparkSession spark नाम से उपलब्ध है

PySpark के साथ Big Data Fundamentals

PySpark में DataFrames बनाना

  • PySpark में DataFrames बनाने के दो तरीके

    • मौजूदा RDDs से, SparkSession के createDataFrame() मेथड से

    • विभिन्न data sources (CSV, JSON, TXT) से, SparkSession के read मेथड से

  • Schema डेटा को नियंत्रित करता है और DataFrames को क्वेरी optimize करने में मदद करता है

  • Schema कॉलम नाम, कॉलम में डेटा का type, खाली मान आदि की जानकारी देता है

PySpark के साथ Big Data Fundamentals

RDD से DataFrame बनाना

iphones_RDD = sc.parallelize([
    ("XS", 2018, 5.65, 2.79, 6.24),
    ("XR", 2018, 5.94, 2.98, 6.84),
    ("X10", 2017, 5.65, 2.79, 6.13),
    ("8Plus", 2017, 6.23, 3.07, 7.12)
])
names = ['Model', 'Year', 'Height', 'Width', 'Weight']
iphones_df = spark.createDataFrame(iphones_RDD, schema=names)

type(iphones_df)
pyspark.sql.dataframe.DataFrame
PySpark के साथ Big Data Fundamentals

CSV/JSON/TXT पढ़कर DataFrame बनाना

df_csv = spark.read.csv("people.csv", header=True, inferSchema=True)
df_json = spark.read.json("people.json")
df_txt = spark.read.txt("people.txt")
  • फ़ाइल का path और दो वैकल्पिक पैरामीटर

  • दो वैकल्पिक पैरामीटर

    • header=True, inferSchema=True
PySpark के साथ Big Data Fundamentals

Let's practice

PySpark के साथ Big Data Fundamentals

Preparing Video For Download...