A modern üzleti környezetben az adatok jelentik az új aranyat. A vállalatok exponenciálisan növekvő mennyiségű információval dolgoznak, legyen szó ügyféladatokról, tranzakciókról, szenzoradatokról vagy webes interakciókról. Ennek a hatalmas adatmennyiségnek a feldolgozása, elemzése és értelmezése kulcsfontosságú a versenyképesség megőrzéséhez és az innovációhoz. Azonban a big data kihívásai – a tárolás, a feldolgozási sebesség, a skálázhatóság és a költségek – gyakran meghaladják a hagyományos rendszerek képességeit. Itt lép be a képbe az Amazon Web Services (AWS) egyik legfontosabb szolgáltatása, az Amazon EMR (Elastic MapReduce), amely forradalmasítja a big data feladatok végrehajtását a felhőben.
Mi az Amazon EMR?
Az Amazon EMR egy felhőalapú big data platform, amelyet az AWS biztosít a nyílt forráskódú keretrendszerek, mint például az Apache Hadoop, Apache Spark, Apache Hive, Apache Flink és Presto egyszerűbb futtatására és skálázására. Célja, hogy leegyszerűsítse a nagy méretű adatfeldolgozási és elemzési feladatokat, megszüntetve a szerverek beállításával, konfigurálásával és karbantartásával járó komplexitást. Az EMR lehetővé teszi a felhasználók számára, hogy petabájtos nagyságrendű adatokat dolgozzanak fel, miközben dinamikusan méretezhetik az erőforrásokat a feladat igényei szerint.
Az EMR alapvetően egy menedzselt szolgáltatás, ami azt jelenti, hogy az AWS gondoskodik a mögöttes infrastruktúráról, a szoftvertelepítésről, a javításokról és a monitorozásról. Ez felszabadítja az adatmérnököket és adattudósokat, hogy a tényleges adatfeldolgozási logikára és az üzleti problémák megoldására koncentrálhassanak, ahelyett, hogy az infrastruktúra kezelésével bajlódnának. Az EMR futtatható Amazon EC2 virtuális gépeken, Amazon EKS-en (Kubernetes fürtökön), vagy akár EMR Serverless módban, ami még nagyobb rugalmasságot és egyszerűséget kínál.
A szolgáltatás kulcsfontosságú eleme a rugalmasság. Támogatja a legnépszerűbb big data keretrendszereket és programozási nyelveket, így a felhasználók kiválaszthatják a feladathoz legmegfelelőbb eszközt. Legyen szó kötegelt feldolgozásról, valós idejű stream elemzésről, gépi tanulási modellek képzéséről vagy interaktív adatelemzésről, az EMR képes kezelni a kihívásokat.
Miért van szükség az Amazon EMR-re?
A big data feldolgozás hagyományos módszerei számos kihívással járnak, amelyek indokolják az Amazon EMR használatát:
- Infrastruktúra kezelésének komplexitása: Egy Hadoop vagy Spark fürt kézi beállítása és karbantartása rendkívül időigényes és hibalehetőségeket rejt magában. Ez magában foglalja a hardver beszerzését, a szoftver telepítését, a konfigurálást, a javításokat, a frissítéseket és a hibaelhárítást.
- Skálázhatósági korlátok: A helyben telepített rendszerek (on-premise) skálázása lassú és költséges. Az erőforrások bővítése új hardver beszerzését és telepítését igényli, ami heteket vagy hónapokat vehet igénybe. A csúcsidőszakok kezelése komoly kihívást jelent.
- Költségek: Az on-premise big data infrastruktúra jelentős kezdeti beruházást igényel (CAPEX), valamint folyamatos működési költségekkel (OPEX) jár, mint például az áram, hűtés és a szakember gárda bére. Az erőforrások gyakran kihasználatlanul állnak a nem csúcsidőszakokban.
- Rugalmatlanság: A különböző big data feladatok eltérő eszközöket és konfigurációkat igényelhetnek. Egy rögzített infrastruktúra nehezen alkalmazkodik ezekhez a változó igényekhez.
- Adatvesztés kockázata: A helyben telepített rendszerekben a hardverhibák adatvesztéshez vezethetnek, ha nincs megfelelő redundancia és biztonsági mentési stratégia.
Az Amazon EMR ezekre a problémákra kínál megoldást. Automatizálja a fürtök létrehozását és kezelését, lehetővé téve a felhasználók számára, hogy percek alatt elindítsanak egy big data fürtöt. A skálázhatóság beépített funkció, amely lehetővé teszi az erőforrások dinamikus hozzáadását vagy eltávolítását a terhelés függvényében. A pay-as-you-go modell révén csak a felhasznált erőforrásokért kell fizetni, ami jelentős költségmegtakarítást eredményez. Az EMR integrálódik az AWS ökoszisztémával, biztosítva a magas rendelkezésre állást, a tartós tárolást (pl. Amazon S3) és a robusztus biztonsági funkciókat.
Az Amazon EMR azáltal forradalmasítja a big data feldolgozást, hogy eltávolítja az infrastruktúra menedzselésének terhét a fejlesztők és adatelemzők válláról, lehetővé téve számukra, hogy kizárólag az adatok értékelésére és az üzleti intelligencia kinyerésére koncentráljanak.
Az Amazon EMR alapvető komponensei és architektúrája
Az Amazon EMR architektúrája a nagy méretű elosztott feldolgozási rendszerekre jellemző elvekre épül, de az AWS felhőjének előnyeivel kiegészítve. Az EMR fürtök alapvető építőkövei a csomópontok, amelyeken nyílt forráskódú keretrendszerek futnak, és amelyek tartós tárolórendszerekkel integrálódnak.
Fürtök és csomópontok (Clusters and Nodes)
Az EMR fürtök egy vagy több Amazon EC2 virtuális gépből állnak, amelyek különböző szerepeket töltenek be:
- Master csomópont (Master Node): Ez a fürt agya. Felelős a feladatok koordinálásáért, a feldolgozási erőforrások elosztásáért és a fürt állapotának fenntartásáért. Egy EMR fürtnek általában egy master csomópontja van, bár magas rendelkezésre állású konfigurációkban több is lehet. Itt futnak a fürtkezelő szoftverek, mint például a YARN ResourceManager és a HDFS NameNode.
- Core csomópontok (Core Nodes): Ezek a csomópontok hajtják végre a tényleges adatfeldolgozást és tárolják az adatokat a Hadoop Distributed File System (HDFS) segítségével. Minden core csomóponton fut egy HDFS DataNode és egy YARN NodeManager. Az adatok redundáns tárolása érdekében a HDFS több core csomóponton replikálja az adatblokkokat.
- Task csomópontok (Task Nodes): A task csomópontok csak adatfeldolgozást végeznek, nem tárolnak adatokat HDFS-en. Elsődlegesen a feldolgozási kapacitás bővítésére szolgálnak anélkül, hogy a tárolási kapacitást is növelnénk. Ezeken a csomópontokon YARN NodeManager fut. A task csomópontok ideálisak a Spot példányok használatára, mivel az adatvesztés kockázata minimális, ha egy Spot példányt visszavesz az AWS.
Az EMR lehetővé teszi a felhasználók számára, hogy különböző típusú EC2 példányokat (pl. M5, R5, C5) válasszanak a csomópontokhoz, optimalizálva a teljesítményt és a költségeket a feladat igényei szerint. A fürtök skálázhatók, ami azt jelenti, hogy a csomópontok számát dinamikusan lehet növelni vagy csökkenteni a terhelés függvényében.
Nyílt forráskódú keretrendszerek (Open-source Frameworks)
Az Amazon EMR előre telepíti és konfigurálja a legnépszerűbb big data keretrendszereket. Ezek közül a legfontosabbak:
- Apache Hadoop: Az eredeti big data keretrendszer, amely a MapReduce programozási modellt és a HDFS fájlrendszert biztosítja nagy méretű adathalmazok elosztott feldolgozásához és tárolásához.
- Apache Spark: Egy gyors és általános célú elosztott számítási motor, amely memóriában történő feldolgozásra optimalizált, így sokkal gyorsabb lehet a Hadoop MapReduce-nál. Támogatja az SQL-t (Spark SQL), a stream feldolgozást (Spark Streaming), a gépi tanulást (MLlib) és a gráffeldolgozást (GraphX).
- Apache Hive: Egy adattárház szoftver, amely SQL-szerű lekérdezéseket (HiveQL) tesz lehetővé a HDFS-en tárolt adatokon. A Hive lefordítja az SQL lekérdezéseket MapReduce vagy Spark feladatokká.
- Presto (vagy Trino): Egy elosztott SQL lekérdező motor, amelyet interaktív analitikához terveztek, és amely képes adatokat lekérdezni különböző forrásokból (S3, Hive, RDS, stb.) rendkívül gyorsan.
- Apache Flink: Egy elosztott adatfolyam-feldolgozó keretrendszer, amely valós idejű analitikához és eseményvezérelt alkalmazásokhoz ideális, alacsony késleltetéssel és magas átviteli sebességgel.
- Apache HBase: Egy nem-relációs (NoSQL) adatbázis, amely nagy méretű, ritkán strukturált adatok tárolására és valós idejű hozzáférésére optimalizált.
- Apache ZooKeeper: Elosztott koordinációs szolgáltatás a nagy elosztott rendszerekhez.
- Apache Livy: REST-szerver Spark-hoz, amely lehetővé teszi a Spark fürtökkel való interakciót REST API-n keresztül.
- Apache Tez: Egy extensible framework a YARN-on, amely hatékonyabb adatfolyam-feldolgozást tesz lehetővé, mint a hagyományos MapReduce.
Az AWS folyamatosan frissíti az EMR-t a legújabb nyílt forráskódú verziókkal, biztosítva a hozzáférést a legújabb funkciókhoz és teljesítményjavításokhoz.
Fájlrendszerek (File Systems)
Az EMR fürtök több fájlrendszerrel is képesek dolgozni:
- Hadoop Distributed File System (HDFS): A HDFS egy elosztott fájlrendszer, amely a core csomópontokon fut, és adatokat tárol a feldolgozás során. Bár gyors helyi hozzáférést biztosít, az adatok elvesznek, ha a fürtöt leállítják. Ideális ideiglenes adatokhoz és köztes eredményekhez.
- Amazon S3 (Simple Storage Service): Az S3 egy rendkívül skálázható, tartós és költséghatékony objektumtároló szolgáltatás. Az EMR szorosan integrálódik az S3-mal, lehetővé téve a fürtök számára, hogy adatokat olvassanak és írjanak közvetlenül az S3-ba. Ez az integráció kulcsfontosságú, mivel az S3 biztosítja az adatok tartósságát és leválasztja a tárolást a számítási erőforrásoktól. Ez azt jelenti, hogy a fürt leállítása után is megmaradnak az adatok, és különböző fürtök oszthatják meg ugyanazokat az adatokat az S3-ban.
- EMR File System (EMRFS): Az EMRFS egy olyan réteg, amely lehetővé teszi az EMR fürtök számára, hogy úgy kommunikáljanak az S3-mal, mintha az egy HDFS fájlrendszer lenne. Ez optimalizálja az S3-hozzáférést és kezeli a konzisztenciát.
Az S3 és az EMRFS kombinációja az EMR egyik legnagyobb erőssége, mivel lehetővé teszi a felhasználók számára, hogy költséghatékonyan tárolják a hatalmas adatmennyiségeket, és csak akkor fizessenek a számítási erőforrásokért, amikor szükség van rájuk.
Az Amazon EMR legfontosabb jellemzői és előnyei

