Hadoop

Was ist das? Und warum spielt es eine Rolle?

Hadoop ist ein Open Source Software-Programm, das der Datenspeicherung dient und Applikationen auf handelsüblicher Hardware zulässt. Es bietet gigantische Speichermöglichkeiten für alle Arten von Daten, verfügt über unglaubliche Prozessorleistung und ist in der Lage, unbegrenzt Aufgaben und Aufträge gleichzeitig zu verarbeiten.

 

Geschichte von Hadoop

Als das World Wide Web in den späten 1900er- und frühen 2000er-Jahren wuchs, wurden Suchmaschinen und Indizes erstellt, um relevante Informationen in den textbasierten Inhalten zu finden. In den Anfangsjahren wurden die Suchergebnisse von Menschen zurückgegeben. Doch als das Web auf Millionen von Seiten anwuchs, wurde eine Automatisierung erforderlich. Es wurden Webcrawler entwickelt (viele davon im Rahmen von Forschungsprojekten unter der Leitung von Universitäten) und Suchmaschinen-Start-ups wurden gegründet (Yahoo, AltaVista usw.).

hadoop-timeline-infographic

Eines dieser Projekte war eine Open-Source-Websuchmaschine namens Nutch – die Idee von Doug Cutting und Mike Cafarella. Sie wollten Web-Suchergebnisse schneller liefern, indem sie Daten und Berechnungen auf verschiedene Computer verteilten, sodass mehrere Aufgaben gleichzeitig erledigt werden konnten. Zu dieser Zeit war das Suchmaschinenprojekt „Google“ in Arbeit. Es basierte auf demselben Konzept – Speicherung und Verarbeitung von Daten in einer verteilten, automatisierten Weise, sodass relevante Web-Suchergebnisse schneller gefunden werden konnten.

2006 wechselte Cutting zu Yahoo und nahm das Nutch-Projekt sowie Ideen, die auf Googles früher Arbeit an der Automatisierung der verteilten Datenspeicherung und -verarbeitung basierten, mit. Das Nutch-Projekt wurde geteilt – der Webcrawler-Teil blieb als Nutch bestehen und der verteilte Rechen- und Verarbeitungsteil wurde zu Hadoop (benannt nach dem Spielzeugelefanten des Sohnes von Cutting). 2008 gab Yahoo Hadoop als Open-Source-Projekt frei. Heute werden das Hadoop-Framework und das Ökosystem der Technologien von der gemeinnützigen Apache Software Foundation (ASF) verwaltet und gepflegt, einer weltweiten Gemeinschaft von Softwareentwicklern und -mitarbeitern.

 

Warum ist Hadoop wichtig?

  • Schnelle Speicherung und Verarbeitung großer Datenmengen jeglicher Art. Angesichts der ständig wachsenden Datenmengen und -vielfalt, insbesondere durch soziale Medien und das Internet der Dinge (IdD), ist dies ein wichtiger Aspekt.
  • Rechenleistung. Das verteilte Berechnungsmodell von Hadoop verarbeitet große Datenmengen schnell. Je mehr Rechenknoten Sie verwenden, desto mehr Rechenleistung steht Ihnen zur Verfügung.
  • Ausfallschutz. Die Daten- und Anwendungsverarbeitung ist gegen Hardwareausfälle geschützt. Fällt ein Knoten aus, werden die Aufträge automatisch auf andere Knoten umgeleitet, um sicherzustellen, dass die verteilte Datenverarbeitung nicht ausfällt. Von allen Daten werden automatisch mehrere Kopien gespeichert.
  • Flexibilität. Im Gegensatz zu herkömmlich verknüpften Datenbanken müssen Sie die Daten vor der Speicherung nicht aufbereiten. Sie können so viele Daten speichern, wie Sie wollen, und entscheiden, wie Sie sie später verwenden wollen. Das gilt auch für unstrukturierte Daten wie Texte, Bilder und Videos.
  • Geringe Kosten. Das Open-Source-Framework ist kostenlos und verwendet handelsübliche Hardware zur Speicherung großer Datenmengen.
  • Skalierbarkeit. Sie können Ihr System problemlos erweitern, um mehr Daten zu verarbeiten, indem Sie einfach weitere Knotenpunkte hinzufügen. Es ist nur ein geringer Verwaltungsaufwand erforderlich.

