Ich würde sagen, dass DryadLinq das ist, was wir .NET-Leute Hadoop am nächsten kommen. Aber es kommt darauf an, wofür Sie Hadoop verwenden möchten. Wenn Sie nach einem optimierten DFS-System ( Self Maintenance Distributed File) suchen, ist DryadLINQ nicht das, wonach Sie suchen. Es hat eine Analogie zur DFS, aber Sie müssen die Partitionen manuell erstellen und jede Partition verteilen.
Davon abgesehen ist DryadLINQ wirklich wunderbar, wenn es sich um den verteilten Ausführungsaspekt von Hadoop handelt, den Sie suchen (und nein, ich bin nicht mit MS verbunden). Solange Sie ein Microsoft HPC- Cluster-Setup haben, ist es wirklich einfach, mit DryadLINQ loszulegen.
Der Code, den Sie schreiben, ist wirklich nur reiner LINQ-Code, außer dass IEnumerable<T>
Sie den LINQ nicht ausführen müssen, sondern ihn ausführen müssen PartitionedTable<T>
(die selbst erstellte verteilte Datenstruktur).
Was an DryadLINQ wirklich cool war, ist die schnelle Bearbeitungszeit (versuchen, testen, anpassen, wiederholen) bei der Entwicklung von Algorithmen. Sie schreiben einfach LINQ-Code, um Ihre Berechnungen durchzuführen, und DryadLINQ kümmert sich um den gesamten verteilten Ausführungsteil. Es ist das natürlichste Analogon, auf das ich gestoßen bin, das das Schreiben von Code für die verteilte Verarbeitung genauso macht wie das Schreiben von Code für die Verarbeitung einzelner Prozesse.