Connect(); 2016

Band 31, Nummer 12

Dieser Artikel wurde maschinell übersetzt.

Intelligente Apps: Entwicklung für Big Data leicht gemacht

Durch Omid Afnan; 2016

Es ist heute eine große Begeisterung über das Konzept der Big Data in Business Diskussionen. Organisationen, die bis hin zur Energieversorgungsunternehmen, medizinische Forschung Firmen und gemeinnützige Organisationen die Verwendung umfangreicher Daten zum Ermitteln von Mustern, dort werden Beziehungen ableiten und Vorhersageergebnisse. Online-Dienste und die Unternehmen, wurden die frühen Entwicklung Gründe für Big Data und bleiben die meisten eifrigen Anwendern. Szenarien, z. B. Produkt-Empfehlung, Betrug, Fehler bei der Vorhersage und stimmungsanalyse geworden stützen, der die Big Data-Revolution.

Große Datenmengen ist häufig definiert, dass die Merkmale des "drei V des" – umfangreiche, hoher Geschwindigkeit und Reihe. Während des massive Volume ist der allgemeine Zuordnung für große Datenmengen auf Daten, die in nahezu in Echtzeit ankommen ergreifen müssen und Umgang mit verschiedenen große und veränderliche im Format und Struktur gleichermaßen für Big Data definieren. In der Tat keines dieser Merkmale in den Daten vorhanden kann ausreichen, um ein Big Data-Szenario mit den anderen erstellen häufig kurz nach dem folgenden. Der Wunsch – und zunehmend die Notwendigkeit – Nutzen von Daten, die die drei V ist die Motivation für die wachsende Interesse an große Datenmengen.

Data Science und statistische Analyse maschinelles haben alle erneuerte Aufmerksamkeit und Wachstum hat, hat die Verwendung großer Datenmengen wirklich aufgehoben wurde, indem die zugrunde liegenden Fortschritte in der verteilten Datenverarbeitung. Dies schließt die Entwicklung von Softwarestapel, die Compute-Cluster kostengünstige Standardhardware zusammenfügen können. Zugeordnete Compilern und Auftragsplaner ermöglichen solcher Cluster eine COMPUTE Arbeitslast verteilt werden. Dadurch wird die Berechnungen nahe, in dem die Daten gespeichert, und sammelt viele Server, um höhere Leistung zu erzielen. Diese Plattformen großer Datenmengen von Unternehmen wie Microsoft, Yahoo und Google für die interne Verwendung entwickelt wurden, aber für die öffentliche Verwendung über Plattformen wie Azure Data Lake (ADL), Hadoop und Spark verfügbar geworden.

Es ist nicht überraschend, und erste Schritte mit Big Data bedeutet, dass eine Investition in eine Plattform basierend auf dieser neuen Technologien erstellen. Auf der Systemebene Unternehmen bedeutet dies die Einführung von "Data Lake" zusätzlich zur herkömmlichen Datawarehouse. Das Data Lake basiert auf dem Konzept eine Vielzahl von Datentypen in sehr großem Umfang und im ursprünglichen Format gespeichert. Im Gegensatz zu Datawarehouse-Modell werden zunächst Daten ohne erfasst bereinigen oder formatieren und mit einem Schema späte Bindung verwendet wird. Diese Art von Architektur erfordert die Einführung neuer Softwareplattformen, ADL, Hadoop oder Spark. Für den datenentwickler bedeutet dies nicht mehr der neue Programmierungsmodelle und Sprachen beim Umgang mit komplexen ausführen und Debuggen von Situationen.

Glücklicherweise haben Big Data-Systemen bereits große Fortschritte gemacht. Angenommen, erstellen ein Produkt empfehlungssystem mit Informationen auf der Website für Onlineshopping gesammelt werden, dass Sie ausgeführt werden soll. Ihr Plan ist zum Senden von E-mails an Kunden neue Produkte basierend auf vorherigen Warenkorb Muster höher stufen. Sie möchten möglicherweise auch Produkte zu empfehlen, während der Kunde auf der Website basierend auf, was andere Kunden haben Warenkorb ist. Beide Szenarien passt gut mit Big Data-Techniken. Bis vor kurzem Sie zunächst einen bestimmten Big Data-Stack auswählen, Entwerfen und Clusterhardware beschaffen, installieren und Optimieren der Software müssen, und Sie beginnen können, den Code für das Sammeln, aggregieren und Verarbeitung der Daten, die Sie entwickeln. Basierend auf Ihrer Investitionen, würden Sie wahrscheinlich in den bestimmten Hardware und Software-Stack gesperrte sich fühlen, die Sie ausgewählt haben.