Was sind die Herausforderung bei der Nutzung von Hadoop?

Die MapReduce-Programmierung ist nicht für alle Probleme geeignet. Sie eignet sich gut für einfache Informationsanfragen und Probleme, die in unabhängige Einheiten aufgeteilt werden können, ist aber nicht effizient bei sich wiederholenden und interaktiven Analyseaufgaben. MapReduce ist sehr dateiintensiv. Da die Knoten nur durch Sortieren und Mischen miteinander kommunizieren, benötigen sie sich wiederholende Algorithmen mehrere Map-Shuffle/Sort-Reduce-Phasen, um abgeschlossen zu werden. Dadurch entstehen mehrere Dateien zwischen den MapReduce-Phasen, was für fortgeschrittene analytische Berechnungen ineffizient ist.

Es gibt eine allgemein anerkannte Qualifizierungslücke. Es kann schwierig sein, Programmiereinsteiger zu finden, die über ausreichende Java-Kenntnisse verfügen, um mit MapReduce wirklich erfolgreich zu arbeiten. Das ist einer der Gründe, warum Distributionsanbieter sich darum bemühen, Hadoop mit relationaler Technologie (SQL) zu ergänzen. Es ist viel einfacher, Programmierer mit SQL-Kenntnissen zu finden als mit MapReduce-Kenntnissen. Außerdem scheint die Hadoop-Verwaltung teils Kunst, teils Wissenschaft zu sein, denn sie erfordert grundlegende Kenntnisse über Betriebssysteme, Hardware und Hadoop-Kernel-Einstellungen. .

Datensicherheit. Eine weitere Herausforderung ist die fragmentierte Datensicherheit, auch wenn neue Tools und Technologien erscheinen. Das Kerberos-Authentifizierungsprotokoll ist ein großer Schritt in Richtung Sicherheit von Hadoop-Umgebungen.

Umfassendes Datenmanagement und Governance. Hadoop verfügt nicht über benutzerfreundliche, voll funktionsfähige Tools für Datenmanagement, Datenbereinigung, governance und Metadaten. Insbesondere fehlen Tools für die Datenqualität und -standardisierung.



Fun Fact: „Hadoop“ war der Name eines gelben Spielzeugelefanten, der dem Sohn eines der Erfinder gehörte.

Hadoop in der Gegenwart

Das Versprechen einer kostengünstigen, hochverfügbaren Speicher- und Verarbeitungsleistung hat viele Unternehmen zu Hadoop geführt. Dennoch bleibt für viele eine zentrale Frage offen: Wie kann Hadoop uns bei Big Data und Analytics? Mehr Informationen finden Sie hier!

tdwi logo - Advancing all things data


Lesenswert: Hadoop für Unternehmen

Dieser umfassende 40-seitige Best-Practices-Bericht von TDWI erklärt wie sich Hadoop und seine Implementierungen weiterentwickeln, um Unternehmensimplementierungen zu ermöglichen, die über Nischenanwendungen hinausgehen.

Hier geht es zum TDWI-Bericht

Report icon


Vom hässlichen Entlein zum schönen Schwan

So stellt die Bloor Group das Hadoop-Ökosystem in diesem Bericht vor, der die Entwicklung und die Einsatzmöglichkeiten von Hadoop untersucht. Der Bericht enthält einen detaillierten geschichtlichen Abriss und Tipps zur Auswahl einer geeigneten Distribution für Ihre Anforderungen.

Hier geht es zur Studie

Webcast icon

Self-Service-Datenaufbereitung für Analysen

Möchten Sie erfahren, wie Sie schneller zu Erkenntnissen kommen, indem Sie Business Usern direkten Zugriff auf Daten geben? Dieses Webinar zeigt, wie Self-Service-Tools wie SAS-Datenaufbereitung es nicht-technischen Anwendern leicht machen, selbstständig auf Daten zuzugreifen und sie für Analysen vorzubereiten.

Hier geht es zum Webinar

E-book icon


SAS and Hadoop overview

Get acquainted with Hadoop and SAS concepts so you can understand and use the technology that best suits your needs. Check out this page learn how SAS technology interacts with Hadoop.

