Valmistage Amazon SageMaker Studios mastaapsed andmed ette, kasutades serverita AWS Glue interaktiivseid seansse PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.

Valmistage Amazon SageMaker Studios mastaapsed andmed ette, kasutades serverita AWS Glue interaktiivseid seansse

Amazon SageMaker Studio on esimene täielikult integreeritud arenduskeskkond (IDE) masinõppe (ML) jaoks. See pakub ühtset veebipõhist visuaalset liidest, kus saate teha kõiki ML-i arendamise etappe, sealhulgas andmete ettevalmistamist ning mudelite koostamist, koolitust ja juurutamist.

AWS liim on serverita andmeintegratsiooni teenus, mis muudab andmete leidmise, ettevalmistamise ja kombineerimise analüüsiks, ML-i ja rakenduste arendamiseks lihtsaks. AWS Glue võimaldab teil sujuvalt koguda, teisendada, puhastada ja ette valmistada andmeid salvestamiseks andmejärvedes ja andmekanalites, kasutades erinevaid võimalusi, sealhulgas sisseehitatud teisendused.

Andmeinsenerid ja andmeteadlased saavad nüüd interaktiivselt andmeid mastaapselt ette valmistada, kasutades oma Studio sülearvuti sisseehitatud integratsiooni serverita Sparki seanssidega, mida haldab AWS Glue. Käivitub sekunditega ja peatab arvutamise automaatselt tühikäigul, AWS Glue interaktiivsed seansid pakkuda nõudmisel väga skaleeritavat serverivaba Sparki taustaprogrammi, et saavutada Studios skaleeritav andmete ettevalmistamine. AWS Glue interaktiivsete seansside kasutamisest Studio sülearvutites on järgmised märkimisväärsed eelised:

  • Puuduvad klastrid, mida pakkuda või hallata
  • Ei mingeid tühikäiguklastreid, mille eest maksta
  • Esialgset konfiguratsiooni pole vaja
  • Ei mingit ressursikonkurentsi sama arenduskeskkonna pärast
  • Täpselt sama serverita Sparki käitusaeg ja platvorm nagu AWS-i liimi ekstraktimise, teisendamise ja laadimise (ETL) tööd

Selles postituses näitame teile, kuidas Studios mastaapselt andmeid ette valmistada, kasutades serverita AWS Glue interaktiivseid seansse.

Lahenduse ülevaade

Selle lahenduse rakendamiseks peate tegema järgmised kõrgetasemelised sammud.

  1. Uuenda oma AWS-i identiteedi- ja juurdepääsuhaldus (IAM) rolliõigused.
  2. Käivitage AWS Glue interaktiivne seansi tuum.
  3. Seadistage oma interaktiivne seanss.
  4. Kohandage oma interaktiivset seanssi ja käivitage skaleeritav andmete ettevalmistamise töökoormus.

Värskendage oma IAM-i rolli õigusi

Alustamiseks peate värskendama oma Studio kasutaja IAM-i täitmisrolli vajalike õigustega. Üksikasjalike juhiste saamiseks vaadake Liimi interaktiivsete seansside load SageMaker Studios.

Esmalt lisate hallatud eeskirjad oma täitmisrollile.

  1. Valige IAM-konsoolil rollid navigeerimispaanil.
  2. Otsige üles kasutatav Studio täitmisroll ja valige rolli kokkuvõtte lehele liikumiseks rolli nimi.
  3. Kohta Õigused vahekaardil Lisa õigused menüüst valige Manustage eeskirjad.
  4. Valige hallatavad eeskirjad AmazonSageMakerFullAccess ja AwsGlueSessionUserRestrictedServiceRole
  5. Vali Manustage eeskirjad.
    Kokkuvõttelehel kuvatakse teie äsja lisatud hallatud eeskirjad. Nüüd lisate kohandatud reegli ja lisate selle oma täitmisrollile.
  6. Kohta Lisa õigused menüüst valige Loo tekstisisene poliitika.
  7. Kohta JSON vahekaardil, sisestage järgmine poliitika:
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": [
                    "iam:GetRole",
                    "iam:PassRole",
                    "sts:GetCallerIdentity"
                ],
                "Resource": "*"
            }
        ]
    }

  8. Muutke oma rolli usaldussuhet.
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Principal": {
                    "Service": [
                        "glue.amazonaws.com",
                        "sagemaker.amazonaws.com"
                    ]
                },
                "Action": "sts:AssumeRole"
            }
        ]
    }

