Big Data in AWS - Intelligente Lösung für Big Data



Dieser Artikel hilft Ihnen zu verstehen, wie AWS intelligent mit Big Data umgeht. Es zeigt auch, wie AWS Big Data-Herausforderungen mühelos lösen kann.

Die Idee von Big Data ist einfach nicht neu, sie ist überall. Die Auswirkungen von Big Data sind überall zu spüren, von der Wirtschaft bis zur Wissenschaft, von der Regierung bis zur Kunst und so weiter. Es gibt keinen besseren Begleiter als Big Data zu verarbeiten und zu analysieren. In diesem Artikel werde ich zeigen, wie AWS die Herausforderungen von Big Data angeht, und die Hinweise, die ich behandeln werde, lauten wie folgt:

Was ist Big Data?

Big-Data-Eigenschaften





Sie können Big Data als hochvolumige, schnelle und / oder vielfältige Informationsressourcen betrachten, die kostengünstige, innovative Formen der Informationsverarbeitung erfordern, die verbesserte Einblicke, Entscheidungsfindung und Prozessautomatisierung ermöglichen.

Big Data besteht aus 5 wichtigen Vs, die die Eigenschaften von Big Data definieren. Lassen Sie uns diese diskutieren, bevor wir zu AWS wechseln.



Was ist AWS?

umfasst viele verschiedene Cloud-Computing-Produkte und -Dienstleistungen. Die hochprofitable Amazon-Abteilung bietet Server, Speicher, Netzwerk, Remote-Computing, E-Mail, mobile Entwicklung sowie Sicherheit. Außerdem. AWS besteht aus zwei Hauptprodukten: EC2, dem Virtual Machine Service von Amazon, und S3, einem Speichersystem von Amazon. Es ist so groß und in der Computerwelt präsent, dass es jetzt mindestens zehnmal so groß ist wie der nächste Konkurrent und beliebte Websites wie Netflix und Instagram hostet.

.

AWS ist in 12 globale Regionen weltweit unterteilt, von denen jede über mehrere Verfügbarkeitszonen verfügt, in denen sich die Server befinden.Diese bedienten Regionen sind aufgeteilt, um es den Benutzern zu ermöglichen, geografische Grenzen für ihre Dienste festzulegen, aber auch um Sicherheit zu bieten, indem die physischen Standorte, an denen Daten gespeichert sind, diversifiziert werden.



Warum Big Data in AWS?

Wissenschaftler, Entwickler und andere Technologie-Enthusiasten aus vielen verschiedenen Bereichen nutzen AWS, um Big-Data-Analysen durchzuführen und die kritischen Herausforderungen der zunehmenden Vs digitaler Informationen zu bewältigen. AWS bietet Ihnen ein Portfolio von Cloud-Computing-Diensten, mit denen Sie Big Data verwalten können, indem Sie die Kosten erheblich senken, die Nachfrage skalieren und die Innovationsgeschwindigkeit erhöhen.

Amazon Web Services bietet eine voll integriertes Portfolio von Cloud-Computing-Diensten. Darüber hinaus können Sie Ihre Big-Data-Anwendungen erstellen, sichern und bereitstellen. Mit AWS benötigen Sie außerdem keine Hardware für die Beschaffung und keine Infrastruktur für die Wartung und Skalierung. Aus diesem Grund können Sie Ihre Ressourcen darauf konzentrieren, neue Erkenntnisse zu gewinnen.Da ständig neue Funktionen hinzugefügt werden, können Sie immer die neuesten Technologien nutzen, ohne langfristige Investitionsverpflichtungen eingehen zu müssen.

Wie kann AWS Big Data-Herausforderungen lösen?

AWS-Lösungen für Big Data

AWS bietet zahlreiche Lösungen für alle Entwicklungs- und Bereitstellungszwecke. Auch im Bereich Data Science und Big Data hat AWS jüngste Entwicklungen in verschiedenen Aspekten des Big Data-Umgangs vorgestellt. Bevor wir zu Tools wechseln, sollten wir verschiedene Aspekte von Big Data verstehen, für die AWS Lösungen bereitstellen kann.

