Data-yngenieur en datawittenskipper: wat is it ferskil?

De beroppen fan Data Scientist en Data Engineer wurde faak betize. Elk bedriuw hat syn eigen spesifikaasjes fan it wurkjen mei gegevens, ferskillende doelen foar har analyze en in oar idee fan hokker spesjalist moat omgean mei hokker diel fan it wurk, dêrom hat elk syn eigen easken. 

Litte wy útfine wat it ferskil is tusken dizze spesjalisten, hokker saaklike problemen se oplosse, hokker feardichheden se hawwe en hoefolle se fertsjinje. It materiaal blykte grut te wêzen, dat wy hawwe it ferdield yn twa publikaasjes.

Yn it earste artikel, Elena Gerasimova, haad fan 'e fakulteit "Data Science and Analytics" yn Netology, fertelt wat it ferskil is tusken in Data Scientist en in Data Engineer en mei hokker ark se wurkje.

Hoe't de rollen fan yngenieurs en wittenskippers ferskille

In data-yngenieur is in spesjalist dy't oan 'e iene kant data-ynfrastruktuer ûntwikkele, testet en ûnderhâldt: databases, opslach- en massaferwurkingssystemen. Oan 'e oare kant is dit dejinge dy't gegevens skjinmakket en "kammet" foar gebrûk troch analisten en gegevenswittenskippers, dat wol sizze, pipelines foar gegevensferwurking makket.

Data Scientist makket en traint foarsizzende (en oare) modellen mei algoritmen foar masine-learen en neurale netwurken, helpt bedriuwen ferburgen patroanen te finen, ûntwikkelingen foarsizze en wichtige saaklike prosessen optimalisearje.

It wichtichste ferskil tusken in Data Scientist en in Data Engineer is dat se normaal ferskillende doelen hawwe. Beide wurkje om te soargjen dat gegevens tagonklik en fan hege kwaliteit binne. Mar in gegevenswittenskipper fynt antwurden op syn fragen en testet hypotezen yn in gegevensekosysteem (bygelyks basearre op Hadoop), en in gegevensyngenieur makket in pipeline foar it betsjinjen fan in masine-learalgoritme skreaun troch in gegevenswittenskipper yn in Spark-kluster binnen itselde ekosysteem. 

In data-yngenieur bringt wearde oan in bedriuw troch te wurkjen as diel fan in team. Syn taak is om te fungearjen as in wichtige keppeling tusken ferskate dielnimmers: fan ûntwikkelders oant saaklike konsuminten fan rapportaazje, en it fergrutsjen fan de produktiviteit fan analysten, fan marketing en produkt oant BI. 

In Data Scientist, krekt oarsom, nimt aktyf diel oan 'e strategy fan it bedriuw en ekstrakt ynsjoch, meitsje besluten, ymplemintearje automatisearringsalgoritmen, modelleart en generearje wearde út gegevens.
Data-yngenieur en datawittenskipper: wat is it ferskil?

It wurkjen mei gegevens is ûnderwurpen oan it GIGO-prinsipe (garbage in - garbage out): as analisten en gegevenswittenskippers omgean mei ûnfoarbereide en mooglik ferkearde gegevens, dan sille de resultaten sels mei de meast ferfine analysealgoritmen ferkeard wêze. 

Data-yngenieurs lossen dit probleem op troch pipelines te bouwen foar it ferwurkjen, skjinmeitsjen en transformearjen fan gegevens en tastean gegevenswittenskippers te wurkjen mei gegevens fan hege kwaliteit. 

D'r binne in protte ark op 'e merke om te wurkjen mei gegevens dy't elke poadium dekke: fan it ferskinen fan gegevens oant útfier nei in dashboard foar de ried fan bestjoer. En it is wichtich dat it beslút om se te brûken wurdt makke troch in yngenieur - net om't it modieus is, mar om't hy it wurk fan oare dielnimmers yn it proses echt sil helpe. 

Konvinsjoneel: as in bedriuw ferbinings lizze moat tusken BI en ETL - gegevens laden en rapporten bywurkje, is hjir in typyske legacy-stifting dêr't in Data Engineer mei te krijen hat (it is goed as der ek in arsjitekt yn it team is).

Ferantwurdlikheden fan in Data Engineer

  • Untwikkeling, bou en ûnderhâld fan ynfrastruktuer foar gegevensferwurking.
  • Omgean flaters en it meitsjen fan betroubere gegevens ferwurkjen pipelines.
  • Unstrukturearre gegevens út ferskate dynamyske boarnen bringe yn 'e foarm dy't nedich is foar it wurk fan analysten.
  • Oanbefellings leverje om gegevenskonsistinsje en kwaliteit te ferbetterjen.
  • It leverjen en ûnderhâlden fan de gegevensarsjitektuer brûkt troch gegevenswittenskippers en gegevensanalisten.
  • Ferwurkje en bewarje gegevens konsekwint en effisjint yn in ferspraat kluster fan tsientallen of hûnderten servers.
  • Evaluearje de technyske kompromissen fan ark om ienfâldige, mar robúste arsjitektueren te meitsjen dy't fersteuring kinne oerlibje.
  • Kontrolearje en stipe fan gegevensstreamen en relatearre systemen (kontrôle en warskôgings ynstelle).

D'r is in oare spesjalisaasje binnen it trajekt fan Data Engineer - ML-yngenieur. Koartsein, dizze yngenieurs spesjalisearje yn it bringen fan masine-learmodellen nei yndustriële ymplemintaasje en gebrûk. Faak is in model ûntfongen fan in gegevenswittenskipper diel fan in stúdzje en kin net wurkje yn fjochtsomstannichheden.

