Data Engineer und Data Scientist: Was ist der Unterschied?

Die Berufe Data Scientist und Data Engineer werden oft verwechselt. Jede Firma hat ihre eigenen Arbeitsmethoden mit Daten, unterschiedliche Analyseziele und Vorstellungen davon, welche Aufgaben die FachkrĂ€fte ĂŒbernehmen sollen, weshalb auch die Anforderungen variieren. 

Wir klĂ€ren die Unterschiede zwischen diesen Fachrichtungen, welche GeschĂ€ftsaufgaben sie lösen, ĂŒber welche FĂ€higkeiten sie verfĂŒgen und welches Einkommen sie erzielen. Der Artikel ist umfangreich, daher haben wir ihn in zwei Teile aufgeteilt.

Im ersten Artikel erklĂ€rt Elena Gerasimova, Leiterin des Fachbereichs „Data Science und Analytics“ an der Netologie, den Unterschied zwischen Data Scientist und Data Engineer und welche Tools sie verwenden.

Wie sich die Rollen von Ingenieuren und Wissenschaftlern unterscheiden

Ein Dateningenieur ist ein Spezialist, der einerseits die Infrastruktur fĂŒr die Datenverarbeitung entwickelt, testet und wartet: Datenbanken, Speichersysteme und Systeme zur Verarbeitung großer Datenmengen. Andererseits ist er dafĂŒr verantwortlich, die Daten fĂŒr die Verwendung durch Analysten und Data Scientists zu bereinigen und zu „bereinigen“, also Datenverarbeitungspipelines zu erstellen.

Ein Data Scientist erstellt und trainiert prÀdiktive (und nicht nur prÀdiktive) Modelle mithilfe von Algorithmen des maschinellen Lernens und neuronalen Netzwerken. Dabei hilft er Unternehmen, verborgene Muster zu finden, Entwicklungen vorherzusagen und wichtige GeschÀftsprozesse zu optimieren.

Der Hauptunterschied zwischen Data Scientist und Data Engineer besteht darin, dass sie in der Regel unterschiedliche Ziele verfolgen. Beide arbeiten daran, dass Daten zugĂ€nglich und qualitativ hochwertig sind. Der Data Scientist findet Antworten auf seine Fragen und testet Hypothesen innerhalb des Datenökosystems (zum Beispiel auf Basis von Hadoop), wĂ€hrend der Data Engineer die Pipeline fĂŒr den Betrieb des vom Data Scientist entwickelten maschinellen Lernalgorithmus in einem Spark-Cluster innerhalb desselben Ökosystems erstellt. 

Ein Data Engineer schafft Wert fĂŒr das Unternehmen, indem er im Team arbeitet. Seine Aufgabe ist es, eine wichtige Verbindung zwischen verschiedenen Beteiligten herzustellen: von Entwicklern bis zu den GeschĂ€ftsnutzern von Berichten, und die ProduktivitĂ€t der Analysten – von Marketing- und Produktanalysten bis zu BI – zu steigern. 

Der Data Scientist hingegen ist aktiv an der Unternehmensstrategie beteiligt, extrahiert Insights, trifft Entscheidungen, implementiert Automatisierungsalgorithmen und generiert Wert aus Daten.
Data Engineer und Data Scientist: Was ist der Unterschied?

Die Arbeit mit Daten unterliegt dem GIGO-Prinzip (garbage in — garbage out): Wenn Analysten und Data Scientists mit unvorbereiteten und potenziell fehlerhaften Daten arbeiten, werden die Ergebnisse selbst mit den raffiniertesten Analysealgorithmen falsch sein. 

Data Engineers lösen dieses Problem, indem sie Pipelines fĂŒr die Verarbeitung, Reinigung und Transformation von Daten aufbauen, sodass Data Scientists bereits mit qualitativ hochwertigen Daten arbeiten können. 

Der Markt bietet viele Tools fĂŒr die Datenverarbeitung, die jeden Schritt abdecken: von der Datenerfassung bis zur Anzeige auf dem Dashboard fĂŒr den Vorstand. Es ist wichtig, dass die Entscheidung ĂŒber deren Verwendung vom Engineer getroffen wird — nicht, weil es modisch ist, sondern weil es tatsĂ€chlich den anderen Beteiligten im Prozess hilft. 

