Zuhause Persönliche Finanzen Hadoop Integration mit R - Dummies

Hadoop Integration mit R - Dummies

Inhaltsverzeichnis:

Video: Understand R | Analytics using R in Hadoop | R for Data Science | Edureka 2024

Video: Understand R | Analytics using R in Hadoop | R for Data Science | Edureka 2024
Anonim

Anfangs waren Big Data und R keine natürlichen Freunde. Die R-Programmierung erfordert, dass alle Objekte in den Hauptspeicher einer einzelnen Maschine geladen werden. Die Einschränkungen dieser Architektur werden schnell erkannt, wenn große Daten ein Teil der Gleichung werden.

Im Gegensatz dazu fehlen verteilten Dateisystemen wie Hadoop starke statistische Verfahren, aber sie sind ideal für die Skalierung komplexer Operationen und Aufgaben. Vertikale Skalierungslösungen - die Investitionen in kostspielige Supercomputing-Hardware erfordern - können oft nicht mit der Kosten-Nutzen-Rendite konkurrieren, die von verteilten Hardware-Hardware-Clustern angeboten wird.

Um den In-Memory-, Single-Machine-Einschränkungen der R-Sprache zu entsprechen, mussten Data Scientists die Analyse oft nur auf eine Untermenge der verfügbaren Beispieldaten beschränken. Vor der tieferen Integration mit Hadoop boten Programmiersprachen mit R-Programmierern eine Scale-Out-Strategie zur Überwindung der In-Memory-Herausforderungen, die von großen Datensätzen auf einzelnen Maschinen ausgehen.

Dies wurde mithilfe von Message-Passing-Systemen und Paging erreicht. Diese Technik ist in der Lage, die Arbeit über Datensätze zu erleichtern, die zu groß sind, um gleichzeitig im Hauptspeicher gespeichert zu werden. Der Low-Level-Programmieransatz stellt jedoch eine steile Lernkurve für diejenigen dar, die mit Parallele Programmierparadigmen nicht vertraut sind.

Alternative Ansätze zielen darauf ab, die statistischen Fähigkeiten von R in verteilten Hadoop-Clustern auf zwei Arten zu integrieren: Schnittstellen mit SQL-Abfragesprachen und Integration mit Hadoop-Streaming. Ziel ist es, vorhandene SQL-Data-Warehousing-Plattformen wie Hive und Pig zu nutzen. Diese Schemas vereinfachen die Hadoop-Jobprogrammierung mithilfe von SQL-Anweisungen, um eine übergeordnete Programmierung für die Ausführung statistischer Jobs über Hadoop-Daten bereitzustellen.

Für Programmierer, die MapReduce-Jobs in anderen Sprachen (einschließlich R) als Java programmieren möchten, besteht eine zweite Möglichkeit darin, die Streaming-API von Hadoop zu verwenden. Von Benutzern übergebene MapReduce-Jobs werden mit Hilfe von UNIX-Standard-Streams und Serialisierung Datenumwandlungen unterzogen, wodurch eine Java-kompatible Eingabe in Hadoop garantiert wird - unabhängig von der ursprünglich vom Programmierer eingegebenen Sprache.

Entwickler untersuchen weiterhin verschiedene Strategien, um die verteilten Berechnungsfunktionen von MapReduce und die nahezu unbegrenzte Speicherkapazität von HDFS auf eine Weise zu nutzen, die von R ausgenutzt werden kann.

Die Integration von Hadoop mit R wird fortgesetzt. (Big R als Teil von BigInsights) und Revolution Analytics (Revolution R Enterprise). Überbrückungslösungen, die High-Level-Programmierung und Abfragen von Sprachen mit Hadoop integrieren, wie RHive und RHadoop, sind ebenfalls verfügbar.

Grundsätzlich zielt jedes System darauf ab, die tiefgreifenden analytischen Fähigkeiten der R-Sprache zu viel größeren Datensätzen zu liefern.

RHive

Das RHive-Framework dient als Brücke zwischen der R-Sprache und Hive. RHive liefert die umfangreichen statistischen Bibliotheken und Algorithmen von R an Daten, die in Hadoop gespeichert sind, indem Hives SQL-ähnliche Abfragesprache (HiveQL) mit R-spezifischen Funktionen erweitert wird. Mithilfe der RHive-Funktionen können Sie HiveQL verwenden, um statistische R-Modelle auf Daten in Ihrem Hadoop-Cluster anzuwenden, die Sie mit Hive katalogisiert haben.

RHadoop

