Wiadro Danych

No właśnie. Jak zacząć w świecie Big Data? Przecież tyle tych technologii. Widać to choćby na tym schemacie.

Język

Oczywiście najważniejszym językiem w IT jest… język angielski. Ale skończmy heheszki i oto czym powinieneś/aś się zainteresować:

Python – Przyda się praktycznie wszędzie. Od prostych skryptów, przez skrypty w PySparku, po machine learning i inne cuda.

Scala/Java – Większość bardziej znanych bloków składowych big data jest oparta na JVM, dlatego warto choć trochę znać te języki. Scala głównie dla Apache Spark.

Jeśli znasz już jakiś język to super. Z doświadczeniem coraz bardziej widać wspólny mianownik wszystkich języków programowania.

Newsletter

Amerykańscy naukowcy i radzieccy uczeni są zgodni w jednym: nie ma lepszego sposobu na początek przygody z Big Data, jak subskrypcja Wiadro Danych ?

Edukacja

Mini Projekt

Wiele osób pyta mnie: “Macieju, ale jak zacząć?”, na co odpowiadam: “Zacznij swój mini projekt“.

Dlatego przygotowałem listę 10 pomysłów na projekt Big Data.

Kursy

Platformy e-learningowe znacznie ułatwiają proces nauki. Poniżej klika z nich:

Podcasty

Poniżej lista podcastów, które śledzę w tej tematyce:

Studia

Ukończyłem studia podyplomowe Big Data na Politechnice Warszawskiej i mogę polecić. Pierwszy raz miałem tak, że chętnie wstawałem z łóżka w weekend, aby iśc na uczelnię i dowiedzieć się czegoś nowego ?.

Środowisko

No dobra znamy już trochę te języki. Co teraz? Od czego zacząć? Przecież tego jest od cholery!?

Hadoop + HDFS + Spark lokalnie

Okazuje się, że nie trzeba wcale dużo, aby odpalić obliczenia na swojej maszynie. W internecie znajdziesz dużo tutoriali pokazujących jak ściągnąć, zainstalować i skonfigurować elementy (np. ).

Docker

Znasz Dockera? Jak nie to najwyższy czas go poznać. Od kiedy poznałem tę technologię, nie pamiętam kiedy ostatni raz zainstalowałem jakąś bazę danych ręcznie. Chcesz pobawić się Apache NiFi? Nie ma problemu. Prawdopodobnie na Docker Hub już dawno ktoś przygotował kontener. Odpalasz. Bawisz się. Usuwasz. Żadnych śmieci.

Najszybszą opcją na rozpoczęcie zabawy z Apache Spark jest odpalenie odpowiedniego kontenera Jupyter-a. Jest to taki interaktywny, webowy “notatnik” w którym piszesz kod.

Bazy NoSQL / NewSQL

Warto wyjść poza tradycyjne relacyjne bazy danych. Odpowiedzią m.in na rosnące zapotrzebowania na skalowanie horyzontalne powstały bazy NoSQL. Rozproszenie (patrz: teoria CAP). Wybierz jedną z baz np. Mongodb, Cassandra, Elasticsearch, Redis i poznaj jej właściwości oraz działanie.

Apple’s Cassandra node count in Sep 2014 vs. now … that’s more than doubled! — Wei Deng (@weideng) May 24, 2019

Kolejki

Prędzej czy później spotkasz się z koniecznością użycia jakiejś kolejki. Najpopularniejsze to Apache Kafka i RabbitMQ. Wykorzystuje się je m.in do rozproszenia obciążenia. Klasyka: producent i konsument ?

Hortonworks lub Cloudera Sandbox

Co prawda Cloudera wykupiła Hortonworks-a, ale nadal są dostępne sandboxy i jednej i drugiej firmy.

Hortonworks Sandbox

MapR Sandbox

Cloudera Sandbox

Jest to bardzo wygodne rozwiązanie. Odpalamy wirtualkę i mamy namiastkę klastra Hadoop razem z innymi komponentami. Jest to dobry pomysł na poznawanie nowych technologii. W dokumentacji znajdziesz sporo przykładów i tutoriali.

Własny klaster

Jeśli masz gdzie, to możesz pokusić się o postawienie swojego klastra. Możesz wykorzystać Ambari (czyli powyższy Hortonworks) lub Cloudera Data Warehouse (CDH). Bardzo fajną instrukcję dotyczącą Ambari znajdziesz na blogu Big Data Passion.

Rozwiązania chmurowe

