Tíz új vizuális átalakítás az AWS Glue Studio-ban

Tíz új vizuális átalakítás az AWS Glue Studio-ban

Forrás csomópont: 2641422

AWS ragasztóstúdió egy grafikus felület, amely megkönnyíti a kivonatolási, átalakítási és betöltési (ETL) feladatok létrehozását, futtatását és figyelését. AWS ragasztó. Lehetővé teszi az adatátalakítási munkafolyamatok vizuális összeállítását különböző adatkezelési lépéseket képviselő csomópontok segítségével, amelyeket később automatikusan futtatható kóddá alakítanak át.

AWS ragasztóstúdió A közelmúltban megjelent 10 további vizuális átalakítás, amely lehetővé teszi a fejlettebb feladatok vizuális módon történő létrehozását kódolási ismeretek nélkül. Ebben a bejegyzésben olyan lehetséges felhasználási eseteket tárgyalunk, amelyek tükrözik a közös ETL-szükségleteket.

Az ebben a bejegyzésben bemutatott új átalakítások a következők: Összefűzés, Karakterlánc felosztása, Tömb oszlopokhoz, Aktuális időbélyeg hozzáadása, Sorok elforgatása az oszlopokhoz, Oszlopok forgatása sorokhoz, Keresés, Tömb felrobbanása vagy oszlopokba való leképezés, Származtatott oszlop és Automatikus kiegyensúlyozás feldolgozása .

Megoldás áttekintése

Ebben a használati esetben van néhány JSON-fájlunk részvényopciós műveletekkel. Az adatok tárolása előtt szeretnénk néhány átalakítást végrehajtani a könnyebb elemzés érdekében, valamint külön adatkészlet-összefoglalót is szeretnénk készíteni.

Ebben az adatkészletben minden sor az opciós szerződések kereskedelmét jelenti. Az opciók olyan pénzügyi eszközök, amelyek jogot – de nem kötelezettséget – biztosítanak részvények fix áron történő vételére vagy eladására (ún.  kötési ár) meghatározott lejárati idő előtt.

Beviteli adat

Az adatok a következő sémát követik:

  • Rendelés azonosító – Egyedi azonosító
  • szimbólum – Általában néhány betűn alapuló kód, amely azonosítja a mögöttes részvényeket kibocsátó vállalatot
  • műszer – A név, amely azonosítja a vásárolt vagy eladott opciót
  • valuta – Az ISO pénznemkód, amelyben az árat kifejezik
  • ár – Az egyes opciós szerződések vásárlásáért fizetett összeg (a legtöbb tőzsdén egy szerződés 100 részvény vételét vagy eladását teszi lehetővé)
  • csere – Annak a tőzsdei központnak vagy helyszínnek a kódja, ahol az opcióval kereskedtek
  • eladott – Azon szerződések számának listája, amelyeket az eladási megbízás kitöltésére rendeltek, ha ez eladási ügylet
  • megvett – A vételi megbízás kitöltésére kiosztott szerződések számának listája, ha ez vételi kereskedelem

A következő példa az ehhez a bejegyzéshez generált szintetikus adatokból:

