Uvod u Spark DataFrame

Iskrivi podatkovni okvir može se reći da je distribuirana zbirka podataka koja je organizirana u imenovane stupce, a koristi se i za pružanje operacija poput filtriranja, izračunavanja agregacija, grupiranja, a može se koristiti i sa Spark SQL-om. Okviri podataka mogu se stvoriti korištenjem strukturiranih podataka, zajedno s postojećim RDD-ovima, vanjskim bazama podataka i tablicama Hive. U osnovi se naziva i sloj apstrakcije koji je izgrađen na vrhu RDD-a, a slijedi ga API za skup podataka koji je uveden u kasnijim verzijama Sparka (2.0 +). Štoviše, skupovi podataka nisu uvedeni u Pysparku, već samo u Scala s Sparkom, ali to nije bio slučaj u slučaju Dataframes. Okviri podataka popularno poznati kao DF-ovi logički su stupac formati koji rad s RDD-ovima čine lakšim i praktičnijim, koristeći iste funkcije kao i RDD-ovi na isti način. Ako više govorite na konceptualnoj razini, to je ekvivalentno relacijskim tablicama, uz dobre optimizacijske značajke i tehnike.

Kako stvoriti DataFrame?

Okvir podataka obično se stvara bilo kojom od spomenutih metoda. Može se stvoriti upotrebom tablica košnica, vanjskih baza podataka, strukturiranih podataka ili čak u slučaju postojećih RDD-ova. Na sve ove načine možete stvoriti ove imenovane stupce poznate kao Dataframes koji se koriste za obradu u Apache Spark. Upotrebom aplikacija SQLContext ili SparkSession mogu se koristiti za izradu Dataframes.

Operacije podataka iskri

U Sparku, podatkovni okvir je distribucija i prikupljanje organiziranog oblika podataka u imenovane stupce, što je ekvivalentno relacijskoj bazi podataka ili shemi ili podatkovnom okviru na jeziku kao što je R ili python, ali uz bogatiju razinu optimizacije da se koristi. Koristi se za pružanje specifičnog jezika domene koji bi se mogao koristiti za manipulaciju strukturiranim podacima.

Dolje su spomenute neke osnovne operacije obrade strukturiranih podataka koristeći Dataframes.

1. Čitanje dokumenta tipa: JSON: Koristili bismo naredbu sqlContext.read.json.

Primjer: Pretpostavimo da je naše ime student.json, naš će kod izgledati:
val dfs= sqlContext.read.json(“student.json”)

Izlaz: U ovom će slučaju izlaz biti da će se polja automatski preuzeti iz datoteke student.json.

2. Prikaz podataka: Da biste vidjeli podatke u okvirima podataka Spark, morat ćete koristiti naredbu:
dfs.show ()

Primjer: Pretpostavimo da je naše ime student.json, naš će kod izgledati:
val dfs= sqlContext.read.json(“student.json”)
dfs.show()

Izlaz: Podaci o studentu bit će vam predstavljeni u tabelarnom obliku.

3. Korištenje metode printSchema: Ako vas zanima vidjeti strukturu tj. Shemu okvira podataka, tada koristite sljedeću naredbu: dfs.printSchema ()

Primjer: Pretpostavimo da je naše ime student.json, naš će kod izgledati:

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

Izlaz: Struktura ili shema bit će vam prisutni

4. Koristite metodu odabira: Za upotrebu odabrane metode, naredna naredba će se dohvatiti imena i stupaca s popisa okvira podataka.
dfs.select ( „stupac-ime”). pokazati ()

Primjer: Pretpostavimo da je naše ime student.json, naš će kod izgledati:
val dfs= sqlContext.read.json(“student.json”)
dfs.select(“name”).show()

Izlaz: Vrijednosti stupca imena mogu se vidjeti.

5. Korištenje filtra dob: Sljedeća naredba može se koristiti za pronalazak raspona učenika čija je dob veća od 23 godine.
dfs.filter (dfs ("naziv stupca")> vrijednost). show ()