Czasami patrząc na ilość serwisów i produktów dostępnych w ramach chmury publicznej jest tak duża, że nie wiadomo, od czego zacząć. Mimo wszystko warto zainteresować się tymi związanymi z Big Data. Okaże się, że to co się instalowało i konfigurowało pół dnia na AWS/Azure/GCP robi się kilkoma kliknięciami w formularzu.

W Azure jest HDInsight, w AWS jest EMR (Elastic MapReduce), a w GCP Dataproc

Skąd brać dane?

Załóżmy, że już masz czym. Teraz pytanie, jakie dane masz przetwarzać. Jest wiele opcji. Tutaj znajdziesz listę źródeł danych (w tym polskie).

Podziel się: Twitter

Facebook

Jak zacząć karierę w Data Science?

W dzisiejszych czasach dane mają ogromne znaczenie. Są wykorzystywane właściwie w każdej dziedzinie i branży. Firmy świadome potęgi danych zyskują ogromną przewagę nad konkurencją. Aby wykorzystać dane do podejmowania odpowiednich decyzji biznesowych (i nie tylko), trzeba je najpierw zebrać, przetworzyć i wyciągnąć trafne wnioski. Umożliwia to stworzenie odpowiednich modeli, pozwalających przewidzieć rozwój wydarzeń i w porę na nie reagować. I właśnie dlatego specjaliści Data Science są rozchwytywani na rynku pracy, a ich wynagrodzenia są jednymi z najwyższych w całej branży IT.

5.0

Rozpocznij karierę jako specjalista przetwarzania danych. Poznaj możliwe ścieżki rozwoju i przydatne narzędzia w Data Science, Data Engineering i AI. Dowiedz się więcej

Co to jest Data Science i kim jest Data Scientist?

W najprostszym tłumaczeniu z języka angielskiego Data Science jest po prostu nauką o danych. W rzeczywistości jednak, trudno znaleźć w języku polskim odpowiednie określenie dla Data Science, która jest bardzo szeroką dyscypliną, łączącą w sobie zagadnienia z wielu różnych dziedzin. Czym więc zajmuje się Data Scientist? Najprościej rzecz ujmując zajmuje się pozyskiwaniem danych, ich przetwarzaniem, analizą, tworzeniem wizualizacji, a nawet skutecznych modeli predykcyjnych, ułatwiających podejmowanie trafnych decyzji. Wykorzystuje do tego zaawansowane rozwiązania - sztuczną inteligencję, uczenie maszynowe, czy systemy uczące się.

Jakie umiejętności musi posiadać Data Scientist?

Data Scientist musi posiadać kompetencje zarówno programisty, jak i analityka danych. Najczęściej wykorzystywanym językiem programowania w Data Science jest Python (więcej na temat języka Python przeczytasz tutaj), który posiada szereg przydatnych bibliotek, wykorzystywanych w pracy z danymi. Jakie umiejętności są często wymagane na stanowisku Data Scientist?

umiejętność pracy z relacyjnymi i nierelacyjnymi bazami danych (SQL i NoSQL),

umiejętność przetwarzania i wizualizacji danych,

znajomość języka Python i podstawowych bibliotek (m.in. Pandas, NumPy),

znajomość narzędzi wykorzystywanych w codziennej pracy Data Engineer’ów (m.in. Hadoop, Hive, Kafka),

znajomość zagadnień związanych z Machine Learningiem i Deep Learningiem, m.in. podstawowych frameworków, wykorzystywanych w uczeniu maszynowym np. PyTorch i Tensorflow.

znajomość technologii cloud np. AWS (Amazon Web Services).

Poza tym każdy Data Scientist powinien rozumieć podstawowe zagadnienia statystyczne i matematyczne i posiadać dobrze rozwinięte umiejętności komunikacyjne, które pozwolą w jasny sposób przekazywać wyniki skomplikowanych analiz. Bardzo częstym wymogiem jest również dobra znajomość języka angielskiego. Oczywiście, żeby ubiegać się o pierwsze stanowisko związane z Data Science nie musisz już na starcie posiadać zaawansowanej wiedzy o wykorzystywanych narzędziach i technologiach. Warto mieć jednak ogólną wiedzę i rozeznanie, do czego dane narzędzia służą i jak się ich używa.

Poza tym w obrębie Data Science, masz do wyboru kilka różnych ścieżek rozwoju, które w pewnym stopniu będą się różnić wymaganiami i wykorzystywanymi technologiami. Przykładowe stanowiska mocno związane z Data Science to:

