Inleiding tot PySpark SQL

Sommige beginnende programmeurs zijn zich niet bewust van PySpark SQL. Voordat we eerst de PySpark SQL doornemen, moeten we een idee hebben van wat Spark SQL is. Laten we beginnen met de Spark SQL, het is een module van Apache Spark. Spark SQL werkte vroeger met gestructureerde gegevens. PySpark SQL is ontwikkeld om Python in the Spark te ondersteunen.

PySpark SQL is de samenwerking van Python met de Spark SQL. Het werd voornamelijk gebruikt bij de verwerking van gestructureerde en semi-gestructureerde gegevens. Door hem geleverde API kan gegevens uit een groot aantal bronnen lezen & Deze gegevensbronnen kunnen verschillende gegevensindelingen hebben.

Wat is PySpark SQL?

Het is een hulpmiddel om python te ondersteunen met Spark SQL. Het is ontwikkeld om Python in Spark te ondersteunen. Voor een goed begrip van het PySpark is kennis van Python, Big Data & Spark vereist. PySpark SQL wint langzaam aan populariteit in de database programmeurs vanwege de belangrijke functies.

PySpark SQL werkt op het gedistribueerde systeem en het is ook schaalbaar waardoor het veel wordt gebruikt in data science. In PySpark SQL Machine wordt het leren verzorgd door de pythonbibliotheek. Deze Python-bibliotheek staat bekend als een machine learning-bibliotheek.

Kenmerken van PySpark SQL

Enkele belangrijke functies van de PySpark SQL worden hieronder gegeven:

  • Snelheid: het is veel sneller dan de traditionele grote gegevensverwerkingskaders zoals Hadoop.
  • Krachtige caching: PySpark biedt een eenvoudige programmeerlaag die helpt bij de caching dan de andere frameworks caching.
  • Real-Time: Berekening in het PySpark SQL vindt plaats in het geheugen, daarom is het real-time.
  • Implementatie: het kan worden geïmplementeerd via Hadoop of een eigen clustermanager.
  • Polyglot: het ondersteunt programmeren in Scala, Java, Python en R.

Het wordt gebruikt in de Big data en waar Big data betrekking heeft op gegevensanalyses. Het is de populairste tool in de markt van Big Data Analytics.

Belangrijk gebruik van PySpark SQL

Hieronder worden enkele van de sectoren gegeven waar Pyspark in de meerderheid wordt gebruikt:

E-commerce industrie

In de e-commerce-industrie voegt PySpark een belangrijke rol toe. Het wordt gebruikt bij het verbeteren van de toegankelijkheid van gebruikers, het bieden van aanbiedingen aan de beoogde klanten, advertenties voor echte klanten. Verschillende e-commerce-industrieën zoals eBay, Alibaba, Flipkart, Amazon, enz. Gebruiken het om echte gegevens te verkrijgen voor marketingdoeleinden.

Media

Verschillende media-aandrijvende industrieën zoals YouTube, Netflix, Amazon, enz. Gebruiken PySpark in de meerderheid voor het verwerken van grote gegevens om deze beschikbaar te maken voor de gebruikers. Deze gegevensverwerking vindt in realtime plaats aan de server-side applicaties.

bank

Bankieren is een andere belangrijke sector waar PySpark op zeer groot niveau wordt gebruikt. Het helpt de financiële sector om real-time transacties te verwerken voor miljoenen records, reclame voor echte klanten, kredietrisicobeoordeling, enz.

PySpark-modules

Enkele belangrijke klassen en hun kenmerken worden hieronder gegeven:

  • pyspark.sql.SparkSession: Met deze klasse kunnen programmeurs in Spark programmeren met DataFrame en SQL-functionaliteit. SparkSession gebruikt om DataFrame te maken, DataFrame te registreren als tabellen, cachetabellen, SQL over tabellen uit te voeren.
  • pyspark.sql.DataFrame: de klasse DataFrame speelt een belangrijke rol in de gedistribueerde verzameling van gegevens. Deze gegevens zijn gegroepeerd in benoemde kolommen. Spark SQL DataFrame is vergelijkbaar met een relationele gegevenstabel. Een DataFrame kan worden gemaakt met behulp van SQLContext-methoden.
  • pyspark.sql.Columns: Een kolominstantie in DataFrame kan met deze klasse worden gemaakt.
  • pyspark.sql.Row: Een rij in DataFrame kan met deze klasse worden gemaakt.
  • pyspark.sql.GroupedData: GroupedData-klasse biedt de aggregatiemethoden die zijn gemaakt door groupBy ().
  • pyspark.sql.DataFrameNaFunctions: deze klasse biedt de functionaliteit om met de ontbrekende gegevens te werken.
  • pyspark.sql.DataFrameStatFunctions: Statistische functies zijn beschikbaar met de DataFrames van Spark SQL. De functionaliteit van de statistische functies wordt geleverd door deze klasse.
  • pyspark.sql.functions: Veel ingebouwde functies in de Spark zijn beschikbaar om met de DataFrames te werken. Enkele van de ingebouwde functies worden hieronder gegeven:
