Einführung in die Big Data-Architektur

Wenn es darum geht, große Datenmengen zu verwalten und komplexe Vorgänge mit großen Datenmengen durchzuführen, müssen Tools und Techniken für große Datenmengen verwendet werden. Wenn wir sagen, dass wir Big-Data-Tools und -Techniken verwenden, meinen wir effektiv, dass wir verschiedene Software und Verfahren verwenden möchten, die im Big-Data-Ökosystem und seiner Sphäre liegen. Es gibt keine generische Lösung, die für jeden Anwendungsfall bereitgestellt wird, und daher muss sie auf effektive Weise gemäß den Geschäftsanforderungen eines bestimmten Unternehmens erstellt und hergestellt werden. Es besteht daher ein Bedarf, unterschiedliche Big-Data-Architekturen zu verwenden, da die Kombination verschiedener Technologien dazu führt, dass der resultierende Anwendungsfall erreicht wird. Durch die Einrichtung einer festen Architektur kann sichergestellt werden, dass für den angeforderten Anwendungsfall eine praktikable Lösung bereitgestellt wird.

Was ist Big Data-Architektur?

  • Diese Architektur ist so konzipiert, dass sie den Einspeicherungsprozess, die Verarbeitung von Daten und die Analyse der Daten abwickelt, die viel zu groß oder zu komplex sind, um mit den herkömmlichen Datenbankverwaltungssystemen fertig zu werden.
  • Unterschiedliche Organisationen haben unterschiedliche Schwellenwerte für ihre Organisationen, einige haben diese für einige hundert Gigabyte, während für andere sogar einige Terabyte als Schwellenwert nicht gut genug sind.
  • Aufgrund dieses Ereignisses haben sich bei Betrachtung der Warensysteme und des Warenlagers die Werte und die Lagerkosten erheblich verringert. Es gibt eine Vielzahl von Daten, die unterschiedliche Arten der Verpflegung erfordern.
  • Einige von ihnen sind stapelbezogene Daten, die zu einem bestimmten Zeitpunkt eingehen, und daher müssen die Jobs auf ähnliche Weise geplant werden, während andere zur Streaming-Klasse gehören, in der eine Echtzeit-Streaming-Pipeline erstellt werden muss, um alle Anforderungen zu erfüllen Anforderungen. All diese Herausforderungen werden durch die Big-Data-Architektur gelöst.

Erklärung der Big Data-Architektur:

Big-Data-Systeme umfassen mehr als einen Workload-Typ und werden grob wie folgt klassifiziert:

  1. Wo die großen datenbasierten Quellen in Ruhe sind, ist die Stapelverarbeitung beteiligt.
  2. Big Data-Verarbeitung in Bewegung für Echtzeitverarbeitung.
  3. Erkundung interaktiver Big-Data-Tools und -Technologien.
  4. Maschinelles Lernen und vorausschauende Analyse.

1. Datenquellen

Bei den Datenquellen handelt es sich um alle goldenen Quellen, aus denen die Datenextraktionspipeline erstellt wurde, und daher kann davon ausgegangen werden, dass dies der Ausgangspunkt der Big-Data-Pipeline ist.

Die Beispiele umfassen:
(i) Datenspeicher von Anwendungen wie relationalen Datenbanken

(ii) Die Dateien, die von einer Reihe von Anwendungen erstellt werden und größtenteils Teil statischer Dateisysteme sind, z. B. webbasierte Serverdateien, die Protokolle erstellen.

(iii) IoT-Geräte und andere auf Echtzeit basierende Datenquellen.

2. Datenspeicherung

Dies schließt die Daten ein, die für die Batch-Build-Vorgänge verwaltet und in den Dateispeichern gespeichert werden, die in der Natur verteilt sind und auch große Volumina von Big Files mit unterschiedlichen Formaten speichern können. Es wird der Datensee genannt. Dies ist im Allgemeinen der Teil, in dem unsere Hadoop-Speicher wie HDFS-, Microsoft Azure-, AWS- und GCP-Speicher zusammen mit Blob-Containern bereitgestellt werden.

3. Stapelverarbeitung