Bedingung: Wenn ein Unternehmen BI und ETL zusammenfĂŒhren muss – Datenlade- und Berichtaktualisierungsprozesse – dann ist dies eine typische Legacy-Infrastruktur, mit der ein Data Engineer umgehen muss (es wĂ€re gut, wenn im Team zusĂ€tzlich ein Architekt vorhanden ist).

Aufgaben des Data Engineers

  • Entwicklung, Aufbau und Wartung von Dateninfrastrukturen.
  • Fehlerbehandlung und Schaffung zuverlĂ€ssiger Datenverarbeitungspipelines.
  • Aufbereitung unstrukturierter Daten aus verschiedenen dynamischen Quellen in ein Format, das fĂŒr Analysten notwendig ist.
  • Bereitstellung von Empfehlungen zur Verbesserung der Konsistenz und QualitĂ€t der Daten.
  • GewĂ€hrleistung und UnterstĂŒtzung der Datenarchitektur, die von Datenwissenschaftlern und Datenanalysten verwendet wird.
  • Verarbeitung und Speicherung von Daten in einem verteilten Cluster ĂŒber Dutzende oder Hunderte von Servern, konsistent und effizient.
  • Bewertung technischer Kompromisse von Werkzeugen zur Schaffung einfacher, aber robuster Architekturen, die AusfĂ€lle ĂŒberstehen können.
  • Überwachung und UnterstĂŒtzung von Datenströmen und verwandten Systemen (Einstellung von Monitoring und Alerts).

Eine weitere Spezialisierung im Bereich Data Engineering ist der ML-Engineer. Kurz gesagt, diese Ingenieure sind darauf spezialisiert, Machine-Learning-Modelle fĂŒr den industriellen Einsatz zu optimieren und zu implementieren. Oft ist das Modell, das von einem Data Scientist kommt, Teil einer Forschungsarbeit und funktioniert möglicherweise nicht in der Praxis.

Aufgaben eines Data Scientist

  • Merkmale aus Daten extrahieren, um Algorithmen des maschinellen Lernens anzuwenden.
  • Verschiedene Werkzeuge des maschinellen Lernens nutzen, um Muster in den Daten vorherzusagen und zu klassifizieren.
  • Die Leistung und Genauigkeit von Algorithmen des maschinellen Lernens durch Feinabstimmung und Optimierung verbessern.
  • Starke Hypothesen gemĂ€ĂŸ der Unternehmensstrategie formulieren, die ĂŒberprĂŒft werden mĂŒssen.

Sowohl Data Engineers als auch Data Scientists tragen maßgeblich zur Entwicklung einer datengetriebenen Arbeitskultur bei, durch die das Unternehmen zusĂ€tzlichen Gewinn generieren oder Kosten senken kann.

Mit welchen Programmiersprachen und Werkzeugen arbeiten Ingenieure und Wissenschaftler?

Die Erwartungen an Datenverarbeitungsspezialisten haben sich heute verĂ€ndert. FrĂŒher mussten Ingenieure große SQL-Abfragen erstellen, MapReduce manuell schreiben und Daten mit Tools wie Informatica ETL, Pentaho ETL und Talend verarbeiten. 

Im Jahr 2020 kommt man als Fachmann nicht ohne Kenntnisse in Python und modernen Berechnungstools (wie Airflow) aus. Zudem ist ein VerstÀndnis der Prinzipien der Arbeit mit Cloud-Plattformen erforderlich, um Hardwarekosten zu sparen und gleichzeitig Sicherheitsprinzipien einzuhalten.

SAP, Oracle, MySQL, Redis – das sind die traditionellen Werkzeuge fĂŒr Dateningenieure in großen Unternehmen. Sie sind gut, haben aber so hohe Lizenzkosten, dass sich das Lernen mit ihnen nur fĂŒr Industrieprojekte lohnt. Es gibt jedoch eine kostenlose Alternative in Form von Postgres – es ist kostenlos und eignet sich nicht nur fĂŒr Schulungen. 

