Я бы сказал, что DryadLinq - это самое близкое, что есть у нас, .NET-специалистов, к Hadoop. Но это зависит от того, для чего вы хотите использовать hadoop. Если вы ищете оптимизированную самоподдерживающуюся распределенную файловую систему (DFS), тогда DryadLINQ - не то, что вам нужно. У него есть аналог DFS, но вам нужно вручную создать разделы и распределить каждый раздел.
При этом, если вы ищете аспект распределенного выполнения Hadoop, то DryadLINQ действительно замечательный (и нет, я не связан с MS). Если у вас есть кластер Microsoft HPC, начать работу с DryadLINQ действительно просто.
Код, который вы пишете, на самом деле представляет собой простой код LINQ, за исключением того, что вместо выполнения LINQ IEnumerable<T>
вы должны выполнить его наPartitionedTable<T>
(самосоздание распределенной структуры данных).
Что действительно было круто в DryadLINQ, так это быстрое изменение времени (пробовать, тестировать, настраивать, повторять) при разработке алгоритмов. Вы просто пишете код LINQ для выполнения своих вычислений, а DryadLINQ позаботится обо всей части распределенного выполнения. Это наиболее естественный аналог, который я встречал, который делает написание кода для распределенной обработки так же, как написание кода для обработки одного процесса.