Migracja big data do chmury -
3 sposoby jak zrobić to sprawnie
i osiągnąć założone cele
Organizacje przetwarzające duże ilości danych stają w obliczu problemów takich jak: nadmierne koszty utrzymania i problemy administracyjne, jednocześnie zmagając się z trudem zapewnienia zasobów, radzenia sobie z nierównomiernym obciążeniem na dużą skalę i pogonią za innowacjami.
By odnieść sukces, warto rozważyć migrację środowiska do chmury obliczeniowej. AWS oferuje szeroki wybór elastycznych zasobów obliczeniowych na żądanie, odpornych i niedrogich trwałych pamięci masowych oraz usług zarządzanych, zapewniających aktualne, popularne środowiska do tworzenia i obsługi aplikacji big data.
Doskonałym rozwiązaniem są takie usługi jak Amazon EMR, Amazon S3 czy AWS Glue, które pozwalają na rozdzielenie (decoupling) i skalowanie obliczeń i pamięci, jednocześnie zapewniając wysoce odporne, zintegrowane i zarządzane środowisko, eliminując tym samym problemy występujące w środowiskach on-premise.
USŁUGI PRZYDATNE W PROCESIE MIGRACJI
Amazon EMR jest usługą , która pozwala na efektywne kosztowo i szybkie procesowanie dużych ilości danych. Korzysta ona z frameworków Hadoop i Spark w oparciu o Amazon EC2 i Amazon S3. Pozwala na sprawne przetwarzanie dużych ilości danych, w takich procesach jak indeksowanie, data mining, machine learning czy analiza finansowa. Więcej znajdziecie w naszym poprzednim wpisie.
Amazon S3 to usługa przechowywania obiektów, która oferuje wiodącą w branży skalowalność, dostępność danych, bezpieczeństwo i wydajność. Oznacza to, że klienci różnej wielkości i branży mogą z nich korzystać do przechowywania i ochrony dowolnej ilości danych w różnych przypadkach, takich jak: strony internetowe, aplikacje mobilne, tworzenie kopii zapasowych i przywracanie, archiwizacja, aplikacje korporacyjne, urządzenia IoT i analiza dużych zbiorów danych.
AWS Glue to w pełni zarządzana usługa ekstrakcji , transformacji i ładowania (ETL), która ułatwia klientom przygotowywanie i ładowanie danych do analizy. Umożliwia także konfigurowanie, koordynowanie i monitorowanie złożonych przepływów danych.
Oprócz usług AWS warto posiłkować się dodatkowymi narzędziami open source, które łącznie pozwalają na osiąganie lepszych efektów podczas adaptacji do chmury.
OPROGRAMOWANIA OPEN SOURCE
Apache Hadoop to najprościej mówiąc oprogramowanie do rozproszonego składowania i przetwarzania wielkich zbiorów danych przy pomocy klastrów komputerowych. Natomiast Apache Spark to oprogramowanie będące platformą programistyczną dla obliczeń rozproszonych. Hadoop został zaprojektowany do wydajnej obsługi przetwarzania wsadowego, podczas gdy Spark jest zaprojektowany do wydajnej obsługi danych, w czasie rzeczywistym. Hadoop jest strukturą obliczeniową o wysokim opóźnieniu, która nie ma trybu interaktywnego, podczas gdy Spark daje obliczenia o niskim opóźnieniu i może przetwarzać dane interaktywnie. Apache Spark jest również składnikiem Hadoop Ecosystem. Główną ideą Sparka było wykonanie przetwarzania w pamięci.
Chcąc podjąć właściwą decyzję związaną z migracja infrastruktury do chmury, najpierw warto zastanowić się nad potrzebami środowiska. Warto rozważyć kwestie związane z zaletami korzystania z chmury, które mogą również pomóc w optymalizacji kosztów, podniesieniu poziomu bezpieczeństwa czy wzroście wydajności architektury. Rozstrzygnięcie dylematu nie należy do najłatwiejszych, ale pomożemy Wam w procesie decyzyjnym.
3 PODEJŚCIA DO PROCESU MIGRACJI
Istnieją 3 podejścia, które pozwolą na trafne podjęcie decyzji względem waszej architektury.
- Re-architecting – polega na całkowitym przeprojektowaniu dotychczasowej infrastruktury w taki sposób, aby w pełni korzystać z chmury obliczeniowej. Podejście to polega na analizie dotychczasowej architektury i sposobu projektowania, które pozwoli na zapewnienie takich korzyści jak niższe koszty pamięci i sprzętów, zwiększenie elastyczności operacyjnej, by zapewnić korzyści biznesowe.
- Lift and shift – jest idealnym rozwiązaniem, kiedy potrzebujemy wydajniejszej infrastruktury. Poprzez przeniesienie obciążeń (workloads) istniejącego środowiska możemy uniknąć większości zmian jakie mogą wystąpić przy re-architectingu. Mniejsza ilość zmian zmniejsza również ryzyko, związane z nieoczekiwanymi pracami, a co za tym idzie Twoje rozwiązanie może szybciej wrócić lub wejść na rynek.
- Hybryda – jest połączeniem dwóch wcześniejszych podejść. W tym trybie część odpowiedzialna za szybka migrację związana jest z lift and shift. Re-architecting z kolei wspiera możliwości zaprojektowania potrzebnych rozwiązań na nowo. To podejście pozwala na dużą dozę elastyczności, która umożliwia eksperymentowanie z rozwiązaniami chmurowymi i zdobycie niezbędnego doświadczenia, zanim na stałe postanowimy przenieść się do chmury.
PROTOTYPOWANIE W DUCHU BEST PRACTICES
Znając już możliwości migracji do chmury, przejdźmy do prototypowania. Podczas poznawania nowych rozwiązań zawsze pojawia się etap nauki. A jak wiadomo, praktyka jest najlepszą jej formą. Prototypowanie powinno być kluczowe podczas wdrażania nowych usług i produktów. Tu scenariusz jest taki sam jak poprzednio – tańszą opcją jest sprawdzenie aplikacji na etapie prototypowania. Podobna historia ma się z typami instancji. Najgorszym założeniem jest oczekiwanie, że aplikacja działająca w środowisku on-premise będzie działała tak samo w środowisku chmurowym. Istnieje wiele czynników, które mają na to wpływ. Warto w środowisku testowym uruchomić aplikacje z obciążeniami, które mogą wystąpić w świecie rzeczywistym.
Zatem jakie są Best Practices związane z prototypowaniem?
- Stwórz listę wszystkich potencjalnych założeń i niewiadomych pamiętając jednocześnie o tym, co może mieć największy wpływ na środowisko.
- Na początku wybierz i zrealizuj najbardziej ryzykowne aspekty migracji.
- Określ z góry założone cele i nie bój się pytać. Odpowiedzi pomogą w weryfikacji projektu lub odpowiedzą na pytanie, jak działa dane rozwiązanie.
- Zawsze prototypuj w podobnych warunkach, w których chcesz działać. Możesz zacząć od mniejszego środowiska lub zestawu cech, a następnie skorzystać ze skali.
- Iteracja i Continuous Integration podstawą w tworzeniu testów wdrożeniowych. Korzystając ze zautomatyzowanego środowiska oraz skryptów, możesz uruchomić test w kilku środowiskach.
- Poproś eksperta o weryfikację by móc sprawdzić konfigurację testu oraz środowisko. Umożliwi to na eliminację błędów i sprawdzenie, czy wyniki nie są zafałszowane.
- Odpowiednie uruchomienie testów pozwoli usunąć zmienne, które mogą wynikać z zależności.
- Udokumentuj wyniki testów i poproś o weryfikację, aby zapewnić ich rzetelność.
- Nie bierz wszystkich założeń za pewnik! W obszarze big data zbyt wiele czynników ma wpływ na wydajność, funkcjonalność czy koszt.
- Prototypowanie ma na celu weryfikację założeń projektu z dość dużą dozą pewności. Zasadniczo więcej wysiłku włożonego w prototyp z uwzględnieniem wielu czynników da większą pewność, że projekt będzie działał w środowisku produkcyjnym.
- A przede wszystkim nie bój się szukać pomocy – u autoryzowanych partnerów AWS, w supporcie AWS i dokumentacji.
JAK DOBRAĆ TEAM PRZY PROCESIE ADOPCJI CHMURY?
Pozostając w duchu najlepszych praktyk, warto zwrócić również uwagę na właściwy dobór zespołu. Każdy z jego członków powinien rozumieć swoją rolę oraz zadania, jakie jej towarzyszą. Powinien mieć otwarty umysł i analityczny sposób myślenia. Infrastruktura chmurowa wymaga zmiany paradygmatu sposobu traktowania zasobów. Powinien być skoncentrowany na wspólnym celu i kierunku projektu. Powinien być w stanie zagłębić się w leżące u podstaw problemy, architekturę i frameworki.
Podsumowując; proces migracji do chmury z pewnością należy do ambitnych projektów. Wybierając jednak odpowiednią metodę przeniesienia środowiska, z uwzględnieniem najlepszych praktyk i dobrze dobranym teamem, jesteśmy w stanie osiągnąć założone cele. Co więcej, zyskamy mobilność, bezpieczeństwo, oszczędność i skalowalność. Chmura rozwija się w sposób spójny z potrzebami klientów. Mając na uwadze, że jest to tendencja, która przynosi wiele korzyści – od niższych kosztów, aż po gwarancję bezpieczeństwa danych, a jeśli proces adopcji chmury nadal wydaje się skomplikowany, warto rozważyć pomoc eksperta, który pomoże w wykorzystaniu jej potencjału w 100%.