I fjor kunngjorde vi generell tilgjengelighet av RStudio på Amazon SageMaker, bransjens første fullt administrerte RStudio Workbench integrerte utviklingsmiljø (IDE) i skyen. Du kan raskt starte den velkjente RStudio IDE og ringe opp og ned de underliggende dataressursene uten å avbryte arbeidet ditt, noe som gjør det enkelt å bygge maskinlæring (ML) og analyseløsninger i R i stor skala.
Mange av RStudio på SageMaker brukere er også brukere av Amazon RedShift, et fullstendig administrert, petabyte-skala, massivt parallelt datavarehus for datalagring og analytiske arbeidsbelastninger. Det gjør det raskt, enkelt og kostnadseffektivt å analysere alle dataene dine ved hjelp av standard SQL og dine eksisterende BI-verktøy (business intelligence). Brukere kan også samhandle med data med ODBC, JDBC eller Amazon Redshift Data API.
Bruken av RStudio på SageMaker og Amazon Redshift kan være nyttig for å effektivt utføre analyser på store datasett i skyen. Arbeid med data i skyen kan imidlertid by på utfordringer, som behovet for å fjerne organisasjonsdatasiloer, opprettholde sikkerhet og samsvar og redusere kompleksiteten ved å standardisere verktøy. AWS tilbyr verktøy som RStudio på SageMaker og Amazon Redshift for å hjelpe til med å takle disse utfordringene.
I dette blogginnlegget vil vi vise deg hvordan du bruker begge disse tjenestene sammen for å effektivt utføre analyser på massive datasett i skyen samtidig som vi tar tak i utfordringene nevnt ovenfor. Denne bloggen fokuserer på Rstudio på Amazon SageMaker-språket, med forretningsanalytikere, dataingeniører, dataforskere og alle utviklere som bruker R Language og Amazon Redshift, som målgruppe.
Hvis du vil bruke den tradisjonelle SageMaker Studio-opplevelsen med Amazon Redshift, se Bruke Amazon Redshift Data API til å samhandle fra en Amazon SageMaker Jupyter-notisbok.
Løsningsoversikt
I bloggen i dag vil vi utføre følgende trinn:
- Kloning av prøvelageret med de nødvendige pakkene.
- Koble til Amazon Redshift med en sikker ODBC-tilkobling (ODBC er den foretrukne protokollen for RStudio).
- Kjøre spørringer og SageMaker API-handlinger på data i Amazon Redshift Serverless gjennom RStudio på SageMaker
Denne prosessen er avbildet i følgende løsningsarkitektur:
Gjennomgang av løsningen
Forutsetninger
Før du begynner, sørg for at du har alle krav for å sette opp RStudio på Amazon SageMaker og Amazon Redshift Serverless, for eksempel:
Vi vil bruke en CloudFormation-stack for å generere den nødvendige infrastrukturen.
OBS: Hvis du allerede har et RStudio-domene og Amazon Redshift-klynge, kan du hoppe over dette trinnet
Å starte denne stabelen skaper følgende ressurser:
- 3 Private undernett
- 1 Offentlig subnett
- 1 NAT-gateway
- Internett-gateway
- Amazon Redshift Serverløs klynge
- SageMaker-domene med RStudio
- SageMaker RStudio brukerprofil
- IAM-tjenesterolle for SageMaker RStudio-domeneutførelse
- IAM-tjenesterolle for utføring av SageMaker RStudio brukerprofil
Denne malen er laget for å fungere i en region (f.eks. us-east-1
, us-west-2
) med tre tilgjengelighetssoner, RStudio på SageMaker og Amazon Redshift Serverless. Sørg for at din region har tilgang til disse ressursene, eller modifiser malene deretter.
Trykk på Start Stack knappen for å lage stabelen.
- På Lag stabel side, velg neste.
- På Spesifiser stakkdetaljer side, oppgi et navn for stabelen din og la de gjenværende alternativene være standard, og velg deretter neste.
- På Konfigurer stakkalternativer side, la alternativene være standard og trykk neste.
- På Review-siden, Velg
- Jeg erkjenner at AWS CloudFormation kan lage IAM-ressurser med tilpassede navn
- Jeg erkjenner at AWS CloudFormation kan kreve følgende funksjon: CAPABILITY_AUTO_EXPANDavmerkingsbokser og velg Send.
Malen vil generere fem stabler.
Når stabelstatusen er CREATE_COMPLETE, naviger til Amazon Redshift Serverless-konsollen. Dette er en ny funksjon som gjør det superenkelt å kjøre analyser i skyen med høy ytelse i alle skalaer. Bare last inn dataene dine og begynn å spørre. Det er ikke nødvendig å sette opp og administrere klynger.
Merknader: Mønsteret demonstrert i denne bloggen som integrerer Amazon Redshift og RStudio på Amazon SageMaker vil være det samme uavhengig av Amazon Redshift-distribusjonsmønster (serverløs eller tradisjonell klynge).
Laster data i Amazon Redshift Serverless
CloudFormation-skriptet opprettet en database kalt sagemaker
. La oss fylle denne databasen med tabeller som RStudio-brukeren kan spørre etter. Opprett en SQL-redigeringsfane og vær sikker på at sagemaker
databasen er valgt. Vi vil bruke syntetiske kredittkorttransaksjonsdata å lage tabeller i vår database. Disse dataene er en del av SageMaker eksempeltabelldatasett s3://sagemaker-sample-files/datasets/tabular/synthetic_credit_card_transactions
.
Vi skal utføre følgende spørring i spørringsredigeringsprogrammet. Dette vil generere tre tabeller, kort, transaksjoner, og Brukere.
Du kan validere at spørringen kjørte ved å se tre tabeller i venstre rute i spørringsredigeringsprogrammet.
Når alle tabellene er fylt ut, naviger til SageMaker RStudio og start en ny økt med RSession-grunnbilde på en ml.m5.xlarge-forekomst.
Når økten er lansert, kjører vi denne koden for å opprette en tilkobling til vår Amazon Redshift Serverless-database.
For å se tabellene i det syntetiske skjemaet, må du gi tilgang i Amazon Redshift via spørringsredigeringsprogrammet.
RStudio Tilkoblinger ruten skal vise sagemaker
database med skjema syntetiske og tabeller kort, transaksjoner, brukere.
Du kan klikke på tabellikonet ved siden av tabellene for å se 1,000 poster.
Merk: Vi har laget en forhåndsbygd R Markdown-fil med alle kodeblokkene forhåndsbygde som kan finnes på prosjektet GitHub repo.
La oss nå bruke DBI
pakkefunksjon dbListTables()
for å se eksisterende tabeller.
Bruk dbGetQuery() for å sende en SQL-spørring til databasen.
Vi kan også bruke dbplyr
og dplyr
pakker for å utføre spørringer i databasen. La oss count()
hvor mange transaksjoner er i transaksjonstabellen. Men først må vi installere disse pakkene.
Bruke tbl()
funksjon mens du spesifiserer skjemaet.
La oss kjøre en telling av antall rader for hver tabell.
Så vi har 2,000 brukere; 6,146 kort; og 24,386,900 XNUMX XNUMX transaksjoner. Vi kan også se tabellene i konsollen.
transactions_tbl
Vi kan også se hva dplyr
verb gjør under panseret.
La oss visuelt utforske antall transaksjoner etter år.
Vi kan også oppsummere data i databasen som følger:
Anta at vi ønsker å se svindel ved å bruke kortinformasjon. Vi trenger bare å slå sammen tabellene og deretter gruppere dem etter attributtet.
La oss nå utarbeide et datasett som kan brukes til maskinlæring. La oss filtrere transaksjonsdataene til bare å inkludere Discover-kredittkort mens vi bare beholder et undersett av kolonner.
Og la oss nå gjøre litt rengjøring ved å bruke følgende transformasjoner:
- Konverter
is_fraud
til binært attributt - Fjern transaksjonsstreng fra
use_chip
og gi det nytt navn til type - Kombiner år, måned og dag til et dataobjekt
- Fjern $ fra beløpet og konverter til en numerisk datatype
Nå som vi har filtrert og renset datasettet vårt, er vi klare til å samle dette datasettet inn i lokal RAM.
Nå har vi et fungerende datasett for å begynne å lage funksjoner og tilpasse modeller. Vi vil ikke dekke disse trinnene i denne bloggen, men hvis du vil lære mer om å bygge modeller i RStudio på SageMaker, se Kunngjør Fullt administrert RStudio på Amazon SageMaker for dataforskere.
Opprydding
For å rydde opp i ressurser for å unngå å pådra seg gjentakende kostnader, slett root CloudFormation-malen. Slett også alle opprettede EFS-fester og eventuelle S3-bøtter og objekter som er opprettet.
konklusjonen
Dataanalyse og modellering kan være utfordrende når du arbeider med store datasett i skyen. Amazon Redshift er et populært datavarehus som kan hjelpe brukere med å utføre disse oppgavene. RStudio, et av de mest brukte integrerte utviklingsmiljøene (IDE) for dataanalyse, brukes ofte med R-språk. I dette blogginnlegget viste vi hvordan du bruker Amazon Redshift og RStudio på SageMaker sammen for å effektivt utføre analyser på massive datasett. Ved å bruke RStudio på SageMaker kan brukere dra nytte av den fullstendig administrerte infrastrukturen, tilgangskontrollen, nettverks- og sikkerhetsfunksjonene til SageMaker, samtidig som de forenkler integrasjonen med Amazon Redshift. Hvis du vil lære mer om hvordan du bruker disse to verktøyene sammen, kan du sjekke ut våre andre blogginnlegg og ressurser. Du kan også prøve å bruke RStudio på SageMaker og Amazon Redshift for deg selv og se hvordan de kan hjelpe deg med dataanalyse og modelleringsoppgaver.
Legg til tilbakemelding på denne bloggen, eller opprett en pull-forespørsel på GitHub.
Om forfatterne
Ryan Garner er en dataforsker med AWS Professional Services. Han er lidenskapelig opptatt av å hjelpe AWS-kunder med å bruke R til å løse sine problemer med datavitenskap og maskinlæring.
Raj Pathak er en senior løsningsarkitekt og -teknolog som spesialiserer seg på finansielle tjenester (forsikring, bank, kapitalmarked) og maskinlæring. Han spesialiserer seg på Natural Language Processing (NLP), Large Language Models (LLM) og Machine Learning infrastruktur og driftsprosjekter (MLOps).
Aditi Rajnish er en andreårs programvareingeniørstudent ved University of Waterloo. Hennes interesser inkluderer datasyn, naturlig språkbehandling og edge computing. Hun er også lidenskapelig opptatt av samfunnsbasert STEM-oppsøking og talsmann. På fritiden kan hun bli funnet i fjellklatring, spille piano eller lære å bake den perfekte scones.
Saiteja Pudi er en løsningsarkitekt ved AWS, basert i Dallas, Tx. Han har vært hos AWS i mer enn 3 år nå, og har hjulpet kunder med å utlede det sanne potensialet til AWS ved å være deres pålitelige rådgiver. Han kommer fra applikasjonsutviklingsbakgrunn, interessert i datavitenskap og maskinlæring.
- AI
- ai kunst
- ai art generator
- du har en robot
- Amazon RedShift
- Amazon SageMaker
- kunstig intelligens
- sertifisering av kunstig intelligens
- kunstig intelligens i bankvirksomhet
- kunstig intelligens robot
- kunstig intelligens roboter
- programvare for kunstig intelligens
- AWS maskinlæring
- blockchain
- blockchain konferanse ai
- coingenius
- samtale kunstig intelligens
- kryptokonferanse ai
- dall sin
- dyp læring
- Ekspert (400)
- google det
- maskinlæring
- plato
- plato ai
- Platon Data Intelligence
- Platon spill
- PlatonData
- platogaming
- skala ai
- syntaks
- Teknisk fremgangsmåte
- zephyrnet