Az Amazon EMR számos olyan funkciót kínál, amelyek kiemelkedővé teszik a big data feldolgozás területén. Ezek a jellemzők együttesen biztosítják a rugalmasságot, a költséghatékonyságot és a könnyű használhatóságot.
Skálázhatóság (Scalability)
- Elasztikus méretezés: Az EMR automatikusan képes növelni vagy csökkenteni a fürt méretét a számítási igények függvényében. Ez azt jelenti, hogy a felhasználók sosem fizetnek több erőforrásért, mint amennyire éppen szükségük van, és a feladatok mindig elegendő kapacitással rendelkeznek a gyors végrehajtáshoz. Az automatikus skálázás beállítható a YARN memória- vagy CPU-kihasználtsága alapján.
- Gyors fürtindítás: Percek alatt elindíthatók új fürtök, ami lehetővé teszi a fejlesztők számára, hogy gyorsan iteráljanak és teszteljenek új adatelemzési stratégiákat.
- Csomópontok hozzáadása/eltávolítása: A fürt mérete manuálisan is módosítható futás közben, így a felhasználók finomhangolhatják az erőforrásokat a változó terheléshez.
Költséghatékonyság (Cost-effectiveness)
- Pay-as-you-go modell: Az EMR-rel a felhasználók csak a ténylegesen felhasznált számítási időért fizetnek, másodperces alapon. Nincsenek előzetes beruházások vagy hosszú távú kötelezettségek.
- Spot példányok támogatása: Lehetőség van Spot példányok használatára, amelyek jelentősen olcsóbbak a On-Demand példányoknál. Ez különösen költséghatékony hosszú ideig futó, de szakaszos feladatok esetén, vagy olyan feladatoknál, amelyek tolerálják a megszakítást. Az EMR automatikusan kezeli a Spot példányok megszakítását és a feladatok újraütemezését.
- Tárolás leválasztása a számítástól: Az adatok tárolása az Amazon S3-ban történik, amely rendkívül költséghatékony és tartós. Ez azt jelenti, hogy nem kell folyamatosan futó, drága számítási erőforrásokat fenntartani az adatok tárolásához.
- Automatikus leállítás: A fürtök automatikusan leállíthatók, ha egy bizonyos ideig inaktívak, vagy miután egy feladat befejeződött, tovább csökkentve a költségeket.
Egyszerűség és menedzselhetőség (Simplicity and Manageability)
- Menedzselt szolgáltatás: Az AWS gondoskodik a fürtök telepítéséről, konfigurálásáról, javításáról és monitorozásáról. Ez csökkenti az üzemeltetési terheket és lehetővé teszi a csapatok számára, hogy az üzleti logikára koncentráljanak.
- Egyszerű indítás: A fürtök az AWS Management Console, az AWS CLI vagy az AWS SDK-k segítségével könnyedén elindíthatók és konfigurálhatók.
- EMR Studio: Egy integrált fejlesztői környezet, amely Jupyter Notebook-alapú felületet biztosít az adatelemzők és adattudósok számára, hogy interaktívan dolgozzanak Spark, Hive és Presto alkalmazásokkal.
- Előre konfigurált keretrendszerek: Az EMR előre telepíti és konfigurálja a legújabb nyílt forráskódú big data keretrendszereket, így a felhasználóknak nem kell aggódniuk a kompatibilitási problémák miatt.
Integráció más AWS szolgáltatásokkal (Integration with other AWS Services)
Az EMR szorosan integrálódik az AWS ökoszisztémájával, ami tovább növeli a képességeit és egyszerűsíti a big data pipeline-ok építését:
- Amazon S3: Alapértelmezett tároló a tartós adatok számára.
- Amazon EC2: A fürtök alapjául szolgáló virtuális gépek.
- Amazon RDS / Aurora / Redshift: Adatbázisok, amelyekből az EMR adatokat olvashat vagy írhat bele.
- AWS Glue Data Catalog: Egy menedzselt metaadattár, amelyet az EMR használhat a tábladefiníciók tárolására és megosztására (pl. Hive táblákhoz).
- AWS Lake Formation: Segít az adatmérnököknek adat tavak építésében és biztonságos kezelésében.
- Amazon Kinesis / Apache Kafka: Valós idejű adatfolyamok forrása vagy célja Spark Streaming vagy Flink alkalmazásokhoz.
- Amazon CloudWatch: A fürtök monitorozására és riasztások beállítására.
- AWS IAM: Hozzáférés-kezelés és biztonság.
- Amazon SageMaker: Gépi tanulási modellek betanítására és telepítésére az EMR-en feldolgozott adatok felhasználásával.
Rugalmasság (Flexibility)
- Több keretrendszer támogatása: A felhasználók választhatnak a Hadoop, Spark, Hive, Presto, Flink és sok más keretrendszer közül, vagy akár kombinálhatják is őket egyetlen fürtön belül.
- Testreszabható fürtök: Az EMR lehetővé teszi a fürtök részletes konfigurálását, beleértve a szoftververziókat, a hardvertípusokat és a hálózati beállításokat.
- EMR Serverless: Ez a legújabb üzemmód lehetővé teszi a Spark és Hive alkalmazások futtatását anélkül, hogy fürtöket kellene beállítani, optimalizálni, skálázni vagy konfigurálni. Az AWS automatikusan skálázza az erőforrásokat a feladat igényei szerint, és csak a ténylegesen felhasznált erőforrásokért kell fizetni. Ez tovább növeli a rugalmasságot és csökkenti az üzemeltetési terheket.
Biztonság (Security)
Az EMR robusztus biztonsági funkciókat kínál, amelyek az AWS széles körű biztonsági modelljére épülnek:
- Hálózati izoláció: A fürtök az Amazon Virtual Private Cloud (VPC) hálózatában futnak, lehetővé téve a hálózati szegmentációt és a biztonsági csoportok (Security Groups) használatát a hozzáférés szabályozására.
- Titkosítás: Az adatok titkosíthatók nyugalmi állapotban (S3-ban tárolt adatok, HDFS adatok) és átvitel közben is (SSL/TLS). Támogatja az AWS Key Management Service (KMS) integrációját a kulcsok kezeléséhez.
- Identitás- és hozzáférés-kezelés (IAM): Az AWS IAM segítségével részletes hozzáférés-szabályozás állítható be a fürtökhöz és az adatokhoz.
- Naplózás és monitorozás: Az AWS CloudTrail naplózza az EMR API hívásokat, míg az Amazon CloudWatch metrikákat és naplókat gyűjt a fürt teljesítményéről és állapotáról.
Teljesítmény (Performance)
- Optimalizált konfigurációk: Az EMR az AWS infrastruktúrájához optimalizált konfigurációkat használ a nyílt forráskódú keretrendszerekhez, biztosítva a magas teljesítményt.
- Hardver választék: Különböző EC2 példánytípusok (pl. memória-optimalizált, számítási-optimalizált) választhatók a specifikus teljesítményigényekhez.
- Managed Scaling: Az EMR Managed Scaling dinamikusan méretezi a fürtöt a futó feladatok terhelése alapján, biztosítva az optimális erőforrás-kihasználtságot és teljesítményt.
Gyakori felhasználási esetek
Az Amazon EMR rendkívül sokoldalú, és számos big data felhasználási esetben alkalmazható. Az alábbiakban bemutatunk néhány gyakori forgatókönyvet.
Adatfeldolgozás és ETL (Extract, Transform, Load)
Az EMR ideális platform a nagy mennyiségű nyers adat tisztítására, átalakítására és strukturált formátumba történő betöltésére adattárházakba vagy adat tavakba. Például:
- Webnaplók elemzése: A weboldalak vagy alkalmazások által generált hatalmas naplófájlok (pl. Apache logok, Nginx logok) feldolgozása, a releváns információk kinyerése (pl. felhasználói viselkedés, hibák), majd azok betöltése egy analitikai adatbázisba vagy adat tárolóba.
- IoT adatfeldolgozás: Az IoT eszközökből (szenzorok, okoseszközök) érkező valós idejű vagy kötegelt adatok (pl. hőmérséklet, páratartalom, mozgás) tisztítása, aggregálása és elemzése a hibák detektálására, a működési hatékonyság növelésére vagy az előrejelző karbantartásra.
- Adatintegráció: Különböző forrásokból (adatbázisok, SaaS alkalmazások, külső API-k) származó adatok egyesítése és egységesítése további elemzés céljából.
Az Apache Spark és Hive keretrendszerek kiválóan alkalmasak ezekre az ETL feladatokra, köszönhetően a robusztus adatátalakítási képességeiknek és az SQL-szerű lekérdezési lehetőségeknek.
Gépi tanulás és mesterséges intelligencia (Machine Learning and AI)
Az EMR erős számítási képességei és a Spark MLlib (Machine Learning Library) támogatása révén kiválóan alkalmas gépi tanulási modellek betanítására és futtatására nagy adathalmazokon:
- Ajánlórendszerek: Felhasználói viselkedés (pl. vásárlási előzmények, megtekintett termékek) elemzése a személyre szabott termékajánlások generálásához.
- Kockázatkezelés és csalásdetektálás: Pénzügyi tranzakciók vagy hitelkérelmek elemzése anomáliák és potenciális csalások azonosítására.
- Prediktív analitika: Időjárás-előrejelzés, kereslet-előrejelzés vagy eszközhibák előrejelzése történelmi adatok alapján.
- Természetes nyelvi feldolgozás (NLP): Nagy szöveges adathalmazok (pl. ügyfélvélemények, közösségi média bejegyzések) feldolgozása érzelem-elemzésre, kulcsszavak kinyerésére vagy témafelismerésre.
Az EMR integrációja az Amazon SageMakerrel tovább egyszerűsíti a gépi tanulási munkafolyamatokat, lehetővé téve az adatok előkészítését EMR-en, majd a modellek képzését és telepítését SageMakerben.
Valós idejű adatelemzés (Real-time Data Analysis)
Bár az EMR hagyományosan kötegelt feldolgozásra épült, a Spark Streaming és Apache Flink támogatása révén valós idejű adatfolyamok elemzésére is alkalmassá vált:
- Stream analitika: Az Amazon Kinesis-ből vagy Apache Kafka-ból érkező adatfolyamok feldolgozása valós idejű műszerfalakhoz, anomália detektáláshoz vagy azonnali riasztásokhoz.
- Clickstream analitika: A felhasználók weboldalon vagy mobilalkalmazásban végzett tevékenységének valós idejű nyomon követése a felhasználói élmény optimalizálása vagy a marketingkampányok finomhangolása érdekében.
- Hálózati forgalom monitorozása: Hálózati naplók valós idejű elemzése a biztonsági fenyegetések vagy a hálózati problémák azonnali azonosítására.
Interaktív lekérdezések (Interactive Querying)
Az EMR Presto (vagy Trino) és Spark SQL támogatása révén az adatelemzők gyorsan és interaktívan lekérdezhetik a nagy adathalmazokat az S3-ban vagy más adatforrásokban:
- Adatfelderítés: Gyors ad-hoc lekérdezések futtatása az adatok struktúrájának és tartalmának megértéséhez.
- Üzleti intelligencia (BI) jelentések: Nagy adathalmazokon alapuló jelentések generálása a döntéshozatal támogatására.
- Adattárház kiegészítés: Az S3-ban tárolt „hideg” adatok lekérdezése, amelyek túl drágák lennének egy hagyományos adattárházban tárolni.
Logelemzés (Log Analysis)
Az EMR ideális a különböző rendszerek (szerverek, alkalmazások, hálózati eszközök) által generált hatalmas naplófájlok elemzésére. Ez segít a teljesítményproblémák, biztonsági incidensek vagy alkalmazáshibák azonosításában. A naplóadatok strukturálása, elemzése és vizualizálása az EMR-en futó Spark vagy Hive feladatokkal hatékonyan elvégezhető.
Genomikai adatelemzés (Genomic Data Analysis)
A genomikai szekvenálás hatalmas mennyiségű adatot generál, amelynek feldolgozása és elemzése jelentős számítási erőforrásokat igényel. Az EMR skálázhatósága és a Spark/Hadoop keretrendszerek alkalmassá teszik a genomikai adatok (pl. FASTQ, BAM, VCF fájlok) gyors feldolgozására, variáns hívására, szekvenálási lefedettség elemzésére és más bioinformatikai feladatokra.
Ezek a felhasználási esetek csak ízelítőt adnak az Amazon EMR sokoldalúságából. A szolgáltatás lehetővé teszi a vállalatok számára, hogy kihasználják a big data erejét, és mélyebb betekintést nyerjenek működésükbe és ügyfeleikbe.
Hogyan működik az Amazon EMR?
Az Amazon EMR működése egy viszonylag egyszerű, de rendkívül hatékony munkafolyamatot követ, amely a big data feladatok elindításától a fürt leállításáig terjed.
Fürt indítása (Launching a Cluster)
A folyamat az EMR fürt elindításával kezdődik. Ez többféleképpen történhet:
- AWS Management Console: A grafikus felhasználói felületen keresztül a felhasználók kiválaszthatják a kívánt keretrendszereket (pl. Spark, Hadoop, Hive), a szoftververziókat, az EC2 példánytípusokat a master, core és task csomópontokhoz, a fürt nevét, a naplózási beállításokat és egyéb konfigurációkat.
- AWS Command Line Interface (CLI): Parancssorból is elindítható fürt, ami ideális szkriptekbe integrálva vagy automatizált folyamatok részeként.
- AWS SDK-k: Programozottan is létrehozhatók és menedzselhetők a fürtök Python (Boto3), Java, Node.js stb. nyelveken keresztül.
- AWS CloudFormation: Infrastruktúra kódban (Infrastructure as Code) definiálható a fürt, ami megismételhető és verziókövetett telepítést tesz lehetővé.
A fürt indításakor az AWS automatikusan kiépíti az EC2 példányokat, telepíti és konfigurálja a kiválasztott nyílt forráskódú szoftvereket, és elindítja a fürtöt. Ez a folyamat általában percekig tart.
Lépések (Steps)
Miután a fürt elindult, a felhasználók „lépéseket” (steps) küldhetnek be a fürtnek. Egy lépés egy olyan feladat, amelyet a fürtön belül végre kell hajtani. Ezek lehetnek:
- Hadoop Jar (JAR fájlok): Java alkalmazások, amelyek MapReduce feladatokat futtatnak.
- Spark alkalmazások: Spark kódot tartalmazó JAR fájlok vagy Python szkriptek (PySpark).
- Hive szkriptek: SQL-szerű lekérdezések Hive táblákon.
- Pig szkriptek: Pig Latin szkriptek.
- Streaming alkalmazások: Hadoop streaming feladatok.
- Custome JAR: Egyéni JAR fájlok, amelyek bármilyen parancsot futtathatnak a fürtön.
A lépések sorrendben kerülnek végrehajtásra, és ha egy lépés sikertelen, a többi lépés végrehajtása leállítható (ez konfigurálható). A lépések bemeneti adatai általában az Amazon S3-ból származnak, és a kimeneti adatok is oda kerülnek visszaírásra. Ez a „step” alapú megközelítés lehetővé teszi komplex adatfeldolgozási pipeline-ok építését, ahol minden lépés egy jól definiált feladatot hajt végre.
Fürt felügyelete (Monitoring a Cluster)
Az EMR fürtök monitorozása elengedhetetlen a teljesítmény optimalizálásához és a problémák azonosításához. Az EMR integrálódik az Amazon CloudWatch-csal, amely metrikákat gyűjt a fürt állapotáról, a csomópontok kihasználtságáról (CPU, memória), a HDFS státuszáról és a futó feladatokról. A CloudWatch segítségével riasztások is beállíthatók. Emellett az EMR webes felületeket (pl. YARN ResourceManager UI, Spark UI) is elérhetővé tesz, amelyek részletesebb betekintést nyújtanak a futó alkalmazásokba és a fürt állapotába. Az AWS CloudTrail naplózza az összes API hívást, ami segít a biztonsági auditokban és a hozzáférés nyomon követésében.
Fürt leállítása (Terminating a Cluster)
Miután a feladatok befejeződtek, a fürt leállítható. Mivel az adatok tartósan az Amazon S3-ban vannak tárolva, a fürt leállítása nem okoz adatvesztést. A leállításkor az AWS felszabadítja az EC2 példányokat, és a felhasználó csak az addig felhasznált erőforrásokért fizet. Ez a „fizesd, amit használsz” modell rendkívül költséghatékony, különösen az időszakos vagy alkalmi big data feladatok esetén. Az EMR konfigurálható úgy is, hogy automatikusan leálljon, amint az összes lépés sikeresen befejeződött, vagy egy bizonyos inaktivitási idő után.
Ez a ciklus – fürt indítása, lépések végrehajtása, monitorozás, leállítás – az Amazon EMR alapvető működési módja, amely rugalmasságot, skálázhatóságot és költséghatékonyságot biztosít a big data feladatokhoz.
Az Amazon EMR árazása
Az Amazon EMR árazása a felhőalapú szolgáltatásokra jellemző, „pay-as-you-go” modellen alapul, ami azt jelenti, hogy csak a ténylegesen felhasznált erőforrásokért kell fizetni. Az árazás alapvetően két fő komponenstől függ: az EMR ártól és a mögöttes EC2 példányok árától.
Példánytípusok (Instance Types)
Az EMR fürtök Amazon EC2 virtuális gépeken futnak. Az EC2 példányok ára a kiválasztott típustól (pl. m5, r5, c5), mérettől (pl. large, xlarge, 2xlarge) és a régiótól függ. Különböző példánytípusok optimalizálhatók számítási teljesítményre, memóriára vagy általános célra, így a felhasználók kiválaszthatják a feladathoz legmegfelelőbbet.
Fizetési modellek (Payment Models)
Az EC2 példányok ára a következő fizetési modellek alapján számlázódik:
- On-Demand példányok: Ezek a legrugalmasabbak és a leggyakrabban használtak. Óránkénti vagy másodpercenkénti díjat fizet a használt példányokért anélkül, hogy hosszú távú kötelezettséget vállalna. Ideális változó terhelésű vagy ismeretlen futásidejű feladatokhoz.
- Spot példányok: Jelentősen olcsóbbak lehetnek az On-Demand példányoknál (akár 90%-os megtakarítás is elérhető), de az AWS bármikor megszakíthatja őket, ha a kapacitásra más On-Demand vagy Reserved Instance felhasználóknak van szükségük. Ideálisak olyan feladatokhoz, amelyek tolerálják a megszakítást, mint például a kötegelt feldolgozás, tesztelés vagy fejlesztés. Az EMR intelligensen kezeli a Spot példányokat, és megpróbálja újraütemezni a feladatokat megszakítás esetén.
- Reserved Instances (RI): Ha előre tudja, hogy hosszú távon (1 vagy 3 év) szüksége lesz állandó kapacitásra, az RI-k jelentős megtakarítást kínálnak az On-Demand árakhoz képest. Fix árat fizet a lefoglalt kapacitásért, függetlenül a tényleges kihasználtságtól.
Az EMR szolgáltatásnak van egy külön díja is, amely az EC2 példányok óránkénti díjához adódik hozzá. Ez az EMR díj fedezi a menedzselt szolgáltatás költségeit, beleértve a szoftvertelepítést, konfigurálást, fürtmenedzsmentet és az EMR-specifikus optimalizációkat. Az EMR díja a használt EC2 példány típusától és méretétől függ, és másodpercalapon kerül számlázásra, minimum 1 perc díjával.
Példa árazásra (illusztratív, az aktuális árakért lásd az AWS weboldalát):
Tegyük fel, hogy egy m5.xlarge EC2 példányt használ:
- EC2 On-Demand ár: ~0.192 USD/óra (régiótól függően)
- EMR díj m5.xlarge példányra: ~0.028 USD/óra
- Összes óránkénti költség: ~0.22 USD/óra
Ez azt jelenti, hogy ha egy 10 csomópontos fürtöt futtat 1 órán keresztül, az összes költség (10 * 0.22 USD) = 2.20 USD lenne, plusz az S3 tárolási és adatáramlási költségek.
Költségoptimalizálási tippek
Az EMR költséghatékony használatához érdemes figyelembe venni a következőket:
- Használjon Spot példányokat: A Task csomópontok ideálisak Spot példányokhoz, mivel nem tárolnak tartós adatokat. A Core csomópontokhoz is használhatók, de nagyobb a kockázata az adatvesztésnek, ha megszakadnak.
- Méretezze helyesen a fürtöt: Ne indítson feleslegesen nagy fürtöt. Használja az EMR Managed Scaling-et az automatikus méretezéshez, vagy monitorozza a fürt kihasználtságát, és manuálisan skálázza.
- Automatikus leállítás: Konfigurálja a fürtöt, hogy automatikusan leálljon, amint a feladatok befejeződtek, vagy egy bizonyos inaktivitási idő után.
- Használja az EMR Serverless-t: Ha a feladatai alkalmanként futnak, és nem igénylik a folyamatosan futó fürtöt, az EMR Serverless rendkívül költséghatékony lehet, mivel csak a ténylegesen felhasznált számítási erőforrásokért fizet (CPU, memória) másodpercalapon, anélkül, hogy a fürtmenedzsmenttel kellene foglalkoznia.
- Adatok tárolása S3-ban: Az S3 rendkívül költséghatékony tárolást biztosít, és elválasztja a tárolást a számítástól. Csak akkor fizet a számítási erőforrásokért, amikor szüksége van rájuk.
- Optimalizálja a feladatokat: A hatékonyan megírt Spark vagy Hadoop feladatok kevesebb erőforrást igényelnek és gyorsabban futnak, így csökkentve a költségeket.
- Használja a megfelelő régiót: Az árak régiónként eltérőek lehetnek. Válassza ki a legköltséghatékonyabb régiót, amely megfelel a késleltetési és szabályozási követelményeknek.
Az Amazon EMR árazása a rugalmasságra és a költséghatékonyságra fókuszál, lehetővé téve a felhasználók számára, hogy optimalizálják kiadásaikat a big data feldolgozási igényeik szerint.
Biztonság az Amazon EMR-ben