Data Engineer und Data Scientist: Was ist der Unterschied?
Historisch betrachtet wird hÀufig nach Java und Scala gefragt, obwohl diese Sprachen mit der Entwicklung von Technologien und AnsÀtzen zunehmend in den Hintergrund treten.

Dennoch sind Hard-Core Big Data Technologien wie Hadoop, Spark und andere nicht mehr unbedingt eine Voraussetzung fĂŒr Dateningenieure, sondern lediglich Werkzeuge zur Lösung von Herausforderungen, die sich nicht mit herkömmlichen ETL-Methoden bewĂ€ltigen lassen. 

Im Trend liegen Dienstleistungen, die die Nutzung von Werkzeugen ohne Kenntnis der Programmiersprache ermöglichen, in der sie geschrieben sind (zum Beispiel Hadoop ohne Java-Kenntnisse). Auch die Bereitstellung fertiger Dienste zur Verarbeitung von Streaming-Daten, wie Sprach- oder Bildrecognition, ist stark gefragt.

Industrielle Lösungen von SAS und SPSS erfreuen sich großer Beliebtheit, wobei auch Tableau, Rapidminer, Stata und Julia von Datenwissenschaftlern fĂŒr lokale Aufgaben weit verbreitet sind.

Data Engineer und Data Scientist: Was ist der Unterschied?
Analysten und Datenwissenschaftler haben erst vor ein paar Jahren die Möglichkeit erhalten, selbst Pipelines zu erstellen: Beispielsweise können sie bereits mit relativ einfachen Skripten Daten in ein auf PostgreSQL basierendes Speicherformat leiten. 

Üblicherweise liegt die Verantwortung fĂŒr die Nutzung von Pipelines und integrierten Datenstrukturen bei den Dateningenieuren. Doch der Trend zu T-förmigen FachkrĂ€ften — mit breitem Kompetenzspektrum in angrenzenden Bereichen — war noch nie so stark, da die Werkzeuge kontinuierlich vereinfacht werden.

Warum sollten Data Engineer und Data Scientist gemeinsam arbeiten?

Durch die enge Zusammenarbeit mit den Ingenieuren können Data Scientists sich auf den Forschungsaspekt konzentrieren und betriebsbereite Algorithmen fĂŒr maschinelles Lernen entwickeln.
Ingenieure hingegen können sich auf Skalierbarkeit, Datenwiederverwendung konzentrieren und sicherstellen, dass die Daten-Ein- und Ausgabepipelines in jedem Projekt der globalen Architektur entsprechen.

Diese Aufteilung der Aufgaben sorgt fĂŒr Konsistenz zwischen den Teams, die an verschiedenen maschinellen Lernprojekten arbeiten. 

Die Zusammenarbeit ermöglicht die effiziente Entwicklung neuer Produkte. Geschwindigkeit und QualitĂ€t werden durch das Gleichgewicht zwischen der Schaffung eines Services fĂŒr alle (z. B. globales Lager oder Dashboard-Integration) und der Umsetzung spezifischer Anforderungen oder Projekte (z. B. spezialisiertes Pipeline-Design, Anbindung externer Quellen) erreicht. 

Die enge Zusammenarbeit mit Data Scientists und Analysten ermöglicht es Ingenieuren, analytische und forschende FÀhigkeiten zu entwickeln, um qualitativ hochwertigen Code zu schreiben. Der Wissensaustausch zwischen Nutzern von Data Warehouses und Data Lakes wird verbessert, was Projekte flexibler macht und langfristig nachhaltigere Ergebnisse sichert.

In Unternehmen, die das Ziel haben, eine datengetriebene Kultur zu entwickeln und GeschÀftsprozesse darauf aufzubauen, ergÀnzen sich Data Scientists und Data Engineers und schaffen ein vollstÀndiges System zur Datenanalyse. 

Im folgenden Material werden wir erörtern, welche Ausbildung Data Engineers und Data Scientists benötigen, welche FÀhigkeiten sie entwickeln sollten und wie der Markt aussieht.

Von der Redaktion von Netologie

Wenn Sie an der Berufung zum Data Engineer oder Data Scientist interessiert sind, laden wir Sie ein, unsere Kursprogramme zu erkunden:

Quelle: habr.com

Erwerben Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server đŸ”„ Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster