Data Engineer i Data Scientist: koja je razlika?

Profesije Data Scientist i Data Engineer često se brkaju. Svaka tvrtka ima svoje specifičnosti rada s podacima, različite namjene za njihovu analizu i različitu predodžbu koji bi se stručnjak trebao baviti kojim dijelom posla, stoga svaka ima svoje zahtjeve. 

Razmotrimo koja je razlika između ovih stručnjaka, koje poslovne probleme rješavaju, koje vještine posjeduju i koliko zarađuju. Materijal se pokazao velikim pa smo ga podijelili u dvije publikacije.

U prvom članku Elena Gerasimova, voditeljica fakulteta “Znanost o podacima i analitika" u Netologiji, govori koja je razlika između Data Scientista i Data Engineera i s kojim alatima oni rade.

Kako se razlikuju uloge inženjera i znanstvenika

Podatkovni inženjer je stručnjak koji, s jedne strane, razvija, testira i održava podatkovnu infrastrukturu: baze podataka, sustave za pohranu i masovnu obradu. S druge strane, to je onaj koji čisti i “češlja” podatke za korištenje analitičarima i podatkovnim znanstvenicima, odnosno stvara cjevovode za obradu podataka.

Data Scientist stvara i trenira prediktivne (i druge) modele koristeći algoritme strojnog učenja i neuronske mreže, pomažući tvrtkama u pronalaženju skrivenih obrazaca, predviđanju razvoja i optimiziranju ključnih poslovnih procesa.

Glavna razlika između Data Scientista i Data Engineera je ta što obično imaju različite ciljeve. Obje rade kako bi osigurale da su podaci dostupni i visoke kvalitete. No Data Scientist pronalazi odgovore na svoja pitanja i testira hipoteze u podatkovnom ekosustavu (na primjer, temeljenom na Hadoopu), a Data Engineer stvara cjevovod za servisiranje algoritma strojnog učenja koji je napisao podatkovni znanstvenik u Spark klasteru unutar istog ekosustav. 

Inženjer podataka donosi vrijednost poslovanju radeći kao dio tima. Njegova je zadaća djelovati kao važna poveznica između različitih sudionika: od programera do poslovnih potrošača izvješćivanja, te povećati produktivnost analitičara, od marketinga i proizvoda do BI-a. 

Data Scientist, naprotiv, aktivno sudjeluje u strategiji tvrtke i izvlačenju uvida, donošenju odluka, implementaciji algoritama automatizacije, modeliranju i stvaranju vrijednosti iz podataka.
Data Engineer i Data Scientist: koja je razlika?

Rad s podacima podliježe principu GIGO (garbage in - garbage out): ako analitičari i podatkovni znanstvenici rade s nepripremljenim i potencijalno netočnim podacima, tada će rezultati čak i korištenjem najsofisticiranijih algoritama analize biti netočni. 

Inženjeri podataka rješavaju ovaj problem izgradnjom cjevovoda za obradu, čišćenje i transformaciju podataka i omogućujući znanstvenicima da rade s visokokvalitetnim podacima. 

Na tržištu postoje mnogi alati za rad s podacima koji pokrivaju svaku fazu: od izgleda podataka do izlaza do nadzorne ploče za upravni odbor. I važno je da odluku o njihovoj uporabi donosi inženjer - ne zato što je to moderno, već zato što će on stvarno pomoći u radu drugih sudionika u procesu. 

Konvencionalno: ako tvrtka treba uspostaviti veze između BI-a i ETL-a - učitavanje podataka i ažuriranje izvješća, ovdje je tipična naslijeđena osnova s ​​kojom će se morati pozabaviti Data Engineer (dobro je ako u timu postoji i arhitekt).

Odgovornosti Data Engineera

  • Razvoj, izgradnja i održavanje infrastrukture za obradu podataka.
  • Rukovanje pogreškama i stvaranje pouzdanih kanala za obradu podataka.
  • Dovođenje nestrukturiranih podataka iz različitih dinamičkih izvora u oblik neophodan za rad analitičara.
  • Pružanje preporuka za poboljšanje dosljednosti i kvalitete podataka.
  • Pružanje i održavanje podatkovne arhitekture koju koriste znanstvenici i analitičari podataka.
  • Obrađujte i pohranjujte podatke dosljedno i učinkovito u distribuiranom klasteru od desetaka ili stotina poslužitelja.
  • Procijenite tehničke kompromise alata za stvaranje jednostavnih, ali robusnih arhitektura koje mogu preživjeti poremećaje.
  • Kontrola i podrška protoka podataka i povezanih sustava (postavljanje nadzora i upozorenja).

Postoji još jedna specijalizacija unutar Data Engineer putanje - ML inženjer. Ukratko, ti su se inženjeri specijalizirali za dovođenje modela strojnog učenja u industrijsku implementaciju i upotrebu. Često je model dobiven od podatkovnog znanstvenika dio studije i možda neće raditi u borbenim uvjetima.