Käivitage AWS Glue interaktiivne seansi tuum

Kui teil on Studio domeenis juba kasutajaid, võib teil neid vaja minna sulgeda ja taaskäivitada nende Jupyter Server uute sülearvutituuma kujutiste korjamiseks.

Uuesti laadimisel saate luua uue Studio märkmiku ja valige oma eelistatud kernel. Sisseehitatud SparkAnalytics 1.0 pilt peaks nüüd saadaval olema ja saate valida oma eelistatud AWS Glue tuuma (Liimige Scala Spark or Liimige PySpark).

Seadistage oma interaktiivne seanss

Saate oma AWS Glue'i interaktiivse seansi hõlpsalt konfigureerida sülearvuti raku maagiaga enne lähtestamist. Maagia on väikesed käsud, mille eesliide on % Jupyteri lahtrite alguses ja mis pakuvad otseteid keskkonna juhtimiseks. AWS Glue interaktiivsetes seanssides kasutatakse maagiat kõigi konfiguratsioonivajaduste jaoks, sealhulgas:

  • % piirkond – AWS-i piirkond, kus seansi käivitada. Vaikimisi on Studio piirkond.
  • %iam_role – IAM-i roll ARN, millega seansi käivitada. Vaikimisi on kasutaja SageMakeri täitmise roll.
  • %töötaja_tüüp - AWS Liimitöötaja tüüp. Vaikimisi on standardne.
  • %number_of_workers – Töö teostamisel jaotatud töötajate arv. Vaikimisi on viis.
  • %idle_timeout – passiivsuse minutite arv, mille järel seanss aegub. Vaikimisi on 2,880 minutit.
  • % additional_python_modules – komadega eraldatud loend täiendavatest Pythoni moodulitest, mida oma klastris lisada. See võib pärineda PyPist või Amazoni lihtne salvestusteenus (Amazon S3).
  • %%seadista – JSON-vormingus sõnastik, mis koosneb AWS-liimi spetsiifilised konfiguratsiooniparameetrid seansi jaoks.

Selle kerneli konfigureeritavate maagiliste parameetrite põhjaliku loendi saamiseks kasutage %help maagia teie märkmikus.

Teie AWS Glue'i interaktiivne seanss ei alga enne, kui käivitatakse esimene mittemaagiline lahter.

Kohandage oma interaktiivset seanssi ja käivitage andmete ettevalmistamise töökoormus

Näitena näitavad järgmised märkmiku lahtrid, kuidas saate kohandada oma AWS Glue'i interaktiivset seanssi ja käivitada skaleeritava andmete ettevalmistamise töökoormust. Selles näites teostame ETL-i ülesande, et koondada antud linna õhukvaliteedi andmed, rühmitades need kellaaegade järgi.

Konfigureerime oma seansi nii, et Sparki logid salvestatakse reaalajas silumiseks S3 ämbrisse, mida näeme hiljem selles postituses. Veenduge, et iam_role mis töötab teie AWS Glue'i seansil, omab kirjutusõigust määratud S3 ämbrile.

%help

%session_id_prefix air-analysis-
%glue_version 3.0
%idle_timeout 60
%%configure
{
"--enable-spark-ui": "true",
"--spark-event-logs-path": "s3://<BUCKET>/gis-spark-logs/"
}

Järgmisena laadime oma andmestiku otse Amazon S3-st. Teise võimalusena võiksite laadige andmeid oma AWS-i liimiandmete kataloogi abil.

from pyspark.sql.functions import split, lower, hour
print(spark.version)
day_to_analyze = "2022-01-05"
df = spark.read.json(f"s3://openaq-fetches/realtime-gzipped/{day_to_analyze}/1641409725.ndjson.gz")
df_air = spark.read.schema(df.schema).json(f"s3://openaq-fetches/realtime-gzipped/{day_to_analyze}/*")

Lõpuks kirjutame oma teisendatud andmestiku määratletud väljundkopa asukohta:

df_city = df_air.filter(lower((df_air.city)).contains('delhi')).filter(df_air.parameter == "no2").cache()
df_avg = df_city.withColumn("Hour", hour(df_city.date.utc)).groupBy("Hour").avg("value").withColumnRenamed("avg(value)", "no2_avg")
df_avg.sort("Hour").show()

# Examples of reading / writing to other data stores: 
# https://github.com/aws-samples/aws-glue-samples/tree/master/examples/notebooks

