Idea Big Data po prostu nie jest nowa, jest wszędzie. Efekt Big Data jest wszędzie, od biznesu po naukę, od rządu po sztukę i tak dalej. Nie ma lepszego towarzysza niż do przetwarzania i analizy Big Data. W tym artykule pokażę, jak AWS radzi sobie z wyzwaniami Big Data, a wskazówki, które zamierzam omówić, są następujące:
- Co to jest Big Data?
- Dlaczego Big Data w AWS?
- Jak AWS może rozwiązać wyzwania związane z dużymi danymi?
- Próbny
Co to jest Big Data?
Big data można traktować jako zasoby informacyjne o dużej objętości, szybkości i / lub różnorodności, które wymagają opłacalnych, innowacyjnych form przetwarzania informacji, które umożliwiają lepszy wgląd, podejmowanie decyzji i automatyzację procesów.
Big Data składa się z 5 ważnych V, które definiują cechy Big Data. Omówmy je przed przejściem do AWS.
Co to jest AWS?
obejmuje wiele różnych produktów i usług przetwarzania w chmurze. Wysoce dochodowy dział Amazon zapewnia serwery, pamięć masową, sieci, zdalne przetwarzanie, pocztę e-mail, rozwój mobilny oraz bezpieczeństwo. Ponadto. AWS składa się z dwóch głównych produktów: EC2 - usługi maszyny wirtualnej Amazon oraz S3 - systemu pamięci masowej firmy Amazon. Jest tak duży i obecny w świecie komputerów, że jest teraz co najmniej 10 razy większy od swojego najbliższego konkurenta i obsługuje popularne witryny, takie jak Netflix i Instagram.
.
AWS jest podzielony na 12 globalnych regionów na całym świecie, z których każdy ma wiele stref dostępności, w których znajdują się jego serwery.Te obsługiwane regiony są podzielone, aby umożliwić użytkownikom ustalanie ograniczeń geograficznych dla ich usług, ale także w celu zapewnienia bezpieczeństwa poprzez zróżnicowanie fizycznych lokalizacji, w których przechowywane są dane.
Dlaczego Big Data w AWS?
Naukowcy, programiści i inni entuzjaści technologii z wielu różnych dziedzin wykorzystują AWS do analizy dużych zbiorów danych i sprostania krytycznym wyzwaniom związanym z rosnącą wartością V informacji cyfrowych. AWS oferuje portfolio usług przetwarzania w chmurze, które pomagają w zarządzaniu dużymi zbiorami danych poprzez znaczne zmniejszenie kosztów, skalowanie w celu zaspokojenia popytu i zwiększenie szybkości innowacji.
Amazon Web Services zapewnia w pełni zintegrowane portfolio usług przetwarzania w chmurze. Ponadto pomaga tworzyć, zabezpieczać i wdrażać aplikacje Big Data. Ponadto dzięki AWS nie potrzebujesz sprzętu do zakupu ani infrastruktury do utrzymania i skalowania. Dzięki temu możesz skoncentrować swoje zasoby na odkrywaniu nowych spostrzeżeń.Ponieważ nowe funkcje są stale dodawane, zawsze będziesz w stanie wykorzystać najnowsze technologie bez konieczności podejmowania długoterminowych zobowiązań inwestycyjnych.
Jak AWS może rozwiązać wyzwania związane z dużymi danymi?
Rozwiązania AWS dla Big Data
AWS oferuje wiele rozwiązań do wszystkich celów programistycznych i wdrożeniowych. Również w dziedzinie Data Science i Big Data AWS przedstawił najnowsze osiągnięcia w różnych aspektach obsługi Big Data. Zanim przejdziemy do narzędzi, poznajmy różne aspekty Big Data, dla których AWS może dostarczyć rozwiązania.
Przetwarzanie danych
Gromadzenie surowych danych - transakcji, dzienników, urządzeń mobilnych i nie tylko - jest pierwszym wyzwaniem, przed którym staje wiele organizacji zajmujących się dużymi zbiorami danych. Dobra platforma do dużych zbiorów danych ułatwia ten krok, umożliwiając programistom pozyskiwanie szerokiej gamy danych - od ustrukturyzowanych do nieustrukturyzowanych - z dowolną prędkością - od czasu rzeczywistego po wsad.Przechowywanie danych
Każda platforma Big Data potrzebuje bezpiecznego, skalowalnego i trwałego repozytorium do przechowywania danych przed lub nawet po wykonaniu zadań. W zależności od konkretnych wymagań możesz również potrzebować tymczasowych magazynów do przesyłania danych.Przetwarzanie danych
Na tym etapie następuje transformacja danych ze stanu surowego do formatu nadającego się do użytku - zwykle poprzez sortowanie, agregowanie, łączenie, a nawet wykonywanie bardziej zaawansowanych funkcji i algorytmów. Powstałe zbiory danych są przechowywane w celu dalszego przetwarzania lub udostępniane do konsumpcji za pośrednictwem narzędzi do analizy biznesowej i wizualizacji danych.Wyobrażanie sobie
Big data polega na uzyskiwaniu wartościowych, przydatnych do działania informacji z zasobów danych. Idealnie byłoby, gdyby dane były dostępne dla interesariuszy za pośrednictwem samoobsługowej analizy biznesowej i elastycznych narzędzi do wizualizacji danych, które pozwalają na szybką i łatwą eksplorację zbiorów danych.
Narzędzia AWS dla Big Data
W poprzednich sekcjach przyjrzeliśmy się polom w Big Data, w których AWS może dostarczyć rozwiązania. Ponadto AWS ma w swoim arsenale wiele narzędzi i usług, aby umożliwić klientom korzystanie z możliwości Big Data.
Przyjrzyjmy się różnym rozwiązaniom dostarczanym przez AWS do obsługi różnych etapów związanych z obsługą Big Data
Przyjmowanie pokarmu
- Kineza
Amazon Kinesis Firehose to w pełni zarządzana usługa dostarczania danych strumieniowych w czasie rzeczywistym bezpośrednio do Amazon S3. Kinesis Firehose automatycznie skaluje się w celu dopasowania do objętości i przepustowości danych przesyłanych strumieniowo i nie wymaga ciągłej administracji. Możesz skonfigurować Kinesis Firehose, aby przekształcić dane strumieniowe przed zapisaniem ich w Amazon S3.
jaka jest różnica między git i github
Śnieżna kula
Możesz użyć AWS Snowball do bezpiecznej i wydajnej migracji danych zbiorczych z lokalnych platform pamięci masowej i klastrów Hadoop do zasobników S3. Po utworzeniu zadania w konsoli zarządzania AWS automatycznie otrzymujesz urządzenie Snowball. Po przybyciu Snowball podłącz ją do sieci lokalnej, zainstaluj klienta Snowball w lokalnym źródle danych, a następnie użyj klienta Snowball, aby wybrać i przesłać katalogi plików do urządzenia Snowball.
Przechowywanie
- Amazon S3
Amazon S3 to bezpieczny, wysoce skalowalny i trwały obiektowy magazyn danych z milisekundowym opóźnieniem dostępu do danych. S3 może przechowywać dowolny rodzaj danych z dowolnego miejsca - strony internetowe i aplikacje mobilne, aplikacje korporacyjne oraz dane z czujników lub urządzeń IoT. Może również przechowywać i pobierać dowolną ilość danych, zapewniając niezrównaną dostępność i zbudowaną od podstaw, aby zapewnić 99,999999999% (11 dziewiątek) trwałości.
2. Klej AWS
Glue to w pełni zarządzana usługa, która udostępnia katalog danych umożliwiający wykrywanie danych w usłudze Data Lake. Dodatkowo ma możliwość wyodrębniania, transformacji i ładowania (ETL) w celu przygotowania danych do analizy. Ponadto wbudowany katalog danych jest jak trwały magazyn metadanych dla wszystkich zasobów danych, dzięki czemu wszystkie dane można przeszukiwać i przeszukiwać w jednym widoku.
Przetwarzanie
EMR
Do przetwarzania dużych zbiorów danych przy użyciu platformy Spark i Hadoop, Amazon EMR zapewnia zarządzaną usługę, która umożliwia łatwe, szybkie i ekonomiczne przetwarzanie ogromnych ilości danych. Ponadto EMR obsługuje 19 różnych projektów open source, w tym Hadoop , Iskra , i Jest również wyposażony w zarządzane notebooki EMR do inżynierii danych, rozwoju nauki o danych i współpracy.Przesunięcie ku czerwieni
Dla hurtowni danych, Amazonka Redshift zapewnia możliwość uruchamiania złożonych, analitycznych zapytań na petabajtach ustrukturyzowanych danych. Zawiera również Widmo przesunięcia ku czerwieni który uruchamia zapytania SQL bezpośrednio na eksabajtach danych ustrukturyzowanych lub nieustrukturyzowanych w S3 bez konieczności niepotrzebnego przenoszenia danych.
Wizualizacje
Amazon QuickSight
W przypadku pulpitów nawigacyjnych i wizualizacji Amazon Quicksight zapewnia szybką usługę analizy biznesowej opartą na chmurze. Ułatwia tworzenie oszałamiających wizualizacji i bogatych pulpitów nawigacyjnych. Dodatkowo możesz uzyskać do nich dostęp z dowolnej przeglądarki lub urządzenia mobilnego.
Demo - Analiza danych o zagrożonych gatunkach roślin i zwierząt w Australii.
W tym Demo wykorzystamy przykładowe dane dotyczące zagrożonych gatunków roślin i zwierząt ze stanów i terytoriów Australii. Tutaj utworzymy klaster EMR i skonfigurujemy go do uruchamiania wieloetapowych zadań Apache Hive. W klastrze EMR będzie zainstalowany Apache Hive. Ten klaster będzie używał EMRFS jako systemu plików, więc jego lokalizacje wejściowe i wyjściowe danych są mapowane do zasobnika S3. Klaster będzie również używał tego samego zasobnika S3 do przechowywania plików dziennika.
Utworzymy teraz kilka kroków EMR w klastrze, aby przetworzyć przykładowy zestaw danych. Tutaj każdy z tych kroków spowoduje uruchomienie skryptu Hive, a ostateczne dane wyjściowe zostaną zapisane w zasobniku S3. Te kroki spowodują wygenerowanie dzienników MapReduce, ponieważ polecenia Hive są tłumaczone na zadania MapReduce w czasie wykonywania. Pliki dziennika dla każdego kroku są agregowane z tworzonych przez niego kontenerów.
Przykładowe dane
Przykładowy zestaw danych dla tego przypadku użycia jest publicznie dostępny w witrynie Witryna z otwartymi danymi rządu Australii . Ten zestaw danych dotyczy zagrożonych gatunków zwierząt i roślin z różnych stanów i terytoriów Australii. Opis pól tego zestawu danych i pliku CSV można wyświetlić i pobrać tutaj .
Kroki przetwarzania
Pierwszy krok zadania EMR w tym miejscu obejmuje utworzenie tabeli Hive jako schematu dla bazowego pliku źródłowego w S3. W drugim kroku zadania uruchomimy teraz pomyślnie zapytanie dotyczące danych. Podobnie, uruchomimy wtedy trzecie i czwarte zapytanie.
Powtórzymy te cztery kroki kilka razy w ciągu godziny, symulując kolejne przebiegi wieloetapowego zadania wsadowego. Jednak w prawdziwym scenariuszu różnica czasu między każdą partią normalnie może być znacznie większa. Mała przerwa między kolejnymi przebiegami ma na celu przyspieszenie naszych testów.
S3 Bucket and Folders
Przed utworzeniem naszego klastra EMR musieliśmy tutaj utworzyć zasobnik S3 do hostowania jego plików. W naszym przykładzie nazwa tego zasobnika to „arvind1-bucket”. Foldery w tym zasobniku są pokazane poniżej w konsoli AWS dla S3:
jak podnieść coś do potęgi w Javie
Folder wejściowy zawiera przykładowe dane
Folder scripts zawiera pliki skryptów Hive dla kroków zadania EMR
Folder wyjściowy będzie oczywiście zawierał dane wyjściowe programu Hive
Klaster EMR używa folderu dzienników do zapisywania plików dziennika.
Skrypty Hive dla etapów pracy EMR
1. Ten krok zadania uruchamia skrypt Hiveaby utworzyć zewnętrzną tabelę Hive. W tej tabeli opisano schemat tabelaryczny bazowego pliku danych CSV. Skrypt do tego jest następujący:
UTWÓRZ TABELĘ ZEWNĘTRZNĄ `` zagrożone_gatunki` (ciąg `` nazwy naukowej`, ciąg `` zwykłej nazwy '', `` bieżąca nazwa naukowa '', `` stan zagrożenia '', ciąg znaków `act`, ciąg` nsw`, ciąg `nt`,` qld` ciąg, ciąg `sa`, ciąg` tas`, ciąg `vic`, ciąg` wa`, ciąg `aci`, ciąg` cki`, ciąg `ci`, ciąg` csi`, ciąg `jbt`,` nfi` ciąg, `hmi` ciąg,` aat` ciąg, `cma` ciąg,` wyszczególniony numer taksonomiczny szprota` bigint, `aktualny identyfikator szprota` bigint, ciąg` królestwo`, ciąg `class`, ciąg` profile`, `data wyodrębniona` string, `nsl name` string,` family` string, `genus` string,` species` string, `infraspecific rank` string,` infraspecies` string, `species author` string,` infraspecies author` string) ROW FORMAT DELIMITED POLES TERMINATED BY ',' STORED AS INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' LOCATION 's3: // arvind1-bucket / script /'
2. Ten etap zadania uruchamia kwerendę w celu obliczenia pięciu najbardziej zagrożonych gatunków w stanie Nowa Południowa Walia (NSW). Nazwa pliku zapytania Hive to endangeredGatiesNSW.q
jak pokazano poniżej:
SELECT gatunki, COUNT (nsw) AS number_of_endangered_species Z Zagrożonych_gatunków GDZIE (nsw = 'Tak' LUB nsw = 'Zagrożone') AND 'Stan zagrożenia' = 'Zagrożone' GRUPA WG GATUNKÓW MAJĄCE LICZENIE (nsw)> 1 KOLEJNOŚĆ WEDŁUG liczby_zagrożonych_gatunków DESC LIMIT 5
3.Ten krok zadania uruchamia zapytanie w celu obliczenia całkowitej liczby zagrożonych gatunków roślin dla każdej rodziny roślin w Australii. Nazwa pliku zapytania Hive toendangeredPlantSpecies.q
i pokazano poniżej
WYBIERZ rodzinę, LICZBA (gatunki) JAKO liczba_of_endangered_species Z Zagrożonych_gatunków2 WHERE królestwo = 'Plantae' AND 'status zagrożenia' = 'Zagrożone' GRUPA WG rodziny
4. Na tym etapie wymienione są naukowe nazwy wymarłych gatunków zwierząt w stanie Queensland w Australii. Plik skryptu nosi nazwę extinctAnimalsQLD.q
i pokazano poniżej:
WYBIERZ „nazwę pospolitą”, „nazwę naukową” FROM zagrożony_gatunek WHERE królestwo = 'Animalia' AND (qld = 'Tak' LUB qld = 'Wymarły') AND 'stan zagrożenia' = 'Wymarły'
Agregacja dziennika
Tutaj również przesłaliśmy plik JSON o nazwie logAggregation.json do folderu skryptów zasobnika S3. Używamy tego pliku do agregowania plików dziennika YARN. Agregacja dziennika jest konfigurowana w pliku konfiguracyjnym yarn-site.xml podczas uruchamiania klastra. Zawartość pliku logAggregation.json jest następująca:
rozwijane menu w angularjs
[{„Classification”: „yarn-site”, „Properties”: {„yarn.log-agregation-enable”: „true”, „yarn.log-agregation.retain-seconds”: „-1”, „yarn .nodemanager.remote-app-log-dir ”:„ s3: // arvind1-bucket / logs ”}}]
Po utworzeniu zasobnika S3 i skopiowaniu danych i plików skryptów do odpowiednich folderów nadszedł czas na skonfigurowanie klastra EMR. Poniższe migawki opisują proces tworzenia klastra głównie z ustawieniami domyślnymi.
Konfiguracja klastra EMR
Na pierwszym obrazie, aby skonfigurować klaster w konsoli AWS, zachowaliśmy wszystkie aplikacje zalecane przez EMR, w tym Hive. Nie musimy używać kleju AWS Glue do przechowywania metadanych Hive ani nie dodajemy w tej chwili żadnego etapu zadania. Musimy jednak dodać ustawienie oprogramowania dla gałęzi. Tutaj musisz uważnie obserwować, jak określamy ścieżkę do pliku JSON agregacji dziennika w tym polu.
W następnym kroku zachowaliśmy wszystkie ustawienia domyślne. Na potrzeby naszego testu klaster będzie miał jeden węzeł główny i dwa węzły podstawowe. Każdy węzeł jest tutaj instancją m3.xlarge i ma 10 GB woluminu głównego. Nazywamy klaster arvind1-cluster w następnym kroku i określamy niestandardową lokalizację s3 dla jego plików dziennika.
Na koniec określiliśmy parę kluczy EC2 w celu uzyskania dostępu do węzła głównego klastra. Nie ma zmian w domyślnych rolach IAM dla EMR, profilu instancji EC2 i opcji automatycznego skalowania. Ponadto węzły główne i główne używają domyślnie dostępnych grup zabezpieczeń. Zwykle jest to domyślna konfiguracja dla klastra EMR. Gdy wszystko jest gotowe, klaster znajduje się w stanie „oczekiwania”, jak pokazano poniżej:
Prześlij kroki zadania Hive
Następnie musimy zezwolić na dostęp przez SSH.
- Otwórz konsolę Amazon EMR pod adresem https://console.aws.amazon.com/elasticmapreduce/ .
- Wybierać Klastry .
- Wybierz Nazwa klastra.
- Pod Bezpieczeństwo i dostęp Wybierz Grupy bezpieczeństwa dla Master połączyć.
- Wybierać ElasticMapReduce-master z listy.
- Wybierać Przychodzące , Edytować .
- Znajdź regułę z następującymi ustawieniami i wybierz x ikona, aby ją usunąć:
- Rodzaj SSH
- Port 22
- Źródło Niestandardowe 0.0.0.0/0
- Przewiń na dół listy reguł i wybierz Dodaj regułę .
- Dla Rodzaj , Wybierz SSH .To wejdzie automatycznie TCP dla Protokół i 22 dla Zakres portów .
- Jako źródło wybierz Moje IP . Spowoduje to automatyczne dodanie adresu IP komputera klienckiego jako adresu źródłowego. Alternatywnie możesz dodać zakres Zwyczaj zaufanych adresów IP klientów i wybierz dodaj regułę tworzenie dodatkowych reguł dla innych klientów. W wielu środowiskach sieciowych adresy IP są przydzielane dynamicznie, dlatego może być konieczne okresowe edytowanie reguł grupy zabezpieczeń w celu zaktualizowania adresów IP zaufanych klientów.
- Wybierać Zapisać .
- Opcjonalnie wybierz ElasticMapReduce-slave z listy i powtórz powyższe kroki, aby umożliwić klientowi SSH dostęp do węzłów podstawowych i zadań z zaufanych klientów.
Ponieważ klaster EMR jest uruchomiony i działa, dodaliśmy cztery etapy zadania. Są to kroki, które EMR wykonywałby jeden po drugim. Poniższy obraz przedstawia kroki z konsoli AWS EMR:
Po dodaniu czterech kroków możemy sprawdzić, czy stan tych kroków został zakończony. Nawet jeśli wystąpi jakiś problem z wykonaniem tych kroków, w takich przypadkach można go rozwiązać za pomocą plików dziennika tych kroków.
To jest to z mojej strony w tym artykule o Big Data w AWS. Mam nadzieję, że zrozumiałeś wszystko, co tutaj wyjaśniłem.
Jeśli uważasz, że te Big Data w AWS są istotne, możesz zapoznać się z kursem na żywo i prowadzonym przez instruktora Edureki , współtworzony przez praktyków branży.
Masz do nas pytanie? Wspomnij o tym w sekcji komentarzy tego Jak wdrożyć aplikację internetową Java w AWS, a my skontaktujemy się z Tobą.