Odgovornosti Data Scientista

  • Izdvajanje značajki iz podataka za primjenu algoritama strojnog učenja.
  • Korištenje različitih alata za strojno učenje za predviđanje i klasificiranje uzoraka u podacima.
  • Poboljšanje performansi i točnosti algoritama strojnog učenja finim podešavanjem i optimiziranjem algoritama.
  • Formiranje „jakih“ hipoteza u skladu sa strategijom poduzeća koje je potrebno testirati.

I Data Engineer i Data Scientist dijele opipljiv doprinos razvoju podatkovne kulture, putem koje tvrtka može ostvariti dodatni profit ili smanjiti troškove.

S kojim jezicima i alatima rade inženjeri i znanstvenici?

Danas su se očekivanja od podatkovnih znanstvenika promijenila. Prethodno su inženjeri prikupljali velike SQL upite, ručno pisali MapReduce i obrađivali podatke pomoću alata kao što su Informatica ETL, Pentaho ETL, Talend. 

U 2020. stručnjak ne može bez poznavanja Pythona i modernih alata za izračun (na primjer, Airflow), razumijevanja principa rada s platformama u oblaku (koristi ih za uštedu na hardveru, uz poštivanje sigurnosnih načela).

SAP, Oracle, MySQL, Redis tradicionalni su alati za podatkovne inženjere u velikim tvrtkama. Dobre su, ali cijena licenci je toliko visoka da učenje rada s njima ima smisla samo u industrijskim projektima. Istodobno, postoji besplatna alternativa u obliku Postgresa - besplatna je i prikladna ne samo za obuku. 

Data Engineer i Data Scientist: koja je razlika?
Povijesno gledano, zahtjevi za Java i Scalu se često nalaze, iako kako se tehnologije i pristupi razvijaju, ti jezici nestaju u pozadini.

No hardcore BigData: Hadoop, Spark i ostali zoološki vrt više nije preduvjet za podatkovnog inženjera, već svojevrsni alati za rješavanje problema koji se ne mogu riješiti tradicionalnim ETL-om. 

U trendu su usluge za korištenje alata bez poznavanja jezika na kojem su napisani (primjerice, Hadoop bez poznavanja Jave), kao i pružanje gotovih usluga za obradu streaming podataka (prepoznavanje glasa ili prepoznavanje slike na videu). ).

Industrijska rješenja iz SAS-a i SPSS-a su popularna, dok Tableau, Rapidminer, Stata i Julia također naširoko koriste podatkovni znanstvenici za lokalne zadatke.

Data Engineer i Data Scientist: koja je razlika?
Sposobnost da sami izgrade cjevovode pojavila se analitičarima i znanstvenicima podataka tek prije nekoliko godina: na primjer, već je moguće poslati podatke u pohranu temeljenu na PostgreSQL-u koristeći relativno jednostavne skripte. 

Tipično, korištenje cjevovoda i integriranih struktura podataka ostaje odgovornost inženjera podataka. Ali danas je trend stručnjaka u obliku slova T sa širokim kompetencijama u srodnim područjima jači nego ikad jer se alati neprestano pojednostavljuju.

Zašto Data Engineer i Data Scientist rade zajedno

Bliskom suradnjom s inženjerima, Data Scientists mogu se usredotočiti na istraživačku stranu, stvarajući algoritme strojnog učenja spremne za proizvodnju.
A inženjeri se moraju usredotočiti na skalabilnost, ponovnu upotrebu podataka i osiguravanje da cjevovodi za unos i izlaz podataka u svakom pojedinačnom projektu budu u skladu s globalnom arhitekturom.

Ovo razdvajanje odgovornosti osigurava dosljednost među timovima koji rade na različitim projektima strojnog učenja. 

Suradnja pomaže u učinkovitom stvaranju novih proizvoda. Brzina i kvaliteta postižu se ravnotežom između kreiranja usluge za svakoga (globalna pohrana ili integracija nadzornih ploča) i implementacije svake specifične potrebe ili projekta (visoko specijalizirani cjevovod, povezivanje vanjskih izvora). 

Bliska suradnja sa znanstvenicima i analitičarima podataka pomaže inženjerima da razviju analitičke i istraživačke vještine za pisanje boljeg koda. Poboljšava se razmjena znanja među korisnicima skladišta i podatkovnog jezera, čineći projekte agilnijima i pružajući održivije dugoročne rezultate.

U tvrtkama koje imaju za cilj razviti kulturu rada s podacima i izgradnju poslovnih procesa temeljenih na njima, Data Scientist i Data Engineer se nadopunjuju i stvaraju cjelovit sustav analize podataka. 

U sljedećem članku govorit ćemo o tome kakvu edukaciju trebaju imati Data Engineer i Data Scientists, koje vještine trebaju razviti i kako funkcionira tržište.

Od urednika časopisa Netology

Ako tražite zanimanje Data Engineer ili Data Scientist, pozivamo Vas da proučite naše programe tečajeva:

Izvor: www.habr.com

Dodajte komentar