Amazon Athena on interaktiivinen kyselypalvelu, jonka avulla on helppo analysoida tietoja Amazonin yksinkertainen tallennuspalvelu (Amazon S3) ja tietolähteet, jotka sijaitsevat AWS:ssä, on-premisesissa tai muissa pilvijärjestelmissä, joissa käytetään SQL:ää tai Pythonia. Athena on rakennettu avoimen lähdekoodin Trino- ja Presto-moottoreille sekä Apache Spark -kehyksille ilman provisiointia tai konfigurointia. Athena on palvelimeton, joten hallittavaa infrastruktuuria ei ole, ja maksat vain suorittamistasi kyselyistä.
Apache jäävuori on avoin taulukkomuoto erittäin suurille analyyttisille tietojoukoille. Se hallitsee suuria tiedostokokoelmia taulukoina ja tukee nykyaikaisia analyyttisiä datajärvitoimintoja, kuten tietuetason lisäys-, päivitys-, poisto- ja aikamatkakyselyitä. Athena tukee luku-, aikamatka-, kirjoitus- ja DDL-kyselyjä Apache Iceberg -taulukoille, jotka käyttävät Apache Parquet -muotoa tiedoille ja AWS-liimatietoluettelo metakauppaansa varten.
Ominaisuuksien suunnittelu on prosessi, jossa tunnistetaan ja muunnetaan raakadataa (kuvia, tekstitiedostoja, videoita ja niin edelleen), täytetään puuttuvat tiedot ja lisätään yksi tai useampi merkityksellinen tietoelementti kontekstin luomiseksi, jotta koneoppimismalli (ML) voi oppia siitä. Tietojen merkitsemistä tarvitaan eri käyttötapauksissa, mukaan lukien ennustaminen, tietokonenäkö, luonnollisen kielen käsittely ja puheentunnistus.
Yhdessä Athenan ominaisuuksien kanssa Apache Iceberg tarjoaa datatutkijoille yksinkertaistetun työnkulun uusien tietoominaisuuksien luomiseen tarvitsematta kopioida tai luoda uudelleen koko tietojoukkoa. Voit luoda ominaisuuksia tavallisella SQL:llä Athenassa ilman, että käytät muita palveluja ominaisuussuunnitteluun. Datatieteilijät voivat vähentää datajoukkojen valmisteluun ja kopioimiseen kuluvaa aikaa ja keskittyä sen sijaan dataominaisuuksien suunnitteluun, kokeiluun ja datan mittakaavaan analysoimiseen.
Tässä viestissä tarkastellaan Athenen käytön etuja Apache Iceberg -avoin taulukkomuodon kanssa ja kuinka se yksinkertaistaa datatieteilijöiden yleisiä ominaisuuksien suunnittelutehtäviä. Esittelemme, kuinka Athena voi muuntaa olemassa olevan taulukon Apache Iceberg -muodossa, sitten lisätä sarakkeita, poistaa sarakkeita ja muokata taulukon tietoja luomatta uudelleen tai kopioimatta tietojoukkoa ja käyttää näitä ominaisuuksia uusien ominaisuuksien luomiseen Apache Iceberg -taulukoissa.
Ratkaisun yleiskatsaus
Tietotieteilijät ovat yleensä tottuneet työskentelemään suurten tietojoukkojen kanssa. Tietojoukot tallennetaan yleensä joko JSON-, CSV-, ORC- tai Apache-parketti muotoon tai vastaaviin lukuoptimoituihin muotoihin nopeaa lukusuoritusta varten. Datatieteilijät luovat usein uusia tietoominaisuuksia ja täyttävät tällaiset tietoominaisuudet kooste- ja oheistiedoilla. Historiallisesti tämä tehtävä on suoritettu luomalla taulukon päälle näkymä, joka sisältää taustalla olevat tiedot Apache Parquet -muodossa, johon tällaiset sarakkeet ja tiedot lisättiin ajon aikana, tai luomalla uusi taulukko lisäsarakkeineen. Vaikka tämä työnkulku sopii hyvin moniin käyttötapauksiin, se on tehoton suurille tietojoukoille, koska tiedot olisi luotava ajon aikana tai tietojoukot olisi kopioitava ja muutettava.
Athena esitteli ACID (atomisuus, johdonmukaisuus, eristäminen, kestävyys) -tapahtuma ominaisuuksia, jotka lisäävät INSERT-, UPDATE-, DELETE-, MERGE- ja aikamatkatoimintoja Apache Iceberg -pöydät. Näiden ominaisuuksien avulla datatieteilijät voivat luoda uusia tietoominaisuuksia ja pudottaa olemassa olevia tietoominaisuuksia olemassa oleviin tietojoukoihin ilman, että heidän tarvitsee huolehtia tietojoukon kopioimisesta tai muuntamisesta tai sen abstraktistamisesta näkymän avulla. Datatieteilijät voivat keskittyä ominaisuussuunnitteluun ja välttää tietojoukkojen kopioimista ja muuntamista.
Athena Iceberg UPDATE -toiminto kirjoittaa Apache Iceberg -paikan poistotiedostot ja äskettäin päivitetyt rivit datatiedostoiksi samassa tapahtumassa. Voit tehdä tietueen korjauksia yhdellä UPDATE-lausekkeella.
Athena-moottoriversion 3 julkaisun myötä Apache Iceberg -pöytien ominaisuuksia parannetaan tukemalla mm. LUO TAULUKKO VALITSENA (CTAS) ja MERGE-komennot, jotka virtaviivaistavat Iceberg-tietojesi elinkaaren hallintaa. CTAS tekee taulukoiden luomisesta nopeaa ja tehokasta muista muodoista, kuten Apache Paquetista ja SUUNTAA ehdollinen päivittää, poistaa tai lisää rivejä jäävuoritaulukkoon. Yksi lause voi yhdistää päivitys-, poisto- ja lisäystoiminnot.
Edellytykset
Perusta Athena-työryhmä Athena-moottorin versiolla 3 käyttämään CTAS- ja MERGE-komentoja Apache Iceberg -taulukon kanssa. Päivitä nykyinen Athena-moottorisi versioon 3 Athena-työryhmässäsi noudattamalla ohjeita Päivitä Athena-moottorin versioon 3 parantaaksesi kyselyn suorituskykyä ja käyttääksesi enemmän analytiikkaominaisuuksia tai viitata Moottoriversion vaihtaminen Athena-konsolissa.
aineisto
Esittelyyn käytämme Apache Parquet -taulukkoa, joka sisältää useita miljoonia tietueita satunnaisesti hajautetuista kuvitteellisista myyntitiedoista viime vuosilta, jotka on tallennettu S3-ämpäriin. Lataa tietojoukko, pura se paikalliseen tietokoneellesi ja lataa se S3-säihösi. Tässä viestissä latasimme tietojoukkomme kohteeseen s3://sample-iceberg-datasets-xxxxxxxxxxx/sampledb/orders_and_customers/
.
Seuraava taulukko näyttää taulukon asettelun customer_orders
.
Sarakkeen nimi | Tietotyyppi | Kuvaus |
tilausavain | jono | Tilauksen tilausnumero |
custkey | jono | Asiakkaan tunnistenumero |
tilauksen tila | jono | Tilauksen tila |
kokonaishinta | jono | Tilauksen kokonaishinta |
tilauspäivämäärä | jono | Tilauksen päivämäärä |
järjestysprioriteetti | jono | Tilauksen prioriteetti |
virkailija | jono | Tilauksen käsitellyn virkailijan nimi |
laivaprioriteetti | jono | Etusija lähetyksessä |
nimi | jono | Asiakkaan nimi |
osoite | jono | Asiakkaan osoite |
kansallisavain | jono | Asiakkaan kansakunnan avain |
puhelin | jono | Asiakkaan puhelinnumero |
acctbal | jono | Asiakastilin saldo |
mktsegment | jono | Asiakasmarkkinasegmentti |
Suorita ominaisuussuunnittelu
Datatieteilijänä haluamme menestyä ominaisuuksien suunnittelu asiakkaan tilaustiedoissa lisäämällä lasketut yhden vuoden kokonaisostot ja yhden vuoden keskimääräiset ostot kullekin olemassa olevaan tietoaineistoon. Esittelytarkoituksiin loimme customer_orders
taulukossa sampledb
tietokanta käyttäen Athenaa seuraavan DDL-komennon mukaisesti. (Voit käyttää mitä tahansa olemassa olevia tietojoukkojasi ja noudattaa tässä viestissä mainittuja vaiheita.) customer_orders
tietojoukko luotiin ja tallennettiin S3-ämpäripaikkaan s3://sample-iceberg-datasets-xxxxxxxxxxx/sampledb/orders_and_customers/
parkettimuodossa. Tämä pöytä ei ole Apache Iceberg -pöytä.
Tarkista taulukon tiedot suorittamalla kysely:
Haluamme lisätä tähän taulukkoon uusia ominaisuuksia saadaksemme syvemmän ymmärryksen asiakasmyynnistä, mikä voi johtaa nopeampaan mallikoulutukseen ja arvokkaampiin oivalluksiin. Jos haluat lisätä uusia ominaisuuksia tietojoukkoon, muunna customer_orders
Athena-pöydästä Apache Iceberg -pöytään Athenalla. Ongelma a CTAS kyselylauseen avulla voit luoda uuden taulukon Apache Iceberg -muodossa customer_orders
pöytä. Samalla lisätään uusi ominaisuus, joka saa kunkin asiakkaan oston kokonaissumman viimeiseltä vuodelta (tietojoukon enimmäisvuosi).
Seuraavassa CTAS-kyselyssä uusi sarake nimeltä one_year_sales_aggregate
oletusarvolla as 0.0
tietotyypistä double
lisätään ja table_type
asetetaan ICEBERG
:
Suorita seuraava kysely tarkistaaksesi Apache Iceberg -taulukon tiedot uudella sarakkeella one_year_sales_aggregate
arvot kuten 0.0
:
Haluamme täyttää uuden ominaisuuden arvot one_year_sales_aggregate
tietojoukossa saadaksesi kunkin asiakkaan ostosten kokonaissumman viimeksi kuluneen vuoden ostojen perusteella (tietojoukon enimmäisvuosi). Anna MERGE-kyselylause Apache Iceberg -taulukkoon käyttämällä Athenaa täyttääksesi arvot one_year_sales_aggregate
ominaisuus:
Tee seuraava kysely vahvistaaksesi kunkin asiakkaan viime vuoden kokonaiskulutuksen päivitetyn arvon:
Päätämme lisätä uuden ominaisuuden olemassa olevaan Apache Iceberg -taulukkoon laskeaksemme ja tallentaaksemme kunkin asiakkaan viime vuoden keskimääräisen ostosumman. Anna ALTER-kyselylause lisätäksesi uuden sarakkeen olemassa olevaan ominaisuuden taulukkoon one_year_sales_average
:
Ennen kuin lisäät arvot tälle uudelle ominaisuudelle, voit määrittää ominaisuuden oletusarvon one_year_sales_average
että 0.0
. Käytä samaa Apache Iceberg -taulukkoa Athenassa ja anna UPDATE-kyselylause täyttääksesi uuden ominaisuuden arvon 0.0
:
Tee seuraava kysely varmistaaksesi, että kunkin asiakkaan viime vuoden keskimääräisen kulutuksen päivitetty arvo on asetettu arvoon 0.0
:
Nyt haluamme täyttää uuden ominaisuuden arvot one_year_sales_average
tietojoukossa saadaksesi kunkin asiakkaan keskimääräisen ostosumman, joka perustuu hänen ostoihinsa viime vuonna (tietojoukon enimmäisvuosi). Anna MERGE-kyselylause olemassa olevaan Apache Iceberg -taulukkoon Athenassa käyttämällä Athena-moottoria ominaisuuden arvojen täyttämiseen one_year_sales_average
:
Tee seuraava kysely tarkistaaksesi kunkin asiakkaan keskimääräisen kulutuksen päivitetyt arvot:
Kun tietojoukkoon on lisätty lisätietoominaisuuksia, datatieteilijät yleensä harjoittelevat ML-malleja ja tekevät johtopäätöksiä Amazon Sagemakerin tai vastaavan työkalusarjan avulla.
Yhteenveto
Tässä viestissä osoitimme, kuinka ominaisuussuunnittelua tehdään käyttämällä Athenaa Apache Icebergin kanssa. Esitimme myös CTAS-kyselyn käyttämisen Apache Iceberg -taulukon luomiseen Athenassa olemassa olevasta tietojoukosta Apache Parquet -muodossa, uusien ominaisuuksien lisäämisen olemassa olevaan Apache Iceberg -taulukkoon Athenassa käyttämällä ALTER-kyselyä sekä UPDATE- ja MERGE-kyselylausekkeita päivittämään olemassa olevien sarakkeiden ominaisuusarvot.
Suosittelemme käyttämään CTAS-kyselyjä taulukoiden luomiseen nopeasti ja tehokkaasti ja MERGE-kyselykäskyn avulla taulukoiden synkronointiin yhdessä vaiheessa tietojen valmistelun ja päivitystehtävien yksinkertaistamiseksi, kun ominaisuuksia muutetaan Athenan ja Apache Icebergin avulla. Jos sinulla on kommentteja tai palautetta, jätä ne kommenttiosioon.
Tietoja Tekijät
Vivek Gautam on data-arkkitehti, joka on erikoistunut datajärviin AWS Professional Services -palvelussa. Hän työskentelee yritysasiakkaiden kanssa rakentaen datatuotteita, analytiikkaalustoja ja ratkaisuja AWS:lle. Kun ei rakenna ja suunnittele nykyaikaisia tietoalustoja, Vivek on ruokaharrastaja, joka haluaa myös tutustua uusiin matkakohteisiin ja patikoida.
Mihail Vaynshteyn on ratkaisuarkkitehti Amazon Web Services -palvelussa. Mikhail työskentelee terveydenhuollon ja biotieteiden asiakkaiden kanssa rakentaakseen ratkaisuja, jotka auttavat parantamaan potilaiden tuloksia. Mikhail on erikoistunut data-analytiikkapalveluihin.
Naresh Gautam on AWS:n Data Analytics- ja AI/ML-johtaja, jolla on 20 vuoden kokemus. Hän haluaa auttaa asiakkaita suunnittelemaan erittäin saatavilla olevia, tehokkaita ja kustannustehokkaita data-analytiikka- ja AI/ML-ratkaisuja, jotka mahdollistavat asiakkaiden datalähtöisen päätöksenteon. . Vapaa-ajallaan hän nauttii meditoinnista ja ruoanlaitosta.
Harsha Tadiparthi on AWS:n pääratkaisuarkkitehti, Analyticsin asiantuntija. Hän nauttii monimutkaisten asiakasongelmien ratkaisemisesta tietokantojen ja analytiikan alalla ja onnistuneiden tulosten tuottamisesta. Työn ulkopuolella hän rakastaa viettää aikaa perheensä kanssa, katsella elokuvia ja matkustaa aina kun mahdollista.
- SEO-pohjainen sisällön ja PR-jakelu. Vahvista jo tänään.
- EVM Finance. Hajautetun rahoituksen yhtenäinen käyttöliittymä. Pääsy tästä.
- Quantum Media Group. IR/PR vahvistettu. Pääsy tästä.
- PlatoAiStream. Web3 Data Intelligence. Tietoa laajennettu. Pääsy tästä.
- Lähde: https://aws.amazon.com/blogs/big-data/accelerate-data-science-feature-engineering-on-transactional-data-lakes-using-amazon-athena-with-apache-iceberg/
- :on
- :On
- :ei
- :missä
- $ YLÖS
- 10
- 100
- 12
- 17
- 20
- 20 vuotta
- 23
- 27
- 7
- a
- Meistä
- kiihdyttää
- pääsy
- Suoritetut
- Tili
- toimet
- lisätä
- lisä-
- lisää
- lisä-
- osoite
- AI / ML
- Myös
- Vaikka
- Amazon
- Amazon Athena
- Amazon Sage Maker
- Amazon Web Services
- määrä
- an
- Analyyttinen
- analyyttinen
- Analytics
- analysoida
- analysointi
- ja
- Toinen
- Kaikki
- Apache
- Apache Spark
- OVAT
- AS
- At
- saatavissa
- keskimäärin
- välttää
- AWS
- AWS-asiantuntijapalvelut
- perustua
- BE
- koska
- ollut
- Hyödyt
- rakentaa
- Rakentaminen
- rakennettu
- by
- laskettu
- CAN
- kyvyt
- tapauksissa
- luokittelu
- pilvi
- kokoelmat
- Sarake
- Pylväät
- yhdistää
- kommentit
- Yhteinen
- monimutkainen
- Laskea
- tietokone
- Tietokoneen visio
- Konfigurointi
- sisältää
- tausta
- muuntaa
- ruoanlaitto
- kopiointi
- Korjaukset
- kustannustehokas
- luoda
- luotu
- Luominen
- asiakas
- Asiakkaat
- tiedot
- Data Analytics
- Datajärvi
- tietojenkäsittely
- tietojen tutkija
- data-driven
- tietokanta
- tietokannat
- aineistot
- Päivämäärä
- päättää
- Päätöksenteko
- syvempää
- oletusarvo
- tuottaa
- Antaa
- osoittaa
- osoittivat
- suunnittelu
- kohteet
- jaettu
- tekee
- kaksinkertainen
- Pudota
- kestävyys
- kukin
- helppo
- tehokas
- tehokkaasti
- vaivaa
- myöskään
- elementtejä
- valtuuttaa
- mahdollistaa
- kannustaa
- Moottori
- Tekniikka
- Moottorit
- tehostettu
- yritys
- yritysasiakkaat
- intoilija
- Koko
- Vastaava
- Eetteri (ETH)
- olemassa
- experience
- tutkia
- ulkoinen
- väärä
- perhe
- FAST
- nopeampi
- Ominaisuus
- Ominaisuudet
- palaute
- Asiakirjat
- Keskittää
- seurata
- jälkeen
- ruoka
- varten
- muoto
- puitteet
- Ilmainen
- alkaen
- yleensä
- syntyy
- saada
- Go
- Ryhmä
- Hadoop
- Olla
- he
- terveydenhuollon
- auttaa
- auttaa
- korkea suorituskyky
- erittäin
- vaellukset
- hänen
- historiallisesti
- Hive
- Miten
- Miten
- HTML
- HTTPS
- Tunnistaminen
- tunnistaminen
- if
- kuvien
- parantaa
- in
- Mukaan lukien
- Kasvaa
- tehoton
- Infrastruktuuri
- insertit
- oivalluksia
- sen sijaan
- ohjeet
- vuorovaikutteinen
- tulee
- käyttöön
- eristäminen
- kysymys
- IT
- jpg
- json
- merkinnät
- järvi
- Kieli
- suuri
- Sukunimi
- Layout
- johtaja
- OPPIA
- oppiminen
- jättää
- elämä
- Life Sciences
- elinkaari
- RAJOITA
- paikallinen
- sijainti
- rakastaa
- kone
- koneoppiminen
- tehdä
- TEE
- hoitaa
- johto
- hallinnoi
- monet
- markkinat
- Hyväksytty
- max
- mielekäs
- Meditaatio
- mainitsi
- mennä
- miljoona
- puuttuva
- ML
- malli
- mallit
- Moderni
- muokata
- lisää
- Elokuvat
- nimi
- nimetty
- kansakunta
- Luonnollinen
- Luonnollinen kieli
- Luonnollinen kielen käsittely
- Tarve
- tarvitsevat
- Uusi
- uusi ominaisuus
- Uudet ominaisuudet
- hiljattain
- Nro
- numero
- of
- usein
- on
- ONE
- vain
- avata
- avoimen lähdekoodin
- toiminta
- Operations
- or
- määräys
- Muut
- meidän
- tuloksiin
- ulkopuolella
- Ohi
- Maksaa
- suorittaa
- suorituskyky
- puhelin
- Platforms
- Platon
- Platonin tietotieto
- PlatonData
- Ole hyvä
- sijainti
- mahdollinen
- Kirje
- valmistelee
- hinta
- Pääasiallinen
- ongelmia
- prosessi
- jalostettu
- käsittely
- Tuotteemme
- ammatillinen
- toimittaa
- osto
- ostot
- tarkoituksiin
- Python
- kyselyt
- nopeasti
- raaka
- raakadata
- Lue
- tunnustaminen
- ennätys
- asiakirjat
- vähentää
- vapauta
- tarvitaan
- johtua
- arviot
- RIVI
- ajaa
- juoksu
- sagemaker
- myynti
- sama
- Asteikko
- tiede
- tieteet
- Tiedemies
- tutkijat
- Osa
- serverless
- palvelu
- Palvelut
- setti
- useat
- esitetty
- Näytä
- samankaltainen
- Yksinkertainen
- yksinkertaistettu
- yksinkertaistaa
- single
- So
- Ratkaisumme
- Solving
- Lähteet
- Kipinä
- asiantuntija
- erikoistunut
- puhe
- Puheentunnistus
- viettää
- käytetty
- SQL
- standardi
- Lausunto
- lausuntoja
- Vaihe
- Askeleet
- Levytila
- verkkokaupasta
- tallennettu
- tehostaa
- jono
- onnistunut
- niin
- tuki
- Tukee
- järjestelmät
- taulukko
- Tehtävä
- tehtävät
- että
- -
- Yhdistäminen
- heidän
- Niitä
- sitten
- Siellä.
- Nämä
- tätä
- aika
- aikamatka
- että
- ylin
- Yhteensä
- Juna
- koulutus
- kauppa
- kaupallisen
- transformoitu
- muuttamassa
- matkustaa
- tyyppi
- taustalla oleva
- ymmärtäminen
- Päivitykset
- päivitetty
- Päivitykset
- parantaa
- ladattu
- käyttää
- käyttämällä
- yleensä
- VAHVISTA
- arvokas
- arvo
- arvot
- eri
- todentaa
- versio
- hyvin
- kautta
- Videoita
- Näytä
- visio
- haluta
- oli
- Katso
- we
- verkko
- verkkopalvelut
- olivat
- kun
- aina kun
- joka
- vaikka
- KUKA
- with
- ilman
- Referenssit
- työnkulku
- Workgroup
- työskentely
- toimii
- olisi
- kirjoittaa
- vuosi
- vuotta
- te
- Sinun
- zephyrnet
- Postinumero