Während der Stapel wie Hadoop und Spark sind einfacher zu installieren und zu verwalten, ist die Einführung von Big Data in Cloud-Diensten eine noch größere verändert. Als Cloud-Dienst versorgt ADL der Speicher und Berechnung erforderlich, um große Datenmengen Probleme zu lösen. Noch wichtiger ist, ist der seiner grundlegenden Prinzipien, Big Data Development einfach sein muss.

Big Data ruft einfacher

ADL ist eine cloudbasierte Umgebung mit einer Big Data Query-Dienst. Das bedeutet, dass Sie keine einrichten und Verwalten von Hardware. Wenn Sie bereit sind, führen Sie die Entwicklung von Big Data, erstellen Sie einfach ADL Konten in Azure, und der Dienst übernimmt beim Reservieren von Speicher, Berechnung und Netzwerkressourcen. In der Tat ADL geht weiter und abstrahiert die hardwareansicht fast vollständig. ADL Speicher (ADLS) funktioniert als elastischen Speichersystem, dehnen Dateien von beliebiger Größe und Anzahl angepasst. Zum Ausführen von Abfragen und Transformieren dieser Daten die ADL Analysen (ADLA) Ebene weist Server dynamisch Bedarf für die angegebenen Berechnungen. Besteht keine Notwendigkeit zum Erstellen oder verwalten eine Infrastruktur – einfach Erfassen von Daten in ADLS, und führen Sie verschiedene Abfragen mit ADLA. Aus der Perspektive eines Entwicklers erstellt ADL, sieht aus und verhält sich so viel wie bei einem Server mit unbegrenzte Speicher- und Leistungsfähigkeit. Das ist eine leistungsstarke Vereinfachung für das Einrichten der Umgebung und das Ausführungsmodell verstehen.

Die nächste Vereinfachung stammt aus der U-SQL-Sprache. U-SQL ist eine eindeutige Kombination aus SQL und c#. Eine deklarative SQL-Framework wird verwendet, um eine Abfrage oder ein Skript erstellen. In diesem Teil Blendet die Komplexität, die aus der Umgebung verteilten, parallele Ausführung hinter den Kulissen entsteht. Müssen Sie Entwickler, zum Generieren eines Ergebnisses sprechen. Geben Sie das gewünschte Ergebnis und dem System ermittelt, den Abfrageplan dafür. Dies ist identisch mit SQL auf einem RDBMS, aber anders als andere Big Data-Stacks geschieht, in denen Sie möglicherweise Zuordnung definieren und verringern Sie die Phasen, oder verwalten Sie die Erstellung verschiedener Typen von Worker-Knoten. Der Compiler, der Common Language Runtime und der Optimierer in ADL erstellt alle Schritte für die gewünschten Daten, sowie die möglichen Parallelisierung der ausgeführten Schritte über die Daten generieren.

Beachten Sie, dass eine Abfrage tatsächlich eine sehr komplexe Reihe von Datentransformationen und Aggregationen werden kann. In der Tat ist die Arbeit der Entwicklung von Big Data-Programmen mit U-SQL potenziell komplexen Skripts schreiben, die Daten neu strukturieren, Vorbereiten der Benutzerinteraktion in BI-Tools oder weitere Verarbeitung durch andere Systeme wie maschinelles Plattformen. Während viele Transformationen mit integrierten Konstrukten einer SQL-Sprache, die verschiedenen Datenformaten ausgeführt werden, und mögliche Transformationen erfordert die Fähigkeit des fügen Sie benutzerdefinierten Code hinzu. Hier kommt c# in U-SQL, da Sie Logik erstellen, die angepasst werden, jedoch kann immer noch skaliert werden in der zugrunde liegenden parallele Verarbeitung-Umgebung. U-SQL-Erweiterbarkeit wird ausführlich unter Michael Rys' online-Artikel "Erweiterbarkeit in U-SQL Big Data Applications" (msdn.com/magazine/mt790200), ist Teil dieses spezielle Problem.