Get overview

Datenmanagement für Hadoop

Big-Data-Kenntnisse sind sehr gefragt. Jetzt können Business User Daten erfassen, umwandeln und bereinigen – auf Hadoop oder wo auch immer sie gespeichert sind – mithilfe einer intuitiven Benutzeroberfläche.

Erfahren Sie mehr über Hadoop-Datenmanagement von SAS

Wie wird Hadoop genutzt?

Über das ursprüngliche Ziel hinaus, Millionen (oder Milliarden) von Webseiten zu durchsuchen und relevante Ergebnisse zu liefern, sehen viele Unternehmen Hadoop als ihre nächste Big Data-Plattform. Beliebte Anwendungen sind heute unter anderem:

Kostengünstige Speicherung und Datenarchivierung

Aufgrund der geringen Kosten für Standardhardware eignet sich Hadoop für die Datenspeicherung und- Zusammenführung wie Transaktionsdaten, Daten aus sozialen Medien, Sensor- oder Maschinendaten, wissenschaftlichen Daten, Click-Streams usw. Durch die kostengünstige Speicherung können Sie Informationen sichern, die derzeit nicht wichtig sind, die Sie aber möglicherweise später analysieren möchten.

Sandbox zur Erkennung und Analyse

Da Hadoop für die Verarbeitung von Datenmengen in verschiedenen Formen und Größen konzipiert wurde, kann es analytische Algorithmen anwenden. Big Data Analytics auf Hadoop kann Ihr Unternehmen unterstützen, effizienter zu arbeiten, neue Möglichkeiten zu entdecken und weitere Wettbewerbsvorteile zu erzielen. Der Sandbox-Ansatz bietet die Möglichkeit, mit minimalen Investitionen innovativ zu sein.

Data Lake

Data Lakes unterstützen die Speicherung von Daten in ihrem ursprünglichen oder genauen Format. Ziel ist es, Data Scientists und- Analysts Rohdaten zur Identifikation und Analyse bereitzustellen. Dies hilft ihnen, uneingeschränkt neue und schwierige Fragen zu stellen. Data Lakes sind kein Ersatz für Data Warehouses. In der Tat ist die Frage, wie Data Lakes gesichert und verwaltet werden können, ein zentrales Thema für die IT. Sie können sich auf Datenverbundtechniken stützen, um eine logische Datenstruktur zu schaffen.

Ergänzen Sie Ihr Data Warehouse

Wir sehen jetzt, dass Hadoop neben Data-Warehouse-Umgebungen eingesetzt wird und dass bestimmte Datensätze aus dem Data-Warehouse in Hadoop verlagert werden oder dass neue Datentypen direkt in Hadoop gespeichert werden. Das Ziel für jedes Unternehmen ist es, eine geeignete Plattform für die Datenspeicherung und- Verarbeitung mit unterschiedlichen Schemata, Formaten usw. zu haben, um verschiedene Anwendungsfälle zu unterstützen, die auf verschiedenen Ebenen integriert werden können.

IoT und Hadoop

Die im Internet der Dinge gespeicherten Daten müssen wissen, was sie mitteilen und wann sie handeln sollen. Das Herzstück von IoT ist eine ständig fließende Datenflut. Hadoop wird häufig als Datenspeicher für Millionen oder Milliarden von Transaktionen verwendet. Dank riesiger Speicherkapazität und Prozessorleistung können Sie Hadoop auch als Sandbox für die Identifizierung und Definierung von Mustern verwenden, die für die Überwachung von Vorschriften dienen. Diese Anweisungen können dann kontinuierlich verbessert werden, da Hadoop ständig mit neuen Daten, die nicht den zuvor definierten Mustern entsprechen, versorgt wird.

 

 

Erstellung einer Empfehlungsfunktion in Hadoop

Eine der beliebtesten analytischen Anwendungen von einigen der größten Hadoop-Anwender sind webbasierte Empfehlungssysteme. Facebook – Menschen, die Sie vielleicht kennen. LinkedIn – Jobs, die Sie interessieren könnten. Netflix, eBay, Hulu – Artikel, die Sie interessieren könnten. Diese Systeme analysieren riesige Datenmengen in Echtzeit, um schnell Vorlieben vorherzusagen, bevor Kunden die Webseite verlassen.