df_avg.write.parquet(f"s3://<BUCKET>/{day_to_analyze}.parquet")

Kui olete oma töö lõpetanud, saate oma AWS Glue'i interaktiivse seansi kohe lõpetada, lülitades lihtsalt Studio sülearvuti tuuma välja või kasutada %stop_session maagia.

Silumine ja Spark UI

Eelmises näites täpsustasime ”--enable-spark-ui”: “true” argument koos a "--spark-event-logs-path": location. See konfigureerib meie AWS-liimi seansi salvestama seansside logisid, et saaksime kasutada Sparki kasutajaliidest, et jälgida ja siluda oma AWS-liimi tööd reaalajas.

Nende Sparki logide käivitamise ja lugemise protsessi kohta vaadake jaotist Sparki ajalooserveri käivitamine. Järgmisel ekraanipildil oleme käivitanud kohaliku Dockeri konteineri, millel on luba lugeda meie logisid sisaldavat S3 ämbrit. Soovi korral võite majutada an Amazon Elastic Compute Cloud (Amazon EC2) eksemplari, et seda teha, nagu on kirjeldatud eelmises lingitud dokumentatsioonis.

Valmistage Amazon SageMaker Studios mastaapsed andmed ette, kasutades serverita AWS Glue interaktiivseid seansse PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.

hinnapoliitika

Kui kasutate AWS Glue'i interaktiivseid seansse Studio sülearvutites, võetakse teilt AWS Glue'i ja Studio sülearvutite ressursside kasutamise eest eraldi tasu.

AWS võtab AWS Glue'i interaktiivsete seansside eest tasu selle põhjal, kui kaua seanss on aktiivne ja kui palju on kasutatud andmetöötlusüksuste (DPU) arvu. Teilt võetakse teie töökoormuse täitmiseks kasutatud DPU-de arvu tunnitasu, mille arveldamine toimub 1 sekundi kaupa. AWS Glue'i interaktiivsed seansid määravad vaikimisi 5 DPU-d ja nõuavad vähemalt 2 DPU-d. Iga interaktiivse seansi jaoks on ka minimaalne arveldusaeg 1 minut. AWS-liimi hindade ja hinnanäitete vaatamiseks või AWS-i hinnakalkulaatori abil oma kulude prognoosimiseks vaadake jaotist AWS-liimi hinnakujundus.

Teie Studio märkmik töötab EC2 eksemplaril ja teilt võetakse tasu valitud eksemplari tüübi eest, olenevalt kasutamise kestusest. Studio määrab teile vaikimisi EC2 eksemplari tüübi ml-t3-medium, kui valite SparkAnalytics pilt ja sellega seotud kernel. Saate muuta Studio märkmiku eksemplari tüüpi, et see sobiks teie töökoormusega. Lisateavet SageMaker Studio hindade kohta vt Amazon SageMakeri hinnakujundus.

Järeldus

Studio sülearvutite loomulik integreerimine AWS Glue interaktiivsete seanssidega hõlbustab andmeteadlaste ja andmeinseneride jaoks sujuvat ja skaleeritavat serverita andmete ettevalmistamist. Soovitame teil seda uut funktsiooni Studios proovida!

nägema Andmete ettevalmistamine AWS Glue Interactive Sessionsi abil rohkem informatsiooni.


Autoritest

Sean MorganSean Morgan on AWS-i ML-lahenduste vanemarhitekt. Tal on kogemusi pooljuhtide ja akadeemilise uurimistöö valdkonnas ning ta kasutab oma kogemusi, et aidata klientidel AWS-is oma eesmärke saavutada. Vabal ajal on Sean avatud lähtekoodiga kaasautor/hooldaja ja TensorFlow Addonsi erihuvirühma juht.

Valmistage Amazon SageMaker Studios mastaapsed andmed ette, kasutades serverita AWS Glue interaktiivseid seansse PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.Sumedha Swamy on Amazon Web Servicesi peamine tootejuht. Ta juhib SageMaker Studio meeskonda, et ehitada see interaktiivsete andmeteaduse ja andmetehnika töövoogude jaoks valitud IDE-sse. Ta on viimased 15 aastat veetnud masinõppe abil klientidest huvitatud tarbija- ja ettevõttetooteid. Vabal ajal meeldib talle pildistada Ameerika edelaosa hämmastavat geoloogiat.

Ajatempel:

Veel alates AWS-i masinõpe