Zusätzliche Unterstützung bei der Entwicklung zu tools, z. B. Visual Studio stellt eine andere wichtige Vereinfachung bereit: die Fähigkeit, vertrauten Tools und interaktionsmodelle verwenden, um die Big Data-Codebasis zu erstellen. Im weiteren Verlauf dieses Artikels werde ich die Funktionen für die U-SQL-Programmierung in Visual Studio und, zusammen mit den zuvor erwähnten Funktionen und eine bedeutende Veränderung in der Bedienung for Big Data insgesamt bieten.

Entwickeln von U-SQL

Um die Entwicklung von Big Data zu vereinfachen, beginnen Sie zu Programme einfach konstruiert werden. Die Tatsache, dass die U-SQL als Anfangspunkt zwei sehr vertraute Sprachen kombiniert macht es sehr leicht zu erlernen und entfernt eines der Haupthindernisse für die Übernahme von Big Data. Im Fall von Entwicklungstools wie Visual Studio trifft auch einfache Wiederverwendung vertraute Funktionen wie z. B. die integrierte Unterstützung für C#-Entwicklung und Debuggen. Der Azure Data Lake-Tools für Visual Studio-Plug-in (bit.ly/2dymk1N) enthält das erwartete Verhalten im Zusammenhang mit IntelliSense, Lösung zur Verwaltung, Beispiel Code und Quellcode-Verwaltungsanbieter.

Da ADL einen Cloud-Dienst ist, zeichnen Visual Studio-Tools für die Integration in Azure über den Server und Cloud-Explorers. Andere Funktionen müssen erweitert oder geändert werden: IntelliSense für U-SQL schließt die Kenntnis der Tabellen und Funktionen in der Cloud in ADLS, entsprechende Abschlüsse basierend darauf bereitstellen. Eine andere wichtige Satz von Funktionen finden Sie im Abbildung 1, dies ist eine Darstellung des Diagramms Ausführung Abfrage, die entsteht, wenn eine Abfrage für die Ausführung in der verteilten, parallele Cloud-Umgebung kompiliert wird.

U-SQL-Auftrag Diagramm angezeigt, die in Visual Studio
Abbildung 1 U-SQL-Auftrag Diagramm angezeigt, die in Visual Studio

Wenn Sie ein U-SQL-Skript entwickeln, starten Sie sie wie in anderen Sprachen verwenden. Sie erstellen ein neues Projekt, in dem Sie die U-SQL-Dateien hinzufügen können. Sie können das Einfügen von Codeausschnitten in Query-Dateien für Ihre ersten Schritte oder ein Beispielprojekt Beispielcode zugreifen. Sobald haben Sie etwas Code geschrieben, es ganz natürlich, kompilieren und Ausführen des Codes zum Suchen und beheben Sie alle Fehler, und Testen Ihre Logik. Dies wird dann der engen Schleife für Ihre Arbeit, bis der Code eine allgemeine Funktionsebene erreicht wird.

Diese Arbeit Schleife hat einige Komplikationen bei Big Data. Big Data-Code wird in Big Data-Clustern ausgeführt, damit die bisherigen Situation für Entwickler ihren Code in einem Cluster ausgeführt wird. Dies erfordert häufig die Einrichtung und Verwaltung eines Clusters Entwicklung. Es kann auch der vollständige Zyklus einreichen, ausführen und die Ergebnisse empfängt durchlaufen länger dauern. Die Schleife wird in diesem Fall zu langsam. In einigen Technologien ist eine "one-Box" Installation von einem Cluster verfügbar. Dies erfordert wahrscheinlich besondere Installationstools, aber es ist möglicherweise auf dem Entwicklungscomputer an, den Sie verwenden.

U-SQL vereinfacht diese Situation, indem ein Compiler und Laufzeit, die auf einem lokalen Computer ausgeführt werden kann. Der Ausführungsplan (z. B. Grad der Parallelität, Partitionierung und daher auf) für einen lokalen Computer und der Cloud-basierte Umgebung wahrscheinlich sehr unterschiedlich sind, wird das Flussdiagramm Berechnungen und identisch sein. Also auch die Leistung der lokalen Ausführung vergleichbar, die im Cloud-Dienst wird nicht, wird eine funktionale Debugleistung. Alle erforderlichen Tools zur lokalen Ausführung werden mit den Azure Data Lake-Tools für Visual Studio-Plug-In installiert und sind sofort verfügbar. Sie können auch als NuGet-Paket installiert und ausgeführt wird, über die Befehlszeile für die Automatisierung verwenden.