Summe der Ziffern in Java
  1. Datenaufnahme
    Das Sammeln der Rohdaten - Transaktionen, Protokolle, mobile Geräte und mehr - ist die erste Herausforderung, vor der viele Unternehmen beim Umgang mit Big Data stehen. Eine gute Big-Data-Plattform erleichtert diesen Schritt und ermöglicht es Entwicklern, eine Vielzahl von Daten - von strukturiert bis unstrukturiert - mit jeder Geschwindigkeit - von Echtzeit bis Batch - aufzunehmen.

  2. Speicherung von Daten
    Jede Big-Data-Plattform benötigt ein sicheres, skalierbares und dauerhaftes Repository, um Daten vor oder sogar nach der Verarbeitung von Aufgaben zu speichern. Abhängig von Ihren spezifischen Anforderungen benötigen Sie möglicherweise auch temporäre Speicher für die Datenübertragung.

  3. Datenverarbeitung
    Dies ist der Schritt, bei dem die Datentransformation von ihrem Rohzustand in ein Verbrauchsmaterialformat erfolgt - normalerweise durch Sortieren, Aggregieren, Zusammenfügen und sogar Ausführen erweiterter Funktionen und Algorithmen. Die resultierenden Datensätze werden zur weiteren Verarbeitung gespeichert oder über Business Intelligence- und Datenvisualisierungstools zum Verbrauch bereitgestellt.

  4. Visualisierung

    Bei Big Data geht es darum, wertvolle, umsetzbare Erkenntnisse aus Ihren Datenbeständen zu gewinnen. Im Idealfall stehen den Stakeholdern Daten über Self-Service-Business-Intelligence- und agile Datenvisualisierungstools zur Verfügung, mit denen Datensätze schnell und einfach durchsucht werden können.

AWS-Tools für Big Data

In den vorherigen Abschnitten haben wir uns die Felder in Big Data angesehen, in denen AWS Lösungen anbieten kann. Darüber hinaus verfügt AWS über mehrere Tools und Services in seinem Arsenal, um Kunden die Funktionen von Big Data zu ermöglichen.

Schauen wir uns die verschiedenen von AWS bereitgestellten Lösungen für den Umgang mit verschiedenen Phasen des Umgangs mit Big Data an

Verschlucken

  1. Kinesis

    Amazon Kinesis Firehose ist ein vollständig verwalteter Dienst zur direkten Bereitstellung von Streaming-Daten in Echtzeit an Amazon S3. Kinesis Firehose lässt sich automatisch an das Volumen und den Durchsatz von Streaming-Daten anpassen und erfordert keine fortlaufende Verwaltung. Sie können Kinesis Firehose so konfigurieren, dass Streaming-Daten transformiert werden, bevor Sie sie in Amazon S3 speichern.

  2. Schneeball
    Sie können verwenden AWS Schneeball um Massendaten sicher und effizient von lokalen Speicherplattformen und Hadoop-Clustern in S3-Buckets zu migrieren. Nachdem Sie einen Job in der AWS Management Console erstellt haben, erhalten Sie automatisch eine Snowball-Appliance. Nachdem ein Schneeball eingetroffen ist, verbinden Sie ihn mit Ihrem lokalen Netzwerk, installieren Sie den Schneeball-Client in Ihrer lokalen Datenquelle und verwenden Sie dann den Schneeball-Client, um die Dateiverzeichnisse auszuwählen und auf das Schneeball-Gerät zu übertragen.

Lager

  1. Amazon S3

Amazon S3 ist ein sicherer, hoch skalierbarer und dauerhafter Objektspeicher mit einer Latenz von Millisekunden für den Datenzugriff. S3 kann jede Art von Daten von überall speichern - Websites und mobile Apps, Unternehmensanwendungen und Daten von IoT-Sensoren oder -Geräten. Es kann auch jede Datenmenge mit unübertroffener Verfügbarkeit speichern und abrufen und von Grund auf neu aufgebaut werden, um eine Haltbarkeit von 99,999999999% (11 Neunen) zu gewährleisten.

2. AWS-Kleber

Glue ist ein vollständig verwalteter Dienst, der einen Datenkatalog bereitstellt, um Daten im Datensee erkennbar zu machen. Darüber hinaus können ETLs extrahiert, transformiert und geladen werden, um Daten für die Analyse vorzubereiten. Außerdem ist der integrierte Datenkatalog wie ein dauerhafter Metadatenspeicher für alle Datenbestände, sodass alle Daten in einer einzigen Ansicht durchsucht und abgefragt werden können.