{"order_id": 1679931512485, "symbol": "AMZN", "instrument": "AMZN MAR 24 23 102 PUT", "currency": "usd", "price": 17.18, "exchange": "EDGX", "bought": [18, 38]}
{"order_id": 1679931512486, "symbol": "BMW.DE", "instrument": "BMW.DE MAR 24 23 96 PUT", "currency": "eur", "price": 2.98, "exchange": "XETR", "bought": [28]}
{"order_id": 1679931512487, "symbol": "BMW.DE", "instrument": "BMW.DE APR 28 23 101 CALL", "currency": "eur", "price": 14.71, "exchange": "XETR", "sold": [9, 59, 54]}
{"order_id": 1679931512489, "symbol": "JPM", "instrument": "JPM JUN 30 23 140 CALL", "currency": "usd", "price": 11.83, "exchange": "EDGX", "bought": [33, 42, 55, 67]}
{"order_id": 1679931512490, "symbol": "SIE.DE", "instrument": "SIE.DE MAR 24 23 149 CALL", "currency": "eur", "price": 13.68, "exchange": "XETR", "bought": [96, 89, 82]}
{"order_id": 1679931512491, "symbol": "NKE", "instrument": "NKE MAR 24 23 112 CALL", "currency": "usd", "price": 3.23, "exchange": "EDGX", "sold": [67]}
{"order_id": 1679931512492, "symbol": "AMZN", "instrument": "AMZN MAY 26 23 95 CALL", "currency": "usd", "price": 11.44, "exchange": "EDGX", "sold": [41, 62, 12]}
{"order_id": 1679931512493, "symbol": "JPM", "instrument": "JPM MAR 24 23 121 PUT", "currency": "usd", "price": 1.0, "exchange": "EDGX", "bought": [61, 34]}
{"order_id": 1679931512494, "symbol": "SAP.DE", "instrument": "SAP.DE MAR 24 23 132 CALL", "currency": "eur", "price": 15.9, "exchange": "XETR", "bought": [69, 33]}

ETL követelmények

Ezek az adatok számos egyedi jellemzővel rendelkeznek, amelyek gyakran megtalálhatók a régebbi rendszereken, amelyek megnehezítik az adatok használatát.

A következők az ETL követelmények:

  • A műszer neve értékes információkat tartalmaz, amelyeket az emberek megértenek; külön oszlopokba szeretnénk normalizálni a könnyebb elemzés érdekében.
  • Az attribútumok bought és a sold kölcsönösen kizárják egymást; ezeket egyetlen oszlopba vonhatjuk össze a szerződésszámokkal, és van egy másik oszlop, amely jelzi, hogy a szerződéseket ebben a sorrendben vették vagy értékesítették.
  • Meg akarjuk őrizni az egyes szerződések kiosztásával kapcsolatos információkat, de egyedi sorokként, ahelyett, hogy számsorral kényszerítenénk a felhasználókat. Összeadhatnánk a számokat, de elveszítenénk a megbízás kitöltésének módját (piaci likviditást jelezve). Ehelyett úgy döntünk, hogy denormalizáljuk a táblázatot, így minden sorban egyetlen számú szerződés szerepel, a több számot tartalmazó rendeléseket külön sorokra bontva. Tömörített oszlopos formátumban ennek az ismétlődésnek az extra adatkészlet mérete gyakran kicsi, ha tömörítést alkalmaznak, ezért elfogadható az adatkészlet lekérdezésének megkönnyítése.
  • Összefoglaló táblázatot szeretnénk létrehozni az egyes opciótípusokhoz (hívás és eladás) minden részvényhez. Ez jelzi az egyes részvények piaci hangulatát és általában a piacot (kapzsiság vs. félelem).
  • Az átfogó kereskedési összefoglalók lehetővé tételéhez minden művelethez meg szeretnénk adni a végösszeget, és a valutát USA-dollárra standardizálni egy hozzávetőleges átváltási hivatkozás segítségével.
  • Szeretnénk hozzáadni a dátumot, amikor ezek az átalakulások megtörténtek. Ez hasznos lehet például, ha utalást tesz arra, hogy mikor történt a valutaváltás.

Ezen követelmények alapján a munka két kimenetet fog eredményezni:

  • CSV-fájl az egyes szimbólumokhoz és típusokhoz tartozó szerződések számának összefoglalásával
  • Katalógustábla a rendelés történetének megőrzéséhez, a jelzett átalakítások elvégzése után
    Adatséma

Előfeltételek

Ehhez a használati esethez saját S3-vödörre lesz szüksége. Új vödör létrehozásához lásd: Vödör létrehozása.

