R er et populært analytisk programmeringsspråk som brukes av dataforskere og analytikere for å utføre databehandling, utføre statistiske analyser, lage datavisualiseringer og bygge modeller for maskinlæring (ML). RStudio, det integrerte utviklingsmiljøet for R, gir åpen kildekode-verktøy og bedriftsklar profesjonell programvare for team å utvikle og dele arbeidet på tvers av organisasjonen Å bygge, sikre, skalere og vedlikeholde RStudio selv er imidlertid kjedelig og tungvint.
Implementering av RStudio-miljøet i AWS gir elastisitet og skalerbarhet som du ikke har når du distribuerer på stedet, og eliminerer behovet for å administrere den infrastrukturen. Du kan velge ønsket databehandling og minne basert på prosesseringskrav og kan også skalere opp eller ned for å jobbe med analytiske og ML-arbeidsbelastninger av forskjellige størrelser uten en forhåndsinvestering. Dette lar deg raskt eksperimentere med nye datakilder og kode, og rulle ut nye analyseprosesser og ML-modeller til resten av organisasjonen. Du kan også sømløst integrere Data Lake-ressursene dine for å gjøre dem tilgjengelige for utviklere og dataforskere og sikre dataene ved å bruke tilgangskontroller på rad- og kolonnenivå fra AWS Lake formasjon.
Dette innlegget presenterer to måter å enkelt distribuere og kjøre RStudio på AWS for å få tilgang til data som er lagret i datainnsjø:
- Fullt klart på Amazon SageMaker
- Selvvert på Amazon Elastic Compute Cloud (Amazon EC2)
- Du kan velge å distribuere åpen kildekode-versjonen av RStudio ved å bruke en EC2-vertsbasert tilnærming som vi også vil beskrive i dette innlegget. Alternativet selvvert krever at administratoren oppretter en EC2-forekomst og installerer RStudio manuelt eller ved hjelp av en AWS skyformasjon Det er også mindre fleksibilitet for å implementere brukertilgangskontroller i dette alternativet siden alle brukere har samme tilgangsnivå i denne typen implementering.
RStudio på Amazon SageMaker
Du kan starte RStudio Workbench med et enkelt klikk fra SageMaker. Med SageMaker trenger ikke kunder å bære de operative kostnadene ved å bygge, installere, sikre, skalere og vedlikeholde RStudio, de trenger ikke betale for den kontinuerlig kjørende RStudio Server (hvis de bruker t3.medium) og de betaler kun for RSession compute når de bruker den. RStudio-brukere vil ha fleksibilitet til å dynamisk skalere databehandling ved å bytte instanser mens de er på farten. Å kjøre RStudio på SageMaker krever at en administrator oppretter et SageMaker-domene og tilhørende brukerprofiler. Du trenger også en passende RStudio-lisens
Innenfor SageMaker kan du gi tilgang på RStudio-administrator- og RStudio-brukernivå, med ulike tillatelser. Bare brukerprofiler tildelt en av disse to rollene kan få tilgang til RStudio i SageMaker. For mer informasjon om administratoroppgaver for å sette opp RStudio på SageMaker, se Kom i gang med RStudio på Amazon SageMaker. Det innlegget viser også prosessen med å velge EC2-forekomster for hver økt, og hvordan administratoren kan begrense EC2-forekomstalternativer for RStudio-brukere.
Bruk Lake Formation sikkerhetstilgang på radnivå og kolonnenivå
I tillegg til å la teamet ditt starte RStudio-økter på SageMaker, kan du også sikre datasjøen ved å bruke tilgangskontroller på rad- og kolonnenivå fra Lake Formation. For mer informasjon, se Effektive datainnsjøer ved bruk av AWS Lake Formation, del 4: Implementering av sikkerhet på cellenivå og radnivå.
Gjennom Lake Formation sikkerhetskontroller kan du sørge for at hver person har rett tilgang til dataene i datasjøen. Vurder følgende to brukerprofiler i SageMaker-domenet, hver med en annen utførelsesrolle:
Brukerprofil | Gjennomføringsrolle |
rstudiouser-fullaccess |
AmazonSageMaker-ExecutionRole-FullAccess |
rstudiouser-limitedaccess |
AmazonSageMaker-ExecutionRole-LimitedAccess |
Følgende skjermbilde viser rstudiouser-limitedaccess
profildetaljer.
Følgende skjermbilde viser rstudiouser-fullaccess
profildetaljer.
Datasettet som brukes for dette innlegget er en COVID-19 offentlig datasett. Følgende skjermbilde viser et eksempel på dataene:
Etter at du har opprettet brukerprofilen og tilordnet den til riktig rolle, kan du få tilgang til Lake Formation for å gjennomsøke dataene med AWS Lim, opprett metadataene og tabellen, og gi tilgang til tabelldataene. For AmazonSageMaker-ExecutionRole-FullAccess
rolle, gir du tilgang til alle kolonnene i tabellen, og for AmazonSageMaker-ExecutionRole-LimitedAccess
, gir du tilgang ved hjelp av datafilteret USA_Filter
. Vi bruker dette filteret for å gi kolonnetillatelser på radnivå og cellenivå (se Ressurs kolonne i følgende skjermbilde).
Som vist i følgende skjermbilde har den andre rollen begrenset tilgang. Brukere tilknyttet denne rollen kan bare få tilgang til continent
, date
, total_cases
, total_deaths
, new_cases
, new_deaths
og iso_codecolumns
.
Med rolletillatelser knyttet til hver brukerprofil, kan vi se hvordan Lake Formation håndhever de riktige tillatelsene på rad- og kolonnenivå. Du kan åpne RStudio Workbench fra Start appen rullegardinmenyen i den opprettede brukerlisten, og velg RStudio.
I det følgende skjermbildet starter vi appen som rstudiouser-limitedaccess user
.
Du kan se RStudio Workbench-hjemmesiden og en liste over økter, prosjekter og publisert innhold.
Velg et øktnavn for å starte økten i SageMaker. Installer Paws (se veiledning tidligere i dette innlegget) slik at du får tilgang til de riktige AWS-tjenestene. Nå kan du kjøre en spørring for å trekke alle feltene fra datasettet via Amazonas Athena, ved å bruke kommandoen “SELECT * FROM "databasename.tablename"
, og lagre spørringsutgangen i en Amazon enkel lagringstjeneste (Amazon S3) bøtte.
Følgende skjermbilde viser utdatafilene i S3-bøtten.
Følgende skjermbilde viser dataene i disse utdatafilene ved hjelp av Amazon S3 Velg.
Bare USA data og kolonner kontinent, dato, total_cases
, total_deaths
, new_cases
, new_deaths
og iso_code
vises i resultatet for rstudiouser-limitedaccess
bruker.
La oss gjenta de samme trinnene for rstudiouser-fullaccess
bruker.
Du kan se RStudio Workbench-hjemmesiden og en liste over økter, prosjekter og publisert innhold.
La oss kjøre den samme spørringen “SELECT * FROM "databasename.tablename"
bruker Athena.
Følgende skjermbilde viser utdatafilene i S3-bøtten.
Følgende skjermbilde viser dataene i disse utdatafilene ved hjelp av Amazon S3 Velg.
Som vist i dette eksempelet rstudiouser-fullaccess
brukeren har tilgang til alle kolonnene og radene i datasettet.
Selvvert på Amazon EC2
Hvis du vil begynne å eksperimentere med RStudios åpen kildekode-versjon på AWS, kan du installere Rstudio på en EC2-instans. Denne CloudFormation-malen i dette innlegget inneholder EC2-forekomsten og installerer RStudio ved å bruke brukerdataskriptet. Du kan kjøre malen flere ganger for å klargjøre flere RStudio-forekomster etter behov, og du kan bruke den i en hvilken som helst AWS-region. Etter at du har implementert CloudFormation-malen, gir den deg en URL for å få tilgang til RStudio fra en nettleser. Amazon EC2 lar deg skalere opp eller ned for å håndtere endringer i datastørrelse og den nødvendige beregningskapasiteten for å kjøre analysene dine.
Opprett et nøkkelverdi-par for sikker tilgang
AWS bruker offentlig nøkkelkryptering for å sikre påloggingsinformasjonen for din EC2-instans. Du spesifiserer navnet på nøkkelparet i KeyPair
parameter når du starter CloudFormation-malen. Deretter kan du bruke den samme nøkkelen til å logge på den klargjorte EC2-forekomsten senere om nødvendig.
Før du kjører CloudFormation-malen, sørg for at du har Amazon EC2-nøkkelparet i AWS-kontoen du planlegger å bruke. Hvis ikke, se Lag et nøkkelpar ved hjelp av Amazon EC2 for instruksjoner for å lage en.
Start CloudFormation-malenLogg på CloudFormation-konsollen i us-east-1
Region og velg Start stabel.
Du må angi flere parametere i CloudFormation-malen:
- InitialUser og InitialPassword – Brukernavnet og passordet du bruker for å logge på RStudio-økten. Standardverdiene er
rstudio
ogRstudio@123
Hhv. - InstanceType – EC2-forekomsttypen som RStudio-serveren skal distribueres på. Malen godtar for øyeblikket alle forekomster i forekomstfamiliene t2, m4, c4, r4, g2, p2 og g3, og kan enkelt inkorporere andre forekomstfamilier. Standardverdien er t2.micro.
- Nøkkelpar – Nøkkelparet du bruker for å logge på EC2-forekomsten.
- VpcId og SubnetId - Det Amazon Virtual Private Cloud (Amazon VPC) og subnett der forekomsten skal startes.
Når du har angitt disse parameterne, distribuerer du CloudFormation-malen. Når den er fullført, er følgende ressurser tilgjengelig:
- En EC2-instans med RStudio installert på den.
- En IAM-rolle med nødvendige tillatelser for å koble til andre AWS-tjenester.
- En sikkerhetsgruppe med regler for å åpne port 8787 for RStudio-serveren.
Logg inn på RStudio
Nå er du klar til å bruke RStudio! Gå til Utganger fanen for CloudFormation-stakken og kopier RStudio URL-verdien (den er i formatet http://ec2-XX-XX-XXX-XX.compute-1.amazonaws.com:8787/
). Skriv inn nettadressen i en nettleser. Dette åpner RStudio-økten din, som du kan logge på med samme brukernavn og passord som du oppga mens du kjørte CloudFormation-malen.
Få tilgang til AWS-tjenester fra RStudio
Etter at du har fått tilgang til RStudio-økten, bør du installere R-pakken for AWS (Paws). Dette lar deg koble til mange AWS-tjenester, inkludert tjenestene og ressursene i datasjøen. For å installere Paws, skriv inn og kjør følgende R-kode:
For å bruke en AWS-tjeneste må du opprette en klient og få tilgang til tjenestens operasjoner fra den klienten. Når du får tilgang til AWS APIer, må du oppgi legitimasjon og region. Paws søker etter legitimasjonen og regionen ved å bruke AWS-autentiseringskjeden:
- Eksplisitt gitt tilgangsnøkkel, hemmelig nøkkel, økttoken, profil eller region
- R miljøvariabler
- Operativsystemmiljøvariabler
- AWS delte legitimasjon og konfigurasjonsfiler i
.aws/credentials
og.aws/config
- Container IAM-rolle
- Forekomst IAM-rolle
Fordi du kjører på en EC2-instans med en tilknyttet IAM-rolle, bruker Paws automatisk IAM-rollelegitimasjonen din til å autentisere AWS API-forespørsler.
For produksjonsmiljø anbefaler vi å bruke den skalerbare Rstudio-løsningen som er skissert i denne bloggen.
konklusjonen
Du lærte hvordan du distribuerer RStudio-miljøet ditt i AWS. Vi demonstrerte fordelene ved å bruke RStudio på Amazon SageMaker og hvordan du kan komme i gang. Du lærte også hvordan du raskt kan begynne å eksperimentere med åpen kildekode-versjonen av RStudio ved å bruke en selvdrevet installasjon med Amazon EC2. Vi demonstrerte også hvordan du integrerer RStudio i datainnsjøarkitekturene dine og implementerer finmasket tilgangskontroll på en datainnsjøtabell ved å bruke sikkerhetsfunksjonen på radnivå og cellenivå i Lake Formation.
I vårt neste innlegg vil vi demonstrere hvordan du kan containerisere R-skript og kjøre dem ved hjelp av AWS Lambda.
Om forfatterne
Venkata Kampana er en senior løsningsarkitekt i AWS Health and Human Services-teamet og er basert i Sacramento, CA. I den rollen hjelper han offentlige kunder med å nå sine misjonsmål med godt utformede løsninger på AWS.
Dr. Dawn Heisey-Grove er leder for folkehelseanalyse for Amazon Web Services sitt statlige og lokale myndighetsteam. I denne rollen er hun ansvarlig for å hjelpe statlige og lokale folkehelsebyråer med å tenke kreativt om hvordan de kan nå sine analytiske utfordringer og langsiktige mål. Hun har brukt karrieren sin på å finne nye måter å bruke eksisterende eller nye data for å støtte folkehelseovervåking og forskning.
- AI
- ai kunst
- ai art generator
- du har en robot
- 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
- google det
- maskinlæring
- plato
- plato ai
- Platon Data Intelligence
- Platon spill
- PlatonData
- platogaming
- skala ai
- syntaks
- zephyrnet