Tämä viesti on kirjoitettu yhdessä Capitecin Preshen Goobiahin ja Johan Olivierin kanssa.
Apache Spark on laajalti käytetty avoimen lähdekoodin hajautettu prosessointijärjestelmä, joka tunnetaan suurten tietotyökuormien käsittelystä. Se löytää usein sovelluksen Spark-kehittäjien keskuudessa Amazonin EMR, Amazon Sage Maker, AWS-liima ja mukautettuja Spark-sovelluksia.
Amazonin punainen siirto tarjoaa saumattoman integraation Apache Sparkin kanssa, minkä ansiosta voit helposti käyttää Redshift-tietojasi sekä Amazon Redshiftin varaamissa klustereissa että Amazon Redshift Serverless. Tämä integraatio laajentaa AWS-analytiikka- ja koneoppimisratkaisujen (ML) mahdollisuuksia, jolloin tietovarasto on käytettävissä laajemman valikoiman sovelluksia.
Kanssa Amazon Redshift -integraatio Apache Sparkille, voit nopeasti aloittaa ja kehittää Spark-sovelluksia vaivattomasti käyttämällä suosittuja kieliä, kuten Java, Scala, Python, SQL ja R. Sovelluksesi voivat lukea saumattomasti Amazon Redshift -tietovarastostasi ja kirjoittaa siihen säilyttäen samalla optimaalisen suorituskyvyn ja tapahtumien johdonmukaisuuden. Lisäksi voit hyötyä suorituskyvyn parannuksista push-down-optimoinneilla, mikä parantaa toimintojesi tehokkuutta.
Capitec, Etelä-Afrikan suurin vähittäispankki, jolla on yli 21 miljoonaa vähittäispankkiasiakasta, pyrkii tarjoamaan yksinkertaisia, edullisia ja helposti saatavilla olevia rahoituspalveluita auttaakseen eteläafrikkalaisia pankkeja, jotta he voivat elää paremmin. Tässä viestissä keskustelemme avoimen lähdekoodin Amazon Redshift -liittimen onnistuneesta integroinnista Capitecin jaettujen palvelujen Feature Platform -tiimin toimesta. Amazon Redshift -integraation hyödyntämisen seurauksena Apache Sparkissa kehittäjien tuottavuus kasvoi 10-kertaiseksi, ominaisuuksien sukupolven putkistot virtaviivaistettiin ja tietojen päällekkäisyys väheni nollaan.
Liiketoimintamahdollisuus
Capitecin vähittäisluottoosastoilla on käytettävissä 19 ennakoivaa mallia 93 AWS Glue -liimalla rakennetun ominaisuuden hyödyntämiseen. Ominaisuustietueet on rikastettu Amazon Redshiftiin tallennetuilla faktoilla ja ulottuvuuksilla. Apache PySpark valittiin luomaan ominaisuuksia, koska se tarjoaa nopean, hajautetun ja skaalautuvan mekanismin eri lähteistä peräisin olevien tietojen kiistelemiseen.
Näillä tuotantoominaisuuksilla on keskeinen rooli reaaliaikaisten määräaikaisten lainahakemusten, luottokorttihakemusten, erän kuukausittaisen luottokäyttäytymisen seurannan ja eräpäivien palkantunnistuksen mahdollistamisessa yrityksen sisällä.
Tiedonhankinnan ongelma
PySpark-tietoputkien luotettavuuden varmistamiseksi on tärkeää, että Enterprise Data Warehouse (EDW) -tietovarastoon on tallennettu johdonmukaisia tietuetason tietoja sekä dimensio- että faktataulukoista. Nämä taulukot yhdistetään sitten Enterprise Data Laken (EDL) taulukoihin suorituksen aikana.
Ominaisuuden kehittämisen aikana tietosuunnittelijat tarvitsevat saumattoman käyttöliittymän EDW:hen. Tämän käyttöliittymän avulla he voivat käyttää ja integroida tarvittavat tiedot EDW:stä tietoputkiin, mikä mahdollistaa ominaisuuksien tehokkaan kehittämisen ja testauksen.
Edellinen ratkaisuprosessi
Edellisessä ratkaisussa tuotetiimin tietoinsinöörit käyttivät 30 minuuttia ajoa kohden paljastaakseen Redshift-tiedot manuaalisesti Sparkille. Vaiheet sisälsivät seuraavat:
- Muodosta predikoitu kysely Pythonissa.
- Lähetä PURKAA kysely kautta Amazon Redshift Data API.
- Luettelotiedot AWS Glue Data Catalogissa AWS SDK:n kautta Pandasille näytteenoton avulla.
Tämä lähestymistapa aiheutti ongelmia suurille tietojoukoille, vaati toistuvaa ylläpitoa alustatiimiltä ja oli monimutkaista automatisoida.
Nykyisen ratkaisun yleiskatsaus
Capitec pystyi ratkaisemaan nämä ongelmat Amazon Redshift -integraation avulla Apache Sparkille ominaisuuksien sukupolven putkilinjojen sisällä. Arkkitehtuuri on määritelty seuraavassa kaaviossa.
Työnkulku sisältää seuraavat vaiheet:
- Sisäiset kirjastot asennetaan AWS Glue PySpark -työhön kautta AWS-koodi.
- AWS-liimatyö noutaa Redshift-klusterin tunnistetiedot AWS -salaisuuksien hallinta ja määrittää Amazon Redshift -yhteyden (lisää klusterin tunnistetiedot, purkupaikat, tiedostomuodot) jaetun sisäisen kirjaston kautta. Amazon Redshift -integraatio Apache Sparkille tukee myös käyttöä AWS-henkilöllisyyden ja käyttöoikeuksien hallinta (IAM) osoitteeseen noutaa kirjautumistiedot ja muodosta yhteys Amazon Redshift -palveluun.
- Spark-kysely käännetään Amazon Redshift -optimoiduksi kyselyksi ja lähetetään EDW:lle. Tämä saavutetaan Amazon Redshift -integraatiolla Apache Sparkille.
- EDW-tietojoukko puretaan väliaikaiseen etuliitteeseen an Amazonin yksinkertainen tallennuspalvelu (Amazon S3)-kauha.
- S3-ämpäri EDW-tietojoukko ladataan Spark-toimittajiin Amazon Redshift -integraation kautta Apache Sparkille.
- EDL-tietojoukko ladataan Spark-toimittajiin AWS-liimatietokatalogin kautta.
Nämä komponentit toimivat yhdessä varmistaakseen, että tietosuunnittelijoilla ja tuotantotietoputkilla on tarvittavat työkalut Amazon Redshift -integraation toteuttamiseen Apache Sparkille, kyselyjen suorittamiseen ja tietojen purkamisen helpottamiseksi Amazon Redshiftistä EDL:ään.
Amazon Redshift -integroinnin käyttäminen Apache Sparkille AWS Glue 4.0:ssa
Tässä osiossa esittelemme Amazon Redshift -integraation hyödyllisyyttä Apache Sparkille rikastamalla S3-datajärvessä sijaitsevaa lainahakemustaulukkoa PySparkin Redshift-tietovaraston asiakastiedoilla.
- dimclient
Amazon Redshiftin taulukko sisältää seuraavat sarakkeet:
- Asiakasavain – INT8
- ClientAltKey – VARCHAR50
- PartyIdentifierNumber – VARCHAR20
- ClientCreateDate - PÄIVÄMÄÄRÄ
- Peruutettu – INT2
- RowIsCurrent – INT2
- loanapplication
AWS Glue Data Catalogin taulukko sisältää seuraavat sarakkeet:
- RecordID – SUURI
- LogDate - AIKALEIMA
- PartyIdentifierNumber – STRING
Redshift-taulukko luetaan Amazon Redshift -integraation kautta Apache Sparkille ja tallennetaan välimuistiin. Katso seuraava koodi:
Lainahakemustietueet luetaan S3-tietojärvestä ja niitä rikastetaan dimclient
taulukko Amazon Redshift -tiedoista:
Tämän seurauksena lainahakemustietue (S3-tietojärvestä) rikastuu ClientCreateDate
sarake (Amazon Redshiftistä).
Kuinka Amazon Redshift -integraatio Apache Sparkille ratkaisee tiedonhankintaongelman
Amazon Redshift -integraatio Apache Sparkille ratkaisee tehokkaasti tiedonhankintaongelman seuraavien mekanismien avulla:
- Juuri ajoissa luettavaa – Amazon Redshift -integraatio Apache Spark -liittimelle lukee Redshift-taulukot just-in-time tavalla, mikä varmistaa tietojen ja skeeman johdonmukaisuuden. Tämä on erityisen arvokasta Tyypin 2 hitaasti muuttuva ulottuvuus (SCD) ja aikajänne, joka kerää tilannekuvan faktoja. Yhdistämällä nämä Redshift-taulukot EDL:n lähdejärjestelmän AWS Glue Data Catalog -taulukoihin PySpark-tuotantoputkistojen sisällä, liitin mahdollistaa tietojen saumattoman integroinnin useista lähteistä säilyttäen samalla tietojen eheyden.
- Optimoidut punasiirtymäkyselyt – Apache Sparkin Amazon Redshift -integraatiolla on ratkaiseva rooli Spark-kyselysuunnitelman muuntamisessa optimoidusta Redshift-kyselystä. Tämä muunnosprosessi yksinkertaistaa tuotetiimin kehityskokemusta noudattamalla tiedon paikallisuusperiaatetta. Optimoidut kyselyt käyttävät Amazon Redshiftin ominaisuuksia ja suorituskyvyn optimointeja, mikä varmistaa tehokkaan tiedonhaun ja käsittelyn Amazon Redshiftistä PySpark-putkistoja varten. Tämä auttaa virtaviivaistamaan kehitysprosessia ja parantamaan samalla tiedonhankintatoimintojen yleistä suorituskykyä.
Parhaan suorituskyvyn saavuttaminen
Amazon Redshift -integraatio Apache Sparkille käyttää automaattisesti predikaattia ja kyselyä suorituskyvyn optimoimiseksi. Voit parantaa suorituskykyä käyttämällä tämän integroinnin purkamiseen käytettyä oletusparkettimuotoa.
Katso lisätietoja ja koodinäytteitä Uutta – Amazon Redshift -integraatio Apache Sparkilla.
Ratkaisun edut
Integraation käyttöönotto toi tiimille useita merkittäviä etuja:
- Parannettu kehittäjien tuottavuus – Integraation tarjoama PySpark-käyttöliittymä lisäsi kehittäjien tuottavuutta kertoimella 10, mikä mahdollisti sujuvamman vuorovaikutuksen Amazon Redshiftin kanssa.
- Tietojen päällekkäisyyden poistaminen – Datajärven päällekkäiset ja AWS Glue -luetteloidut Redshift-taulukot poistettiin, mikä johti virtaviivaisempaan tietoympäristöön.
- Pienempi EDW-kuorma – Integrointi helpotti valikoivaa tietojen purkamista, minimoi EDW:n kuormituksen poistamalla vain tarvittavat tiedot.
Käyttämällä Amazon Redshift -integraatiota Apache Sparkille, Capitec on tasoittanut tietä parannetulle tietojenkäsittelylle, parantuneelle tuottavuudelle ja tehokkaammalle ominaisuussuunnitteluekosysteemille.
Yhteenveto
Tässä viestissä keskustelimme siitä, kuinka Capitec-tiimi onnistui toteuttamaan Apache Spark Amazon Redshift -integroinnin Apache Sparkille yksinkertaistaakseen ominaisuuksien laskennan työnkulkuja. He korostivat hajautettujen ja modulaaristen PySpark-tietoputkien hyödyntämisen tärkeyttä ennakoivien malliominaisuuksien luomisessa.
Tällä hetkellä Amazon Redshift -integraatiota Apache Sparkille hyödyntää 7 tuotantotietoputkistoa ja 20 kehitysputkia, mikä osoittaa sen tehokkuuden Capitecin ympäristössä.
Jatkossa Capitecin jaetun palvelun Feature Platform -tiimi aikoo laajentaa Amazon Redshift -integraation käyttöönottoa Apache Sparkille eri liiketoiminta-alueilla tavoitteenaan parantaa edelleen tietojenkäsittelykykyä ja edistää tehokkaita ominaisuussuunnittelukäytäntöjä.
Lisätietoja Amazon Redshift -integraation käyttämisestä Apache Sparkille on seuraavissa resursseissa:
Tietoja Tekijät
Preshen Goobiah on Capitecin Feature Platformin johtava koneoppimisinsinööri. Hän on keskittynyt suunnittelemaan ja rakentamaan Feature Store -komponentteja yrityskäyttöön. Vapaa-ajallaan hän nauttii lukemisesta ja matkustamisesta.
Johan Olivier on Capitecin mallialustan vanhempi koneoppimisinsinööri. Hän on yrittäjä ja ongelmanratkaisun harrastaja. Hän pitää musiikista ja seurustelusta vapaa-ajallaan.
Sudipta Bagchi on vanhempi asiantuntijaratkaisujen arkkitehti Amazon Web Servicesissä. Hänellä on yli 12 vuoden kokemus datasta ja analytiikasta, ja hän auttaa asiakkaita suunnittelemaan ja rakentamaan skaalautuvia ja tehokkaita analytiikkaratkaisuja. Työn ulkopuolella hän rakastaa juoksemista, matkustamista ja kriketin pelaamista. Ota yhteyttä häneen LinkedIn.
Syed Humair on Senior Analytics Specialist Solutions -arkkitehti Amazon Web Servicesissä (AWS). Hänellä on yli 17 vuoden kokemus dataan ja tekoälyyn/ML:ään keskittyvästä yritysarkkitehtuurista, joka auttaa AWS-asiakkaita maailmanlaajuisesti vastaamaan liiketoiminta- ja teknisiin vaatimuksiinsa. Voit olla yhteydessä häneen LinkedIn.
Vuyisa Maswana on vanhempi ratkaisuarkkitehti AWS:ssä Kapkaupungissa. Vuyisa keskittyy vahvasti auttamaan asiakkaita rakentamaan teknisiä ratkaisuja liiketoiminnan ongelmien ratkaisemiseksi. Hän on tukenut Capitecia heidän AWS-matkallaan vuodesta 2019 lähtien.
- SEO-pohjainen sisällön ja PR-jakelu. Vahvista jo tänään.
- PlatoData.Network Vertical Generatiivinen Ai. Vahvista itseäsi. Pääsy tästä.
- PlatoAiStream. Web3 Intelligence. Tietoa laajennettu. Pääsy tästä.
- PlatoESG. hiili, CleanTech, energia, ympäristö, Aurinko, Jätehuolto. Pääsy tästä.
- PlatonHealth. Biotekniikan ja kliinisten kokeiden älykkyys. Pääsy tästä.
- Lähde: https://aws.amazon.com/blogs/big-data/simplifying-data-processing-at-capitec-with-amazon-redshift-integration-for-apache-spark/
- :on
- :On
- $ YLÖS
- 06
- 1
- 10
- 100
- 12
- 16
- 17
- 19
- 20
- 2019
- 30
- 7
- a
- pystyy
- pääsy
- saatavilla
- Suoritetut
- poikki
- lisä-
- lisäinformaatio
- Lisäksi
- osoite
- osoitteet
- kiinni
- Hyväksyminen
- edullinen
- AI / ML
- Tähtäimessä
- tavoitteet
- Salliminen
- mahdollistaa
- Myös
- Amazon
- Amazon Web Services
- Amazon Web Services (AWS)
- keskuudessa
- an
- Analytics
- ja
- Apache
- Apache Spark
- Hakemus
- sovellukset
- sovelletaan
- lähestymistapa
- arkkitehtuuri
- OVAT
- alueet
- AS
- At
- automatisoida
- automaattisesti
- AWS
- AWS-liima
- Pankki
- Pankkitoiminta
- perustua
- koska
- käyttäytyminen
- hyödyttää
- Hyödyt
- PARAS
- Paremmin
- välillä
- Suurimmat
- Boostatut
- sekä
- laajempaa
- rakentaa
- Rakentaminen
- rakennettu
- liiketoiminta
- by
- CAN
- kyvyt
- niemi
- kortti
- luettelo
- muuttuviin
- asiakas
- asiakkaat
- Cluster
- CO
- koodi
- Sarake
- Pylväät
- yhdistely
- monimutkainen
- osat
- laskeminen
- kytkeä
- liitäntä
- johdonmukainen
- sisältää
- tausta
- Muuntaminen
- muuntaminen
- luoda
- Luominen
- Valtakirja
- pisteitä
- luottokortti
- kriketti
- ratkaiseva
- asiakassuhde
- Asiakkaat
- päivittäin
- tiedot
- Datajärvi
- tietojenkäsittely
- tietovarasto
- aineistot
- hajautettu
- oletusarvo
- määritelty
- osoittaa
- Malli
- suunnittelu
- yksityiskohdat
- kehittää
- Kehittäjä
- kehittäjille
- Kehitys
- eri
- Ulottuvuus
- mitat
- pohtia
- keskusteltiin
- jaettu
- useat
- helposti
- ekosysteemi
- tehokkaasti
- tehokkuuden
- tehokkuus
- tehokas
- vaivattomasti
- eliminoitu
- korostettiin
- mahdollistaa
- mahdollistaa
- insinööri
- Tekniikka
- Engineers
- parantaa
- parantaa
- rikastettu
- rikastuttava
- varmistaa
- varmistamalla
- yritys
- intoilija
- Yrittäjä
- ympäristö
- olennainen
- Eetteri (ETH)
- olemassa
- Laajentaa
- laajenee
- experience
- helpottamaan
- helpotettava
- tosiasia
- tekijä
- tosiasiat
- FAST
- Ominaisuus
- Ominaisuudet
- filee
- taloudellinen
- rahoituspalvelut
- löydöt
- Keskittää
- keskityttiin
- tarkennus
- jälkeen
- varten
- muoto
- Eteenpäin
- tiheä
- alkaen
- tehtävät
- edelleen
- Saada
- sukupolvi
- saada
- GitHub
- Maailmanlaajuisesti
- Käsittely
- Olla
- he
- auttaa
- auttaa
- auttaa
- häntä
- hänen
- Miten
- HTML
- http
- HTTPS
- IAM
- Tunnistaminen
- Identiteetti
- toteuttaa
- täytäntöön
- tuoda
- merkitys
- parani
- parannuksia
- in
- mukana
- sisältää
- kasvoi
- tiedot
- yhdistää
- integraatio
- eheys
- vuorovaikutus
- liitäntä
- sisäinen
- tulee
- kysymykset
- IT
- SEN
- Jaava
- Job
- yhdistää
- liittyi
- matka
- järvi
- kielet
- suuri
- laaja
- johtaa
- oppiminen
- vasemmalle
- kirjastot
- Kirjasto
- pitää
- elää
- kuormitus
- lainata
- sijainnit
- rakastaa
- kone
- koneoppiminen
- ylläpitäminen
- huolto
- Tekeminen
- tapa
- käsin
- mekanismi
- mekanismit
- miljoona
- minimointia
- pöytäkirja
- ML
- malli
- mallit
- modulaarinen
- seuranta
- kuukausittain
- lisää
- tehokkaampi
- moninkertainen
- Musiikki
- välttämätön
- of
- Tarjoukset
- Olivier
- on
- vain
- avata
- avoimen lähdekoodin
- Operations
- optimaalinen
- Optimoida
- optimoitu
- tilata
- ulkopuolella
- yli
- yleinen
- pandas
- erityisesti
- Salasana
- varten
- suorituskyky
- suunnitelma
- suunnitelmat
- foorumi
- Platon
- Platonin tietotieto
- PlatonData
- Pelaa
- pelaa
- soittaa
- Suosittu
- aiheuttamia
- mahdollisuuksia
- Kirje
- käytännöt
- ennustavan
- edellinen
- periaate
- Ongelma
- ongelmanratkaisu
- ongelmia
- prosessi
- käsittely
- Tuotteet
- tuotanto
- tuottavuus
- edistää
- toimittaa
- mikäli
- Python
- kyselyt
- nopeasti
- R
- alue
- Lue
- Lukeminen
- reaaliaikainen
- ennätys
- asiakirjat
- toistuva
- Vähentynyt
- katso
- luotettavuus
- kuuluisa
- edellyttää
- tarvitaan
- vaatimukset
- ratkaisee
- Esittelymateriaalit
- johtua
- Saatu ja
- vähittäiskauppa
- Vähittäispankkitoiminta
- Rooli
- ajaa
- juoksu
- palkka
- SC
- Scala
- skaalautuva
- laajuus
- sdk
- saumaton
- saumattomasti
- salaisuuksia
- Osa
- nähdä
- valittu
- valitsemalla
- valikoiva
- vanhempi
- Palvelut
- Setit
- useat
- yhteinen
- esittelylle
- merkittävä
- Yksinkertainen
- yksinkertaistaa
- yksinkertaistaminen
- koska
- Hitaasti
- tasaisempi
- Kuva
- So
- seurusteluun
- ratkaisu
- Ratkaisumme
- SOLVE
- Ratkaisee
- lähde
- Lähteet
- Sourcing
- Etelä
- Kipinä
- asiantuntija
- käytetty
- SQL
- alkoi
- Askeleet
- Levytila
- tallennettu
- tehostaa
- virtaviivainen
- jono
- vahva
- toimitettu
- onnistunut
- Onnistuneesti
- Tuetut
- Tukee
- järjestelmä
- taulukko
- joukkue-
- Tekninen
- tilapäinen
- Testaus
- että
- -
- Lähde
- heidän
- Niitä
- sitten
- Nämä
- ne
- tätä
- Kautta
- aika
- että
- yhdessä
- työkalut
- kaupunki
- kaupallisen
- Matkustaminen
- URL
- käyttää
- käytetty
- käyttämällä
- hyödyllisyys
- hyödynnetty
- Hyödyntämällä
- arvokas
- kautta
- Varasto
- oli
- Tapa..
- we
- verkko
- verkkopalvelut
- olivat
- vaikka
- with
- sisällä
- Referenssit
- työskennellä yhdessä
- työnkulku
- työnkulkuja
- työskentely
- kirjoittaa
- vuotta
- tuotti
- te
- Sinun
- zephyrnet
- nolla-