Die Umgebung für die lokale Ausführung sieht wie ein anderes ADLA-Konto. Sie können es im Server-Explorer unter dem Abschnitt Data Lake Analytics finden Sie unter dem Cloud-basierte Konten aufgeführt sind. In Dialogfeldern Übermittlung wird es als eine Option in der Liste der Zielkonten mit der Bezeichnung "(Local)" angezeigt Tsein lokales Konto kann alle untergeordneten Knoten mit reale Firmen haben. Dies bedeutet, dass Sie Metadatenobjekte, z. B. Datenbanken, Tabellen und Ansichten definieren können. Sie können auch C#-Bibliotheken hier registrieren, um die Ausführung der U-SQL-Skripts zu unterstützen, die benutzerdefinierten Code enthalten. Dies ist notwendig, die Parität mit der Cloud-Umgebung für vollständige Prüfbarkeit U-SQL-Code bieten.

Die U-SQL-Entwicklung Schleife sieht dann sehr ähnlich wie andere Sprachen. Sie können ein U-SQL-Projekt erstellen, und sobald genügend Code bereit ist, können Sie kompilieren, um Syntaxfehler zu suchen. Sie können auch lokal über das Debuggen (F5) und der Ausführung ohne Debuggen (STRG + F5)-Befehle in Visual Studio ausführen. Dies macht Laufzeitfehler, z. B. Probleme Analysieren der Daten während der Datei Ingestions (der EXTRACT-Befehl in U-SQL), ein sehr häufig Debug-Fall. Zu einem beliebigen Zeitpunkt können Sie wechseln zum Übermitteln des Codes in Ihrem ADLA Konto in Azure ausgeführt. Beachten Sie, dass dies die Gesamtzeit für die Abfrage anhand anfallen kann.

Verwalten von Daten

Angesichts der Tatsache, dass Datasets für große Datenmengen häufig zu groß, um auf einem Entwicklungscomputer verwenden, ist es erforderlich, zum Verwalten von Daten zum Testen und Debuggen. Eine gängige Methode für die Behandlung dieses Vorgangs ist auf die Daten von relativen Pfaden zu verweisen. Der U-SQL-Compiler interpretiert relative Pfade aus dem Stammverzeichnis der Standardspeicher für eine bestimmte Ausführung-Umgebung. Jedes Konto ADLA hat es sich um ein standardspeicherkonto zugeordnet (Sie können dies im Server-Explorer-Fenster finden Sie unter). Dateipfade sind für die Ausführung in der Cloud in diesem Stamm gefunden. Wenn lokal ausgeführt, Pfade werden durchsucht Stammverzeichnis der globalen Daten angezeigt werden, klicken Sie unter Tools | Optionen | Azure Data Lake.

Ist für die Entwicklung üblich, einen relativen Pfad zu einer Datei an, die sowohl lokal als auch in der Cloud vorhanden ist. Das Skript kann dann ohne Änderung sowohl lokal oder als übermittelten werden zu ADLA ausgeführt. Im Fall der Eingabedaten in Azure bereits vorhanden ist, können Sie einen Teil der Datei herunterladen. Die ADL Erfahrung in Visual Studio ermöglicht dies durch Navigieren zu der Datei aus dem Auftrag Diagramm oder Datei-Explorer (im Kontextmenü auf die Speicherkonten im Server-Explorer), und wählen die Option zum Herunterladen. Wenn die Daten noch nicht vorhanden ist, muss eine Testdatei erstellt werden. Mit den Daten vorhanden kann die lokale Entwicklung Schleife wie zuvor fortgesetzt werden.

Debuggen mit benutzerdefiniertem Code

Die Tatsache, dass die U-SQL können Sie die c# verwenden, um Kundencode zu definieren, führt zusätzliche Debugfunktionen. Kurz gesagt müssen C#-Erweiterungen in einer Datenbank in das ADLA-Konto registriert werden, in dem die zugehörige Abfrage ausgeführt wird. Wie bereits erwähnt, kann dies auch in das lokale Ausführen Szenario mit dem Konto "(Local)" erfolgen. Der allgemeine Fall ist, dass Sie ein separates C#-Klassenbibliotheksprojekt (es gibt ein Projekttyp für diesen Bereich ADL) erstellen und registrieren Sie ihn dann.

