Projektowanie hybrydowej strategii dostępu do danych AI/ML za pomocą Amazon SageMaker

18 sierpnia 2023

Projektowanie hybrydowej strategii dostępu do danych AI ML za pomoca Amazon SageMaker

Z biegiem czasu wiele przedsiębiorstw zbudowało lokalny klaster serwerów, gromadząc dane, a następnie nabywając więcej serwerów i pamięci masowej. Często rozpoczynają swoją przygodę z ML od eksperymentowania lokalnie na swoich laptopach. Inwestycja w sztuczną inteligencję (AI) jest na innym etapie w każdej organizacji biznesowej. Niektóre pozostają całkowicie lokalne, inne są hybrydowe (zarówno lokalne, jak i w chmurze), a pozostałe całkowicie przeniosły się do chmury w celu obsługi obciążeń AI i uczenia maszynowego (ML).

Te przedsiębiorstwa również badają lub zaczęły wykorzystywać chmurę do rozszerzania swoich systemów lokalnych z kilku powodów. Wraz z rozwojem technologii rośnie z czasem zarówno rozmiar, jak i ilość danych. Ilość przechwytywanych danych i liczba punktów danych stale rośnie, co stanowi wyzwanie w zarządzaniu lokalnym. Wiele przedsiębiorstw jest rozproszonych, z biurami w różnych regionach geograficznych, kontynentach i strefach czasowych. Chociaż możliwe jest zwiększenie powierzchni zajmowanej lokalnie, nadal istnieją ukryte koszty, które należy wziąć pod uwagę w przypadku konserwacji i utrzymania. Organizacje te oczekują, że chmura przeniesie część tych wysiłków i umożliwi im rozerwanie i korzystanie z bogatych funkcji sztucznej inteligencji i uczenia maszynowego w chmurze.

Definiowanie strategii hybrydowego dostępu do danych

Przenoszenie obciążeń uczenia maszynowego do chmury wymaga niezawodnej strategii danych hybrydowych opisującej sposób i czas łączenia lokalnych magazynów danych z chmurą. Na tę chwilę sensowne jest, aby chmura była źródłem prawdy, jednocześnie pozwalając zespołom na używanie i zarządzanie zestawami danych lokalnie. Zdefiniowanie chmury jako źródła prawdy dla zestawów danych oznacza, że ​​pierwotna kopia będzie znajdować się w chmurze, a każdy wygenerowany zestaw danych będzie przechowywany w tej samej lokalizacji w chmurze. Dzięki temu żądania danych są obsługiwane z kopii podstawowej i wszelkich kopii pochodnych.

Strategia hybrydowego dostępu do danych powinna uwzględniać następujące kwestie

Poznaj i zrozum swoją obecną i przyszłą pamięć masową dla ML on-premises. Utwórz mapę obciążeń ML wraz z wymaganiami dotyczącymi wydajności i dostępu na potrzeby testowania i szkolenia. Zdefiniuj łączność w lokalizacjach lokalnych i w chmurze. Obejmuje to ruch wschód-zachód i północ-południe w celu obsługi wzajemnych połączeń między lokacjami, wymaganą przepustowość i przepustowość na potrzeby obciążenia związanego z przenoszeniem danych. Zdefiniuj swoje pojedyncze źródło prawdy (SSOT)[1] i określ miejsce, w którym będą znajdować się przede wszystkim zbiory danych ML. Zastanów się, w jaki sposób będą przechowywane przestarzałe, nowe, gorące i „zimne dane”. Zdefiniuj wymagania dotyczące wydajności pamięci masowej, mapując je na odpowiednie usługi pamięci masowej w chmurze. To da ci możliwość skorzystania z natywnego uczenia maszynowego w chmurze z Amazon SageMaker.

Architektura strategii dostępu do danych hybrydowych

Aby pomóc sprostać tym wyzwaniom, twórcy pracowali nad przedstawieniem kompleksowej architektury systemu na rysunku 1, która definiuje: 1) łączność między lokalnymi centrami danych a regionami AWS; 2) mapowania danych lokalnych do chmury; oraz 3) Dostosowanie Amazon SageMaker do odpowiedniego przechowywania, w oparciu o wymagania ML.

Projektowanie hybrydowej strategii dostepu do danych AI ML za pomoca Amazon SageMaker

Pora przyjrzeć się tej architekturze krok po kroku.

  1. Lokalna łączność z chmurą AWS Cloud odbywa się za pośrednictwem AWS Direct Connect w celu uzyskania dużych prędkości transferu.
  2. AWS DataSync służy do migracji dużych zbiorów danych do Amazon Simple Storage Service (Amazon S3). Agent AWS DataSync jest instalowany lokalnie.
  3. Lokalny sieciowy system plików (NFS) lub dane bloku komunikatów serwera (SMB) są łączone z chmurą za pośrednictwem Amazon S3 File Gateway, przy użyciu maszyny wirtualnej (VM) lub urządzenia sprzętowego.
  4. AWS Storage Gateway przesyła dane do Amazon S3 i zapisuje je w lokalnej pamięci podręcznej.
  5. Amazon S3 jest źródłem prawdy o zasobach ML przechowywanych w chmurze.
  6. Pobierz dane S3 do eksperymentów do Amazon SageMaker Studio.
  7. Instancje notebooków Amazon SageMaker mogą uzyskiwać dostęp do danych za pośrednictwem S3, Amazon FSx for Luster i Amazon Elastic File System. Użyj Amazon File Cache do szybkiego buforowania w celu uzyskania dostępu do danych lokalnych oraz Amazon FSx dla NetApp ONTAP do przesyłania danych w chmurze.
  8. Zadania szkoleniowe SageMaker mogą wykorzystywać dane w Amazon S3, EFS i FSx for Lustre. Dostęp do danych S3 można uzyskać za pośrednictwem trybu Plik, Szybki plik lub Potok i są one wstępnie ładowane lub ładowane z opóźnieniem podczas korzystania z FSx for Lustre jako danych wejściowych zadania szkoleniowego. Wszelkie istniejące dane dotyczące EFS można również udostępnić na potrzeby szkoleń.
  9. Wykorzystaj Amazon S3 Glacier do archiwizacji danych i zmniejszenia kosztów przechowywania.

