Amazonska Atena je interaktivna poizvedovalna storitev, ki olajša analizo podatkov v Preprosta storitev shranjevanja Amazon (Amazon S3) in viri podatkov, ki se nahajajo v AWS, na mestu uporabe ali drugih sistemih v oblaku, ki uporabljajo SQL ali Python. Athena je zgrajena na odprtokodnih motorjih Trino in Presto ter ogrodjih Apache Spark, pri čemer ni potrebe po zagotavljanju ali konfiguraciji. Athena je brez strežnika, zato ni infrastrukture za upravljanje in plačate samo za poizvedbe, ki jih izvedete.
Apaška ledena gora je oblika odprte tabele za zelo velike analitične nabore podatkov. Upravlja velike zbirke datotek kot tabel in podpira sodobne operacije analitičnega podatkovnega jezera, kot so poizvedbe za vstavljanje, posodabljanje, brisanje in potovanje na ravni zapisa. Athena podpira poizvedbe za branje, potovanje skozi čas, pisanje in DDL za tabele Apache Iceberg, ki uporabljajo format Apache Parquet za podatke in Katalog podatkov o lepilu AWS za njihovo metashrambo.
Feature inženiring je postopek prepoznavanja in preoblikovanja neobdelanih podatkov (slik, besedilnih datotek, videoposnetkov itd.), zapolnjevanja manjkajočih podatkov in dodajanja enega ali več pomembnih podatkovnih elementov za zagotavljanje konteksta, tako da se lahko model strojnega učenja (ML) uči iz tega. Označevanje podatkov je potrebno za različne primere uporabe, vključno z napovedovanjem, računalniškim vidom, obdelavo naravnega jezika in prepoznavanjem govora.
V kombinaciji z zmožnostmi Athene Apache Iceberg zagotavlja poenostavljen potek dela za podatkovne znanstvenike za ustvarjanje novih podatkovnih funkcij, ne da bi bilo treba kopirati ali ponovno ustvariti celoten nabor podatkov. Funkcije lahko ustvarite z uporabo standardnega SQL na Atheni brez uporabe katere koli druge storitve za inženiring funkcij. Podatkovni znanstveniki lahko skrajšajo čas, porabljen za pripravo in kopiranje nizov podatkov, in se namesto tega osredotočijo na inženiring funkcij podatkov, eksperimentiranje in analizo podatkov v velikem obsegu.
V tej objavi pregledamo prednosti uporabe Athene s formatom odprte tabele Apache Iceberg in kako poenostavlja običajne naloge inženiringa funkcij za podatkovne znanstvenike. Demonstriramo, kako lahko Athena pretvori obstoječo tabelo v formatu Apache Iceberg, nato doda stolpce, izbriše stolpce in spremeni podatke v tabeli brez ponovnega ustvarjanja ali kopiranja nabora podatkov ter uporabi te zmožnosti za ustvarjanje novih funkcij v tabelah Apache Iceberg.
Pregled rešitev
Podatkovni znanstveniki so na splošno navajeni delati z velikimi zbirkami podatkov. Nabori podatkov so običajno shranjeni v JSON, CSV, ORC ali Parket Apache ali podobni formati, optimizirani za branje, za hitro branje. Podatkovni znanstveniki pogosto ustvarijo nove podatkovne funkcije in jih zapolnijo z združenimi in pomožnimi podatki. V preteklosti je bila ta naloga dosežena z ustvarjanjem pogleda na vrhu tabele z osnovnimi podatki v formatu Apache Parquet, kjer so bili taki stolpci in podatki dodani med izvajanjem ali z ustvarjanjem nove tabele z dodatnimi stolpci. Čeprav je ta potek dela zelo primeren za številne primere uporabe, je neučinkovit za velike nabore podatkov, ker bi bilo treba podatke generirati med izvajanjem ali pa bi bilo treba nabore podatkov kopirati in preoblikovati.
Athena je predstavila Transakcija ACID (Atomicity, Consistency, Isolation, Durability). zmožnosti, ki dodajajo operacije INSERT, UPDATE, DELETE, MERGE in potovanja skozi čas, zgrajene na Tabele Apache Iceberg. Te zmožnosti omogočajo podatkovnim znanstvenikom, da ustvarijo nove podatkovne funkcije in spustijo obstoječe podatkovne funkcije na obstoječe nabore podatkov, ne da bi skrbeli za kopiranje ali preoblikovanje nabora podatkov ali njegovo abstrahiranje s pogledom. Podatkovni znanstveniki se lahko osredotočijo na inženirsko delo in se izognejo kopiranju in preoblikovanju naborov podatkov.
Operacija Athena Iceberg UPDATE zapiše datoteke za brisanje položaja Apache Iceberg in na novo posodobljene vrstice kot podatkovne datoteke v isti transakciji. Zapise lahko popravite z enim samim stavkom UPDATE.
Z izdajo motorja Athena različice 3 so zmogljivosti za tabele Apache Iceberg izboljšane s podporo za operacije, kot so USTVARI TABELO KOT IZBIRO (CTAS) in ukaze MERGE, ki poenostavijo upravljanje življenjskega cikla vaših podatkov Iceberg. CTAS omogoča hitro in učinkovito ustvarjanje tabel iz drugih formatov, kot sta Apache Paquet in ZLIJ SE V pogojno posodobi, izbriše ali vstavi vrstice v tabelo Iceberg. En sam stavek lahko združuje dejanja posodobitve, brisanja in vstavljanja.
Predpogoji
Nastavite delovno skupino Athena z motorjem Athena različice 3 za uporabo ukazov CTAS in MERGE s tabelo Apache Iceberg. Za nadgradnjo obstoječega mehanizma Athena na različico 3 v vaši delovni skupini Athena sledite navodilom v Nadgradite na motor Athena različice 3, da povečate zmogljivost poizvedb in dostopate do več analitičnih funkcij ali se sklicujte na Spreminjanje različice motorja v konzoli Athena.
Podatkovni niz
Za predstavitev uporabljamo tabelo Apache Parquet, ki vsebuje več milijonov zapisov naključno porazdeljenih fiktivnih podatkov o prodaji iz zadnjih nekaj let, shranjenih v vedru S3. Prenos nabor podatkov, ga razpakirajte v lokalni računalnik in naložite v vedro S3. V tej objavi smo naložili naš nabor podatkov v s3://sample-iceberg-datasets-xxxxxxxxxxx/sampledb/orders_and_customers/
.
Naslednja tabela prikazuje postavitev tabele customer_orders
.
Ime stolpca | Vrsta podatkov | Opis |
ukazni ključ | niz | Številka naročila za naročilo |
custkey | niz | Identifikacijska številka stranke |
status naročila | niz | Status naročila |
skupna cena | niz | Skupna cena naročila |
datum naročila | niz | Datum naročila |
orderpriority | niz | Prednost naročila |
uradnik | niz | Ime referenta, ki je naročilo obdelal |
shippriority | niz | Prednost pri pošiljanju |
Ime | niz | Ime stranke |
Naslov | niz | Naslov stranke |
nationkey | niz | Ključ države stranke |
telefon | niz | Telefonska številka stranke |
acctbal | niz | Stanje na računu stranke |
mktsegment | niz | Tržni segment strank |
Izvedite inženiring funkcij
Kot podatkovni znanstvenik želimo delovati funkcijski inženiring podatke o naročilih strank tako, da v obstoječem naboru podatkov dodate izračunane enoletne skupne nakupe in enoletne povprečne nakupe za vsako stranko. Za demonstracijske namene smo ustvarili customer_orders
tabela v sampledb
bazo podatkov z Atheno, kot je prikazano v naslednjem ukazu DDL. (Uporabite lahko katerega koli od obstoječih naborov podatkov in sledite korakom, omenjenim v tej objavi.) The customer_orders
nabor podatkov je bil ustvarjen in shranjen na lokaciji vedra S3 s3://sample-iceberg-datasets-xxxxxxxxxxx/sampledb/orders_and_customers/
v obliki parketa. Ta tabela ni tabela Apache Iceberg.
Preverite podatke v tabeli tako, da zaženete poizvedbo:
V to tabelo želimo dodati nove funkcije za globlje razumevanje prodaje strank, kar lahko povzroči hitrejše usposabljanje modela in dragocenejše vpoglede. Če želite naboru podatkov dodati nove funkcije, pretvorite customer_orders
Tabela Athena do mize Apache Iceberg na Atheni. Izdaja a CTAS stavek poizvedbe za ustvarjanje nove tabele s formatom Apache Iceberg iz customer_orders
tabela. Pri tem je dodana nova funkcija za pridobitev skupnega zneska nakupa v preteklem letu (največje leto nabora podatkov) za vsako stranko.
V naslednji poizvedbi CTAS je nov stolpec z imenom one_year_sales_aggregate
s privzeto vrednostjo kot 0.0
vrste podatkov double
se doda in table_type
nastavljena na ICEBERG
:
Izdajte naslednjo poizvedbo, da preverite podatke v tabeli Apache Iceberg z novim stolpcem one_year_sales_aggregate
vrednosti kot 0.0
:
Želimo zapolniti vrednosti za novo funkcijo one_year_sales_aggregate
v naboru podatkov, da dobite skupni znesek nakupa za vsako stranko na podlagi njihovih nakupov v preteklem letu (največje leto nabora podatkov). Izdajte stavek poizvedbe MERGE za tabelo Apache Iceberg z uporabo Athene za zapolnitev vrednosti za one_year_sales_aggregate
Funkcija:
Izdajte naslednjo poizvedbo, da potrdite posodobljeno vrednost skupne porabe posamezne stranke v preteklem letu:
Odločili smo se dodati še eno funkcijo v obstoječo tabelo Apache Iceberg za izračun in shranjevanje povprečnega zneska nakupa v preteklem letu za vsako stranko. Izdajte stavek poizvedbe ALTER, da dodate nov stolpec v obstoječo tabelo za funkcijo one_year_sales_average
:
Preden zapolnite vrednosti za to novo funkcijo, lahko nastavite privzeto vrednost za funkcijo one_year_sales_average
do 0.0
. Z uporabo iste tabele Apache Iceberg na Atheni izdajte stavek poizvedbe UPDATE, da zapolnite vrednost za novo funkcijo kot 0.0
:
Izdajte naslednjo poizvedbo, da preverite, ali je posodobljena vrednost za povprečno porabo posamezne stranke v preteklem letu nastavljena na 0.0
:
Zdaj želimo zapolniti vrednosti za novo funkcijo one_year_sales_average
v naboru podatkov, da dobite povprečni znesek nakupa za vsako stranko na podlagi njihovih nakupov v preteklem letu (največje leto nabora podatkov). Izdajte stavek poizvedbe MERGE za obstoječo tabelo Apache Iceberg v Atheni z uporabo mehanizma Athena za zapolnitev vrednosti za funkcijo one_year_sales_average
:
Izdajte naslednjo poizvedbo, da preverite posodobljene vrednosti za povprečno porabo posamezne stranke:
Ko so naboru podatkov dodane dodatne funkcije podatkov, podatkovni znanstveniki običajno nadaljujejo z usposabljanjem modelov ML in sklepajo z uporabo Amazon Sagemaker ali enakovrednega nabora orodij.
zaključek
V tej objavi smo pokazali, kako izvajati inženiring funkcij z Atheno z Apache Iceberg. Prikazali smo tudi uporabo poizvedbe CTAS za ustvarjanje tabele Apache Iceberg v Atheni iz obstoječega nabora podatkov v formatu Apache Parquet, dodajanje novih funkcij v obstoječo tabelo Apache Iceberg v Atheni s poizvedbo ALTER ter uporabo izjav poizvedbe UPDATE in MERGE za posodobitev vrednosti funkcij obstoječih stolpcev.
Priporočamo vam, da uporabite poizvedbe CTAS za hitro in učinkovito ustvarjanje tabel ter uporabite stavek poizvedbe MERGE za sinhronizacijo tabel v enem koraku, da poenostavite priprave podatkov in posodabljanje nalog pri preoblikovanju funkcij z uporabo Athene z Apache Iceberg. Če imate komentarje ali povratne informacije, jih pustite v razdelku za komentarje.
O avtorjih
Vivek Gautam je podatkovni arhitekt s specializacijo za podatkovna jezera pri AWS Professional Services. Sodeluje s podjetniškimi strankami, ki gradijo podatkovne izdelke, analitične platforme in rešitve na AWS. Ko ne gradi in ne oblikuje sodobnih podatkovnih platform, je Vivek navdušenec nad hrano, ki tudi rad raziskuje nove popotniške destinacije in hodi na pohode.
Mihail Vajnštejn je arhitekt rešitev pri Amazon Web Services. Mikhail sodeluje s strankami v zdravstvu in znanosti o življenju, da bi ustvaril rešitve, ki pomagajo izboljšati rezultate bolnikov. Mikhail je specializiran za storitve podatkovne analitike.
Naresh Gautam je vodja analitike podatkov in AI/ML pri AWS z 20-letnimi izkušnjami, ki strankam z veseljem pomaga oblikovati visoko razpoložljive, visoko zmogljive in stroškovno učinkovite rešitve podatkovne analitike in AI/ML, da bi strankam omogočili odločanje na podlagi podatkov . V prostem času se ukvarja z meditacijo in kuhanjem.
Harsha Tadiparthi je specializirani glavni arhitekt rešitev, analitika pri AWS. Uživa v reševanju zapletenih problemov strank v bazah podatkov in analitiki ter zagotavlja uspešne rezultate. Zunaj službe rad preživlja čas z družino, gleda filme in potuje, kadar je le mogoče.
- Distribucija vsebine in PR s pomočjo SEO. Okrepite se še danes.
- EVM Finance. Poenoten vmesnik za decentralizirane finance. Dostopite tukaj.
- Quantum Media Group. IR/PR ojačan. Dostopite tukaj.
- PlatoAiStream. Podatkovna inteligenca Web3. Razširjeno znanje. Dostopite tukaj.
- vir: https://aws.amazon.com/blogs/big-data/accelerate-data-science-feature-engineering-on-transactional-data-lakes-using-amazon-athena-with-apache-iceberg/
- :ima
- : je
- :ne
- :kje
- $GOR
- 10
- 100
- 12
- 17
- 20
- 20 let
- 23
- 27
- 7
- a
- O meni
- pospeši
- dostop
- doseženo
- Račun
- dejavnosti
- dodajte
- dodano
- dodajanje
- Dodatne
- Naslov
- AI / ML
- Prav tako
- Čeprav
- Amazon
- Amazonska Atena
- Amazon SageMaker
- Amazon Web Services
- znesek
- an
- Analitični
- Analitično
- analitika
- analizirati
- analiziranje
- in
- Še ena
- kaj
- Apache
- Apache Spark
- SE
- AS
- At
- Na voljo
- povprečno
- izogniti
- AWS
- Strokovne storitve AWS
- temeljijo
- BE
- ker
- bilo
- Prednosti
- izgradnjo
- Building
- zgrajena
- by
- izračuna
- CAN
- Zmogljivosti
- primeri
- Razvrstitev
- Cloud
- Zbirke
- Stolpec
- Stolpci
- združujejo
- komentarji
- Skupno
- kompleksna
- Izračunajte
- računalnik
- Računalniška vizija
- konfiguracija
- Vsebuje
- ozadje
- pretvorbo
- kuhanje
- kopiranje
- Popravki
- stroškovno učinkovito
- ustvarjajo
- ustvaril
- Ustvarjanje
- stranka
- Stranke, ki so
- datum
- Podatkovna analiza
- Data jezero
- znanost o podatkih
- podatkovni znanstvenik
- Podatkov usmerjenih
- Baze podatkov
- baze podatkov
- nabor podatkov
- Datum
- odloča
- Odločanje
- globlje
- privzeto
- dostavo
- daje
- izkazati
- Dokazano
- oblikovanje
- destinacije
- porazdeljena
- tem
- podvojila
- Drop
- trajnost
- vsak
- lahka
- učinkovite
- učinkovito
- prizadevanje
- bodisi
- elementi
- opolnomočiti
- omogočajo
- spodbujanje
- Motor
- Inženiring
- Motorji
- okrepljeno
- Podjetje
- podjetniške stranke
- navdušenec
- Celotna
- Enakovredna
- Eter (ETH)
- obstoječih
- izkušnje
- raziskuje
- zunanja
- false
- družina
- FAST
- hitreje
- Feature
- Lastnosti
- povratne informacije
- datoteke
- Osredotočite
- sledi
- po
- hrana
- za
- format
- okviri
- brezplačno
- iz
- splošno
- ustvarila
- dobili
- Go
- skupina
- Hadoop
- Imajo
- he
- zdravstveno varstvo
- pomoč
- pomoč
- visokozmogljivo
- zelo
- Pohodi
- njegov
- Zgodovinsko
- Panj
- Kako
- Kako
- HTML
- HTTPS
- Identifikacija
- identifikacijo
- if
- slike
- izboljšanje
- in
- Vključno
- Povečajte
- neučinkovit
- Infrastruktura
- Vložki
- vpogledi
- Namesto
- Navodila
- interaktivno
- v
- Uvedeno
- izolacija
- vprašanje
- IT
- jpg
- json
- označevanje
- Jezero
- jezik
- velika
- Zadnja
- postavitev
- Vodja
- UČITE
- učenje
- pustite
- življenje
- Life Sciences
- življenski krog
- LIMIT
- lokalna
- kraj aktivnosti
- ljubi
- stroj
- strojno učenje
- Znamka
- IZDELA
- upravljanje
- upravljanje
- upravlja
- več
- Tržna
- ujema
- max
- smiselna
- Meditacija
- omenjeno
- Spoji
- milijonov
- manjka
- ML
- Model
- modeli
- sodobna
- spremenite
- več
- filmi
- Ime
- Imenovan
- Narod
- naravna
- Naravni jezik
- Obdelava Natural Language
- Nimate
- potrebujejo
- Novo
- nova funkcija
- Nove funkcije
- na novo
- št
- Številka
- of
- pogosto
- on
- ONE
- samo
- odprite
- open source
- Delovanje
- operacije
- or
- naročila
- Ostalo
- naši
- rezultatov
- zunaj
- preteklosti
- Plačajte
- opravlja
- performance
- telefon
- Platforme
- platon
- Platonova podatkovna inteligenca
- PlatoData
- prosim
- Stališče
- mogoče
- Prispevek
- priprava
- Cena
- , ravnateljica
- Težave
- Postopek
- obdelani
- obravnavati
- Izdelki
- strokovni
- zagotavljajo
- nakup
- nakupi
- namene
- Python
- poizvedbe
- hitro
- Surovi
- surovi podatki
- Preberi
- Priznanje
- zapis
- evidence
- zmanjša
- sprostitev
- obvezna
- povzroči
- pregleda
- ROW
- Run
- tek
- sagemaker
- prodaja
- Enako
- Lestvica
- Znanost
- ZNANOSTI
- Znanstvenik
- Znanstveniki
- Oddelek
- Brez strežnika
- Storitev
- Storitve
- nastavite
- več
- pokazale
- Razstave
- Podoben
- Enostavno
- poenostavljeno
- poenostavitev
- sam
- So
- rešitve
- Reševanje
- Viri
- Spark
- specialist
- specializirano
- govor
- Prepoznavanje govora
- preživeti
- porabljen
- SQL
- standardna
- Izjava
- Izjave
- Korak
- Koraki
- shranjevanje
- trgovina
- shranjeni
- racionalizirati
- String
- uspešno
- taka
- podpora
- Podpira
- sistemi
- miza
- Naloga
- Naloge
- da
- O
- Združitev
- njihove
- Njih
- POTEM
- Tukaj.
- te
- ta
- čas
- Čas potovanja
- do
- vrh
- Skupaj za plačilo
- Vlak
- usposabljanje
- transakcija
- transakcijski
- preoblikovati
- preoblikovanje
- potovanja
- tip
- osnovni
- razumevanje
- Nadgradnja
- posodobljeno
- posodobitve
- nadgradnja
- naložili
- uporaba
- uporabo
- navadno
- POTRDI
- dragocene
- vrednost
- Vrednote
- različnih
- preverjanje
- različica
- zelo
- preko
- Video posnetki
- Poglej
- Vizija
- želeli
- je
- Watch
- we
- web
- spletne storitve
- so bili
- kdaj
- kadar koli
- ki
- medtem
- WHO
- z
- brez
- delo
- potek dela
- Delovna skupina
- deluje
- deluje
- bi
- pisati
- leto
- let
- jo
- Vaša rutina za
- zefirnet
- Zip