wird bearbeitet

  1. EMR
    Für die Big-Data-Verarbeitung mit Spark und Hadoop Amazon EMR bietet einen verwalteten Dienst, mit dem große Datenmengen einfach, schnell und kostengünstig verarbeitet werden können. Darüber hinaus unterstützt EMR 19 verschiedene Open-Source-Projekte, darunter Hadoop , Funke , und Außerdem werden verwaltete EMR-Notebooks für Data Engineering, Data Science-Entwicklung und Zusammenarbeit mitgeliefert.

  2. Rotverschiebung
    Für Data Warehousing Amazonas Redshift bietet die Möglichkeit, komplexe analytische Abfragen für Petabyte strukturierter Daten auszuführen. Auch beinhaltet es Rotverschiebungsspektrum Dadurch werden SQL-Abfragen direkt für Exabyte strukturierter oder unstrukturierter Daten in S3 ausgeführt, ohne dass unnötige Datenverschiebungen erforderlich sind.

Visualisierungen

  1. Amazon QuickSight

    Für Dashboards und Visualisierungen bietet Amazon Quicksight einen schnellen, Cloud-basierten Business Analytics-Service. Es macht es einfach, beeindruckende Visualisierungen und umfangreiche Dashboards zu erstellen. Darüber hinaus können Sie von jedem Browser oder Mobilgerät aus darauf zugreifen.

Demo - Analyse von Daten gefährdeter Pflanzen- und Tierarten in Australien.

In dieser Demo werden Beispieldaten von gefährdeten Pflanzen- und Tierarten aus den Bundesstaaten und Territorien Australiens verwendet. Hier erstellen wir einen EMR-Cluster und konfigurieren ihn für die Ausführung von mehrstufigen Apache Hive-Jobs. Auf dem EMR-Cluster wird Apache Hive installiert. Dieser Cluster verwendet EMRFS als Dateisystem, sodass seine Dateneingabe- und -ausgabepositionen einem S3-Bucket zugeordnet werden. Der Cluster verwendet denselben S3-Bucket auch zum Speichern von Protokolldateien.

Wir werden nun eine Reihe von EMR-Schritten im Cluster erstellen, um einen Beispieldatensatz zu verarbeiten. Hier führt jeder dieser Schritte ein Hive-Skript aus und die endgültige Ausgabe wird im S3-Bucket gespeichert. Diese Schritte generieren MapReduce-Protokolle. Dies liegt daran, dass Hive-Befehle zur Laufzeit in MapReduce-Jobs übersetzt werden. Die Protokolldateien für jeden Schritt werden aus den von ihm erzeugten Containern aggregiert.

Beispieldaten

Der Beispieldatensatz für diesen Anwendungsfall ist öffentlich verfügbar bei Open-Data-Website der australischen Regierung . In diesem Datensatz geht es um bedrohte Tier- und Pflanzenarten aus verschiedenen Bundesstaaten und Territorien in Australien. Eine Beschreibung der Felder dieses Datensatzes und der CSV-Datei kann angezeigt und heruntergeladen werden Hier .

Verarbeitungsschritte

Der erste EMR-Jobschritt besteht darin, eine Hive-Tabelle als Schema für die zugrunde liegende Quelldatei in S3 zu erstellen. Im zweiten Jobschritt führen wir nun eine erfolgreiche Abfrage für die Daten durch. In ähnlicher Weise werden wir dann eine dritte und vierte Abfrage ausführen.

Wir werden diese vier Schritte einige Male in einer Stunde wiederholen und aufeinanderfolgende Läufe eines mehrstufigen Stapeljobs simulieren. In einem realen Szenario kann der Zeitunterschied zwischen den einzelnen Chargenläufen jedoch normalerweise viel höher sein. Die kleine zeitliche Lücke zwischen aufeinanderfolgenden Läufen soll unsere Tests beschleunigen.

S3 Bucket und Ordner

Vor dem Erstellen unseres EMR-Clusters mussten wir hier einen S3-Bucket erstellen, um seine Dateien zu hosten. In unserem Beispiel nennen wir diesen Bucket 'arvind1-Bucket'. Die Ordner unter diesem Bucket werden unten in der AWS Console für S3 angezeigt:

c ++ Was ist ein Namespace?

  • Der Eingabeordner enthält die Beispieldaten

  • Der Skriptordner enthält die Hive-Skriptdateien für EMR-Jobschritte

  • Der Ausgabeordner enthält offensichtlich die Ausgabe des Hive-Programms

  • Der EMR-Cluster verwendet den Protokollordner, um seine Protokolldateien zu speichern.

Hive-Skripte für EMR-Jobschritte

