Introduksjon til Spark DataFrame

En gnistedataramme kan sies å være en distribuert datasamling som er organisert i navngitte kolonner og brukes også til å gi operasjoner som filtrering, beregning av aggregeringer, gruppering og også kan brukes med Spark SQL. Datarammer kan opprettes ved å bruke strukturerte datafiler, sammen med eksisterende RDD-er, eksterne databaser og Hive-tabeller. Det er i utgangspunktet betegnet og kjent som et abstraksjonslag som er bygget på toppen av RDD og blir også fulgt av datasettet API som ble introdusert i senere versjoner av Spark (2.0 +). Dessuten ble datasettene ikke introdusert i Pyspark, men bare i Scala med Spark, men dette var ikke tilfelle i tilfelle Dataframes. Datarammer populært kjent som DF-er er logiske kolonneformater som gjør arbeidet med RDD-er enklere og mer praktisk, og som også bruker de samme funksjonene som RDD-er på samme måte. Hvis du snakker mer på det konseptuelle nivået, tilsvarer det relasjonstabellene sammen med gode optimaliseringsfunksjoner og teknikker.

Hvordan lage en DataFrame?

En dataramme blir vanligvis laget av en av de nevnte metodene. Det kan lages ved å bruke Hive-tabeller, eksterne databaser, strukturerte datafiler eller til og med i tilfelle eksisterende RDD-er. Disse alle måtene kan lage disse navngitte kolonnene kjent som Dataframes brukt til behandlingen i Apache Spark. Ved å bruke SQLContext eller SparkSession kan applikasjoner brukes til å lage Dataframes.

Spark DataFrames-operasjoner

I Spark er en dataramme distribusjon og samling av en organisert form for data i navngitte kolonner som tilsvarer en relasjonsdatabase eller et skjema eller en dataramme på et språk som R eller python, men sammen med et rikere nivå av optimaliseringer å bli brukt. Det brukes til å gi en bestemt domenetype av et språk som kan brukes til strukturert datamanipulering.

Nedenfor nevnte er noen grunnleggende operasjoner for strukturert databehandling ved å bruke Dataframes.

1. Å lese et dokument som er av typen: JSON: Vi vil bruke kommandoen sqlContext.read.json.

Eksempel: La oss anta at filnavnet vårt er student.json, så vil kodestykket vårt se ut:
val dfs= sqlContext.read.json(“student.json”)

Utgang: I dette tilfellet vil utskriften være at feltnavnene automatisk blir hentet fra filen student.json.

2. Visning av data: For å se dataene i Spark-datarammene, må du bruke kommandoen:
dfs.show ()

Eksempel: La oss anta at filnavnet vårt er student.json, så vil kodestykket vårt se ut:
val dfs= sqlContext.read.json(“student.json”)
dfs.show()

Utgang: Studentdataene vil være til stede for deg i tabellformat.

3. Bruke printSchema-metoden: Hvis du er interessert i å se strukturen, dvs. skjemaet for datarammen, så bruk følgende kommando: dfs.printSchema ()

Eksempel: La oss anta at filnavnet vårt er student.json, så vil kodestykket vårt se ut:

val dfs= sqlContext.read.json(“student.json”)
dfs. printSchema ()

Utgang: Strukturen eller skjemaet vil være til stede for deg

4. Bruk velgningsmetoden: For å bruke den valgte metoden, vil følgende kommando brukes til å hente navn og kolonner fra listen over datarammer.
dfs.select ( “kolonnenavn”). viser ()

Eksempel: La oss anta at filnavnet vårt er student.json, så vil kodestykket vårt se ut:
val dfs= sqlContext.read.json(“student.json”)
dfs.select(“name”).show()

Utgang: Verdiene til navnekolonnen kan sees.

5. Bruke aldersfilter: Følgende kommando kan brukes til å finne utvalget av elever med en alder over 23 år.
dfs.filter (dfs ("column-name")> verdi) .show ()

