Dataingeniør og dataforsker: hva er forskjellen?

Yrkene til dataforsker og dataingeniør er ofte forvirret. Hvert selskap har sine egne spesifikasjoner for å jobbe med data, forskjellige formål for deres analyse og en annen idé om hvilken spesialist som skal håndtere hvilken del av arbeidet, derfor har hver sine egne krav. 

La oss finne ut hva forskjellen er mellom disse spesialistene, hvilke forretningsproblemer de løser, hvilke ferdigheter de har og hvor mye de tjener. Materialet viste seg å være stort, så vi delte det inn i to publikasjoner.

I den første artikkelen, Elena Gerasimova, leder for fakultetet "Datavitenskap og analyse" i Netology, forteller hva forskjellen er mellom en dataforsker og en dataingeniør og hvilke verktøy de jobber med.

Hvordan rollene til ingeniører og forskere er forskjellige

En dataingeniør er en spesialist som på den ene siden utvikler, tester og vedlikeholder datainfrastruktur: databaser, lagrings- og massebehandlingssystemer. På den annen side er dette den som renser og "kjemmer" data for bruk av analytikere og dataforskere, det vil si lager databehandlingsrørledninger.

Data Scientist lager og trener prediktive (og andre) modeller ved hjelp av maskinlæringsalgoritmer og nevrale nettverk, og hjelper virksomheter med å finne skjulte mønstre, forutsi utvikling og optimalisere viktige forretningsprosesser.

Hovedforskjellen mellom en dataforsker og en dataingeniør er at de vanligvis har forskjellige mål. Begge jobber for at data skal være tilgjengelig og av høy kvalitet. Men en dataforsker finner svar på spørsmålene sine og tester hypoteser i et dataøkosystem (for eksempel basert på Hadoop), og en dataingeniør lager en pipeline for å betjene en maskinlæringsalgoritme skrevet av en dataforsker i en Spark-klynge innenfor samme økosystem. 

En dataingeniør bringer verdi til en virksomhet ved å jobbe som en del av et team. Dens oppgave er å fungere som et viktig bindeledd mellom ulike deltakere: fra utviklere til forretningsforbrukere av rapportering, og å øke produktiviteten til analytikere, fra markedsføring og produkt til BI. 

En Data Scientist tar tvert imot aktiv del i selskapets strategi og trekker ut innsikt, tar beslutninger, implementerer automatiseringsalgoritmer, modellerer og genererer verdi fra data.
Dataingeniør og dataforsker: hva er forskjellen?

Arbeid med data er underlagt GIGO-prinsippet (garbage in - garbage out): hvis analytikere og dataforskere håndterer uforberedte og potensielt feil data, vil resultatene selv ved bruk av de mest sofistikerte analysealgoritmene være feil. 

Dataingeniører løser dette problemet ved å bygge rørledninger for behandling, rensing og transformering av data og la dataforskere jobbe med data av høy kvalitet. 

Det finnes mange verktøy på markedet for å jobbe med data som dekker alle trinn: fra fremkomsten av data til utdata til et dashbord for styret. Og det er viktig at beslutningen om å bruke dem tas av en ingeniør - ikke fordi det er moteriktig, men fordi han virkelig vil hjelpe arbeidet til andre deltakere i prosessen. 

Konvensjonelt: Hvis et selskap trenger å lage forbindelser mellom BI og ETL – laste inn data og oppdatere rapporter, er her et typisk eldre grunnlag som en dataingeniør må forholde seg til (det er bra om det også er en arkitekt på laget).

Ansvar for en dataingeniør

  • Utvikling, bygging og vedlikehold av databehandlingsinfrastruktur.
  • Håndtering av feil og skape pålitelige databehandlingspipelines.
  • Å bringe ustrukturerte data fra ulike dynamiske kilder til den formen som er nødvendig for analytikernes arbeid.
  • Gi anbefalinger for å forbedre datakonsistens og kvalitet.
  • Tilveiebringe og vedlikeholde dataarkitekturen som brukes av dataforskere og dataanalytikere.
  • Behandle og lagre data konsekvent og effektivt i en distribuert klynge på titalls eller hundrevis av servere.
  • Vurder de tekniske avveiningene til verktøy for å lage enkle, men robuste arkitekturer som kan overleve forstyrrelser.
  • Kontroll og støtte av dataflyter og relaterte systemer (oppsett av overvåking og varsler).

Det er en annen spesialisering innenfor Data Engineer-banen - ML-ingeniør. Kort sagt, disse ingeniørene spesialiserer seg på å bringe maskinlæringsmodeller til industriell implementering og bruk. Ofte er en modell mottatt fra en dataforsker en del av en studie og fungerer kanskje ikke under kampforhold.