Data Scientist,

Machine Learning Engineer,

MLOps Engineer,

Data Engineer.

Jeżeli chciałbyś wejść do świata danych i dać sobie szansę na pracę w jednej z najszybciej rozwijających się dziedzin w branży IT koniecznie dowiedz się więcej o charakterystyce pracy na wyżej wymienionych stanowiskach. Czujesz się nieco zagubiony i nie wiesz od czego zacząć? Nie szkodzi, mamy dla Ciebie idealne rozwiązanie - Kurs Jak zacząć karierę w Data Science.

Co da Ci Kurs Jak zacząć karierę w Data Science?

Dowiesz się jak rozpocząć karierę w Data Science, AI i Data Engineering.

Poznasz specyfikę pracy, możliwe ścieżki kariery i dobre praktyki pracy przy projektach związanych z danymi.

Zobaczysz praktyczne wykorzystanie wielu narzędzi używanych przez specjalistów związanych z danymi.

Zdobyta wiedza pozwoli Ci znacznie łatwiej wejść do świata danych, poznać specyfikę konkretnych stanowisk i wybrać najlepszą ścieżkę rozwoju dla siebie!

Kurs prowadzi Paweł Pęczek, pasjonat nowych technologii i Data Scientist, który doświadczenie zawodowe zdobywał pracując nad projektami związanymi przede wszystkim z Computer Vision, rozwojem autonomicznych samochodów i automatyzacją procesów biznesowych przy pomocy Deep Learning’u. Prywatnie pasjonuje się filmem i próbuje opanować taniec towarzyski.

5.0

Rozpocznij karierę jako specjalista przetwarzania danych. Poznaj możliwe ścieżki rozwoju i przydatne narzędzia w Data Science, Data Engineering i AI. Dowiedz się więcej

10 narzędzi pomocnych na drodze do bycia Data Scientist w 2020

Z wykształcenia jestem inżynierem mechanikiem. Karierę rozpocząłem od pracy w branży stalowej. Wędrowałem w ciężkich gumowych butach wzmocnionych stalą i plastikowym hełmie wokół wielkich pieców i walcowni. To były dość kiepskie środki bezpieczeństwa jak na tamtejsze warunki pracy. Wiedziałem, że nic mnie nie uratuje.. No, może pomogłyby buty do biegania. Gdy uświadomiłem sobie na podstawie mojego ciągłego strachu, że ta praca nie była dla mnie, postanowiłem przenieść się do przestrzeni Analytics i Data Science. Było to ok. 2011 roku. Obecnie w 2020 r., gdy dziedzina Data Science zmienia się bardzo szybko, nie brakuje zasobów do nauki danych. Ale to gdzie zacząć się uczyć – i czego się uczyć – często stanowi problem dla początkującego programisty. W Internecie jest wiele świetnych zasobów, ale niestety, że jest też wiele złych.

W swojej książce The Paradox of Choice – Why More Is Less Schwartz twierdzi, że wyeliminowanie wielości wyborów konsumenckich może znacznie zmniejszyć niepokój kupujących. To samo dotyczy również kursów Data Science. W tym poście przedstawiam zalecenia dla zagubionych dusz z dużą ilością opcji, od których można rozpocząć podróż do nauki danych.

Uwaga! Niżej wymienione kursy odbywają się w języku angielskim.

1.Specjalizacja w języku Python 3

Po pierwsze, potrzebujesz języka programowania. Ta specjalizacja z „University of Michigan” polega na nauce używania Pythona 3 i samodzielnym tworzeniu kodu. Dowiesz się o podstawach programowania i uzyskasz dostęp do niektórych materiałów specyficznych, takich jak parametry słów kluczowych, wyliczenia list, wyrażenia lambda i dziedziczenie klas.

2.Data Science + Pythonem

Zanim w pełni zrozumiemy Machine Learning, musimy poznać jego „smak”. Ten kurs w dziedzinie nauki o danych stosowanych w Pythonie stanowi wprowadzenie do wielu nowoczesnych metod uczenia maszynowego, o których powinieneś wiedzieć. Nie będzie to dokładne szlifowanie, ale otrzymasz podstawowe narzędzia do budowy modeli.

3.Teoria i podstawy Machine Learning