Obciążenia ML przy użyciu Amazon SageMaker

Przyjrzyj się bliżej temu, w jaki sposób SageMaker może pomóc Ci z obciążeniami ML.

Aby rozpocząć mapowanie obciążeń ML do chmury, zastanów się, które usługi pamięci masowej AWS współpracują z Amazon SageMaker. Amazon S3 zazwyczaj służy jako centralna lokalizacja przechowywania zarówno ustrukturyzowanych, jak i nieustrukturyzowanych danych, które są używane do uczenia maszynowego. Obejmuje to surowe dane pochodzące z nadrzędnych aplikacji, a także wyselekcjonowane zestawy danych, które są zorganizowane i przechowywane w ramach magazynu funkcji.

W początkowej fazie rozwoju użytkownik SageMaker Studio będzie wykorzystywał interfejsy API S3 do pobierania danych z S3 do swojego prywatnego katalogu domowego. Ten katalog domowy jest wspierany przez system plików EFS zarządzany przez SageMaker. Następnie użytkownicy Studio kierują swój kod notatnika (również przechowywany w katalogu domowym) do lokalnego zestawu danych i rozpoczynają swoje zadania programistyczne.

Aby zwiększyć skalę i zautomatyzować szkolenie modeli, użytkownicy SageMaker mogą uruchamiać zadania szkoleniowe, które działają poza środowiskiem notebooków SageMaker Studio. Istnieje kilka opcji udostępniania danych dla zadania szkoleniowego SageMaker.

  1. Amazon S3. Użytkownicy mogą określić lokalizację S3 zestawu danych szkoleniowych. Podczas korzystania z S3 jako źródła danych dostępne są trzy tryby wprowadzania danych:
  • File mode. Jest to domyślny tryb wprowadzania, w którym SageMaker kopiuje dane z S3 do pamięci instancji szkoleniowej. Ta pamięć masowa to wolumin Amazon Elastic Block Store (Amazon EBS) udostępniony przez SageMaker lub dysk SSD NVMe, który jest dołączony do określonych typów instancji. Uczenie rozpoczyna się dopiero po pobraniu zestawu danych do magazynu, a w magazynie musi być wystarczająco dużo miejsca, aby zmieścić cały zestaw danych.
  • Fast file mode. Szybki tryb plików udostępnia obiekty S3 jako system plików POSIX w instancji szkoleniowej. Pliki zestawu danych są przesyłane strumieniowo z S3 na żądanie, gdy skrypt szkoleniowy je odczytuje. Oznacza to, że szkolenie może rozpocząć się wcześniej i wymagać mniej miejsca na dysku. Tryb szybkich plików nie wymaga również zmian w kodzie szkoleniowym.
  • Pipe mode. Wejście potokowe również przesyła strumieniowo dane w S3, gdy skrypt szkoleniowy je odczytuje, ale wymaga zmian w kodzie. Tryb wprowadzania potoku został w dużej mierze zastąpiony nowszym i łatwiejszym w użyciu trybem Fast File.
  1. FSx for Lustre. Użytkownicy mogą określić system plików FSx for Lustre, który SageMaker zamontuje w instancji szkoleniowej i uruchomi kod szkoleniowy. Gdy system plików FSx for Lustre jest połączony z zasobnikiem S3, dane mogą być ładowane z S3 podczas pierwszego zadania szkoleniowego. Kolejne zadania szkoleniowe na tym samym zbiorze danych mogą uzyskiwać do niego dostęp z małym opóźnieniem. Użytkownicy mogą również wstępnie załadować system plików danymi S3 za pomocą poleceń hsm_restore.
  2. 3. Amazon EFS. Użytkownicy mogą określić system plików EFS, który zawiera już ich dane treningowe. SageMaker zamontuje system plików w instancji szkoleniowej i uruchomi kod szkoleniowy.

Dowiedz się, jak wybrać najlepsze źródło danych dla swojego zadania szkoleniowego SageMaker.

Wnioski

Dzięki tej architekturze referencyjnej możesz opracowywać i dostarczać obciążenia uczenia maszynowego, które działają lokalnie lub w chmurze. Twoje przedsiębiorstwo może nadal korzystać z lokalnej pamięci masowej i mocy obliczeniowej dla określonych obciążeń ML, jednocześnie korzystając z chmury dzięki Amazon SageMaker. Skala dostępna w chmurze pozwala Twojej firmie na przeprowadzanie eksperymentów bez obaw o pojemność. Zacznij definiować swoją strategię danych hybrydowych w AWS już dziś!

Dodatkowe zasoby

Źródło: AWS

Case Studies
Referencje

Firma Hostersi pozwoliła nam osadzić ogólne zagadnienia programu Well Architected Framework w kontekście naszej firmy. Oszczędziło nam to wiele czasu i pozwoliło znaleźć lepiej dopasowane rozwiązania do specyfiki naszego biznesu. WAF był świetnym katalizatorem do wprowadzenie szeregu zmian w obszarze niezawodności, szybkości i bezpieczeństwa edrone. 

Piotr Stachowicz
CTO
W skrócie o nas
Specjalizujemy się w dostarczaniu rozwiązań IT w obszarach projektowania infrastruktury serwerowej, wdrażania chmury obliczeniowej, opieki administracyjnej i bezpieczeństwa danych.