1. In diesem Jobschritt wird ein Hive-Skript ausgeführtum eine externe Hive-Tabelle zu erstellen. Diese Tabelle beschreibt das tabellarische Schema der zugrunde liegenden CSV-Datendatei. Das Skript dafür lautet wie folgt:

EXTERNE TABELLE ERSTELLEN `bedrohte_Spezies` (` wissenschaftlicher Name` String, `allgemeiner Name` String,` aktueller wissenschaftlicher Name` String, `bedrohter Status` String,` act` String, `nsw` String,` nt` String, `qld` string, `sa` string,` tas` string, `vic` string,` wa` string, `aci` string,` cki` string, `ci` string,` csi` string, `jbt` string,` nfi` Zeichenfolge, `hmi` Zeichenfolge,` aat` Zeichenfolge, `cma` Zeichenfolge,` aufgelistete Sprotten Taxonid` Bigint, `aktuelle Sprat Taxonid` Bigint,` Königreich` Zeichenfolge, `Klasse` Zeichenfolge,` Profil` Zeichenfolge, `Datum extrahiert` string, `nsl name` string,` family` string, `genus` string,` species` string, `infraspecific rank` string,` infraspecies` string, `species author` string,` infraspecies author` string) ROW FORMAT DELIMITED FIELDS BEENDET VON ',' GESPEICHERT ALS INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' LOCATION 's3: // arvind-/

2. In diesem Jobschritt wird eine Abfrage ausgeführt, um die fünf am stärksten gefährdeten Arten im Bundesstaat New South Wales (NSW) zu berechnen. Der Name der Hive-Abfragedatei lautet gefährdet.SpeziesNSW.q und es wird unten gezeigt:

SELECT species, COUNT (nsw) AS number_of_endangered_species FROM bedrohte_species WHERE (nsw = 'Ja' ODER nsw = 'Gefährdet') UND 'bedrohter Status' = 'Gefährdete' GRUPPE NACH ARTEN MIT COUNT (nsw)> 1 ORDER BY number_of_endangered_species DESC LIMIT 5

3.In diesem Jobschritt wird eine Abfrage ausgeführt, um die Gesamtzahl der gefährdeten Pflanzenarten für jede Pflanzenfamilie in Australien zu berechnen. Der Name der Hive-Abfragedatei lautetendangeredPlantSpecies.qund ist unten gezeigt

SELECT Familie, COUNT (Art) AS Anzahl_der_ gefährdeten_Spezies FROM bedrohte_Spezies2 WHERE Königreich = 'Plantae' UND 'bedrohter Status' = 'Gefährdete' GRUPPE NACH Familie

4. In diesem Schritt werden die wissenschaftlichen Namen ausgestorbener Tierarten im australischen Bundesstaat Queensland aufgelistet. Die Skriptdatei wird aufgerufen extinctAnimalsQLD.q und wird unten gezeigt:

WÄHLEN Sie 'gebräuchlicher Name', 'wissenschaftlicher Name' AUS bedrohten Arten, WO Königreich = 'Animalia' UND (qld = 'Ja' ODER qld = 'Ausgestorben') UND 'Bedrohter Status' = 'Ausgestorben'

Protokollaggregation

Hier haben wir auch eine JSON-Datei namens logAggregation.json in den Skriptordner des S3-Buckets hochgeladen. Wir verwenden diese Datei zum Aggregieren der YARN-Protokolldateien. Die Protokollaggregation wird beim Start des Clusters in der Konfigurationsdatei yarn-site.xml konfiguriert. Der Inhalt der Datei logAggregation.json lautet wie folgt:

