Sprawdź, dlaczego Linux jest tak popularny w Data Science i dlaczego warto go poznać.
Przyczyny popularności
Linux stał się pewnym standardem, jeśli chodzi o systemy operacyjne używane w szeroko pojętej nauce o danych. Obiektywnie, przyczyn takiego stanu rzeczy jest kilka:
- Oszczędność. Linux należy do grupy narzędzi o otwartym kodzie źródłowym. Oznacza to, że jest w 100% darmowy i rozwijany przez społeczność. Nie trzeba za niego płacić (chyba że wybierzemy jedną z płatnych dystrybucji), co już samo w sobie generuje oszczędności.
- Siła Open Source. Jego rozwój, aktualizacje, funkcjonalności są rozbudowywane przez programistów z całego świata, co przekłada się na masę przydatnych funkcjonalności oraz szybkie i częste aktualizacje.
- Standard w rozwiązaniach serwerowych. O ile na desktopach Linux stanowi niewielki procent wszystkich systemów operacyjnych, o tyle na serwerach niepodzielnie króluje. W codziennej pracy staramy się budować modele, które są wdrażane i używane, a umieszczenie modeli na serwerze (bardzo często opartym o OS Linux) w formie API jest jedną z podstawowych form ich wdrażania. Dodatkowo platforma Big Data – Hadoop – w większości przypadków jest uruchamiana właśnie na Linuxie.
- Stabilność i niezawodność. Czy zdarzyło Ci się kiedyś, że aktualizacja w Windows przerwała pracę, bądź efektywnie ją utrudniała? A może Windows zaskoczył Cię „blue screen-em” w najmniej oczekiwanym momencie? W Data Science niektóre obliczenia potrafią trwać długimi godzinami lub nawet dniami. Staramy się unikać sytuacji, w których proces zostaje przerwany przez jedną z wcześniej wymienionych błahostek. Stabilność działania i niezawodność są zatem czynnikami kluczowymi.
- Skalowalność i wydajność. W analizie danych często mamy do czynienia z dużymi zbiorami danych i algorytmami o dużej złożoności obliczeniowej. Linux jest znany z efektywnego zarządzania zasobami, co pozwala na maksymalne wykorzystanie mocy obliczeniowych maszyny, bez jej nadmiernego obciążania przez procesy uruchamiane w tle przez system operacyjny.
Czemu Ty, jako Data Scientist powinieneś poznać Linuxa?
Potencjalnych korzyści jest całe mnóstwo. Można je podzielić na kilka obszarów:
- Użyteczność i funkcjonalność. Wiersz poleceń, masa przydatnych narzędzi i elastyczność. Pracując na Linux, dopasowujesz system „pod siebie”, np. tworzysz one-linery (skróty użytecznych poleceń, które automatyzują powtarzalne czynności). Python na każdej dystrybucji, z której dane mi było korzystać, działał out-of-the-box.
Narzędzia takie jak: grep, find, możliwość korzystania z pipe-a, emacs, vim. - Open Source + bezpieczeństwo + prywatność. Zacznę od tego, że bardzo podoba mi się historia i kultura związana z Linuxem. Zasada prostoty i społeczności rozwijającej coś dla wspólnego dobra. Dodatkowo otwarty kod źródłowy minimalizuje ryzyko związane z prywatnością danych i śledzeniem użytkowników, które w komercyjnych systemach (Windows, Mac OS) jest to… nazwijmy to „wyzwaniem”.
- Dostępność. Znakomita większość serwerów działa na Linux właśnie. To na serwerach jako Data Scientiści wdrażamy swoje rozwiązania. Jeśli umiesz pracować z wierszem poleceń, to na dowolnym serwerze czujesz się jak ryba w wodzie, a rozwiązanie podstawowych problemów nie stanowi trudności.
- Konfiguracja środowiska zdalnie przez ssh? Nie ma sprawy.
- Brakuje bibliotek? Trzeba coś doinstalować? Żaden problem.
- Wystawienie api zwracającego score? Pewnie! 🙂
- Edycja kodu na serwerze w Vim/Emacs/nano? Ok! 😉
- Stabilność. Różnego rodzaju „zawieszki” na Linux są rzadkością. Nie pamiętam, kiedy ostatnio resetowałem komputer. Wiele systemów działających na Linux pozostaje uruchomionych miesiącami, a aktualizacje są wykonywane bez restartów.
Linux jako główny system operacyjny?
Przechodząc do sedna: w zastosowaniach biznesowych – nie polecam. No, chyba że nie musisz pisać dokumentów w Microsoft Word, edytować arkuszy kalkulacyjnych w Microsoft Excel i nie tworzysz prezentacji w Microsoft PowerPoint. Oczywiście, można to robić w innym oprogramowaniu, np. Libre Office, czy Google Docs. Problem pojawia się, gdy produkty naszych prac musimy współdzielić z naszymi współpracownikami. W prawdzie jest zapewnione wsparcie wolnego oprogramowania dla formatów: docx, xlsx, etc. W praktyce jest ono jednak dalekie od ideału i z moich doświadczeń po prostu nieefektywne.
Dodatkową przeszkodą są inne powszechnie używane aplikacje biznesowe, które są dostępne jedynie na Windows i macOS. Z różnych przyczyn (m.in. niszowy udział Linuxa na rynku desktopów) część producentów w ogóle nie wydaje swojego oprogramowania na Linux.
Z powyższych powodów nigdy nie korzystałem z Linuxa, jako głównego systemu operacyjnego w pracy zawodowej. W całej mojej karierze ani razu nie spotkałem się z sytuacją, w której pracodawca zapewniałby laptopy z systemem Linux, ew. dawał możliwość jego instalacji zamiast Windows. Zawsze był on jedynie dodatkiem, ale już po stronie serwerowej.
Czy to oznacza, że Linuxa nie warto znać? Bynajmniej. 🙂
Linux jako drugi system operacyjny
Osobiście od lat stosuję takie podejście. W pracy korzystam głównie z Windows, a prywatnie głównie z Linux. Dzięki temu regularnie ćwiczę najważniejsze polecenia i „konsolowy” sposób zarządzania systemem. Gdy później, w pracy trzeba „postawić” i skonfigurować w chmurze nową maszynę opartą o Linuxa, to nie mam z tym problemu. Dla osób mocno przyzwyczajonych do Windows i graficznego interfejsu może stanowić to znaczne wyzwanie.
Jeśli jesteś osobą początkującą i chcesz zacząć naukę Linuxa, to zacznij od dystrybucji, która jest przyjazna dla osób początkujących. Dobrym wyborem może być np. Ubuntu. W sieci znajdziesz mnóstwo materiałów edukacyjnych, które pomogą Ci poznać system i nauczyć się jego efektywnej obsługi.
Ponadto wszystkim zainteresowanym tematem Linuxa i jego użyteczności w Data Science polecam tę publikację. Miłego czytania! 🙂
Źródła:
PODOBAŁ CI SIĘ TEN ARTYKUŁ?
Jeśli tak, to zarejestruj się, by otrzymywać informacje o nowych wpisach.
Dodatkowo w prezencie wyślę Ci bezpłatny poradnik :-)
Dodaj komentarz