Es ist auch eine weitere einfache Methode zum Definieren von Benutzercode und von Visual Studio die Registrierung für Sie zu verwalten. Sie werden bemerken, dass jede Datei in einem Projekt U-SQL automatisch eine Codebehind-Datei zugeordnet ist. Dies ist eine C#-Datei, in dem Sie Code für einfache Erweiterungen hinzufügen können, die vorgesehen sind nicht mit anderen Projekten gemeinsam verwendet werden. Hinter den Kulissen wird Visual Studio verwalten, eine Bibliothek erstellen, registrieren und Aufheben der Registrierung für Sie während der Übermittlung der Abfrage für die Ausführung. Dies funktioniert in diesem Fall mit einem "(Local)"-Konto, sowie.

Unabhängig davon, wie der benutzerdefinierte Code erstellt wird können sie während der Ausführung in der lokalen Umgebung wie andere C#-Code gedebuggt werden. Haltepunkte können im C#-Code festgelegt werden, werden Stack-Traces überprüft, Variablen überwachten oder untersucht und so weiter. Diese Funktion startet der Befehl Debuggen starten (F5).

Debuggen von großem Maßstab

Bis jetzt habe ich die Funktionen beschrieben, mit denen Sie die U-SQL-Code in Projekten erstellen, Angeben von Datenquellen, kompilieren und lokal ausgeführt werden, und Durchlaufen von c#. Wenn Sie denken "Das klingt wie jede andere Sprache ich code in", nicht schlecht! Ich sagte schon, dass das Ziel ist eine grundsätzlich komplexe verteilte, parallele Ausführung Umgebung und sieht Sie für eine desktop-app programmieren. Ich habe auch gesprochen etwas über das Verwalten von Datenquellen und C#-Erweiterungen in Ihrem Code zwischen lokalen und cloud-Umgebungen. Nun wollen wir uns einen einzigartigen für das Debuggen von Big Data-Aufträge zur Skalierung (das bedeutet, dass in der Cloud ausgeführt wird).

Wenn Sie den Ansatz der Entwicklung des Codes und Debuggen auf dem lokalen Computer ausgeführt haben, dann zu diesem Zeitpunkt alle logischen Fehler wahrscheinlich bereits herausgefunden haben und die gewünschten Ausgaben abrufen. Das heißt, sollte Ihre Geschäftslogik sound. Die Verarbeitung großer Datenmengen riesige Mengen an Daten haben und das Format der Daten ist wahrscheinlich ändern. Denken Sie daran, dass Sie in Data Lake-Architektur, Speichern von Daten im systemeigenen Format und Struktur später angeben. Dies bedeutet, dass die Daten erst korrekt formatiert werden, nachdem Sie auf diese Weise werden verarbeitet haben ausgegangen werden können.

Nun, wenn Sie den getesteten Code zur Skalierung in der Cloud ausführen und versuchen, alle Daten zu verarbeiten, Sie sehen, dass neue Daten und möglicherweise starten an Probleme stoßen, denen Sie vor dem gefunden haben. Auch wurde möglicherweise Hunderte oder Tausende von Knoten, von denen jede einen Teil der Logik für einen Teil der Daten führen die Abfrage kompiliert, optimiert und verteilt. Aber bei Ausfall eines der die Segmente der Arbeit nicht behebbarer Weise, wie Sie ermitteln können, was ist passiert?

Die erste Möglichkeit, U-SQL und ADLA, die Ihnen dabei helfen wird zum Verwalten der Fehlerberichterstattung wie erwartet, dass es sich bei einem Auftragsdienst würde. Tritt eine Ausnahme außerhalb von Benutzercode, hat die Fehlermeldung beigefügten stapelüberwachung und detaillierte Daten werden aus den problematischen Knoten gesammelt und für den ursprünglichen Auftrag (Anfragen) gespeichert. Nun, wenn Sie das Projekt in Visual Studio oder das Azure-Portal anzeigen, werden Sie sofort die Fehlerinformationen angezeigt. Keine Notwendigkeit, Protokoll oder Stdout Dateien testen und Entschlüsseln der entsprechenden Stelle zu analysieren.