Ansvar for en dataforsker

  • Trekker ut funksjoner fra data for å bruke maskinlæringsalgoritmer.
  • Bruke ulike maskinlæringsverktøy for å forutsi og klassifisere mønstre i data.
  • Forbedre ytelsen og nøyaktigheten til maskinlæringsalgoritmer ved å finjustere og optimalisere algoritmene.
  • Dannelse av "sterke" hypoteser i samsvar med selskapets strategi som må testes.

Både Data Engineer og Data Scientist deler et konkret bidrag til utviklingen av en datakultur, der et selskap kan generere ekstra fortjeneste eller redusere kostnader.

Hvilke språk og verktøy jobber ingeniører og forskere med?

I dag har forventningene til dataforskere endret seg. Tidligere har ingeniører samlet inn store SQL-spørringer, manuelt skrevet MapReduce og behandlet data ved hjelp av verktøy som Informatica ETL, Pentaho ETL, Talend. 

I 2020 kan en spesialist ikke klare seg uten kunnskap om Python og moderne beregningsverktøy (for eksempel Airflow), forståelse av prinsippene for å jobbe med skyplattformer (bruke dem til å spare på maskinvare, samtidig som sikkerhetsprinsipper overholdes).

SAP, Oracle, MySQL, Redis er tradisjonelle verktøy for dataingeniører i store selskaper. De er gode, men kostnadene for lisenser er så høye at det å lære å jobbe med dem bare gir mening i industrielle prosjekter. Samtidig finnes det et gratis alternativ i form av Postgres – det er gratis og passer ikke bare for trening. 

Dataingeniør og dataforsker: hva er forskjellen?
Historisk sett er forespørsler om Java og Scala ofte funnet, men etter hvert som teknologier og tilnærminger utvikler seg, forsvinner disse språkene i bakgrunnen.

Hardcore BigData: Hadoop, Spark og resten av dyrehagen er imidlertid ikke lenger en forutsetning for en dataingeniør, men en slags verktøy for å løse problemer som ikke kan løses med tradisjonell ETL. 

Trenden er tjenester for bruk av verktøy uten kjennskap til språket de er skrevet på (for eksempel Hadoop uten kjennskap til Java), samt levering av ferdige tjenester for behandling av strømmedata (stemmegjenkjenning eller bildegjenkjenning på video) ).

Industrielle løsninger fra SAS og SPSS er populære, mens Tableau, Rapidminer, Stata og Julia også er mye brukt av dataforskere til lokale oppgaver.

Dataingeniør og dataforsker: hva er forskjellen?
Muligheten til å bygge rørledninger selv viste seg for analytikere og dataforskere for bare et par år siden: for eksempel er det allerede mulig å sende data til en PostgreSQL-basert lagring ved hjelp av relativt enkle skript. 

Vanligvis forblir bruken av rørledninger og integrerte datastrukturer dataingeniørers ansvar. Men i dag er trenden for T-formede spesialister med bred kompetanse innen relaterte felt sterkere enn noen gang, fordi verktøy stadig forenkles.

Hvorfor dataingeniør og dataforsker jobber sammen

Ved å jobbe tett med ingeniører kan dataforskere fokusere på forskningssiden og lage produksjonsklare maskinlæringsalgoritmer.
Og ingeniører må fokusere på skalerbarhet, gjenbruk av data og å sikre at datainn- og utdatapipelines i hvert enkelt prosjekt samsvarer med den globale arkitekturen.

Denne separasjonen av ansvar sikrer konsistens på tvers av team som jobber med forskjellige maskinlæringsprosjekter. 

Samarbeid bidrar til å skape nye produkter effektivt. Hastighet og kvalitet oppnås gjennom en balanse mellom å skape en tjeneste for alle (global lagring eller integrering av dashbord) og implementering av hvert spesifikt behov eller prosjekt (høyt spesialisert pipeline, tilkobling av eksterne kilder). 

Å jobbe tett med datavitere og analytikere hjelper ingeniører med å utvikle analytiske og forskningsmessige ferdigheter for å skrive bedre kode. Kunnskapsdelingen mellom lager- og datainnsjøbrukere forbedres, noe som gjør prosjekter mer smidige og gir mer bærekraftige langsiktige resultater.

I selskaper som har som mål å utvikle en kultur for å jobbe med data og bygge forretningsprosesser basert på dem, utfyller Data Scientist og Data Engineer hverandre og skaper et komplett dataanalysesystem. 

I neste artikkel skal vi snakke om hva slags utdanning en dataingeniør og dataforskere bør ha, hvilke ferdigheter de trenger for å utvikle og hvordan markedet fungerer.

Fra redaktørene i Netology

Hvis du ser på yrket som dataingeniør eller dataforsker, inviterer vi deg til å studere våre kursprogrammer:

Kilde: www.habr.com

Legg til en kommentar