Szintetikus adatok generálása

A bejegyzés követéséhez (vagy önálló kísérletezéshez) szintetikusan előállíthatja ezt az adatkészletet. A következő Python-szkript futtatható Python-környezetben, amelyen Boto3 telepítve van, és amelyhez hozzáfér Amazon egyszerű tárolási szolgáltatás (Amazon S3).

Az adatok generálásához hajtsa végre a következő lépéseket:

  1. Az AWS Glue Studio alkalmazásban hozzon létre egy új munkát a lehetőséggel Python shell szkriptszerkesztő.
  2. Adjon nevet a munkának, és a Munka részletei lapon válassza ki a megfelelő szerepet és egy nevet a Python szkriptnek.
  3. A Munka részletei szakaszt, bontsa ki Speciális tulajdonságok és görgessen lefelé Munka paraméterei.
  4. Adja meg a nevű paramétert --bucket és értékként rendelje hozzá a mintaadatok tárolására használni kívánt vödör nevét.
  5. Írja be a következő szkriptet az AWS Glue shell szerkesztőjébe:
    import argparse
    import boto3
    from datetime import datetime
    import io
    import json
    import random
    import sys # Configuration
    parser = argparse.ArgumentParser()
    parser.add_argument('--bucket')
    args, ignore = parser.parse_known_args()
    if not args.bucket: raise Exception("This script requires an argument --bucket with the value specifying the S3 bucket where to store the files generated") data_bucket = args.bucket
    data_path = "transformsblog/inputdata"
    samples_per_file = 1000 # Create a single file with synthetic data samples
    s3 = boto3.client('s3')
    buff = io.BytesIO() sample_stocks = [("AMZN", 95, "usd"), ("NKE", 120, "usd"), ("JPM", 130, "usd"), ("KO", 130, "usd"), ("BMW.DE", 95, "eur"), ("SIE.DE", 140, "eur"), ("SAP.DE", 115, "eur")]
    option_type = ["PUT", "CALL"]
    operations = ["sold", "bought"]
    dates = ["MAR 24 23", "APR 28 23", "MAY 26 23", "JUN 30 23"]
    for i in range(samples_per_file): stock = random.choice(sample_stocks) symbol = stock[0] ref_price = stock[1] currency = stock[2] strike_price = round(ref_price * 0.9 + ref_price * random.uniform(0.01, 0.3)) sample = { "order_id": int(datetime.now().timestamp() * 1000) + i, "symbol": stock[0], "instrument":f"{symbol} {random.choice(dates)} {strike_price} {random.choice(option_type)}", "currency": currency, "price": round(random.uniform(0.5, 20.1), 2), "exchange": "EDGX" if currency == "usd" else "XETR" } sample[random.choice(operations)] = [random.randrange(1,100) for i in range(random.randrange(1,5))] buff.write(json.dumps(sample).encode()) buff.write("n".encode()) s3.put_object(Body=buff.getvalue(), Bucket=data_bucket, Key=f"{data_path}/{int(datetime.now().timestamp())}.json")

  6. Futtassa a feladatot, és várja meg, amíg sikeresen befejezettként jelenik meg a Futtatások lapon (csak néhány másodpercet vesz igénybe).

Minden egyes futtatás egy JSON-fájlt hoz létre, amely 1,000 sort tartalmaz a megadott gyűjtőhely és előtag alatt transformsblog/inputdata/. A feladatot többször is futtathatja, ha több bemeneti fájllal szeretné tesztelni.
A szintetikus adatok minden sora egy adatsor, amely egy JSON-objektumot képvisel, például:

{ "order_id":1681986991888, "symbol":"AMZN", "instrument":"AMZN APR 28 23 100 PUT", "currency":"usd", "price":2.89, "exchange":"EDGX", "sold":[88,49]
}

Hozza létre az AWS Glue vizuális feladatot

