Umiejętność analizowania dużych zbiorów danych (Big Data) jest niezwykle gorącym tematem i zarazem jedną z najbardziej poszukiwanych umiejętności na rynku. Ponieważ cały ekosystem rozwiązań Big Data jest ogromny w tym kursie skupimy się głównie na paradygmacie programowania MapReduce, który jest podwaliną analiz Big Data.
Zbudujemy kilkanaście MapReduce Jobów, m. in. przeanalizujemy ruch lotniczy nad Stanami Zjednoczonymi, czy ruch taksówek w Nowym Jorku. Znajdziemy średni dystans pokonywamy przez połączenia lotnicze, czy chociażby najbardziej popularny punkt odbioru nowojorskich taksówek.
W celu uruchomienia naszych Jobów postawimy klaster Hadoopowy w chmurze Amazona wykorzystując usługę EMR - Elastic MapReduce.
Apache Hadoop
Biblioteka oprogramowania Apache Hadoop to framework, który pozwala na rozproszone przetwarzanie dużych zbiorów danych w klastrach komputerów przy użyciu prostych modeli programowania. Jest przeznaczony do skalowania od pojedynczych serwerów do tysięcy maszyn, z których każda oferuje pewną moc obliczeniową i pamięć masową. Zamiast polegać na sprzęcie w celu zapewnienia wysokiej dostępności, sama biblioteka jest zaprojektowana do wykrywania i obsługi awarii w warstwie aplikacji, zapewniając w ten sposób wysoce dostępny klaster obliczeniowy.
mrjob
mrjob pozwala na tworzenie zadań MapReduce w języku Python i uruchamianie ich na kilku platformach. Dzięki mrjob możesz:
utworzyć wieloetapowe zadania MapReduce w czystym Pythonie
przetestować zadanie na swoim lokalnym komputerze
uruchomić zadanie na klastrze Hadoop
uruchomić zadanie w chmurze za pomocą Amazon Elastic MapReduce (EMR)
uruchomić zadanie w chmurze za pomocą Google Cloud Dataproc (Dataproc)
uruchomić zadania Spark w EMR lub własnym klastrze Hadoop
Stack Overflow Developer Survey
Według Stack Overflow Developer Survey 2021 język Python jest najchętniej wybieranym językiem do nauki programowania.