Итак, я с большим интересом смотрел на Hadoop , и, честно говоря, я восхищен этим, все становится не намного круче.
Моя единственная незначительная проблема - я разработчик C #, и это на Java.
Дело не в том, что я не так хорошо разбираюсь в Java, как я ищу Hadoop.net, NHadoop или проект .NET, который использует подход Google MapReduce . Кто-нибудь знает об одном?
См. Http://research.microsoft.com/en-us/projects/dryadlinq/default.aspx или http://msdn.microsoft.com/en-us/library/dd179423.aspx
источник
Недавно MySpace выпустила свою платформу .NET MapReduce, Qizmt , как Open Source, так что это также потенциальный соперник в этой области.
источник
Я ответил на ваш вопрос в своем вопросе здесь
Сказать это здесь, в источнике:
Microsoft отказалась от своей альтернативы ( Dryad ) в пользу Hadoop. В следующем году они выпустят MS SQL Server 2012 с интеграцией Hadoop. Поддержка Azure и Windows Sever развивается прямо сейчас.
Он будет доступен в первой половине 2012 года.
Hadoop - это платформа BigData №1, которая будет поддерживаться открытыми и проприетарными источниками (Java, .Net, Python, ...), даже Oracle принимает ее.
Если вы что-то разрабатываете, вам следует подождать, если вы работаете на платформе .Net.
Более подробная информация о возможностях будет доступна здесь.
источник
Я бы сказал, что DryadLinq - это самое близкое, что есть у нас, .NET-специалистов, к Hadoop. Но это зависит от того, для чего вы хотите использовать hadoop. Если вы ищете оптимизированную самоподдерживающуюся распределенную файловую систему (DFS), тогда DryadLINQ - не то, что вам нужно. У него есть аналог DFS, но вам нужно вручную создать разделы и распределить каждый раздел.
При этом, если вы ищете аспект распределенного выполнения Hadoop, то DryadLINQ действительно замечательный (и нет, я не связан с MS). Если у вас есть кластер Microsoft HPC, начать работу с DryadLINQ действительно просто.
Код, который вы пишете, на самом деле представляет собой простой код LINQ, за исключением того, что вместо выполнения LINQ
IEnumerable<T>
вы должны выполнить его наPartitionedTable<T>
(самосоздание распределенной структуры данных).Что действительно было круто в DryadLINQ, так это быстрое изменение времени (пробовать, тестировать, настраивать, повторять) при разработке алгоритмов. Вы просто пишете код LINQ для выполнения своих вычислений, а DryadLINQ позаботится обо всей части распределенного выполнения. Это наиболее естественный аналог, который я встречал, который делает написание кода для распределенной обработки так же, как написание кода для обработки одного процесса.
источник
Вы можете посмотреть что-то вроде RavenDb, он обеспечивает очень приличную поддержку MapReduce для довольно большого размера данных. поскольку он встроен в .Net, поэтому доступен правильный клиентский API LINQ.
http://ravendb.net/
Для начала вы можете прочитать мой блог .
источник
Возможно, будет лучше использовать Apache Hadoop и потоковую передачу, поскольку Apache Hadoop активно разрабатывается и поддерживается такими крупными гигантами отрасли, как Yahoo и Facebook. Таким образом, он может делать то, что вы от него ожидаете.
Если вам нужно решение в .NET, проверьте реализацию Myspace @ MySpace Qizmt - MySpace с открытым исходным кодом Mapreduce Framework
источник
Microsoft находится в процессе развертывания HDInsight , который заявлен как «дистрибутив Hadoop, полностью совместимый с Apache».
Он доступен как на Windows Server, так и в виде службы Windows Azure.
источник
У Microsoft Research есть проект Daytona http://research.microsoft.com/en-us/projects/daytona/
Вы можете скачать его. На C # есть образец WordCount.
источник
Теперь вы можете использовать Hadoop прямо из .NET. Для этого Microsoft выпустила SDK.
https://hadoopsdk.codeplex.com/
Конечно, это означает использование сети Hadoop на основе Java. Но имеет ли значение, работает ли сервер на java? Я уверен, что кто-то может попытаться перенести его, но я не думаю, что это было бы хорошей идеей, поскольку корпорации уже поддерживают версию java, и я не думаю, что порт .NET получит такое же внимание.
источник
Взгляните на:
http://www.windowsazure.com/en-us/services/hdinsight/
Это реализация Hadoop для Azure, и вы можете использовать .NET для доступа к ней.
источник
Внутри Microsoft использовала Cosmos. Это стало доступным за пределами Microsoft через Azure. Он называется Azure Data Lake Analytics и Azure Data Lake Store . Аналитика Azure Data Lake - это своего рода пряжа как услуга и WebHDFS из хранилища озера данных Azure как услуга. В первой версии Azure Data Lake Analytics размещается только U-SQL - язык, основанный на Transact-SQL + C #.
источник
Есть довольно симпатичная реализация MapReduce для .NET по адресу: http://mapsharp.codeplex.com/
источник
Dryad / linq разрабатывается и скоро будет выпущен: http://blogs.technet.com/b/windowshpc/archive/2011/07/07/announcing-linq-to-hpc-beta-2.aspx использовать вместе с Microsoft HPC для мощного кластерного решения для запросов к неструктурированным данным
источник
Как уже упоминалось, DryadLINQ - это среда программирования, которая позволяет разработчикам писать запросы LINQ и выполнять их в кластере аналогично MapReduce. Проект DryadLINQ недавно был выпущен под лицензией Apache на GitHub , и этот выпуск включает поддержку работы в кластерах YARN (включая кластеры Azure HDInsight).
источник