Ein weiteres Open-Source-Framework, das für R-Programmierer verfügbar ist, ist RHadoop, eine Sammlung von Paketen, die dazu beitragen sollen, die Verteilung und Analyse von Daten mit Hadoop zu verwalten. Drei Packages von note - rmr2, rhdfs und rhbase - bieten die meisten Funktionen von RHadoop:

  • rmr2: Das rmr2-Paket unterstützt die Übersetzung der R-Sprache in Hadoop-kompatible MapReduce-Jobs (mit effizientem MapReduce-Code auf niedriger Ebene) von höherem R-Code).

  • rhdfs: Das rhdfs-Paket bietet eine R-Sprach-API für die Dateiverwaltung über HDFS-Speicher. Mit rhdfs können Benutzer aus HDFS-Speichern in einen R-Datenrahmen (Matrix) lesen und Daten aus diesen R-Matrizen in ähnlicher Weise wieder in den HDFS-Speicher schreiben.

  • rhbase: rhbase-Pakete stellen auch eine R-Sprachen-API bereit, aber ihr Lebensziel ist es, mit der Datenbankverwaltung für HBase-Speicher statt mit HDFS-Dateien umzugehen.

Revolution R

Revolution R (von Revolution Analytics) ist ein kommerzielles R-Angebot mit Unterstützung für die R-Integration in verteilten Hadoop-Systemen. Revolution R verspricht verbesserte Leistung, Funktionalität und Benutzerfreundlichkeit für R auf Hadoop. Um eine tiefgreifende Analyse ähnlich wie bei R zu ermöglichen, verwendet Revolution R die ScaleR-Bibliothek des Unternehmens - eine Sammlung von statistischen Analysealgorithmen, die speziell für Big-Data-Sammlungen im Unternehmen entwickelt wurden.

ScaleR zielt darauf ab, eine schnelle Ausführung von R-Programmcode auf Hadoop-Clustern zu ermöglichen, wodurch sich der R-Entwickler ausschließlich auf seine statistischen Algorithmen und nicht auf MapReduce konzentrieren kann. Darüber hinaus werden zahlreiche analytische Aufgaben wie Datenaufbereitung, Visualisierung und statistische Tests bearbeitet.

IBM BigInsights Big R

Big R bietet eine End-to-End-Integration zwischen R und IBMs Hadoop-Angebot BigInsights, wodurch R-Entwickler Hadoop-Daten analysieren können. Das Ziel besteht darin, die Programmier-Syntax und Codierungsparadigmen von R auszunutzen, während sichergestellt wird, dass die Daten bei Aufenthalten in HDFS verarbeitet werden. R-Datentypen dienen als Proxys für diese Datenspeicher, was bedeutet, dass R-Entwickler nicht über Low-Level-MapReduce-Konstrukte oder über Hadoop-spezifische Skriptsprachen (wie Pig) nachdenken müssen.

BigInsights Big R-Technologie unterstützt mehrere Datenquellen - einschließlich Flatfiles, HBase und Hive-Speicherformate - und bietet gleichzeitig parallele und partitionierte Ausführung von R-Code im gesamten Hadoop-Cluster. Es verdeckt viele Komplexitäten in den zugrunde liegenden HDFS- und MapReduce-Frameworks und ermöglicht Big R-Funktionen die Durchführung umfassender Datenanalysen - sowohl für strukturierte als auch für unstrukturierte Daten.

Schließlich ermöglicht es die Skalierbarkeit der Big R-Statistik-Engine R-Entwicklern, sowohl vordefinierte statistische Techniken zu nutzen als auch neue Algorithmen selbst zu erstellen.

Hadoop Integration mit R - Dummies

Die Wahl des Herausgebers

Optimierung sozialer Medien: Anpassung von Inhalten an Specialty Channels - Dummies

Optimierung sozialer Medien: Anpassung von Inhalten an Specialty Channels - Dummies

Eine der besten Möglichkeiten, um Zusätzliche Meilenzahl von Ihren Sozialmedieninhalt ist, sie umzupacken und sie auf verschiedenen Kanälen freizugeben. Wenn Sie einen Blogbeitrag haben und den Beitrag direkt über Social Sharing bewerben, können Sie diesen Blogpost in eine herunterladbare PDF-Datei umwandeln. Wenn die ...

Social-Media-Optimierung: SMART Marketing - Dummies

Social-Media-Optimierung: SMART Marketing - Dummies