Ingebouwde methodenIngebouwde methoden
abs (col)lokaliseren (substr, str, pos = 1)
acos (col)log (arg1, arg2 = Geen)
add_months (start, maanden)log10 (col)
approxCountDistinct (col, res = none)log1p (col)
array ((cols))log2 (col)
array_contains (col, waarde)lagere (col)
ASC (col)ltrim (col)
ASCII (col)max (col)
asin (col)md5 (col)
een tintgemiddelde (col)
atan2min (col)
avgminute (col)
base64monotonically_increasing_id ()
bakmaand (col)
bitwiseNotmonths_between (date1, date2)
Uitzendingnanvl (col1, col2)
broundnext_day (date, dayOfWeek)
CBRTNTILE (n)
ceilpercent_rank ()
samenvloeien ((col))posexplode (col)
col (col)pow (col1, col2)
collect_list (col)kwart (col)
collect_set (col)radialen (col)
kolom (col)rand (seed = None
concat (* cols)randn (seed = None)
concat_ws (sep, * col)rang()
conv (col, fromBase, toBase)regexp_extract (str, patroon, idx)
corr (col1, col2)regexp_replace (str, patroon, vervanging)
cos (col)herhalen (col, n)
cosh (col)reverse (col)
tellen (col)rint (col)
countDistinct (col, * cols)round (col, schaal = 0)
covar_pop (col1, col2)rij nummer()
covar_samp (col1, col2)rpad (col, len, pad)
crc32 (col)rtrim (col)
create_map (* cols)tweede (col)
cume_dist ()sha1 (col)
huidige datum()sha2 (col, aantal bits)
CURRENT_TIMESTAMP ()shiftLeft (col, aantal bits)
date_add (start, dagen)shiftRight (col, aantal bits)
date_format (datum, formaat)shiftRightUnsigned (col, aantal bits)
date_sub (start, dagen)signum (col)
gedateerd (einde, start)sin (col)
dayofmonth (col)sinh (col)
DAYOFYEAR (col)size (col)
decoderen (col, tekenset)scheefheid (col)
graden (col)sort_array (col, asc = True)
dense_rank ()soundex (col)
desc (col)spark_partition_id ()
coderen (col, tekenset)split (str, patroon)
exp (col)sqrt (col)
ontploffen (col)StdDev (col)
expm1 (col)stddev_pop (col)
expr (str)stddev_samp (col)
factorial (col)struct (* cols)
first (col, ignorenulls = False)substring (str, pos, len)
vloer (col)substring_index (str, delim, count)
format_number (col, d)sum (col)
format_string (format, * cols)sumDistinct (col)
from_json (col, schema, options = ())tan (col)
from_unixtime (timestamp, format = 'jjjj-MM-dd HH: mm: ss')toDegrees (col)
from_utc_timestamp (timestamp, tz)toRadians (col)
get_json_object (col, pad)TO_DATE (col)
grootste (* cols)to_json (col, options = ())
groepering (col)to_utc_timestamp (timestamp, tz)
grouping_id (* cols)vertalen (srcCol, matchen, vervangen)
hash (* cols)Trim (col)
hex (cols)trunc (datum, formaat)
uur (kol)udf (f, returnType = StringType)
hypot (col1, col2)unbase64 (col)
beginhoofdletters (col)unhex (col)
input_file_name ()unix_timestamp (timestamp = None, format = 'jjjj-MM-dd HH: mm: ss')
instr (str, substr)bovenste (col)
isNaN (col)var_pop (col)
IsNull (col)var_samp (col)
json_tuple (col, * velden)variantie (col)
kurtosis (col)weekofyear (col)
lag (col, count = 1, default = None)wanneer (staat, waarde)
last (col, ignorenulls = False)window (timeColumn, windowDuration, slideDuration = None, startTime = None)
LAST_DAY (datum)jaar (col)
lead (col, count = 1, default = None)minste (* cols), verlicht (col)
lengte (col)levenshtein (links, rechts)

pyspark.sql.types: deze klassetypes die worden gebruikt bij het converteren van gegevenstypes. Met deze klasse kan een SQL-object worden omgezet in een native Python-object.

  • pyspark.sql.streaming: deze klasse behandelt al die vragen die op de achtergrond worden uitgevoerd. Al deze methoden die in de streaming worden gebruikt, zijn stateloos. De hierboven gegeven ingebouwde functies zijn beschikbaar om met de dataframes te werken. Deze functies kunnen worden gebruikt door te verwijzen naar de functiebibliotheek.
  • pyspark.sql.Window: Alle methoden van deze klasse kunnen worden gebruikt bij het definiëren en werken met vensters in DataFrames.

Conclusie

Het is een van de tools die worden gebruikt op het gebied van kunstmatige intelligentie en machinaal leren. Het wordt door steeds meer bedrijven gebruikt voor analyse en machine learning. Deskundigen daarin zullen de komende tijd meer vraag hebben.

Aanbevolen artikelen

Dit is een handleiding voor PySpark SQL. Hier bespreken we wat pyspark SQL is, de functies, belangrijke toepassingen, modules en ingebouwde methoden. U kunt ook de volgende artikelen bekijken voor meer informatie -

  1. Spark DataFrame
  2. Spark Interview Vragen
  3. SQL Date-functie
  4. SQL HEBT clausule
  5. Apache Spark-architectuur met twee implementaties
  6. Hoe DISTINCT in Oracle te gebruiken?