Primjer: Pretpostavimo da je naše ime student.json, naš će kod izgledati:
val dfs= sqlContext.read.json(“student.json”)
dfs.filter(dfs(“age”)>23).show()

Izlaz: Filtrirana dob starija od 23 godine pojavit će se u rezultatima.

6. Korištenje metode groupBy: Sljedeća metoda mogla bi se koristiti za brojanje broja učenika iste dobi.
dfs.groupBy ( „stupac-ime”). računati (). pokazati ()

Primjer: Pretpostavimo da je naše ime student.json, naš će kod izgledati:
val dfs= sqlContext.read.json(“student.json”)
dfs.groupBy(“age”).count().show()

7. Korištenje SQL funkcije na SparkSessionu koji omogućuje aplikaciji da programski izvršava upite tipa SQL i tako vraća rezultat u obliku okvira podataka.
spark.sql (upit)

Primjer: Pretpostavimo da tada moramo registrirati SQL okvir podataka kao temp prikaz:
df.createOrReplaceTempView(“student”)
sqlDF=spark.sql(“select * from student”)
sqlDF.show()

Izlaz: Stvorit će se privremeni prikaz imenom učenika i na njemu će se primijeniti spark.sql kako bi se pretvorio u okvir podataka.

8. Upotreba SQL funkcije na Spark Session for Global privremenom prikazu: To omogućuje aplikaciji da programski izvršava upite tipa SQL i tako vraća rezultat u obliku okvira podataka.
spark.sql (upit)

Primjer: Pretpostavimo da tada moramo registrirati SQL okvir podataka kao temp prikaz:
df.createGlobalTempView(“student”)
park.sql(“select * from global_temp.student”).show()
spark.newSession().sql(“Select * from global_temp.student”).show()

Izlaz: Stvorit će se privremeni prikaz imenom učenika i na njemu će se primijeniti spark.sql kako bi se pretvorio u okvir podataka.

Prednosti Spark DataFrame-a

  1. Okvir podataka je distribuirana zbirka podataka i stoga su podaci organizirani prema nazivima stupaca.
  2. Više su ili manje slične tablici u slučaju relacijskih baza podataka i imaju bogat skup optimizacija.
  3. Okviri podataka koriste se za osnaživanje upita napisanih u SQL-u i API-ja podatkovnog okvira
  4. Može se koristiti za obradu kako strukturiranih tako i nestrukturiranih podataka.
  5. Upotreba alata za optimizaciju katalizatora čini optimizaciju jednostavnom i učinkovitom.
  6. Biblioteke su prisutne na mnogim jezicima kao što su Python, Scala, Java i R.
  7. Koristi se za postizanje čvrste kompatibilnosti s košnicom i koristi se za pokretanje nepromijenjenih upita košnice na već prisutnom skladištu košnica.
  8. Može jako dobro mjeriti od nekoliko kilograma na osobnom sustavu do mnogih petabajta na velikim klasterima.
  9. Koristi se za laku razinu integracije s drugim velikim podacima i okvirima.
  10. Apstrakcija koju pružaju RDD-ima je učinkovita i ubrzava obradu.

Zaključak - Spark DataFrame

U ovom postu naučili ste vrlo kritičnu značajku Apache Spark-a, a to su okviri podataka i njegova upotreba u danas pokretanim aplikacijama, kao i operacije i prednosti. Nadam se da vam se svidio naš članak. Pratite više ovakvih.

Preporučeni članci

Ovo je vodič za Spark DataFrame. Ovdje smo razgovarali o tome kako stvoriti DataFrame? njegove prednosti i različite operacije DataFrames zajedno s odgovarajućim uzorkom koda. Možete i proći naše druge predložene članke da biste saznali više -

  1. Streaming iskre
  2. Kako instalirati varnicu
  3. Karijera u Sparku
  4. Spark Intervju Pitanja
  5. Okviri podataka u R
  6. 7 različitih vrsta spajanja u Spark SQL-u (primjeri)
  7. PySpark SQL | Moduli i metode PySpark SQL
  8. Komponente iskre | Pregled komponenti iskre

Kategorija: