Я б сказав, що DryadLinq - це найближче до Hadoop. Але це залежить для чого ви хочете використовувати hadoop. Якщо ви шукаєте оптимізовану систему самообслуговування розподілених файлів (DFS), то DryadLINQ - це не те, що ви шукаєте. Він має аналог DFS, але вам доведеться вручну створювати розділи та розподіляти кожен розділ.
З огляду на це, якщо розподілений аспект виконання Hadoop, який ви шукаєте, ніж DryadLINQ справді чудовий (і ні, я не пов'язаний з MS). Поки у вас налаштовано кластер Microsoft HPC, ніж починати роботу з DryadLINQ дуже просто.
Код, який ви пишете, насправді є просто прямим кодом LINQ, за винятком того, що замість того, щоб виконувати LINQ, IEnumerable<T>
вам доведеться його виконати PartitionedTable<T>
(структура побудованих розподілених даних).
Що насправді було круто в DryadLINQ, так це швидкий оберт часу (спробувати, протестувати, налаштувати, повторити) при розробці алгоритмів. Ви просто пишете код LINQ для своїх розрахунків, і DryadLINQ подбає про всю розподілену частину виконання. Це найбільш природний аналог, з яким я стикався, робить написання коду для розподіленої обробки точно так само, як написання коду для обробки одного процесу.