[{'Klassifizierung': 'Garnstelle', 'Eigenschaften': {'yarn.log-aggregation-enable': 'true', 'yarn.log-aggregation.retain-Sekunden': '-1', 'Garn' .nodemanager.remote-app-log-dir ”:“ s3: // arvind1-Bucket / Logs ”}}]

Nachdem Sie den S3-Bucket erstellt und die Daten- und Skriptdateien in die entsprechenden Ordner kopiert haben, ist es jetzt an der Zeit, einen EMR-Cluster einzurichten. Die folgenden Snapshots beschreiben den Prozess beim Erstellen des Clusters mit den meisten Standardeinstellungen.

EMR-Cluster-Setup

Im ersten Bild haben wir zur Konfiguration des Clusters in der AWS-Konsole alle von EMR empfohlenen Anwendungen beibehalten, einschließlich Hive. Wir müssen weder AWS Glue zum Speichern von Hive-Metadaten verwenden, noch fügen wir derzeit einen Jobschritt hinzu. Wir müssen jedoch eine Softwareeinstellung für Hive hinzufügen. Hier müssen Sie sorgfältig beobachten, wie wir in diesem Feld den Pfad zur JSON-Datei für die Protokollaggregation angeben.

Im nächsten Schritt haben wir alle Standardeinstellungen beibehalten. Für unseren Test wird der Cluster einen Masterknoten und zwei Kernknoten haben. Jeder Knoten hier ist eine m3.xlarge-Instanz und hat 10 GB Root-Volume. Wir benennen den Cluster arvind1-cluster im nächsten Schritt und geben den benutzerdefinierten s3-Speicherort für seine Protokolldateien an.

Schließlich haben wir ein EC2-Schlüsselpaar angegeben, um auf den Masterknoten des Clusters zugreifen zu können. Die Standard-IAM-Rollen für EMR, EC2-Instanzprofil und Optionen für die automatische Skalierung wurden nicht geändert. Außerdem verwenden der Master- und der Kernknoten standardmäßig verfügbare Sicherheitsgruppen. Normalerweise ist dies eine Standardeinstellung für einen EMR-Cluster. Sobald alles fertig ist, befindet sich der Cluster wie unten gezeigt in einem Wartestatus:

Senden Sie Hive Job Steps

Danach müssen wir den SSH-Zugriff zulassen.

  1. Öffnen Sie die Amazon EMR-Konsole unter https://console.aws.amazon.com/elasticmapreduce/ .
  2. Wählen Cluster .
  3. Wählen Sie das Name des Clusters.
  4. Unter Sicherheit und Zugang wählen Sie das Sicherheitsgruppen für Master Verknüpfung.
  5. Wählen ElasticMapReduce-Master von der Liste.
  6. Wählen Eingehende , Bearbeiten .
  7. Suchen Sie die Regel mit den folgenden Einstellungen und wählen Sie die x Symbol zum Löschen:
    • Art SSH
    • Hafen 22
    • Quelle Benutzerdefiniert 0.0.0.0/0
  8. Scrollen Sie zum Ende der Liste der Regeln und wählen Sie Regel hinzufügen .
  9. Zum Art , wählen SSH Dies wird automatisch eingegeben TCP zum Protokoll und 22 zum Port Range .
  10. Wählen Sie als Quelle aus Meine IP Dadurch wird automatisch die IP-Adresse Ihres Client-Computers als Quelladresse hinzugefügt. Alternativ können Sie eine Reihe von hinzufügen Benutzerdefiniert vertrauenswürdige Client-IP-Adressen und wählen Sie füge die Regel hinzu um zusätzliche Regeln für andere Clients zu erstellen. In vielen Netzwerkumgebungen weisen Sie IP-Adressen dynamisch zu, sodass Sie möglicherweise regelmäßig Sicherheitsgruppenregeln bearbeiten müssen, um die IP-Adresse vertrauenswürdiger Clients zu aktualisieren.
  11. Wählen sparen .
  12. Optional wählen Sie ElasticMapReduce-Slave aus der Liste und wiederholen Sie die obigen Schritte, um dem SSH-Client den Zugriff auf Kern- und Taskknoten von vertrauenswürdigen Clients zu ermöglichen.

Da der EMR-Cluster aktiv ist, haben wir vier Jobschritte hinzugefügt. Dies sind die Schritte, die EMR nacheinander ausführen würde. Das folgende Bild zeigt die Schritte von der AWS EMR-Konsole aus:

Sobald wir die vier Schritte hinzugefügt haben, können wir den Status dieser Schritte als abgeschlossen überprüfen. Selbst wenn bei der Ausführung dieser Schritte ein Problem auftritt, kann es in solchen Fällen mithilfe der Protokolldateien dieser Schritte behoben werden.

Übertragen Sie Dateien auf die ec2 Windows-Instanz

Das ist es also von meiner Seite in diesem Artikel über Big Data in AWS. Ich hoffe, Sie haben alles verstanden, was ich hier erklärt habe.

Wenn Sie diese Big Data in AWS als relevant empfunden haben, können Sie den Live- und von Lehrern geleiteten Kurs von Edureka lesen , von Industriepraktikern mitgeschaffen.

Hast du eine Frage an uns? Bitte erwähnen Sie es im Kommentarbereich dieser Anleitung zum Bereitstellen einer Java-Webanwendung in AWS. Wir werden uns dann bei Ihnen melden.