Ferantwurdlikheden fan in Data Scientist

  • Funksjes ekstrahearje út gegevens om algoritmen foar masine-learen ta te passen.
  • It brûken fan ferskate ark foar masine-learen om patroanen yn gegevens te foarsizzen en te klassifisearjen.
  • It ferbetterjen fan de prestaasjes en krektens fan algoritmen foar masine-learen troch de algoritmen te fine-tunen en te optimalisearjen.
  • Formaasje fan "sterke" hypotezen yn oerienstimming mei de strategy fan it bedriuw dy't moatte wurde hifke.

Sawol Data Engineer as Data Scientist diele in taastbere bydrage oan 'e ûntwikkeling fan in datakultuer, wêrtroch in bedriuw ekstra winsten kin generearje of kosten kin ferminderje.

Mei hokker talen en ark wurkje yngenieurs en wittenskippers?

Hjoed binne de ferwachtingen foar gegevenswittenskippers feroare. Earder sammele yngenieurs grutte SQL-fragen, skreau MapReduce manuell en ferwurke gegevens mei helpmiddels lykas Informatica ETL, Pentaho ETL, Talend. 

Yn 2020 kin in spesjalist net dwaan sûnder kennis fan Python en moderne berekkeningsynstruminten (bygelyks Airflow), begryp fan 'e prinsipes fan wurkjen mei wolkplatfoarms (gebrûk se om te besparjen op hardware, wylst befeiligingsprinsipes observearje).

SAP, Oracle, MySQL, Redis binne tradisjonele ark foar data-yngenieurs yn grutte bedriuwen. Se binne goed, mar de kosten fan lisinsjes binne sa heech dat it learen om mei har te wurkjen allinich sin hat yn yndustriële projekten. Tagelyk is d'r in fergese alternatyf yn 'e foarm fan Postgres - it is fergees en geskikt net allinich foar training. 

Data-yngenieur en datawittenskipper: wat is it ferskil?
Histoarysk wurde oanfragen foar Java en Scala faak fûn, hoewol as technologyen en oanpak ûntwikkelje, ferdwine dizze talen op 'e eftergrûn.

Hardcore BigData: Hadoop, Spark en de rest fan 'e bistetún is lykwols net langer in betingst foar in data-yngenieur, mar in soarte fan ark foar it oplossen fan problemen dy't net kinne wurde oplost troch tradisjonele ETL. 

De trend is tsjinsten foar it brûken fan ark sûnder kennis fan 'e taal dêr't se yn skreaun binne (bygelyks Hadoop sûnder kennis fan Java), en ek it oanbieden fan klearmakke tsjinsten foar it ferwurkjen fan streaminggegevens (stimherkenning of ôfbyldingsherkenning op fideo ).

Yndustriële oplossingen fan SAS en SPSS binne populêr, wylst Tableau, Rapidminer, Stata en Julia ek in soad brûkt wurde troch gegevenswittenskippers foar lokale taken.

Data-yngenieur en datawittenskipper: wat is it ferskil?
De mooglikheid om sels pipelines te bouwen ferskynde foar analisten en gegevenswittenskippers mar in pear jier lyn: it is bygelyks al mooglik om gegevens te stjoeren nei in PostgreSQL-basearre opslach mei relatyf ienfâldige skripts. 

Typysk bliuwt it gebrûk fan pipelines en yntegreare gegevensstruktueren de ferantwurdlikens fan gegevensingenieurs. Mar hjoed is de trend foar T-foarmige spesjalisten mei brede kompetinsjes yn besibbe fjilden sterker as ea, om't ark hieltyd ferienfâldige wurde.

Wêrom Data Engineer en Data Scientist gearwurkje

Troch nau gear te wurkjen mei yngenieurs, kinne Data Scientists rjochtsje op 'e ûndersykskant, it meitsjen fan produksje-ree masine-learalgoritmen.
En yngenieurs moatte har konsintrearje op skaalberens, werbrûk fan gegevens, en derfoar soargje dat pipelines foar gegevensynfier en -útfier yn elk yndividueel projekt foldogge oan 'e wrâldwide arsjitektuer.

Dizze skieding fan ferantwurdlikheden soarget foar konsistinsje oer teams dy't wurkje oan ferskate masine-learprojekten. 

Gearwurking helpt om nije produkten effisjint te meitsjen. Snelheid en kwaliteit wurde berikt troch in lykwicht tusken it meitsjen fan in tsjinst foar elkenien (globale opslach of yntegraasje fan dashboards) en it útfieren fan elke spesifike need of projekt (heech spesjalisearre pipeline, ferbinen fan eksterne boarnen). 

Nau gearwurkje mei gegevenswittenskippers en analisten helpt yngenieurs analytyske en ûndersyksfeardigens te ûntwikkeljen om bettere koade te skriuwen. Dieling fan kennis ûnder brûkers fan pakhús en gegevensmar ferbetteret, makket projekten agile en leveret mear duorsume resultaten op lange termyn.

Yn bedriuwen dy't fan doel binne in kultuer te ûntwikkeljen fan wurkjen mei gegevens en it bouwen fan saaklike prosessen op basis dêrfan, komplementearje Data Scientist en Data Engineer inoar en meitsje in folslein gegevensanalysesysteem. 

Yn it folgjende artikel sille wy prate oer hokker soarte oplieding in Data Engineer en Data Scientists moatte hawwe, hokker feardigens se moatte ûntwikkelje en hoe't de merk wurket.

Fan de redaksje fan Netology

As jo ​​​​sykje nei it berop fan Data Engineer of Data Scientist, noegje wy jo út om ús kursusprogramma's te studearjen:

Boarne: www.habr.com

Add a comment