Eine interessantere und häufige Fall ist, wenn Sie benutzerdefinierten Code und der Fehler Es tritt. Beispielsweise sind Sie einem binären Format analysieren, mit Ihren eigenen extrahieren und auf einer bestimmten Eingabe mitten in der Ausführung des Auftrags ein Fehler auftritt. In diesem Fall wird ADLA erneut viel Arbeit für Sie. Für die Teile des Diagramms Abfrage ausführen, die erfolgreich, werden das codebild weder die Zwischendaten im System beibehalten. Jedoch schlägt ein Scheitelpunkt (eine Instanz eines Knotens im ausführungsdiagramm) ein Fehler im Benutzerabschnitt der Code, der ausführbare Binärdatei und die Eingabedaten für einen Zeitraum zu debuggen bleiben. Dieses Feature ist in Visual Studio integriert, siehe Abbildung 2.

Eine fehlerhafte Vertex lokal Debuggen
Abbildung 2 einen fehlerhaften Scheitelpunkt lokal Debuggen

Klicken auf die Schaltfläche "Debug" wird eine Kopie der Binärdatei, Ressourcen und Datendateien vom fehlerhaften Scheitelpunkt auf Ihren lokalen Computer gestartet. Sobald der Kopiervorgang heruntergeladen wurde, wird ein temporäres Projekt erstellt und in einer neuen Instanz von Visual Studio geladen. Die ausführbare Version des ausgefallenen Knotens und alle möglich, alle normalen Debugoptionen, die Sie erwarten, z. B. auf die Ausnahme ausgeführt wird, setzen Haltepunkte im C#-Code und Prüfen von Variablen. Beachten Sie, dass die einzelnen Scheitelpunkte in den Clustern zur Ausführung von Big Data-Aufträge tatsächlich Commodity-Server sind und werden auf Ihrem Entwicklungscomputer entsprechen. Da Sie auch eine lokale U-SQL-Laufzeit auf dem Computer verfügen, wird diese Funktion möglich. 

Nachdem Sie das Problem auf dem lokalen Computer debuggen müssen, aktualisieren Sie Ihren Quellcode getrennt. Das Projekt und in der Debug-Instanz dargestellte Code sind Artefakte aus einer zuvor ausgeführten Abfrage und alle vorgenommenen Änderungen sind lokal. Wenn Sie eine registrierte Bibliothek von C#-Code verfügen, müssen Sie neu erstellen und Aktualisieren der Bibliothek in ADLA. Wenn Sie die U-SQL-Skript oder Codebehind-Dateien geändert haben, müssen Sie das Projekt aktualisieren.

Zusammenfassung

Big Data-Plattformen wurden sehr spezielle Systeme, die neuen Konzepten, Modellen und Techniken lernen erforderlich. Musste, dass die meisten frühen Anwender hinter den Kulissen, um zu erfahren, die interne Funktionsweise dieser Systeme, um deren Einrichtung wechseln und dann Gedanken über die Programmierung in diesen Umgebungen können. Während das Feld vorwärts zu dem Punkt verschoben hat, diese Plattformen die Installation einfacher geworden ist, wird eine größere Schicht ausgeführt. Heute besteht die Möglichkeit, einen Big Data Service-Modell in der Cloud Spielerlebnis, in dem die System-Abstraktion auf einer höheren Ebene ist. Während die Einrichtung einer Big Data-Umgebung einfach dadurch, ist sogar noch weitreichende Ergebnis, dass die Entwicklungsmodell immens vereinfacht wird.

Die Kombination von Azure Data Lake und U-SQL vereinfacht das Ausführungsmodell Programmierung Paradigma und Tools zum Entwickeln von Big Data-Abfragen und Clientanwendungen verwendet. Dies hat zwei Auswirkungen hat die Aktivierung von Entwicklern für den Einstieg mit großen Datenmengen und für Entwickler komplexere Big Data-Lösungen schneller zu erstellen. ADL wird durch eine Reihe von Analysen von Services in Azure unterstützt, Workflow-Verwaltung, Verschieben von Daten, Business Intelligence Visualisierung und mehr zu unterstützen. U-SQL ist der beste Ausgangspunkt für die Entwicklung großer Datenmengen suchen Sie, diese Dienste mit Ihrem Unternehmen.


Omid Afnan ist principal Programmmanager im Azure Big Data-Team auf Implementierungen von Systemen für verteilte Berechnung und verwandte Entwickler toolketten. Er lebt und arbeitet in China. Sie erreichen ihn unter omafnan@microsoft.com.

Unser Dank gilt dem folgenden technischen Experten bei Microsoft für die Durchsicht dieses Artikels: Yifung verknüpfen