Szybkie przetwarzanie Big Data | Amazon EMR
Amazon EMR jest usługą , która pozwala na efektywne kosztowo i szybkie procesowanie dużych ilości danych. Korzysta z frameworka Hadoop (open-source’owego oprogramowania do przetwarzania danych), w oparciu o Amazon EC2 i Amazon S3.
Daje możliwość sprawnego przetwarzania dużych ilości danych, w takich procesach jak:
- indeksowanie
- data mining
- machine learning
- analiza finansowa
Amazon EMR oszczędza czasochłonnych konfiguracji, uruchamiania czy zarządzanie klastrami Hadoop oraz mocą obliczeniową, która jest nam potrzebna. Dzięki temu możemy swobodnie budować przepływy (workflowy) oraz monitorować postępy analizy big data.
Główną jednostką przy korzystaniu z usługi jest klaster, który składa się z węzłów (nodes), które mogą pełnić różne funkcje, czyli mogą być różnego typu. Amazon EMR, na każdym typie instancji (node), instaluje inne komponenty oprogramowania, tym samym przypisując konkretną rolę w frameworku (Hadoop Apache). Wyróżniamy 3 typy węzłów (node’ów):
- Master node – odpowiada za dystrybucję danych pomiędzy wszystkimi node’ami. Dodatkowo monitoruje postęp analizy oraz sprawdza kondycję całego klastra.
- Core node – zawiera elementy oprogramowania, które uruchamiają task node’y.
- Task node – zawiera komponenty oprogramowania, które wykonują zadanie i nie przechowują danych. Ten typ node’a jest opcjonalny.
Po zbudowaniu klastra możemy przystąpić do zlecenia mu pracy. Kolejnym krokiem jest analiza danych.
Mając świadomość korzyści z wykorzystania Amazon EMR, przejdźmy do kwestii bezpieczeństwa. Niezaprzeczalnym jest fakt konieczności wysokiej ochrony danych. Zwłaszcza tych, które mają status wrażliwych. Usługa korzysta z takich zabezpieczeń jak:
- szyfrowanie,
- Amazon VPC,
- Security Groups,
- AWS CloudTrail,
- Amazon EC2 Key Pairs
- IAM.
Dodatkowo usługa jest w pełni zintegrowana z AWS CloudWatch, który monitoruje przepływ ruchu oraz działań w klastrze. W celu kontroli zmian zachodzących w klastrze, możemy również skorzystać z takich usług jak: AWS CLI, SDK, API czy samej konsoli AWS. Dodatkową zaletą jest możliwość ponownego użycia, już raz stworzonej konfiguracji, przy tworzeniu nowych klastrów.
Ile kosztuje rozwiązanie?
Szacowanie kosztów jest niezwykle proste.
W usłudze obowiązuje:
- naliczanie sekundowe, które musi trwać minimum 60 sekund. Tak też cluster 10 node’owy działający przez 10 h, będzie kosztował tyle samo co cluster 100 node’owy przez 1 h,
- naliczanie godzinowe, które zależne jest od takich czynników jak: rodzaj instancji czy CPU. Rozliczenie godzinowe jest obliczane z dokładnością do sekundy i pokazuje czas w postaci dziesiętnej.
Dokładne sposoby wyliczeń kosztów znajdziesz w zakładce Pricing, a dokładne rozliczenia zużycia znajdziesz Billing & Cost Management Console.
Dostępność usługi w poszczególnych regionach AWS, możesz sprawdzić tutaj.
Poza oczywistą zaletą użycia Amazon EMR, jaką jest optymalizacja i obniżenie kosztów podczas analizy danych, jest też szereg innych przemawiających za jej wdrożeniem:
- integralność z innymi usługami AWS – pozwala na szybkie i bezproblemowe ich łączenie, co z kolei przekłada się na szybszy deployment,
- jest wysoce dostępna i skalowalna – co ma krytyczne znaczenie,
- jest bezpieczna – dzięki wcześniej wspomnianej integralności z usługami AWS oraz tymi odpowiadającymi za bezpieczeństwo, tym samym zapewnia wysoki poziom ochrony Twoich danych.
Polecamy również video z re:Inventu AWS: