ですから、私は Hadoop に強い関心を持って見てきましたが、正直なところ、私は魅了されています。
私の唯一のマイナーな問題は、私がC#開発者であり、それがJavaであることです。
Javaを理解しているわけではありませんが、Hadoop.netやNHadoop、または Google MapReduce アプローチ。誰か知っていますか?
Hadoopのストリーミング? の使用を見ましたか?
python常に:-)で使用します。
異種混合アプローチがしばしば最良であり、他の人々が同じことをしているように見えることを私は見始めています。
プロトコルバッファやFacebookの節約などのプロジェクトを見ると、別の言語で記述されたアプリを使用し、好みの言語で接着剤を作成することが最善である場合があります。
最近、MySpaceが.NET MapReduceフレームワーク Qizmt をオープンソースとしてリリースしたため、これもこの分野の潜在的な競争相手です。
私の質問であなたの質問に答えました here
ソースでここに言うには:
Microsoft dropped その代替( Dryad )Hadoopを支持します。来年、Hadoop統合を備えたMS SQL Server 2012をリリースします。 AzureとWindows Severのサポートは、私たちが話すように開発されています。
2012年上半期に利用可能になる予定です。
Hadoopは#1 BigData プラットフォームであり、オープンソースおよび独自のソース(Java、.Net、Pythonなど)でサポートされます。Oracleでも採用されています。
何かを開発している場合、.Netプラットフォームを使用している場合は待つ必要があります。
可能なことに関する詳細情報が利用可能になります here
DryadLinqは、.NETの人々がHadoopに最も近いものだと思います。ただし、hadoopの使用目的によって異なります。最適化された自己維持分散ファイル(DFS)システムを探している場合、 DryadLINQ は探しているものではありません。 DFSに類似していますが、パーティションを手動で構築し、各パーティションを配布する必要があります。
そうは言っても、もしあなたが探しているHadoopの分散実行の側面がDryadLINQよりも本当に素晴らしいなら(そしていや、私はMSと提携していません)。 Microsoft HPC クラスターのセットアップがある限り、DryadLINQを使用するのは本当に簡単です。
作成するコードは、IEnumerable<T>
でLINQを実行する代わりに、PartitionedTable<T>
(自己構築分散データ構造)で実行する必要があることを除いて、実際には単なるLINQコードです。
DryadLINQの優れた点は、アルゴリズムを開発する際の高速なターンアラウンドタイム(試行、テスト、調整、繰り返し)です。計算を行うLINQコードを記述するだけで、DryadLINQが分散実行部分全体を処理します。私が出会った中で最も自然なアナログであり、単一プロセス処理のコードを書くのと同じように、分散処理のコードを書くのです。
RavenDbのようなものを見ると、かなり大きなサイズのデータに対してMapReduceを非常に適切にサポートしています。 .Netで構築されているため、適切なLINQクライアントAPIが利用可能です。
始めるには、私の blog enteryを読んでください。
Apache Hadoopは、YahooやFacebookなどの業界の大手企業によって積極的に開発および保守されているため、Apache Hadoopとストリーミングを使用する方が適切な場合があります。そのため、期待どおりのことができます。
.NETでソリューションが必要な場合は、Myspaceの実装を確認してください@ MySpace Qizmt-MySpaceのオープンソースMapreduceフレームワーク
Microsoftは、「 HDInsight 」を展開中です。これは、「100%Apache互換のHadoopディストリビューション」として請求されます。
Windows ServerとWindows Azureサービスの両方で利用できます。
ご覧ください:
http://www.windowsazure.com/en-us/services/hdinsight/
これはHadoop for Azureの実装であり、アクセスには.NETを使用できます。
内部的には、MicrosoftはCosmosを使用しています。これは、Azureを通じてMicrosoftの外部で利用可能になりました。名前は Azure Data Lake Analytics および Azure Data Lake Store です。 Azure Data Lakeアナリティクスは、サービスとしての一種のヤーンであり、サービスとしてのAzure Data Lake Store WebHDFSです。 Azure Data Lake Analyticsの最初のバージョンは、Transact-SQL + C#に基づく言語のU-SQLのみをホストします。
.NETからHadoopを直接使用できるようになりました。MicrosoftはそのためのSDKをリリースしています。
https://hadoopsdk.codeplex.com/
もちろん、これはJavaベースのHadoopネットワークを使用することを意味します。しかし、サーバーがJavaで実行されているかどうかは問題になりますか?企業はすでにJavaバージョンを支持しているため、.NETポートが同じ注意を引くとは思いません。
Microsoft ResearchにはプロジェクトDaytonaがあります http://research.Microsoft.com/en-us/projects/daytona/
ダウンロードできます。 C#にはWordCountサンプルがあります。
dryad/linqは製品化されており、まもなくリリースされます: http://blogs.technet.com/b/windowshpc/archive/2011/07/07/announcing-linq-to-hpc-beta-2。 aspx Microsoft HPCと組み合わせて使用し、非構造化データを検索するための強力なクラスターベースのソリューション
.NET用のかなりかわいいMapReduce実装があります: http://mapsharp.codeplex.com/