Wie? Ein Empfehlungssystem kann ein Benutzerprofil explizit (durch Abfrage des Benutzers) und implizit (durch Beobachtung des Benutzerverhaltens) erstellen – und vergleicht dieses Profil dann mit Referenzmerkmalen (Beobachtungen einer ganzen Benutzergemeinschaft), um geeignete Empfehlungen zu geben. SAS bietet eine Reihe von Techniken und Algorithmen zur Erstellung eines Empfehlungssystems, die von grundlegenden Abstandsmaßen bis hin zu Matrixfaktorisierung und kollaborativem Filtern reichen – und alle in Hadoop ausgeführt werden können.

Erfahren Sie hier, wie Sie Empfehlungssysteme in Hadoop erstellen können etc.


Ich glaube, dass Hadoop inzwischen so weit ausgereift ist, dass man erfolgreich große und komplexe Anwendungen auf der Plattform aufbauen kann. Hadoop erfüllt unsere Anforderungen an die Skalierbarkeit bei der Verarbeitung großer und unterschiedlicher Datentypen.
Bob Zurek, Senior Vice President of Products bei Epsilon in Hadoop for the Enterprise, einem in Hadoop for the Enterprise, a TDWI-Best-Practices-Bericht

Hadoop, Analytics und der Data Scientist


Mögen Sie Programmieren? Dann werden Sie das hier lieben. Eine interaktive All-in-One-Umgebung bietet Ihnen alles, was Sie benötigen, um aus Daten in Hadoop genaue Erkenntnisse zu gewinnen. Und das in Lichtgeschwindigkeit.

Mehr zu Analytics auf Hadoop von SAS

Wie funktioniert Hadoop inkl. Hadoop-Begriffserläuterungen

Derzeit sind vier Kernmodule im Basis-Framework der Apache Foundation enthalten:

Hadoop Common – die Bibliotheken und Dienstprogramme, die von anderen Hadoop-Modulen verwendet werden.

Hadoop Distributed File System (HDFS) –das Java-basierte skalierbare System, das Daten ohne vorherige Organisation auf mehreren Rechnern speichert.

YARN – (Yet Another Resource Negotiator) bietet Ressourcenmanagement für die auf Hadoop laufenden Prozesse.

MapReduce – ein Software-Framework für die Parallelverarbeitung. Es besteht aus zwei Schritten. Der Map-Schritt ist ein Hauptknoten, der die Eingaben entgegennimmt, sie in kleinere Teilprobleme unterteilt und sie dann an die Arbeitsknoten verteilt. Nach dem Map-Schritt nimmt der Master-Knoten die Antworten auf alle Teilprobleme und kombiniert sie, um die Ausgabe zu erzeugen.

Andere Softwarekomponenten, die auf oder neben Hadoop laufen können und den Status eines Apache-Projekts auf höchster Ebene erreicht haben, sind:

AmbariEine Webschnittstelle zum Verwalten, Konfigurieren und Testen von Hadoop-Diensten und -Komponenten.
CassandraEin verteiltes Datenbanksystem.
FlumeSoftware zum Sammeln, Aggregieren und Verschieben großer Mengen von Streaming-Daten in HDFS.
HBaseEine nicht-relationale, verteilte Datenbank, die auf Hadoop läuft. HBase-Tabellen können als Eingabe und Ausgabe für MapReduce-Aufträge dienen.
HCatalogEine Tabellen- und Speicherverwaltungsschicht, die Benutzern die gemeinsame Nutzung von und den Zugriff auf Daten erleichtert.
HiveEine Data Warehousing- und SQL-ähnliche Abfrage-Sprache, die Daten in Form von Tabellen darstellt. Die Hive-Programmierung ist der Datenbankprogrammierung ähnlich.
OozieEin Hadoop-Aufgabenplaner
PigEine Plattform für die Bearbeitung von in HDFS gespeicherten Daten, die einen Compiler für MapReduce-Programme und eine Hochsprache namens Pig Latin enthält. Es bietet eine Möglichkeit, Datenextraktionen, -transformationen und -laden sowie grundlegende Analysen durchzuführen, ohne MapReduce-Programme schreiben zu müssen.
SolrEin skalierbares Suchwerkzeug, das Indizierung, Zuverlässigkeit, zentrale Konfiguration, Ausfallsicherung und Wiederherstellung umfasst.
SparkEin Open-Source-Cluster-Computing-Framework mit In-Memory-Analytics
SqoopEin Verbindungs- und Übertragungsmechanismus, der Daten zwischen Hadoop und relationalen Datenbanken überträgt.
Zookeeper 
Eine Anwendung, die die verteilte Verarbeitung koordiniert