Az AWS számára a biztonság elsődleges prioritás, és ez alól az Amazon EMR sem kivétel. Az EMR számos beépített biztonsági funkciót kínál, és szorosan integrálódik más AWS biztonsági szolgáltatásokkal, hogy robusztus védelmet nyújtson az adatok és a fürtök számára.
Adatvédelem (Data Protection)
Az EMR többféle módon biztosítja az adatok védelmét:
- Titkosítás nyugalmi állapotban (Encryption at Rest):
- Amazon S3 titkosítás: Az S3-ban tárolt adatok alapértelmezetten titkosíthatók. Használhatja az S3 által menedzselt kulcsokat (SSE-S3), az AWS Key Management Service (KMS) kulcsokat (SSE-KMS) vagy az ügyfél által biztosított kulcsokat (SSE-C). Az EMR zökkenőmentesen működik ezekkel a titkosított S3 bucketekkel.
- HDFS titkosítás: Az EMR fürtökön futó HDFS adatok is titkosíthatók. Ez magában foglalja az EBS (Elastic Block Store) kötetek titkosítását, amelyeken a HDFS adatok tárolódnak.
- Titkosítás átvitel közben (Encryption in Transit):
- Az EMR támogatja az SSL/TLS titkosítást a fürtön belüli kommunikációhoz a csomópontok között, valamint a külső szolgáltatásokkal (pl. S3, adatbázisok) való kommunikációhoz. Ez megakadályozza az adatok lehallgatását.
- A keretrendszerek, mint a Spark és Hadoop, konfigurálhatók titkosított kommunikációra.
Hálózati biztonság (Network Security)
Az EMR fürtök az Amazon Virtual Private Cloud (VPC) hálózatában futnak, ami lehetővé teszi a hálózati izolációt és a finomhangolt hozzáférés-szabályozást:
- VPC integráció: A fürtöket egy elkülönített, privát hálózaton belül lehet elindítani, amely teljes mértékben az Ön irányítása alatt áll.
- Biztonsági csoportok (Security Groups): Ezek tűzfalak, amelyek a fürt csomópontjaira bejövő és kimenő forgalmat szabályozzák. Beállíthatók úgy, hogy csak a szükséges portok legyenek nyitva, és csak engedélyezett IP-címekről vagy más biztonsági csoportokból érkező forgalmat engedélyezzenek. Például, korlátozhatja a SSH hozzáférést a master csomóponthoz csak bizonyos IP-tartományokra.
- Alhálózatok (Subnets): A fürt csomópontjai elhelyezhetők privát alhálózatokban, amelyek nem érhetők el közvetlenül az internetről, növelve a biztonságot.
- Hálózati hozzáférés-vezérlési listák (Network ACLs): További, alhálózati szintű tűzfal szabályokat biztosítanak a bejövő és kimenő forgalomhoz.
Identitás- és hozzáférés-kezelés (Identity and Access Management – IAM)
Az AWS IAM a kulcs a felhasználók és szolgáltatások EMR-hez való hozzáférésének szabályozásához:
- IAM szerepek (IAM Roles): Az EMR fürtök IAM szerepeket használnak az AWS szolgáltatásokhoz (pl. S3, CloudWatch) való hozzáférés hitelesítésére. Ez biztosítja, hogy a fürt csak a szükséges jogosultságokkal rendelkezzen, és elkerüli a hozzáférési kulcsok közvetlen kezelését a fürtön belül.
- Felhasználói hozzáférés: Az IAM segítségével részletes engedélyeket állíthat be az egyes felhasználók vagy csoportok számára, hogy ki indíthat, módosíthat vagy leállíthat EMR fürtöket, illetve ki férhet hozzá az EMR Studiohoz.
- Kerberos integráció: Az EMR támogatja a Kerberos hitelesítést a fürtön belüli biztonságos felhasználói hozzáféréshez, ami elengedhetetlen a több-bérlős környezetekben.
Naplózás és monitorozás (Logging and Monitoring)
A biztonsági események nyomon követése és a fürt állapotának felügyelete kulcsfontosságú:
- AWS CloudTrail: Naplózza az összes EMR API hívást, beleértve a fürtindítást, a konfiguráció módosítását és a leállítást. Ez lehetővé teszi a biztonsági auditokat és a tevékenység nyomon követését.
- Amazon CloudWatch: Metrikákat és naplókat gyűjt az EMR fürt teljesítményéről és állapotáról. Konfigurálhatók riasztások a potenciális biztonsági problémákra vagy teljesítménybeli anomáliákra.
- Fürt naplók: Az EMR automatikusan gyűjti és az S3-ba továbbítja a fürtön futó alkalmazások (Hadoop, Spark stb.) naplóit, ami segít a hibaelhárításban és a biztonsági incidensek kivizsgálásában.
Egyéb biztonsági megfontolások
- Patch Management: Az AWS gondoskodik az EMR-en futó operációs rendszer és a nyílt forráskódú szoftverek (Hadoop, Spark stb.) alapvető javításairól és frissítéseiről. Azonban a felhasználó felelőssége, hogy naprakészen tartsa az általa telepített egyéni alkalmazásokat.
- Adatminőségi és adatguberálási keretrendszerek: Bár nem közvetlenül biztonsági funkciók, az olyan eszközök, mint az AWS Glue Data Catalog és az AWS Lake Formation segítenek az adatok rendszerezésében, metaadatok kezelésében és hozzáférés-szabályozásban az adat tavakban, ami közvetve hozzájárul az adatok biztonságához.
Az Amazon EMR átfogó biztonsági funkciókat kínál, amelyek lehetővé teszik a felhasználók számára, hogy biztonságosan dolgozzanak a legérzékenyebb big data adatokkal is, miközben megfelelnek a compliance követelményeknek.
Bevált gyakorlatok és tippek az Amazon EMR használatához
Az Amazon EMR hatékony és költséghatékony használatához érdemes betartani bizonyos bevált gyakorlatokat és tippeket. Ezek segítenek optimalizálni a teljesítményt, minimalizálni a költségeket és biztosítani a stabilitást.
Fürtméretezés és -konfiguráció (Cluster Sizing and Configuration)
- Kezdje kicsiben, majd skálázzon: Ne indítson feleslegesen nagy fürtöt. Kezdje egy kisebb konfigurációval, majd a feladatok tesztelése és a teljesítmény monitorozása alapján skálázza fel az igényeknek megfelelően.
- Használja az EMR Managed Scaling-et: Ez a funkció automatikusan hozzáad vagy eltávolít EC2 példányokat a fürtből a terhelés függvényében. Ez optimalizálja az erőforrás-kihasználtságot és a költségeket. Állítsa be a megfelelő minimális és maximális kapacitást.
- Válassza ki a megfelelő példánytípusokat:
- Master csomópont: Általában egy kisebb, megbízható On-Demand példány elegendő. Magas rendelkezésre állású beállításokhoz két vagy három master csomópont is használható.
- Core csomópontok: Ezek tárolják a HDFS adatokat és feldolgoznak. Válasszon megfelelő példánytípust (pl. R-sorozat memória-igényes feladatokhoz, C-sorozat számítási-igényes feladatokhoz) és használjon On-Demand vagy Reserved Instances-t a stabilitás érdekében.
- Task csomópontok: Ideálisak Spot példányokhoz, mivel nem tárolnak tartós adatokat. Ezekkel skálázható a feldolgozási kapacitás költséghatékonyan.
- Optimalizálja a keretrendszer konfigurációkat: A Spark, Hadoop, Hive stb. számos konfigurációs paraméterrel rendelkezik, amelyek finomhangolhatók a specifikus feladatokhoz (pl. memória elosztás, párhuzamosság). Az EMR alapértelmezett beállításai általában jó kiindulópontot jelentenek, de a teljesítmény monitorozásával azonosíthatók a további optimalizálási lehetőségek.
Adatoptimalizálás (Data Optimization)
- Tárolás Amazon S3-ban: Mindig az S3-at használja a tartós adat tárolására. Ez leválasztja a tárolást a számítástól, növeli az adatok tartósságát és költséghatékonyabb.
- Használjon oszlopos formátumokat: Az olyan formátumok, mint a Parquet vagy az ORC sokkal hatékonyabbak a big data elemzéshez, mint a CSV vagy JSON. Kisebb fájlméretet, gyorsabb olvasási sebességet és oszlopos lekérdezéseket tesznek lehetővé.
- Particionálás: Particionálja az adatokat az S3-ban a lekérdezési teljesítmény javítása érdekében. Például, idősoros adatoknál év/hónap/nap alapján. Ez csökkenti a lekérdezések által olvasott adatok mennyiségét.
- Fájlméret optimalizálás: Kerülje a túl sok apró fájlt az S3-ban (small file problem), ami overhead-et okoz a HDFS NameNode-nak és a Spark/Hadoop feladatoknak. Aggregálja a kisebb fájlokat nagyobbakra (pl. 128 MB és 1 GB között).
Költségoptimalizálás (Cost Optimization)
- Használjon Spot példányokat: Ahogy említettük, a Task csomópontokhoz használjon Spot példányokat a költségek drasztikus csökkentése érdekében.
- Automatikus leállítás: Konfigurálja a fürtöt, hogy automatikusan leálljon a feladatok befejezése után vagy egy bizonyos ideig tartó inaktivitás esetén.
- EMR Serverless: Fontolja meg az EMR Serverless használatát olyan feladatokhoz, amelyek nem igényelnek folyamatosan futó fürtöt. Ez a legköltséghatékonyabb megoldás sok alkalmi számítási feladathoz.
- Rövid életű fürtök: Tervezze meg a munkafolyamatokat úgy, hogy a fürtök csak addig futnak, amíg a feladatok tartanak. Ez a „fürtök leállítása feladat után” stratégia jelentős megtakarítást eredményez.
Monitorozás és hibaelhárítás (Monitoring and Troubleshooting)
- Használja a CloudWatch-ot: Állítson be CloudWatch riasztásokat a kulcsfontosságú metrikákra (CPU kihasználtság, memória, HDFS kihasználtság, YARN alkalmazás állapota), hogy proaktívan reagálhasson a problémákra.
- Naplók az S3-ban: Konfigurálja az EMR-t, hogy a fürt naplóit az S3-ba mentse. Ezek a naplók (Hadoop, Spark, YARN stb.) felbecsülhetetlen értékűek a hibaelhárításhoz és a teljesítmény elemzéséhez.
- Webes felhasználói felületek: Használja a Spark UI-t, YARN ResourceManager UI-t és HDFS UI-t a részletesebb betekintéshez a futó feladatokba és a fürt állapotába.
- EMR Studio: Az EMR Studio kiváló eszköz az interaktív fejlesztéshez és hibakereséshez a fürtön.
Biztonsági megfontolások (Security Considerations)
- IAM szerepek: Használjon IAM szerepeket a fürtök és az alkalmazások jogosultságainak kezelésére. Kövesse a legkevésbé szükséges jogosultság elvét (Principle of Least Privilege).
- VPC és biztonsági csoportok: Izolálja a fürtöket VPC-ben, és használjon szigorú biztonsági csoport szabályokat a hálózati hozzáférés korlátozására.
- Titkosítás: Engedélyezze az adatok titkosítását nyugalmi állapotban (S3 és HDFS) és átvitel közben is.
- Kerberos: Több-bérlős környezetekben fontolja meg a Kerberos hitelesítés engedélyezését.
Automatizálás (Automation)
- AWS CLI/SDK/CloudFormation: Automatizálja a fürtök indítását, a lépések beküldését és a leállítást szkriptekkel vagy infrastruktúra kóddal. Ez biztosítja a konzisztenciát és csökkenti a manuális hibák kockázatát.
- AWS Step Functions vagy AWS Data Pipeline: Használja ezeket a szolgáltatásokat komplex big data munkafolyamatok orchestrálására, ahol az EMR lépések csak egy részét képezik a teljes pipeline-nak.
Verziókezelés és frissítések (Version Management and Updates)
- Kövesse a legújabb EMR verziókat: Az AWS rendszeresen ad ki új EMR verziókat, amelyek teljesítményjavításokat, új funkciókat és biztonsági javításokat tartalmaznak. Tervezze meg a frissítéseket.
- Tesztelje a frissítéseket: Mielőtt éles környezetben frissítené az EMR verziót, tesztelje le a munkafolyamatait egy fejlesztői vagy tesztkörnyezetben.
Ezeknek a bevált gyakorlatoknak a követésével az Amazon EMR felhasználói maximalizálhatják befektetésük megtérülését, miközben stabil, biztonságos és hatékony big data feldolgozási megoldásokat építenek.
Az Amazon EMR jövője és trendek
Az Amazon EMR folyamatosan fejlődik, ahogy a big data és a felhőalapú technológiák is. Néhány kulcsfontosságú trend és a szolgáltatás jövőbeli iránya:
Szerver nélküli EMR (EMR Serverless)
Ez az egyik legjelentősebb fejlesztés az EMR történetében. Az EMR Serverless lehetővé teszi a Spark és Hive alkalmazások futtatását anélkül, hogy fürtöket kellene beállítani, konfigurálni, skálázni vagy karbantartani. Az AWS automatikusan skálázza az erőforrásokat a feladat igényei szerint, és a felhasználók csak a ténylegesen felhasznált számítási erőforrásokért (vCPU, memória) fizetnek, másodpercalapon. Ez a modell drámaian leegyszerűsíti a big data feldolgozást, csökkenti az üzemeltetési terheket és optimalizálja a költségeket. Várhatóan egyre több felhasználási eset fog áttérni az EMR Serverless-re, különösen az alkalmi, batch feladatok esetében.
Mesterséges intelligencia és gépi tanulás integrációja (AI/ML Integration)
Az EMR már most is szorosan integrálódik az Amazon SageMakerrel, de ez az integráció várhatóan még mélyebbé válik. A big data feldolgozás és az ML munkafolyamatok közötti szakadék áthidalása kulcsfontosságú. Az EMR továbbra is a preferált platform marad a nagy adathalmazok előkészítésére, transzformálására és feature engineering-re, mielőtt azokat ML modellek képzésére használnák. A jövőben még több beépített ML optimalizációra és egyszerűbb ML pipeline-ok építésére számíthatunk az EMR-en belül.
Adatguberálás és adatminőség (Data Governance and Data Quality)
Ahogy a vállalatok egyre nagyobb adat tavakat építenek, az adatguberálás és az adatminőség biztosítása egyre kritikusabbá válik. Az EMR integrációja az AWS Glue Data Catalog-gal és az AWS Lake Formation-nel tovább erősödik, hogy egységes metaadat-kezelést, hozzáférés-szabályozást és adatbiztonságot biztosítson az adat tavakban. Várhatóan további eszközök és funkciók jelennek meg az adatminőség automatizált ellenőrzésére és a compliance követelmények betartására.
Nyílt forráskódú keretrendszerek folyamatos támogatása és optimalizálása
Az AWS továbbra is aktívan hozzájárul a nyílt forráskódú közösséghez, és folyamatosan frissíti az EMR-t a legújabb Hadoop, Spark, Hive, Flink és Presto verziókkal. Emellett belső optimalizációkat is végeznek, hogy a keretrendszerek a lehető legjobban teljesítsenek az AWS infrastruktúráján. A jövőben várhatóan további nyílt forráskódú projektek integrációjára is sor kerülhet az EMR-be, ahogy új technológiák válnak népszerűvé a big data ökoszisztémában.
Teljesítmény és költségoptimalizálás további fejlesztései
Az AWS folyamatosan dolgozik a teljesítmény javításán és a költségek csökkentésén. Ez magában foglalhatja az újabb generációs EC2 példánytípusok támogatását, a jobb erőforrás-kihasználtságot biztosító optimalizációkat, valamint az intelligensebb automatikus skálázási algoritmusokat. Az EMR Serverless ezen a téren is kulcsszerepet játszik, mivel alapvetően változtatja meg a költségstruktúrát.
Fókusz a fejlesztői élményre
Az EMR Studio és a továbbfejlesztett API-k azt mutatják, hogy az AWS egyre nagyobb hangsúlyt fektet a fejlesztői élményre. A jövőben további eszközökre és integrációkra számíthatunk, amelyek még egyszerűbbé teszik a big data alkalmazások fejlesztését, tesztelését és telepítését az EMR-en.
Összességében az Amazon EMR a big data feldolgozás jövőjének egyik meghatározó eszköze marad, amely folyamatosan alkalmazkodik az iparági trendekhez és a felhasználói igényekhez, egyre egyszerűbbé, hatékonyabbá és költséghatékonyabbá téve a hatalmas adatmennyiségek kezelését a felhőben.