Eksempel: La oss anta at filnavnet vårt er student.json, så vil kodestykket vårt se ut:
val dfs= sqlContext.read.json(“student.json”)
dfs.filter(dfs(“age”)>23).show()

Utgang: Den filtrerte alderen for over 23 vil vises i resultater.

6. Bruke metoden GroupBy: Følgende metode kan brukes til å telle antall elever som har samme alder.
dfs.groupBy ( “kolonne-navn”). teller (). viser ()

Eksempel: La oss anta at filnavnet vårt er student.json, så vil kodestykket vårt se ut:
val dfs= sqlContext.read.json(“student.json”)
dfs.groupBy(“age”).count().show()

7. Ved å bruke SQL-funksjon på en SparkSession som gjør det mulig for applikasjonen å utføre SQL-type programmer programmatisk og dermed returnerer resultatet i form av en dataramme.
spark.sql (spørring)

Eksempel: Anta at vi må registrere SQL-datarammen som en tempovisning da:
df.createOrReplaceTempView(“student”)
sqlDF=spark.sql(“select * from student”)
sqlDF.show()

Output: En midlertidig visning vil bli opprettet med navnet på studenten og en spark.sql blir brukt på toppen av den for å konvertere den til en dataramme.

8. Bruke SQL-funksjon ved en gnist sesjon for global midlertidig visning: Dette gjør det mulig for applikasjonen å utføre SQL-type spørringer programmatisk og dermed returnerer resultatet i form av en dataramme.
spark.sql (spørring)

Eksempel: Anta at vi må registrere SQL-datarammen som en tempovisning da:
df.createGlobalTempView(“student”)
park.sql(“select * from global_temp.student”).show()
spark.newSession().sql(“Select * from global_temp.student”).show()

Output: En midlertidig visning vil bli opprettet med navnet på studenten og en spark.sql blir brukt på toppen av den for å konvertere den til en dataramme.

Fordeler med Spark DataFrame

  1. Datarammen er datas distribuerte samling, og derfor er dataene organisert på navngitt kolonnemode.
  2. De er mer eller mindre lik tabellen når det gjelder relasjonsdatabaser og har et rikt sett med optimalisering.
  3. Dataframes brukes til å styrke spørsmålene som er skrevet i SQL og også datarammen API
  4. Det kan brukes til å behandle både strukturerte og ustrukturerte data.
  5. Bruken av katalysatoroptimalisator gjør optimalisering enkel og effektiv.
  6. Bibliotekene er til stede på mange språk som Python, Scala, Java og R.
  7. Dette brukes til å gi sterk kompatibilitet med Hive og brukes til å kjøre umodifiserte Hive-spørsmål på det allerede eksisterende bikupelageret.
  8. Det kan skalere veldig godt fra noen få kilo på det personlige systemet til mange petabyte på de store klyngene.
  9. Den brukes til å gi et enkelt integrasjonsnivå med andre big data-teknologier og rammer.
  10. Abstraksjonen de gir RDD-er er effektiv og gjør behandlingen raskere.

Konklusjon - Spark DataFrame

I dette innlegget har du lært en veldig kritisk funksjon av Apache Spark, som er datarammene og bruken av dem i applikasjonene som kjøres i dag, sammen med operasjoner og fordeler. Jeg håper du har likt artikkelen vår. Følg med for mer som disse.

Anbefalte artikler

Dette har vært en guide til Spark DataFrame. Her diskuterer vi hvordan du oppretter en DataFrame? dens fordeler og forskjellige operasjoner av DataFrames sammen med riktig prøvekode. Du kan også gå gjennom andre foreslåtte artikler for å lære mer -

  1. Gniststrømming
  2. Hvordan installere gnist
  3. Karriere i Spark
  4. Spark Interview Questions
  5. Datarammer i R
  6. 7 forskjellige typer sammenføyninger i Spark SQL (eksempler)
  7. PySpark SQL | Moduler og metoder for PySpark SQL
  8. Gnistkomponenter | Oversikt over komponenter av gnist

Kategori: