Introduktion till Spark DataFrame

En gnistdataram kan sägas vara en distribuerad datainsamling som är organiserad i namngivna kolumner och används också för att tillhandahålla operationer såsom filtrering, beräkning av aggregeringar, gruppering och också kan användas med Spark SQL. Dataramar kan skapas genom att använda strukturerade datafiler tillsammans med befintliga RDD: er, externa databaser och Hive-tabeller. Det benämns i princip och kallas ett abstraktionslager som är byggt ovanpå RDD och följs också av dataset-API som introducerades i senare versioner av Spark (2.0 +). Dessutom introducerades datasätten inte i Pyspark utan bara i Scala med Spark men detta var inte fallet i fallet med Dataframes. Dataramar populärt kända som DF: er är logiska kolumnformat som gör att arbeta med RDD: er enklare och mer praktiskt, och som också använder samma funktioner som RDD: er på samma sätt. Om du pratar mer på konceptnivå motsvarar det relationstabellerna tillsammans med goda optimeringsfunktioner och tekniker.

Hur skapar jag en DataFrame?

En dataram skapas vanligtvis med någon av de nämnda metoderna. Det kan skapas genom att använda Hive-tabeller, externa databaser, strukturerade datafiler eller till och med i fall av befintliga RDD: er. Alla dessa sätt kan skapa de namngivna kolumnerna kända som Dataframes som används för behandlingen i Apache Spark. Genom att använda SQLContext eller SparkSession kan applikationer användas för att skapa Dataframes.

Spark DataFrames-operationer

I Spark är en dataram fördelning och insamling av en organiserad form av data i namngivna kolumner som motsvarar en relationsdatabas eller ett schema eller en dataram på ett språk som R eller python men tillsammans med en rikare nivå av optimeringar att användas. Det används för att tillhandahålla en specifik domänslag av ett språk som kan användas för strukturerad datamanipulation.

Nedan nämnda är några grundläggande funktioner för strukturerad databehandling genom att använda Dataframes.

1. Läsning av ett dokument som är av typen: JSON: Vi skulle använda kommandot sqlContext.read.json.

Exempel: Låt oss anta att vårt filnamn är student.json, då kommer vår kod att se ut:
val dfs= sqlContext.read.json(“student.json”)

Output: I det här fallet kommer utgången att fältnamnen tas automatiskt från filen student.json.

2. Visning av data: För att se data i Spark-dataramarna måste du använda kommandot:
dfs.show ()

Exempel: Låt oss anta att vårt filnamn är student.json, då kommer vår kod att se ut:
val dfs= sqlContext.read.json(“student.json”)
dfs.show()

Output: Studentdata kommer att finnas tillgängliga för dig i tabellformat.

3. Använda printSchema-metoden: Om du är intresserad av att se strukturen, dvs schemat i dataramen, använd följande kommando: dfs.printSchema ()

Exempel: Låt oss anta att vårt filnamn är student.json, då kommer vår kod att se ut:

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

Output: Strukturen eller schemat kommer att vara närvarande för dig

4. Använd markeringsmetoden: För att använda markeringsmetoden används följande kommando för att hämta namn och kolumner från listan med dataramar.
dfs.select ( ”kolumnnamn”). visar ()

Exempel: Låt oss anta att vårt filnamn är student.json, då kommer vår kod att se ut:
val dfs= sqlContext.read.json(“student.json”)
dfs.select(“name”).show()

Utgång: Värdena på namnskolumnen kan ses.

5. Använda åldersfilter: Följande kommando kan användas för att hitta utbudet av elever vars ålder är mer än 23 år.
dfs.filter (dfs ("kolumnnamn")> värde) .show ()

Exempel: Låt oss anta att vårt filnamn är student.json, då kommer vår kod att se ut:
val dfs= sqlContext.read.json(“student.json”)
dfs.filter(dfs(“age”)>23).show()

Output: Den filtrerade åldern för mer än 23 kommer att visas i resultat.

6. Använda metoden groupBy: Följande metod kan användas för att räkna antalet studenter som har samma ålder.
dfs.groupBy ( ”kolumnnamn”). räknas (). visa ()

Exempel: Låt oss anta att vårt filnamn är student.json, då kommer vår kod att se ut:
val dfs= sqlContext.read.json(“student.json”)
dfs.groupBy(“age”).count().show()

7. Använda SQL-funktion vid en SparkSession som gör det möjligt för applikationen att köra SQL-typfrågor programmatiskt och därmed returnerar resultatet i form av en dataram.
spark.sql (query)

Exempel: Anta att vi måste registrera SQL-dataramen som en tempovy då:
df.createOrReplaceTempView(“student”)
sqlDF=spark.sql(“select * from student”)
sqlDF.show()

Output: En tillfällig vy skapas med elevens namn och en spark.sql kommer att appliceras ovanpå den för att konvertera den till en dataram.

8. Använda SQL-funktionen vid en gnistrsession för global tillfällig vy: Detta gör det möjligt för applikationen att utföra SQL-typfrågor programmatiskt och därmed returnerar resultatet i form av en dataram.
spark.sql (query)

Exempel: Anta att vi måste registrera SQL-dataramen som en tempovy då:
df.createGlobalTempView(“student”)
park.sql(“select * from global_temp.student”).show()
spark.newSession().sql(“Select * from global_temp.student”).show()

Output: En tillfällig vy skapas med elevens namn och en spark.sql kommer att appliceras ovanpå den för att konvertera den till en dataram.

Fördelar med Spark DataFrame

  1. Dataramen är Datas distribuerade samling och därför organiseras uppgifterna på namnet kolumnmode.
  2. De är mer eller mindre lik tabellen när det gäller relationsdatabaser och har en rik uppsättning optimering.
  3. Dataframes används för att stärka de frågor som skrivs i SQL och även dataramen API
  4. Det kan användas för att bearbeta såväl strukturerade som ostrukturerade slags data.
  5. Användningen av katalysatoroptimerare gör optimeringen enkel och effektiv.
  6. Biblioteken finns på många språk som Python, Scala, Java och R.
  7. Detta används för att ge stark kompatibilitet med Hive och används för att köra omodifierade Hivefrågor på det redan befintliga bikupagret.
  8. Det kan skala mycket bra från några kbs i det personliga systemet till många petabytes på de stora klusterna.
  9. Det används för att tillhandahålla en enkel integrationsnivå med andra stordatateknologier och ramverk.
  10. Abstraktionen som de tillhandahåller RDD: er är effektiv och gör bearbetningen snabbare.

Slutsats - Spark DataFrame

I det här inlägget har du lärt dig en mycket kritisk funktion i Apache Spark, som är dataramar och dess användning i de applikationer som körs idag tillsammans med funktioner och fördelar. Jag hoppas att du har gillat vår artikel. Håll ögonen öppna för mer som dessa.

Rekommenderade artiklar

Detta har varit en guide till Spark DataFrame. Här diskuterar vi hur man skapar en DataFrame? dess fördelar och olika funktioner för DataFrames tillsammans med lämplig provkod. Du kan också gå igenom våra andra föreslagna artiklar för att lära dig mer -

  1. Spark Streaming
  2. Hur man installerar gnista
  3. Karriär i Spark
  4. Sparkintervjufrågor
  5. Dataramar i R
  6. 7 olika typer av sammanfogningar i Spark SQL (exempel)
  7. PySpark SQL | Moduler och metoder för PySpark SQL
  8. Gnistkomponenter | Översikt över gnistkomponenter

Kategori: