Inxhinier i të Dhënave dhe Shkencëtar të Dhënave: çfarë dallimi ka në fakt?

Profesionet Data Scientist dhe Data Engineer shpesh ngatĂ«rrohen. Çdo kompani ka specifikĂ«n e saj nĂ« punĂ«n me tĂ« dhĂ«nat, qĂ«llime tĂ« ndryshme tĂ« analizĂ«s dhe njĂ« pĂ«rfaqĂ«sim tĂ« ndryshĂ«m se cili specialist duhet tĂ« merret me çfarĂ« pune, prandaj, kĂ«rkesat qĂ« çdo kompani ka janĂ« tĂ« ndryshme. 

Të kuptojmë se çfarë e ndan këta specialistë, çfarë probleme biznesi ata zgjidhin, çfarë aftësish kanë dhe sa fitojnë. Materiali doli të jetë i gjerë, prandaj e ndamë në dy publikime.

Në artikullin e parë, Elena Gerasimova, drejtore e fakultetit "Data Science dhe analiza" në Netology, flet për ndryshimin ndërmjet Data Scientist dhe Data Engineer dhe me cilat mjete ata punojnë.

Si dallohen rolet e inxhinierëve dhe scientistëve

Inxhinieri i të dhënave është specialisti që, nga njëra anë, zhvillon, teston dhe mirëmban infrastrukturën e punës me të dhëna: bazat e të dhënave, depozitimin dhe sistemet e përpunimit masiv. Nga ana tjetër, ai është ai që pastron dhe "përpunon" të dhënat për t'i përdorur nga analistët dhe data scientistët, që do të thotë se krijon linjat e përpunimit të të dhënave.

Data Scientist krijon dhe trajnon modele parashikuese (dhe jo vetëm) përmes algoritmeve të mësimit të makinerisë dhe rrjeteve nervore, duke ndihmuar biznesin të zbulojë shtigje të fshehura, të parashikojë zhvillimin e ngjarjeve dhe të optimizojë proceset kryesore të biznesit.

Kthesa kryesore ndërmjet Data Scientist dhe Data Engineer qëndron në faktin se zakonisht ata kanë qëllime të ndryshme. Të dy punojnë për të siguruar që të dhënat të jenë të disponueshme dhe të cilësisë së lartë. Por Data Scientist gjen përgjigje për pyetjet e tij dhe verifikon hipotezat në ekosistemin e të dhënave (për shembull, mbi bazën Hadoop), ndërsa Data Engineer krijon pipeline për mbështetje të algoritmit të mësimit të makinerisë, i shkruar nga data scientist-i, në klasën Spark brenda të njëjtit ekosistem. 

Inxhinieri i të dhënave sjell vlerë për biznesin përmes punës në ekip. Detyra e tij është të luajë një rol kyç midis pjesëmarrësve të ndryshëm: nga zhvilluesit deri tek përdoruesit biznesorë të raporteve, dhe të rrisë produktivitetin e analistëve - nga ata të marketingut dhe produkteve deri te BI. 

Data Scientist, nga ana tjetër, merr një pjesëmarrje aktive në strategjinë e kompanisë dhe nxjerrjen e insight-eve, marrjen e vendimeve, implementimin e algoritmeve të automatizimit, modelimit dhe gjenerimin e vlerës nga të dhënat.
Inxhinier i të Dhënave dhe Shkencëtar të Dhënave: çfarë dallimi ka në fakt?

Puna me tĂ« dhĂ«nat i nĂ«nshtrohet parimit GIGO (garbage in — garbage out): nĂ«se analistĂ«t dhe shkencĂ«tarĂ«t e tĂ« dhĂ«nave punojnĂ« me tĂ« dhĂ«na tĂ« papĂ«rgatitura dhe potencialisht tĂ« gabuara, rezultatet, edhe me algoritmet mĂ« tĂ« avancuar tĂ« analizĂ«s, do tĂ« jenĂ« tĂ« gabuara. 

Inxhinierët e të dhënave e zgjidhin këtë problem duke ndërtuar pipeline për përpunimin, pastrimin dhe transformimin e të dhënave, duke i lejuar shkencëtarët e të dhënave të punojnë me të dhëna të cilësisë më të lartë. 

NĂ« treg ka shumĂ« mjete pĂ«r punĂ«n me tĂ« dhĂ«nat, tĂ« cilat mbulojnĂ« çdo fazĂ«: nga shfaqja e tĂ« dhĂ«nave deri te paraqitja nĂ« dashboard pĂ«r bordin drejtues. E rĂ«ndĂ«sishme Ă«shtĂ« qĂ« vendimi pĂ«r pĂ«rdorimin e tyre tĂ« merret nga inxhinieri, — jo sepse Ă«shtĂ« nĂ« modĂ«, por sepse vĂ«rtet do tĂ« ndihmojĂ« nĂ« punĂ«n e pjesĂ«marrĂ«sve tĂ« tjerĂ« nĂ« proces. 

Kushtimisht: nĂ«se kompanisĂ« i duhet tĂ« lidhĂ« BI dhe ETL — ngarkimin e tĂ« dhĂ«nave dhe pĂ«rditĂ«simin e raportĂ«ve, ja njĂ« themel tipik legacy me tĂ« cilin do tĂ« duhet tĂ« merret Data Engineer (mirĂ« Ă«shtĂ« nĂ«se nĂ« ekip ka gjithashtu dhe njĂ« arkitekt).

Detyrat e Data Engineer

  • Zhvillimi, ndĂ«rtimi dhe mbĂ«shtetje e infrastrukturĂ«s pĂ«r punĂ«n me tĂ« dhĂ«nat.
  • PĂ«rpunimi i gabimeve dhe krijimi i konvejereve tĂ« besueshĂ«m pĂ«r pĂ«rpunimin e tĂ« dhĂ«nave.
  • Transformimi i tĂ« dhĂ«nave tĂ« pa strukturuara nga burime dinamike tĂ« ndryshme nĂ« formatin e nevojshĂ«m pĂ«r analistĂ«t.
  • Sigurimi i rekomandimeve pĂ«r pĂ«rmirĂ«simin e konsistencĂ«s dhe cilĂ«sisĂ« sĂ« tĂ« dhĂ«nave.
  • Sigurimi dhe mbĂ«shtetje e arkitekturĂ«s sĂ« tĂ« dhĂ«nave qĂ« pĂ«rdorin shkencĂ«tarĂ«t e tĂ« dhĂ«nave dhe analistĂ«t.
  • PĂ«rpunimi dhe ruajtja e tĂ« dhĂ«nave nĂ« mĂ«nyrĂ« tĂ« qĂ«ndrueshme dhe efikase nĂ« njĂ« klaster tĂ« shpĂ«rndarĂ« me dhjetĂ«ra ose qindra serverĂ«.
  • VlerĂ«simi i kompromiseve teknike tĂ« mjeteve pĂ«r krijimin e arkitekturave tĂ« thjeshta, por tĂ« besueshme, qĂ« mund tĂ« mbijetojnĂ« dĂ«shtimet.
  • Kontrolli dhe mbĂ«shtetje e rrjedhave tĂ« tĂ« dhĂ«nave dhe sistemeve tĂ« lidhura (konfigurimi i monitorimit dhe alarmeve).

Ekziston njĂ« specializim tjetĂ«r brenda rrugĂ«s sĂ« Data Engineer — ML engineer. NĂ«se e pĂ«rmbledhim, kĂ«ta inxhinierĂ« specializohen nĂ« sjelljen e modeleve tĂ« mĂ«simit tĂ« makinerisĂ« deri nĂ« implementim dhe pĂ«rdorim industrial. Shpesh modeli, i marrĂ« nga shkencĂ«tari i tĂ« dhĂ«nave, Ă«shtĂ« pjesĂ« e njĂ« kĂ«rkimi dhe mund tĂ« mos funksionojĂ« nĂ« kushte tĂ« fushatĂ«s.

Detyrat e Data Scientist

  • Ekstraktimi i karakteristikave nga tĂ« dhĂ«nat pĂ«r aplikimin e algoritmeve tĂ« mĂ«simit tĂ« makinerisĂ«.
  • PĂ«rdorimi i mjeteve tĂ« ndryshme tĂ« mĂ«simit tĂ« makinĂ«s pĂ«r parashikimin dhe klasifikimin e modeleve nĂ« tĂ« dhĂ«na.
  • Rritja e produktivitetit dhe saktĂ«sisĂ« sĂ« algoritmeve tĂ« mĂ«simit tĂ« makinĂ«s pĂ«rmes optimizimit dhe konfigurimit tĂ« hollĂ«sishĂ«m tĂ« algoritmeve.
  • Formimi i hipotezave "tĂ« forta" nĂ« pĂ«rputhje me strategjinĂ« e kompanisĂ« qĂ« duhen testuar.

Si Inxhinierët e Të Dhënave, ashtu edhe Shkencëtarët e Të Dhënave kontribuojnë në zhvillimin e një kulture të punës me të dhëna, e cila ndihmon kompaninë të rrisë fitimet ose të ulë shpenzimet.

Me cilat gjuhë dhe mjete punojnë inxhinierët dhe shkencëtarët?

Sot, pritshmëritë ndaj specialistëve të përpunimit të të dhënave kanë ndryshuar. Disa vite më parë, inxhinierët krijonin kërkesat e mëdha SQL, shkruanin manualisht MapReduce dhe përpunonin të dhëna me mjete si Informatica ETL, Pentaho ETL, Talend. 

Në 2020, një specialist nuk mund të kalojë pa njohuri të Python dhe mjeteve moderne të llogaritjes (p.sh. Airflow), si dhe një kuptim të parimeve të punës me platforma cloud (duke i përdorur për të kursyer në "harduer", me respektimin e parimeve të sigurisë).