Wenn Sie Ihre Social Media-Ziele definiert haben, haben Sie Ihr Ziel identifiziert Zielgruppe und fand heraus, wo sie auf Social-Media-Kanälen zu finden sind, nutzte die Daten aus Analyse-Programmen, um die optimale Zeit zu bestimmen, um in sozialen Medien aktiv zu sein, und eine umfassende Social-Media-Verhaltenspolitik setzen Sie sind bereit, zu bewegen ...

Social Media Optimierung: Was Sie über Semantic Markup wissen sollten - Dummies

Social Media Optimierung: Was Sie über Semantic Markup wissen sollten - Dummies

Wenn Sie möchten Um mit Ihrer Social-Media-Optimierungsstrategie wirklich erfolgreich zu sein, müssen Sie etwas über semantisches Markup wissen. Einfach gesagt ist semantisches Markup ein standardisierter Weg, um Code zu schreiben, der eine Webseite für dumme Maschinen wie Suchmaschinen leicht verständlich macht. Es ist eine Möglichkeit, den Inhalt einer Webseite mit Anmerkungen zu versehen ...

Die Wahl des Herausgebers

Online-Community-Manager sollten ihre Ausbildung ausweiten - Dummies

Online-Community-Manager sollten ihre Ausbildung ausweiten - Dummies

Haben Sie keine Angst, etwas Neues zu lernen. Dies kann bedeuten, dass Sie Artikel über Ihre Branche, die Marke und das Online-Community-Management lesen. Dies kann bedeuten, dass Sie nach Bildung suchen, die es Ihnen ermöglicht, Ihre Community besser zu betreiben. Es schadet nie, grundlegendes Web- oder Blog-Design zu kennen und auf dem neuesten Stand der Technik zu bleiben. Außerdem ...

Online-Community-Manager sollten mit Beispiel führen - Dummies

Online-Community-Manager sollten mit Beispiel führen - Dummies

Ihre Community orientiert sich an Ihnen. Wenn du schwörst und nistest, werden die Mitglieder wissen, dass dieses Verhalten in Ordnung ist. Wenn Sie aber jeden Morgen fröhlich grüßen, folgen sie Ihrem Beispiel. Sogar Leute, die von Drama und Negativität angezogen werden, werden sich entweder an der guten Miene beteiligen, oder sie werden so müde ...

Online Community-Manager Bleiben Sie auf dem neuesten Stand der Trends - dummies

Online Community-Manager Bleiben Sie auf dem neuesten Stand der Trends - dummies

Ob es sich um Ihre Online-Community handelt oder nicht müssen Sie sich der Marktentwicklung bewusst sein. Was kaufen Leute? Wie kommunizieren sie online? Geben sie mehr oder weniger Geld aus? Welche Lebensmittel, Gadgets oder Moden sind rein oder raus? Um auf dem neuesten Stand der Trends zu bleiben, sollten Sie wissen, was und was so ist.

Die Wahl des Herausgebers

Kennenlernen der Aufgabenleiste in Outlook 2007 - dummies

Kennenlernen der Aufgabenleiste in Outlook 2007 - dummies

Ausblick 2007 eine neue Funktion namens To-Do-Leiste, die alle Dinge, die Sie tun müssen, zusammenfasst und sie in einem Bereich auf der rechten Seite des Outlook-Bildschirms anzeigt. Das Ziel der To-Do-Leiste ist es, Ihnen mitzuteilen, was Sie auf einen Blick tun müssen, anstatt ...

ÄNdern der Größe einer Notiz in Outlook 2013 - Hinweise für Dummies

ÄNdern der Größe einer Notiz in Outlook 2013 - Hinweise für Dummies

In Outlook 2013 befolgen alle Regeln dass andere Windows-Boxen folgen, also wenn Sie ein alter Hase beim Verschieben und Ändern der Größe von Boxen in Windows sind, werden Sie in Ordnung sein. Wenn Sie mit Windows und Dialogfeldern noch nicht vertraut sind, machen Sie sich keine Sorgen - Notizen lassen sich genauso einfach in der Größe ändern wie zum Schreiben und Lesen. Ändern ...

Kennenlernen von Ansichten in Outlook 2007 - Dummys

Kennenlernen von Ansichten in Outlook 2007 - Dummys

In Outlook 2007 verfügt jedes Outlook-Modul über eine eigene Auswahl von Ansichten. Jede Art von Ansicht ist so organisiert, dass ein bestimmtes Merkmal Ihrer Informationen auf den ersten Blick sichtbar wird. Sie können die Art ändern, wie Sie eine Ansicht anzeigen, indem Sie sie sortieren, filtern oder gruppieren. Sie können mit Ansichten nicht falsch gehen, weil Sie ...