Az AWS Glue vizuális feladat létrehozásához hajtsa végre a következő lépéseket:

  1. Lépjen az AWS Glue Studio oldalára, és hozzon létre egy feladatot az opció segítségével Vizuális üres vászonnal.
  2. szerkesztése Untitled job nevet adni és hozzárendelni AWS Glue számára megfelelő szerep a Munka részletei Tab.
  3. Adjon hozzá egy S3 adatforrást (nevezheti JSON files source), és adja meg az S3 URL-t, amely alatt a fájlok tárolva vannak (például s3://<your bucket name>/transformsblog/inputdata/), majd válassza ki JSON mint az adatformátum.
  4. választ Következzen séma tehát az adatok alapján állítja be a kimeneti sémát.

Ebből a forráscsomópontból továbbra is láncolni fogja a transzformációkat. Minden egyes transzformáció hozzáadásakor győződjön meg arról, hogy a kiválasztott csomópont az utoljára hozzáadott csomópont, hogy a rendszer szülőként legyen hozzárendelve, hacsak az utasítások másként nem jelzik.

Ha nem a megfelelő szülőt választotta, bármikor szerkesztheti a szülőt úgy, hogy kijelöli, majd kiválaszt egy másik szülőt a konfigurációs ablaktáblán.

Csomópont szülő konfigurációja

Minden egyes hozzáadott csomóponthoz egy konkrét nevet kell adni (így a csomópont célja megjelenik a grafikonon) és konfigurációt a Átalakítás Tab.

Minden alkalommal, amikor egy átalakítás megváltoztatja a sémát (például új oszlop hozzáadása), a kimeneti sémát frissíteni kell, hogy az látható legyen a későbbi átalakítások számára. A kimeneti sémát manuálisan is szerkesztheti, de praktikusabb és biztonságosabb az adatok előnézetével.
Ezenkívül így ellenőrizheti, hogy az átalakítás a várt módon működik-e. Ehhez nyissa meg a Adatok előnézete lapon az átalakítás kiválasztásával, és indítsa el az előnézeti munkamenetet. Miután ellenőrizte, hogy az átalakított adatok a várt módon néznek ki, lépjen a Kimeneti séma lapot és válasszon Adat-előnézeti séma használata a séma automatikus frissítéséhez.

Amikor új típusú átalakításokat ad hozzá, az előnézet üzenetet jeleníthet meg a hiányzó függőségről. Amikor ez megtörténik, válasszon Munkamenet befejezése és indítson egy újat, így az előnézet felveszi az új típusú csomópontot.

A műszer információinak kinyerése

Kezdjük azzal, hogy foglalkozunk az eszköz nevével kapcsolatos információkkal, és normalizáljuk azokat oszlopokba, amelyek könnyebben elérhetők a kapott kimeneti táblában.

  1. Hozzáadása Split String csomópontot, és nevezd el Split instrument, amely egy szóköz reguláris kifejezéssel tokenizálja a műszeroszlopot: s+ (Ebben az esetben egyetlen szóköz is megteszi, de ez a mód rugalmasabb és vizuálisan áttekinthetőbb).
  2. Meg akarjuk tartani az eredeti eszközinformációkat, ezért adjon meg egy új oszlopnevet az osztott tömbhöz: instrument_arr.
    Split konfig
  3. Adjon hozzá egy Tömb oszlopokba csomópontot, és nevezd el Instrument columns hogy az imént létrehozott tömboszlopot új mezőkké konvertálja, kivéve a symbol, amelyhez már van rovatunk.
  4. Válassza ki az oszlopot instrument_arr, hagyja ki az első tokent, és mondja meg neki, hogy bontsa ki a kimeneti oszlopokat month, day, year, strike_price, type indexek segítségével 2, 3, 4, 5, 6 (a vessző utáni szóköz az olvashatóságot szolgálja, nincs hatással a konfigurációra).
    Tömb konfiguráció

A kivont évszám csak két számjeggyel van kifejezve; tegyünk egy megállót, és feltételezzük, hogy ez ebben a században van, ha csak két számjegyet használnak.

  1. Hozzáadása Származtatott oszlop csomópontot, és nevezd el Four digits year.
  2. belép year származtatott oszlopként, így felülírja azt, és írja be a következő SQL kifejezést:
    CASE WHEN length(year) = 2 THEN ('20' || year) ELSE year END
    Évből származó oszlopkonfiguráció

A kényelem érdekében egy expiration_date mező, amelyet a felhasználó referenciaként használhat az opció gyakorlásának utolsó dátumára.

  1. Hozzáadása Oszlopok összefűzése csomópontot, és nevezd el Build expiration date.
  2. Nevezze el az új oszlopot expiration_date, válassza ki az oszlopokat year, monthés day (ebben a sorrendben), és egy kötőjelet távtartóként.
    Összefűzött dátum konfig

Az eddigi diagramnak a következő példa szerint kell kinéznie.

DAG

Az új oszlopok eddigi adat-előnézete a következő képernyőképen néz ki.

Adatok előnézete

Normalizálja a szerződések számát

Az adatok minden sora jelzi az egyes opciók vásárolt vagy eladott szerződéseinek számát, valamint azokat a kötegeket, amelyeken a megrendeléseket kitöltötték. Anélkül, hogy elveszítenénk az egyes kötegekre vonatkozó információkat, azt szeretnénk, hogy minden összeg egy egyedi sorban legyen egyetlen összeg értékkel, míg a többi információ replikálódik minden egyes sorba.

Először is vonjuk össze az összegeket egyetlen oszlopba.

  1. Adjon hozzá egy Oszlopok forgatása sorokká csomópontot, és nevezd el Unpivot actions.
  2. Válassza ki az oszlopokat bought és a sold a forgatás feloldásához és a nevek és értékek elnevezésű oszlopokban való tárolásához action és a contracts, Ill.
    Unpivot konfiguráció
    Figyeljük meg az előnézetben, hogy az új oszlop contracts a transzformáció után is egy számtömb.
  1. Adjon hozzá egy Robbantsd fel a tömböt vagy térképezd fel sorokba nevű sor Explode contracts.
  2. Válassza a contracts oszlopot és írja be contracts új oszlopként, hogy felülbírálhassuk (nem kell megtartanunk az eredeti tömböt).

Az előnézet most azt mutatja, hogy minden sorhoz tartozik egy contracts összeget, és a többi mező ugyanaz.

Ez azt is jelenti order_id már nem egyedi kulcs. Saját felhasználási eseteihez el kell döntenie, hogyan modellezze adatait, és hogy szeretné-e denormalizálni vagy sem.
Explode konfig

Az alábbi képernyőkép egy példa arra, hogyan néznek ki az új oszlopok az eddigi átalakítások után.
Adatok előnézete

Hozzon létre egy összefoglaló táblázatot

Most hozzon létre egy összefoglaló táblázatot az egyes típusokhoz és minden részvényszimbólumhoz kapcsolódó szerződések számával.

Szemléltetésképpen tegyük fel, hogy a feldolgozott fájlok egy naphoz tartoznak, így ez az összefoglaló információt nyújt az üzleti felhasználóknak arról, hogy az adott napon milyen piaci érdeklődés és hangulat uralkodik.

  1. Hozzáadása Válassza a Mezők lehetőséget csomópontot, és jelölje ki a következő oszlopokat, amelyeket meg szeretne őrizni az összegzés számára: symbol, typeés contracts.
    Kijelölt mezők
  2. Hozzáadása Forgassa a sorokat oszlopokba csomópontot, és nevezd el Pivot summary.
  3. Összesítés a contracts oszlop használatával sum és válassza ki a konvertálást type oszlop.
    Pivot konfig

Általában valamilyen külső adatbázisban vagy fájlban tárolja referenciaként; Ebben a példában CSV-fájlként mentjük el az Amazon S3-on.

  1. Adjon hozzá egy Automatikus egyensúly feldolgozás csomópontot, és nevezd el Single output file.
  2. Bár ezt a transzformációs típust általában a párhuzamosság optimalizálására használják, itt a kimenet egyetlen fájlra való csökkentésére használjuk. Ezért lépjen be 1 a partíciók számának konfigurációjában.
    Automatikus egyensúly beállítása
  3. Adjon hozzá egy S3 célt, és nevezze el CSV Contract summary.
  4. Válassza ki a CSV-t adatformátumként, és adjon meg egy S3 elérési utat, ahol a job szerepkör fájlokat tárolhat.

A munka utolsó részének most úgy kell kinéznie, mint a következő példa.
DAG

  1. Mentse el és futtassa a munkát. Használja a Runs lapon ellenőrizheti, hogy sikeresen befejeződött-e.
    Az elérési út alatt talál egy CSV-fájlt, annak ellenére, hogy nem rendelkezik ezzel a kiterjesztéssel. Valószínűleg a letöltés után hozzá kell adnia a bővítményt a megnyitásához.
    Egy olyan eszközön, amely képes olvasni a CSV-fájlt, az összefoglalónak az alábbi példához hasonlónak kell lennie.
    táblázatkezelő

Tisztítsa meg az ideiglenes oszlopokat

A rendelések elõzménytáblázatba történõ mentésére való felkészülés érdekében a jövõbeni elemzés céljából tisztítsunk meg néhány, az út során létrehozott ideiglenes oszlopot.

  1. Hozzáadása Drop Fields csomópont a Explode contracts szülőként kiválasztott csomópont (az adatfolyamot elágazzuk, hogy külön kimenetet generáljunk).
  2. Válassza ki az eldobandó mezőket: instrument_arr, month, dayés year.
    A többit meg akarjuk tartani, hogy elmentsük őket a későbbiekben elkészítendő történeti táblázatba.
    Dobj mezőket

Pénznemek szabványosítása

Ezek a szintetikus adatok fiktív műveleteket tartalmaznak két pénznemre vonatkozóan, de egy valós rendszerben a világ minden tájáról kaphat valutákat a piacokról. Hasznos a kezelt pénznemeket egyetlen referenciavalutává standardizálni, így könnyen összehasonlíthatók és összesíthetők jelentéskészítés és elemzés céljából.

Az általunk használt Amazon Athéné a hozzávetőleges devizakonverziókat tartalmazó táblázat szimulálásához, amely időszakonként frissül (itt feltételezzük, hogy elég időben dolgozzuk fel a rendeléseket ahhoz, hogy az átváltás ésszerű reprezentatív legyen az összehasonlítás szempontjából).

  1. Nyissa meg az Athena konzolt ugyanabban a régióban, ahol az AWS ragasztót használja.
  2. Futtassa a következő lekérdezést a táblázat létrehozásához úgy, hogy beállít egy S3 helyet, ahol az Athena és az AWS Glue szerepkörök is tudnak olvasni és írni. Ezenkívül érdemes lehet a táblát egy másik adatbázisban tárolni, mint default (Ha ezt teszi, frissítse a táblázat minősített nevét a megadott példákban).
    CREATE EXTERNAL TABLE default.exchange_rates(currency string, exchange_rate double)
    ROW FORMAT DELIMITED
    FIELDS TERMINATED BY ','
    STORED AS TEXTFILE
    LOCATION 's3://<enter some bucket>/exchange_rates/';

  3. Írjon be néhány minta konverziót a táblázatba:
    INSERT INTO default.exchange_rates VALUES ('usd', 1.0), ('eur', 1.09), ('gbp', 1.24);
  4. Most már meg kell tudnia nézni a táblázatot a következő lekérdezéssel:
    SELECT * FROM default.exchange_rates
  5. Visszatérve az AWS Glue vizuális munkához, adja hozzá a Lookup csomópont (gyermekeként Drop Fields) és nevezd el Exchange rate.
  6. Adja meg az imént létrehozott táblázat minőségi nevét a segítségével currency gombot, és válassza ki a exchange_rate használni kívánt mezőt.
    Mivel a mező neve az adatokban és a keresési táblában is ugyanaz, csak megadhatjuk a nevet currency és nincs szükség leképezés meghatározására.Konfig keresése
    Az írás idején a keresési transzformációt nem támogatja az adatok előnézete, és hibát fog jelezni, hogy a tábla nem létezik. Ez csak az adatok előnézetére vonatkozik, és nem akadályozza meg a feladat megfelelő futtatását. A bejegyzés néhány hátralévő lépése nem igényli a séma frissítését. Ha adat-előnézetet kell futtatnia más csomópontokon, ideiglenesen eltávolíthatja a keresési csomópontot, majd visszahelyezheti.
  7. Hozzáadása Származtatott oszlop csomópontot, és nevezd el Total in usd.
  8. Nevezze el a származtatott oszlopot total_usd és használja a következő SQL kifejezést:
    round(contracts * price * exchange_rate, 2)
    Pénznem átváltási konfig
  9. Hozzáadása Adja hozzá az aktuális időbélyeget csomópontot, és nevezze el az oszlopot ingest_date.
  10. Használja a formátumot %Y-%m-%d az időbélyeghez (bemutató célból csak a dátumot használjuk; ha akarod, pontosíthatod).
    Időbélyeg konfig

Mentse el a történelmi rendelések táblázatát

A rendelési előzmények táblázatának mentéséhez hajtsa végre a következő lépéseket:

  1. Adjon hozzá egy S3 célcsomópontot, és nevezze el Orders table.
  2. Konfigurálja a Parquet formátumot frappáns tömörítéssel, és adjon meg egy S3 célútvonalat az eredmények tárolására (az összefoglalótól elkülönítve).
  3. választ Hozzon létre egy táblát az adatkatalógusban és a későbbi futtatások során, frissítse a sémát és adjon hozzá új partíciókat.
  4. Adjon meg egy céladatbázist és egy nevet az új tábla számára, például: option_orders.
    Asztali mosogató konfig

A diagram utolsó részének most a következőhöz hasonlóan kell kinéznie, két ággal a két külön kimenethez.
DAG

A feladat sikeres futtatása után egy olyan eszközzel, mint az Athena, áttekintheti a job által az új tábla lekérdezésével létrehozott adatokat. A táblázatot megtalálja az Athena listán, és válassza ki Előnézeti táblázat vagy csak futtasson egy SELECT lekérdezést (frissítse a tábla nevét a használt névre és katalógusra):

SELECT * FROM default.option_orders limit 10

A táblázat tartalmának az alábbi képernyőképhez hasonlóan kell kinéznie.
Táblázat tartalma

Tisztítsuk meg

Ha nem szeretné megtartani ezt a példát, törölje a két létrehozott jobot, az Athena két tábláját és az S3 elérési utat, ahol a bemeneti és kimeneti fájlokat tárolták.

Következtetés

Ebben a bejegyzésben bemutattuk, hogy az AWS Glue Studio új átalakításai hogyan segíthetnek a minimális konfiguráció mellett haladó átalakítások elvégzésében. Ez azt jelenti, hogy több ETL-használati esetet implementálhat anélkül, hogy kódot kellene írnia és karbantartania. Az új átalakítások már elérhetőek az AWS Glue Studio-ban, így már ma is használhatja az új átalakításokat vizuális munkáiban.


A szerzőről

Gonzalo Herreros az AWS Glue csapatának vezető Big Data építésze.

Időbélyeg:

Még több AWS Big Data