Alle Daten werden in verschiedene Kategorien oder Blöcke unterteilt, wobei lang laufende Jobs verwendet werden, um Daten zu filtern und zu aggregieren sowie den verarbeiteten Status für die Analyse vorzubereiten. Diese Jobs verwenden normalerweise Quellen, verarbeiten diese und stellen die Ausgabe der verarbeiteten Dateien für die neuen Dateien bereit. Die Stapelverarbeitung wird auf verschiedene Arten ausgeführt, indem Hive-Jobs oder U-SQL-basierte Jobs verwendet werden oder indem Sqoop oder Pig zusammen mit den benutzerdefinierten Map-Reducer-Jobs verwendet werden, die im Allgemeinen in Java, Scala oder anderen geschrieben sind Sprache wie Python.

4. Echtzeitbasierte Nachrichtenaufnahme

Dies schließt im Gegensatz zur Stapelverarbeitung alle Echtzeit-Streaming-Systeme ein, die darauf abzielen, dass die Daten nacheinander und in einem festen Muster generiert werden. Dies ist oft ein einfacher Datamart oder Speicher, der für alle eingehenden Nachrichten verantwortlich ist, die in dem Ordner abgelegt werden, der unbedingt für die Datenverarbeitung verwendet wird. Es gibt jedoch die meisten Lösungen, für die ein nachrichtenbasierter Aufnahmespeicher erforderlich ist, der als Nachrichtenpuffer fungiert und auch die skalierungsbasierte Verarbeitung unterstützt und eine vergleichsweise zuverlässige Zustellung zusammen mit anderen Semantiken für Messaging-Warteschlangen bietet. Die Optionen umfassen solche wie Apache Kafka, Apache Flume, Event-Hubs von Azure usw.

5. Stream-Verarbeitung

Es gibt einen kleinen Unterschied zwischen der Echtzeit-Nachrichtenaufnahme und der Stream-Verarbeitung. Ersteres berücksichtigt die aufgenommenen Daten, die zuerst gesammelt und dann als Publish-Subscribe-Tool verwendet werden. Die Stream-Verarbeitung wird dagegen verwendet, um alle Streaming-Daten zu verarbeiten, die in Fenstern oder Streams auftreten, und schreibt die Daten dann in die Ausgabesenke. Dazu gehören Apache Spark, Apache Flink, Storm usw.

6. Analytics-basierter Datenspeicher

Dies ist der Datenspeicher, der für Analysezwecke verwendet wird. Daher werden die bereits verarbeiteten Daten mithilfe von Analysetools abgefragt und analysiert, die den BI-Lösungen entsprechen können. Die Daten können auch mit Hilfe einer NoSQL-Data-Warehouse-Technologie wie HBase oder einer beliebigen interaktiven Verwendung einer Hive-Datenbank dargestellt werden, die die Metadatenabstraktion im Datenspeicher bereitstellen kann. Zu den Tools gehören Hive, Spark SQL, Hbase usw.

7. Berichterstattung und Analyse

Die Erkenntnisse müssen über die verarbeiteten Daten generiert werden. Dies erfolgt effektiv über die Berichts- und Analysetools, die mithilfe ihrer eingebetteten Technologie und Lösung nützliche Diagramme, Analysen und Erkenntnisse erstellen, die für die Unternehmen hilfreich sind. Zu den Tools gehören Cognos, Hyperion usw.

8. Orchestrierung

Big Data-basierte Lösungen bestehen aus sich wiederholenden datenbezogenen Vorgängen, die auch in Workflows eingekapselt sind und die Quelldaten transformieren sowie Daten zwischen Quellen sowie Senken und Ladevorgängen verschieben und in Analyseeinheiten übertragen können. Beispiele hierfür sind Sqoop, Oozie, Data Factory usw.

Fazit

In diesem Beitrag lesen wir über die Big-Data-Architektur, die für die Implementierung dieser Technologien im Unternehmen oder in der Organisation erforderlich ist. Ich hoffe, Ihnen hat unser Artikel gefallen.

Empfohlene Artikel

Dies war ein Leitfaden für die Big Data-Architektur. Hier diskutieren wir, was Big Data ist. Außerdem haben wir die Architektur von Big Data zusammen mit dem Blockdiagramm erläutert. Sie können auch unsere anderen Artikelvorschläge durchgehen, um mehr zu erfahren -

  1. Big Data-Technologien
  2. Big Data Analytics
  3. Karriere in Big Data
  4. Big Data Interview Fragen
  5. Top 8 Geräte des IoT, die Sie kennen sollten
  6. Arten von Joins in Spark SQL (Beispiele)

Kategorie: