RStudio på Amazon SageMaker är branschens första fullt hanterade RStudio Workbench integrerade utvecklingsmiljö (IDE) i molnet. Du kan snabbt starta den välbekanta RStudio IDE och ringa upp och ner de underliggande beräkningsresurserna utan att avbryta ditt arbete, vilket gör det enkelt att bygga maskininlärning (ML) och analyslösningar i R i skala.
I samband med verktyg som RStudio på SageMaker analyserar, transformerar och förbereder användare stora mängder data som en del av datavetenskapen och ML-arbetsflödet. Dataforskare och dataingenjörer använder Apache Spark, Hive och Presto på Amazon EMR för storskalig databehandling. Genom att använda RStudio på SageMaker och Amazon EMR tillsammans kan du fortsätta att använda RStudio IDE för analys och utveckling, samtidigt som du använder Amazon EMR-hanterade kluster för större databehandling.
I det här inlägget visar vi hur du kan ansluta din RStudio på SageMaker-domänen med ett EMR-kluster.
Lösningsöversikt
Vi använder en Apache Livy anslutning att lämna in en sparklyr jobb från RStudio på SageMaker till ett EMR-kluster. Detta visas i följande diagram.
All kod som visas i inlägget är tillgänglig i vår GitHub repository. Vi implementerar följande lösningsarkitektur.
Förutsättningar
Innan du distribuerar några resurser, se till att du har alla krav för att ställa in och använda RStudio på SageMaker och Amazon EMR:
Vi kommer också att bygga en anpassad RStudio på SageMaker-bilden, så se till att du har Docker igång och alla nödvändiga behörigheter. För mer information, se Använd en anpassad bild för att ta med din egen utvecklingsmiljö till RStudio på Amazon SageMaker.
Skapa resurser med AWS CloudFormation
Vi använder en AWS molnformation stack för att skapa den nödvändiga infrastrukturen.
Om du redan har en RStudio-domän och ett befintligt EMR-kluster kan du hoppa över det här steget och börja bygga din anpassade RStudio på SageMaker-bilden. Ersätt informationen för ditt EMR-kluster och RStudio-domän i stället för EMR-klustret och RStudio-domänen som skapats i det här avsnittet.
När du startar denna stack skapas följande resurser:
- Två privata subnät
- EMR Spark-kluster
- AWS-lim databas och tabeller
- SageMaker-domän med RStudio
- SageMaker RStudio användarprofil
- IAM-tjänstroll för SageMaker RStudio-domänen
- IAM-tjänstroll för SageMaker RStudio-användarprofilen
Utför följande steg för att skapa dina resurser:
Välja Starta stack för att skapa stacken.
- På Skapa stack sida, välj Nästa.
- På Ange stapeldetaljer sida, ange ett namn för din stack och lämna de återstående alternativen som standard, välj sedan Nästa.
- På Konfigurera stackalternativ sida, lämna alternativen som standard och välj Nästa.
- På Granskningssida, Välj
- Jag erkänner att AWS CloudFormation kan skapa IAM-resurser med anpassade namn och
- Jag erkänner att AWS CloudFormation kan kräva följande funktioner: CAPABILITY_AUTO_EXPAND.
- Välja Skapa stack.
Mallen genererar fem stackar.
För att se EMR Spark-klustret som skapades, navigera till Amazon EMR-konsolen. Du kommer att se ett kluster skapat för dig som kallas sagemaker
. Detta är klustret vi ansluter till via RStudio på SageMaker.
Bygg den anpassade RStudio på SageMaker-bilden
Vi har skapat en anpassad bild som kommer att installera alla beroenden av sparklyr, och kommer att upprätta en anslutning till EMR-klustret vi skapade.
Om du använder ditt eget EMR-kluster och RStudio-domän, ändra skripten därefter.
Se till att Docker körs. Börja med att komma in i vårt projektförråd:
Vi kommer nu att bygga Docker-bilden och registrera den till vår RStudio på SageMaker-domänen.
- Välj på SageMaker-konsolen domäner i navigeringsfönstret.
- Välj domän
select rstudio-domain
. - På Miljö fliken, välj Bifoga bild.
Nu bifogar vi sparklyr-bilden som vi skapade tidigare till domänen. - För Välj bildkälla, Välj Befintlig bild.
- Välj sparklyr-bilden vi byggde.
- För Bildegenskaper, lämna alternativen som standard.
- För Bildtyp, Välj RStudio bild.
- Välja Skicka.
Bekräfta att bilden har lagts till i domänen. Det kan ta några minuter för bilden att bifogas helt. - När det är tillgängligt loggar du in på RStudio på SageMaker-konsolen med hjälp av
rstudio-user
profil som skapades. - Härifrån skapar du en session med sparklyr-bilden som vi skapade tidigare.
Först måste vi ansluta till vårt EMR-kluster. - Välj i anslutningsfönstret Ny anslutning.
- Välj EMR-klusteranslutningskodavsnittet och välj Anslut till Amazon EMR Cluster.
Efter att anslutningskoden har körts kommer du att se en Spark-anslutning genom Livy, men inga tabeller. - Ändra databasen till
credit_card
:tbl_change_db(sc, “credit_card”)
- Välja Uppdatera anslutningsdata.
Du kan nu se tabellerna. - Navigera nu till
rstudio-sparklyr-code-walkthrough.md
fil.
Detta har en uppsättning Spark-transformationer som vi kan använda på vår kreditkortsdatauppsättning för att förbereda den för modellering. Följande kod är ett utdrag:
låt oss count()
hur många transaktioner som finns i transaktionstabellen. Men först måste vi cache Använd tbl()
funktion.
Låt oss köra en räkning av antalet rader för varje tabell.
Låt oss nu registrera våra tabeller som Spark Data Frames och dra in dem i klusteromfattande minnescache för bättre prestanda. Vi kommer också att filtrera rubriken som placeras i den första raden för varje tabell.
För att se hela listan med kommandon, se rstudio-sparklyr-code-walkthrough.md
fil.
Städa upp
För att rensa upp eventuella resurser för att undvika återkommande kostnader, ta bort rotmallen CloudFormation. Radera också alla Amazon Elastic File Service (Amazon EFS) fästen skapade och eventuella Amazon enkel lagringstjänst (Amazon S3) hinkar och objekt skapade.
Slutsats
Integrationen av RStudio på SageMaker med Amazon EMR ger en kraftfull lösning för dataanalys och modelleringsuppgifter i molnet. Genom att koppla RStudio på SageMaker och upprätta en Livy-anslutning till Spark på EMR kan du dra nytta av datorresurserna på båda plattformarna för effektiv bearbetning av stora datamängder. RStudio, en av de mest använda IDE:erna för dataanalys, låter dig dra fördel av SageMakers fullt hanterade infrastruktur, åtkomstkontroll, nätverk och säkerhetsfunktioner. Samtidigt ger Livy-anslutningen till Spark på Amazon EMR ett sätt att utföra distribuerad bearbetning och skalning av databearbetningsuppgifter.
Om du är intresserad av att lära dig mer om att använda dessa verktyg tillsammans fungerar det här inlägget som en utgångspunkt. För mer information, se RStudio på Amazon SageMaker. Om du har några förslag eller funktionsförbättringar, vänligen skapa en pull-förfrågan på vår GitHub-repo eller lämna en kommentar till det här inlägget!
Om författarna
Ryan Garner är en dataforskare med AWS Professional Services. Han brinner för att hjälpa AWS-kunder att använda R för att lösa sina problem med datavetenskap och maskininlärning.
Raj Pathak är en senior lösningsarkitekt och tekniker specialiserad på finansiella tjänster (försäkring, bank, kapitalmarknader) och maskininlärning. Han är specialiserad på Natural Language Processing (NLP), Large Language Models (LLM) och Machine Learning infrastruktur och driftsprojekt (MLOps).
Saiteja Pudi är en lösningsarkitekt på AWS, baserad i Dallas, Tx. Han har arbetat med AWS i mer än 3 år nu och hjälpt kunder att ta del av AWS verkliga potential genom att vara deras pålitliga rådgivare. Han kommer från en applikationsutvecklingsbakgrund, intresserad av datavetenskap och maskininlärning.
- SEO-drivet innehåll och PR-distribution. Bli förstärkt idag.
- Platoblockchain. Web3 Metaverse Intelligence. Kunskap förstärkt. Tillgång här.
- Minting the Future med Adryenn Ashley. Tillgång här.
- Källa: https://aws.amazon.com/blogs/machine-learning/connect-amazon-emr-and-rstudio-on-amazon-sagemaker/
- : har
- :är
- $UPP
- 100
- 11
- 20
- 22
- 7
- a
- Om Oss
- tillgång
- i enlighet med detta
- bekräfta
- lagt till
- Fördel
- rådgivare
- Alla
- tillåter
- redan
- också
- amason
- Amazon EMR
- Amazon SageMaker
- mängd
- mängder
- amp
- an
- analys
- analytics
- analys
- och
- vilken som helst
- Apache
- arkitektur
- ÄR
- AS
- At
- bifoga
- tillgänglig
- AWS
- AWS molnformation
- AWS professionella tjänster
- bakgrund
- Banking
- baserat
- varit
- Där vi får lov att vara utan att konstant prestera,
- Bättre
- båda
- föra
- SLUTRESULTAT
- Byggnad
- byggt
- men
- by
- Cache
- kallas
- KAN
- kapacitet
- kapital
- Kapitalmarknader
- kortet
- Kort
- Välja
- cloud
- kluster
- koda
- kommentar
- Compute
- databehandling
- Kontakta
- Anslutning
- anslutning
- Anslutningar
- Konsol
- fortsätta
- kontroll
- Kostar
- skapa
- skapas
- skapar
- kredit
- kreditkort
- beställnings
- Kunder
- Dallas
- datum
- dataanalys
- databehandling
- datavetenskap
- datavetare
- Databas
- datauppsättningar
- Standard
- demonstrera
- demonstreras
- utplacera
- Utveckling
- distribueras
- Hamnarbetare
- domän
- ner
- varje
- Tidigare
- effektiv
- Ingenjörer
- säkerställa
- Miljö
- etablera
- upprättandet
- befintliga
- bekant
- Leverans
- få
- Fil
- filtrera
- finansiella
- finansiella tjänster
- Förnamn
- efter
- För
- från
- full
- fullständigt
- fungera
- Kön
- generera
- genererar
- få
- GitHub
- Har
- he
- hjälpa
- här.
- Bikupa
- Hur ser din drömresa ut
- html
- http
- HTTPS
- bild
- genomföra
- förbättringar
- in
- industrins
- informationen
- Infrastruktur
- installera
- försäkring
- integrerade
- integrering
- intresserad
- in
- IT
- Jobb
- jpg
- språk
- Large
- storskalig
- större
- lansera
- inlärning
- Lämna
- tycka om
- Lista
- LLM
- Maskinen
- maskininlärning
- göra
- Framställning
- förvaltade
- många
- Marknader
- Maj..
- Samtidigt
- Minne
- kanske
- minuter
- ML
- MLOps
- modeller
- modifiera
- mer
- mest
- namn
- namn
- Natural
- Naturlig språkbehandling
- Navigera
- Navigering
- Behöver
- nätverk
- nlp
- nu
- antal
- objekt
- of
- on
- ONE
- Verksamhet
- Tillbehör
- or
- vår
- egen
- sida
- panelen
- del
- brinner
- Utföra
- prestanda
- behörigheter
- Plats
- Plattformar
- plato
- Platon Data Intelligence
- PlatonData
- snälla du
- Punkt
- Inlägg
- potentiell
- den mäktigaste
- Förbered
- förbereda
- privat
- problem
- bearbetning
- professionell
- Profil
- projektet
- projekt
- ge
- ger
- snabbt
- återkommande
- registrera
- Återstående
- Repository
- begära
- kräver
- Obligatorisk
- Krav
- Resurser
- Roll
- rot
- RAD
- Körning
- rinnande
- sagemaker
- SC
- Skala
- skalning
- Vetenskap
- Forskare
- vetenskapsmän
- omfattning
- skript
- §
- säkerhet
- senior
- serverar
- service
- Tjänster
- session
- in
- inställning
- Enkelt
- So
- lösning
- Lösningar
- LÖSA
- Gnista
- specialiserat
- specialiserat
- stapel
- Stacks
- starta
- Starta
- Steg
- Steg
- förvaring
- skicka
- bord
- Ta
- uppgifter
- teknolog
- mall
- än
- den där
- Smakämnen
- den information
- deras
- Dem
- Dessa
- detta
- Genom
- till
- tillsammans
- verktyg
- Transaktioner
- transformationer
- omvandla
- sann
- betrodd
- TX
- underliggande
- användning
- Begagnade
- Användare
- användare
- med hjälp av
- var
- Sätt..
- we
- medan
- brett
- kommer
- med
- utan
- Arbete
- jaml
- år
- Om er
- Din
- zephyrnet