Hurtownie danych jako źródła dla raportów i analiz są powszechnie stosowane w celu zwiększenia mocy obliczeniowych zarówno dla odbiorców raportów oraz analiz jak i dla korzystających z systemu transakcyjnego.
Wyobraźmy sobie sytuację, że dane źródłowe systemu transakcyjnego przechowujemy w relacyjnej bazie danych. Następnie raz na dzień są one przenoszone przez procesy ETL do hurtowni danych na której realizowane jest raportowanie i analiza danych, z dziennym opóźnieniem. Większość osób związanych z IT zna lub miała styczność z takim rozwiązaniem. Takie rozwiązanie można zrealizować korzystając ze swojej infrastruktury. Wymaga to zakupu dodatkowych serwerów, instalacji ich w serwerowni, konfiguracji a następnie utrzymania całego rozwiązania zarówno od strony sprzętu jak i oprogramowania. Jednak czy zawsze wartość dodana takiego rozwiązania jest większa niż poniesione koszty? Czasem warto rozważyć możliwość skorzystania z usług dostawców rozwiązań chmurowych i po prostu przenieść dane do chmury obliczeniowej?
Dostawcy chmury tacy jak Amazon, Google czy Microsoft oferują dedykowane rozwiązania i usługi umożliwiające optymalizację zarówno procesu przenoszenia jak i samego korzystania z hurtowni danych. Dobranie właściwych usług w chmurze w połączeniu z analizą potrzeb użytkowników końcowych umożliwia stworzenie rozwiązania optymalnego nie tylko kosztowo i wydajnościowo ale także łatwego w utrzymaniu i w rozbudowie.
Szczególnie warto powierzyć swoją hurtownie danych dostawcy usług chmurowych gdy:
- Spodziewamy się dużego obciążenia tylko w ciągu kilku dni w miesiącu podczas których realizowana jest sprawozdawczość. Dzięki funkcjonalności autoscalling w rozwiązaniach chmurowych możemy na newralgiczne dni zwiększyć moc obliczeniową a w pozostałych dniach ograniczać zasoby dzięki czemu zmniejszymy koszty infrastruktury.
- Nie mamy możliwości poniesienia dużych wydatków jednorazowo na zakup infrastruktury.
- Zasoby ludzkie nie umożliwiają nam utrzymanie infrastruktury sprzętowej na poziomie zapewniającym oczekiwania użytkowników końcowych.
- Posiadana infrastruktura sprzętowa jest lub za chwilę będzie przestarzała i będzie wymagała modernizacji lub wymiany na nową.
 
Wybrane usługi platformy Amazon Web Services do stworzenia hurtowni danych
Amazon S3 – Simple Storage Service

- Usługa do przechowywanie plików płaskich
- Umożliwia przechowywanie dowolnych rodzajów plików
- Pliki można dzielić w ramach S3 na buckety i katalogi
- Umożliwia nadawanie uprawnień do poszczególnych elementów
- Różne rodzaje S3: Standard, Intelligent-Tiering, Standard AI i One Zone AI - infrequent access, Glacier i Glacier Deep Archive
Amazon Athena
- Usługa do przeszukiwania plików z danymi przechowywanymi na S3
- Umożliwia używanie języka SQL
- Usługa typu serverless
- Bardzo prosta w użyciu
- Pobieranie danych ze zdefiniowanych obiektów opartych na plikach w S3
Amazon Redshift/ Redshift Spectrum
- Hurtowni danych w chmurze AWS
- Oparta na MPP (Massive Parallel Processing)
- Bardzo łatwo skalowalna
- Zbudowana na silniku PostgreSQL
- Schemat umożliwiający tworzenie tabel External do plików w Amazon S3
Amazon Glue Data Catalog
- Umożliwia tworzenie obiektów w usługach AWS
- Repozytorium definicji dla obiektów
- Stworzone w jednym miejscu obiekty dostępne będą w wielu usługach, np. Redshift, Athena, S3, RDS, DynamoDB
Apache Airflow
- Open Source
- Zarządzanie procesami/zadaniami
- Harmonogramowanie procesów/zadań
- Alternatywa do narzędzi ETL
- Umożliwia tworzenie transformacji w języku Python
Wizualizacja danych dla użytkowników końcowych może być realizowana przez większość popularnych narzędzi klasy BI my rekomendujemy Tableau BI.
Architektura procesu przenoszenia i udostępniania danych w chmurze AWS

Surowe dane źródłowe przetrzymywane są jako pliki płaskie w Amazon S3. Za konwersję danych z systemów źródłowych do plików płaskich odpowiadają skrypty Python uruchamiane w Apache Airflow. Dane potrzebne na potrzeby raportowania przechowywane jako pliki parquet utworzone przez skrypty SQL uruchomione na Amazon Athena lub jako tabele bazodanowe hurtowni Amazon Redshift. Dzięki Glue model danych i dane dostępne są zarówno w Amazon Athena jak i Amazon Redshift a dzięki Spectrum mogą to być tabele external.
Wykorzystanie chmury obliczeniowej - korzyści
Wdrożenie chmury w organizacji przynosi korzyści:
- Zmniejszenie kosztów infrastruktury
- Zmniejszenie kosztów utrzymania systemów
- Zwiększenie możliwości skalowalności systemów
- Skrócenie czasu tworzenia nowych aplikacji poprzez stosowanie gotowych komponentów
- Łatwość integracji komponentów i usług chmury
- Bezpieczeństwo przetwarzania danych
- Możliwość udostępnienia komponentów poszczególnym działom oraz partnerom
- Możliwość przeprowadzenia migracji typu Lift and Shift
- Możliwość używania tylko potrzebnych w danej chwili zasobów
Podsumowując, rynek usług chmurowych rozbudowuje się bardzo dynamicznie dzięki czemu wiele funkcjonalności może być realizowany bez tworzenia dodatkowego oprogramowania a wdrożenie opiera się na dobraniu usług, ich integracji, konfiguracji, tworzeniu modelu danych i procesów ładujących oczekiwane dane.