SAP, Oracle, MySQL, Redis janĂ« mjete tradicionale pĂ«r inxhinierĂ«t e tĂ« dhĂ«nave nĂ« kompanitĂ« e mĂ«dha. JanĂ« tĂ« mira, por kostoja e licencave Ă«shtĂ« kaq e lartĂ« sa arsyeton tĂ« mĂ«sosh tĂ« punosh me to vetĂ«m nĂ« projekte industriale. MegjithatĂ«, ka njĂ« alternativĂ« falas si Postgres — Ă«shtĂ« falas dhe i pĂ«rshtatshĂ«m jo vetĂ«m pĂ«r mĂ«sim. 

Inxhinier i të Dhënave dhe Shkencëtar të Dhënave: çfarë dallimi ka në fakt?
Historikisht, është shpesh kërkuar Java dhe Scala, megjithatë, me zhvillimin e teknologjive dhe qasjeve, këto gjuhë po kalojnë në plan të dytë.

MegjithatĂ«, BigData tĂ« forta: Hadoop, Spark dhe gjithĂ« kafshĂ«t e tjera — nuk janĂ« mĂ« njĂ« kĂ«rkesĂ« e domosdoshme pĂ«r inxhinierĂ«t e tĂ« dhĂ«nave, por njĂ« lloj mjeti pĂ«r zgjidhjen e problemeve qĂ« nuk mund tĂ« zgjidhen me ETL tradicional. 

Në trend janë shërbimet për përdorimin e mjeteve pa pasur nevojë të dish gjuhën në të cilën janë shkruar (p.sh. Hadoop pa ditur Java), si dhe ofrimi i shërbimeve gati për përpunimin e të dhënave në flux (njohja e zërit ose imazheve në video).

Zgjidhjet industriale nga SAS dhe SPSS janë të njohura, ndërsa Tableau, Rapidminer, Stata dhe Julia gjithashtu përdoren gjerësisht nga shkencëtarët e të dhënave për detyra lokale.

Inxhinier i të Dhënave dhe Shkencëtar të Dhënave: çfarë dallimi ka në fakt?
Mundësia për të ndërtuar vetë pipeline-t iu dha analistëve dhe data scientist-ëve vetëm disa vjet më parë: për shembull, tani është e mundur të drejtohen të dhënat në një ruajtje të bazuar në PostgreSQL me skenarë relativisht të thjeshtë. 

Zakonisht, përdorimi i konvejereve dhe strukturave të integruara të të dhënave mbetet në duar të inxhinierëve të të dhënave. Por sot, si kurrë më parë, trendi për specialistët T-sh që kanë kompetenca të gjerë në fusha të lidhura është shumë i fortë, pasi mjetet vazhdimisht po thjeshtohen.

Pse Data Engineer dhe Data Scientist duhet të punojnë së bashku

Duke punuar ngushtë me inxhinierët, Data Scientist atëherë mund të përqendrohen në pjesën kërkimore, duke krijuar algorithma të gatshëm për të punuar për mësimin e makinerisë.
Ndërsa inxhinierët përqendrohen në shkallueshmëri, ripërdorimin e të dhënave dhe garantojnë që pipeline-t e hyrjes dhe daljes në çdo projekt specifik përputhen me arkitekturën globale.

Kjo ndarje e detyrave siguron koherencën e veprimeve mes grupeve të specialistëve që punojnë në projekte të ndryshme të mësimit të makinerisë. 

Bashkëpunimi ndihmon në krijimin efikas të produkteve të reja. Shpejtësia dhe cilësia arrihen falë balancës midis krijimit të një shërbimi për të gjithë (ruajtja globale ose integrimi i tabelave të kontrollit) dhe realizimit të çdo nevoje ose projekti të veçantë (pipeline i ngushtuar, lidhja e burimeve të jashtme). 

Puna e ngushtë me data scientist-et dhe analistët ndihmon inxhinierët të zhvillojnë aftësi analitike dhe kërkimore për të shkruar kod më cilësor. Kështu përmirësohet shkëmbimi i njohurive midis përdoruesve të ruajtjeve dhe liqeneve të të dhënave, duke bërë projektet më fleksibël dhe duke siguruar rezultate më të qëndrueshme afatgjata.

Në kompanitë që kanë si qëllim zhvillimin e kulturës së punës me të dhëna dhe ndërtimin e proceseve të biznesit mbi atë bazë, Data Scientist dhe Data Engineer plotësojnë njëri-tjetrin dhe krijojnë një sistem të plotë të analizës së të dhënave. 

Në materialin e ardhshëm do të flasim për arsimimin që duhet të kenë Data Engineer dhe Data Scientist, cilat aftësi duhet të zhvillojnë dhe si është tregu.

Nga redaksia e Netologjisë

Nëse po shqyrtoni profesionin e Data Engineer-it ose Data Scientist-it, ju ftojmë të eksploroni programet e kurseve tona:

Burimi: habr.com

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster