Introduktion til PySpark SQL

Nogle af de nybegynder-programmerere ville ikke være opmærksomme på PySpark SQL. Før vi først går igennem PySpark SQL, skal vi have en idé om, hvad der er Spark SQL. Lad os starte med Spark SQL, det er et modul af Apache Spark. Spark SQL bruges til at arbejde med strukturerede data. PySpark SQL er udviklet til at understøtte Python i gnisten.

PySpark SQL er Pythons samarbejde med Spark SQL. Det bruges hovedsageligt til behandling af strukturerede og semistrukturerede data. API leveret af det kan læse data fra et stort antal kilder & Disse datakilder kan være i forskellige dataformater.

Hvad er PySpark SQL?

Det er et værktøj til at understøtte python med Spark SQL. Det er udviklet til at understøtte Python i Spark. For korrekt forståelse af PySpark kræves kendskab til Python, Big Data & Spark. PySpark SQL vinder langsomt popularitet i databaseprogrammerere på grund af dets vigtige funktioner.

PySpark SQL fungerer på det distribuerede system, og det kan også skaleres, hvorfor det er stærkt brugt i datavidenskab. I PySpark SQL leveres maskinlæring af python-biblioteket. Dette Python-bibliotek er kendt som et maskinlæringsbibliotek.

Funktioner i PySpark SQL

Nogle af de vigtige funktioner i PySpark SQL er vist nedenfor:

  • Hastighed: Det er meget hurtigere end de traditionelle store databehandlingsrammer som Hadoop.
  • Kraftig cache: PySpark giver et simpelt programmeringslag, der hjælper med cachen end de andre rammer caching.
  • Real-Time: Beregning i PySpark SQL finder sted i hukommelsen, det er derfor, det er realtid.
  • Deployering: Det kan distribueres via Hadoop eller egen cluster manager.
  • Polyglot: Det understøtter programmering i Scala, Java, Python og R.

Det bruges i Big data & hvor der er Big data involverer det, der er relateret til dataanalyse. Det er det hotteste værktøj på markedet for Big Data Analytics.

Hovedanvendelser af PySpark SQL

Nedenfor er vist nogle af de sektorer, hvor Pyspark anvendes i størstedelen:

E-handel industri

I e-handelsbranchen tilføjer PySpark en vigtig rolle. Det bruges til at forbedre brugertilgængeligheden, ved at give tilbud til de målrettede kunder, reklame til ægte kunder. Forskellige e-handelsindustrier som eBay, Alibaba, Flipkart, Amazon osv. Bruger det til at få ægte data til markedsføringsformål.

Medier

Forskellige medier, der driver industrier som Youtube, Netflix, Amazon osv. Bruger PySpark i de fleste til at behandle store data for at gøre dem tilgængelige for brugerne. Denne behandling af data foregår i realtid til serversiden applikationer.

Banking

Bankvirksomhed er en anden vigtig sektor, hvor PySpark bruges på et meget stort niveau. Det hjælper finanssektoren med at behandle realtidstransaktioner for millioner af postbehandling, reklame til ægte kunder, kreditrisikovurdering osv.

PySpark-moduler

Nogle af de vigtige klasser og deres egenskaber er angivet nedenfor:

  • pyspark.sql.SparkSession: Denne klasse giver programmerere mulighed for at programmere i Spark med DataFrame og SQL-funktionalitet. SparkSession bruges til at oprette DataFrame, registrere DataFrame som tabeller, cache-tabeller, udfører SQL over tabeller.
  • pyspark.sql.DataFrame: DataFrame-klasse spiller en vigtig rolle i den distribuerede indsamling af data. Disse data grupperes i navngivne kolonner. Spark SQL DataFrame ligner en relationel datatabel. En DataFrame kan oprettes ved hjælp af SQLContext-metoder.
  • pyspark.sql.Colonner: En kolonne-forekomster i DataFrame kan oprettes ved hjælp af denne klasse.
  • pyspark.sql.Row: En række i DataFrame kan oprettes ved hjælp af denne klasse.
  • pyspark.sql.GroupedData: GroupedData-klassen giver de aggregeringsmetoder, der er oprettet af groupBy ().
  • pyspark.sql.DataFrameNaFunctions: Denne klasse giver funktionaliteten til at arbejde med de manglende data.
  • pyspark.sql.DataFrameStatFunctions: Statistikfunktioner er tilgængelige med DataFrames of Spark SQL. Funktionen af ​​statistikfunktionerne leveres af denne klasse.
  • pyspark.sql.functions: Mange indbyggede funktioner i Spark er tilgængelige til at arbejde med DataFrames. Nogle af de indbyggede funktioner er givet nedenfor:
Indbyggede metoderIndbyggede metoder
abs (col)lokalisere (substr, str, pos = 1)
cos (col)log (arg1, arg2 = Ingen)
add_months (start, måneder)log10 (col)
approxCountDistinct (col, res = none)log1p (col)
array ((cols))log2 (col)
array_contains (col, værdi)lavere (col)
asc (col)ltrim (col)
ascii (col)max (col)
asin (col)md5 (col)
solbrændtmiddelværdi (col)
ATAN2min (col)
gnsminut (col)
base64monotonically_increasing_id ()
beholdermåned (col)
bitwiseNotmonths_between (dato1, dato2)
Udsendenanvl (col1, col2)
Broundnext_day (date, dayOfWeek)
CBRTntile (n)
ceilpercent_rank ()
COALESCE ((col))posexplode (col)
col (col)pow (col1, col2)
collect_list (col)kvartal (col)
collect_set (col)radianer (col)
søjle (col)rand (frø = Ingen
Concat (* cols)randn (frø = Ingen)
concat_ws (sep, * col)rang()
konv. (col, fra base, to base)regexp_extract (str, mønster, idx)
corr (col1, col2)regexp_replace (str, mønster, udskiftning)
cos (col)gentag (col, n)
cosh (col)revers (col)
tæller (col)riv (col)
countDistinct (col, * cols)runde (col, skala = 0)
covar_pop (col1, col2)ROW_NUMBER ()
covar_samp (col1, col2)rpad (col, len, pad)
CRC32 (col)rtrim (col)
create_map (* cols)sekund (col)
cume_dist ()sha1 (col)
nuværende dato()sha2 (col, numBits)
CURRENT_TIMESTAMP ()shiftLeft (col, numBits)
date_add (start, dage)shiftRight (col, numBits)
date_format (dato, format)shiftRightUndtegnet (col, numBits)
date_sub (start, dage)signum (col)
datediff (slutning, start)sin (col)
dayofmonth (col)sinh (col)
DAYOFYEAR (col)størrelse (col)
afkode (col, charset)skævheden (col)
grader (col)sort_array (col, asc = sandt)
dense_rank ()soundex (col)
desc (col)spark_partition_id ()
kode (col, charset)split (str, mønster)
exp (col)sqrt (col)
eksplodere (col)stddev (col)
expm1 (col)stddev_pop (col)
expr (str)stddev_samp (col)
factorial (col)struct (* cols)
først (col, ignorenulls = False)substring (str, pos, len)
sal (col)substring_index (str, delim, count)
format_nummer (col, d)sum (col)
format_string (format, * cols)sumDistinct (col)
from_json (col, skema, optioner = ())tan (col)
fra_unixtime (tidsstempel, format = 'åååå-MM-dd HH: mm: ss')toDegrees (col)
fra_utc_timestamp (tidsstempel, tz)toRadians (col)
get_json_object (col, sti)to_date (col)
største (* cols)to_json (col, optioner = ())
gruppering (col)to_utc_timestamp (tidsstempel, tz)
grouping_id (* cols)oversætte (srcCol, matching, erstatte)
hash (* cols)trim (col)
hex (cols)trunc (dato, format)
time (col)udf (f, returnType = StringType)
hypot (col1, col2)unbase64 (col)
initcap (col)unhex (col)
input_file_name ()unix_timestamp (tidsstempel = Ingen, format = 'åååå-MM-dd HH: mm: ss')
instr (str, substr)øvre (col)
isnan (col)var_pop (col)
isnull (col)var_samp (col)
json_tuple (col, * felter)variansanalyse (col)
kurtosis (col)weekofyear (col)
lag (col, count = 1, default = None)hvornår (betingelse, værdi)
sidste (col, ignorenulls = False)vindue (timeColumn, windowDuration, slideDuration = Ingen, starttid = Ingen)
last_day (dato)år (col)
lead (col, count = 1, default = None)mindst (* cols), tændt (col)
længde (col)levenshtein (venstre, højre)

pyspark.sql.types: Disse klassetyper, der bruges i datatypekonvertering. Ved hjælp af denne klasse kan et SQL-objekt konverteres til et indbygget Python-objekt.

  • pyspark.sql.streaming: Denne klasse håndterer alle de forespørgsler, der udføres fortsætter i baggrunden. Alle disse metoder, der bruges i streaming, er statsløse. Ovenstående givne indbyggede funktioner er tilgængelige til at arbejde med dataFrames. Disse funktioner kan bruges ved at henvise til funktionsbiblioteket.
  • pyspark.sql.Window: Alle metoder, der leveres i denne klasse, kan bruges til at definere & arbejde med windows i DataFrames.

Konklusion

Det er et af de værktøjer, der bruges inden for kunstig intelligens og maskinlæring. Det bruges af flere og flere virksomheder til analyse og maskinindlæring. Dygtige fagfolk i det vil være mere efterspurgte i den kommende fremtid.

Anbefalede artikler

Dette er en guide til PySpark SQL. Her diskuterer vi, hvad pyspark SQL er, dens funktioner, større anvendelser, moduler og indbyggede metoder. Du kan også se på de følgende artikler for at lære mere -

  1. Spark DataFrame
  2. Spark Interview Spørgsmål
  3. SQL-datofunktion
  4. SQL HAVING-klausul
  5. Apache gnistarkitektur med to implementeringer
  6. Hvordan bruges DISTINCT i Oracle?