Po ukończeniu powyższych kursów uzyskasz status, który nazwałbym „początkującym”. Gratulacje! Jednak pewne nie do końca rozumiesz jeszcze całej matematykę i zawiłości, które stoją za wszystkimi modelami. Z pomocą przychodzi kurs Game Changer Machine Learning. Zawiera tajniki matematyki stojącej za wieloma algorytmami uczenia maszynowego. Ten kurs zawiera trochę wszystkiego – regresję, klasyfikację, wykrywanie anomalii, systemy rekomendacji, sieci neuronowe oraz wiele świetnych porad.

4.Naucz się wnioskowania statystycznego

Mine Çetinkaya-Rundel uczy tego kursu na temat wnioskowania statystycznego. I żaden inny kurs nie będzie bardziej klarowny, niż ten. Mine jest świetnym instruktorem i prosto wyjaśnia podstawy wnioskowania statystycznego – jest to kurs obowiązkowy. Dowiesz się o testowaniu hipotez, przedziałach ufności i metodach wnioskowania statystycznego dla danych liczbowych i kategorycznych.

5.Naucz się podstaw SQL w Data Science

Choć czujemy się już o wiele lepiej dzięki tworzeniu modeli i przedstawianiu różnych hipotez, nie da się przecenić roli przetwarzania danych. SQL stał się de facto standardem pracy z Big Data Tools, takimi jak Apache Spark. Ta specjalizacja SQL od UC Davis nauczy Cię o SQL, a także o tym, jak używać SQL do przetwarzania rozproszonego.

6. Zaawansowane uczenie maszynowe

Być może się z tym nie zgodzisz, jednak do tej pory wszystko czego się uczyliśmy było dziecinnie proste – proste struktury, minimalna matematyka.. Jednak doprowadziło nas do miejsca, z którego możemy pójść dalej. Ta specjalizacja zaawansowanego uczenia maszynowego przez najlepszych praktyków Kaggle i naukowców z CERN przyjmuje inne podejście do uczenia się, przechodząc przez wiele trudnych koncepcji w zrozumiały sposób.

7. Deep Learning

Andrew NG powrócił z nową specjalizacją Deep Learning. Osiągnął mistrzostwo w wyjaśnianiu trudnych pojęć w łatwy do zrozumienia sposób. Nomenklatura, którą stosuje, różni się od wszystkich innych samouczków i kursów w sieci i mam nadzieję, że się przyda, ponieważ jest bardzo pomocny w zrozumieniu wszystkich podstawowych pojęć.

8. Pytorch

Zwykle nigdy nie namawiam na nauką narzędzia, ale tutaj zrobię wyjątek. A to dlatego, że dzięki Pytorch zrozumiesz kod w wielu najnowszych artykułach naukowych. Pytorch stał się domyślnym językiem programowania dla badaczy zajmujących się Deep Learning.

9. Zapoznanie się z AWS w ramach uczenia maszynowego

Przy budowie doskonałego systemu uczenia maszynowego należy wziąć pod uwagę wiele rzeczy. Ale często zdarza się, że my, badacze danych, martwimy się tylko o niektóre części projektu. Ale czy kiedykolwiek zastanawiamy się, jak wdrożyć w całości nasze modele? Widziałem wiele projektów Machine Learning i wiele z nich jest skazanych na niepowodzenie, ponieważ od początku nie mają ustalonego planu produkcji. Posiadanie dobrej platformy i zrozumienie, w jaki sposób platforma ta wdraża aplikacje uczenia maszynowego, spowoduje zmianę widzenia tego aspektu. Ten kurs na temat AWS dotyczący wdrażania aplikacji Machine Learning to zapewni.

10. Struktury danych i algorytmy

Tak, potrzebujesz ich. Algorytmy i struktury danych są integralną częścią nauki o danych. Chociaż większość z nas nie skupia się na algorytmach podczas nauki, są one jednak niezbędne. Wiele firm pyta o struktury danych i algorytmy w ramach procesu rekrutacji dotyczącego zatrudniania specjalistów zajmujących się danymi. Będą wymagały tego samego zapału do przełamania, jak wywiady z Data Science, a zatem warto poświęcić trochę czasu na badanie algorytmów oraz struktury danych i pytań dotyczących algorytmów. Jednym z najlepszych zasobów, które znalazłem do nauki algorytmów, jest Kurs Algorytmów na Coursera autorstwa UCSanDiego.

Źródło:

Rahul jest specjalistą Data Scienist. Pracuje w WalmartLabs. Uwielbia skupianie się na skomplikowanych problemach związanych z obróbką danych i wciąż szuka nowych pomysłów na ich rozwiązywanie.