Kommerzielle Hadoop-Vermarktung

Open-Source-Software wird von einem Netzwerk von Entwicklern aus der ganzen Welt erstellt und gepflegt. Sie kann kostenlos heruntergeladen, verwendet und mitgestaltet werden, obwohl immer mehr kommerzielle Versionen von Hadoop verfügbar sind (diese werden oft als „Distros“ bezeichnet). Bei kommerziellen Versionen von Softwareanbietern zahlen Sie für deren Version des Hadoop-Frameworks und erhalten zusätzliche Funktionen in Bezug auf Sicherheit, Governance, SQL und Management-/Verwaltungskonsolen sowie Schulungen, Dokumentation und andere Dienstleistungen. Beliebte Versionen sind Cloudera, Hortonworks, MapR, IBM BigInsights und PivotalHD.

 


Datenübertragung zu Hadoop

Hier sind nur einige Möglichkeiten, wie Sie Ihre Daten in Hadoop einspeisen können.

  • Verwenden Sie Konnektoren von Drittanbietern (wie SAS/ACCESS® oder SAS Data Loader für Hadoop).
  • Verwenden Sie Sqoop, um strukturierte Daten aus einer relationalen Datenbank in HDFS, Hive und HBase zu importieren. Es kann auch Daten aus Hadoop extrahieren und in relationale Datenbanken und Data Warehouses exportieren.
  • Verwenden Sie Flume, um kontinuierlich Daten aus Protokollen in Hadoop zu laden.
  • Laden Sie Dateien mit einfachen Java-Befehlen in das System.
  • Erstellen Sie einen CronJob, um ein Verzeichnis nach neuen Dateien zu durchsuchen und sie in HDFS zu speichern, sobald sie auftauchen. Dies ist z. B. nützlich, um E-Mails in regelmäßigen Abständen herunterzuladen.
  • HDFS als Dateisystem einbinden und Dateien dorthin kopieren oder schreiben.

Big Data, Hadoop und SAS

Die SAS-Unterstützung für Big-Data-Implementierungen, einschließlich Hadoop, konzentriert sich auf ein einziges Ziel: Ihnen dabei zu helfen, mehr Informationen schneller zu erhalten, damit Sie gezielter Entscheidungen treffen können. Unabhängig davon, wie Sie die Technologie einsetzen, sollte jedes Projekt einen kontinuierlichen, wiederholenden Verbesserungszyklus durchlaufen. Dazu gehören Datenaufbereitung und -verwaltung, Datenvisualisierung und -exploration, Entwicklung von Analysemodellen, Modellbereitstellung und Monitoring. So können Sie wertvolle Erkenntnisse gewinnen und Ihre großen Hadoop-Daten schnell in bessere Chancen umwandeln.

Da SAS sich auf Analysen und nicht auf Storage konzentriert, bieten wir einen flexiblen Ansatz bei der Auswahl von Hardware- und Datenbankanbietern. Wir können Ihnen dabei helfen, die richtige Mischung aus Technologien einzusetzen, einschließlich Hadoop und anderen Data-Warehouse-Technologien.

Und denken Sie daran, dass der Erfolg eines jeden Projekts durch den Wert bestimmt wird, den es bringt. Kennzahlen, die sich an der Umsatzgenerierung, den Gewinnspannen, der Risikoverringerung und den Prozessverbesserungen orientieren, werden dazu beitragen, dass Pilotprojekte eine breitere Akzeptanz finden und das Interesse anderer Abteilungen wecken. Wir haben festgestellt, dass viele Unternehmen prüfen, wie sie ein oder zwei Projekte in Hadoop implementieren können, mit Plänen, in Zukunft weitere hinzuzufügen.

Mehr über SAS und Hadoop