私はopenclでアプリケーションを開発しています。基本的な目的は、GPUプラットフォーム上にデータマイニングアルゴリズムを実装することです。私はHadoop Distributed File Systemを使いたいと思っていて、複数のノードでアプリケーションを実行したいのです。私はMapReduceフレームワークを使用しています。私は基本アルゴリズムをMapとReduceの2つに分けました。
私はhadoopでこれまでに働いたことがないので、いくつか質問があります:
- HadoopとMapeduceフレームワークを使用するためだけにJavaでアプリケーションを作成していますか?
- 私はopenclでmapとreduceのカーネル関数を書いています。非Java GPUコンピューティングアプリケーションにHDFSをファイルシステムとして使用することは可能ですか? (注:私はJavaCLまたはAparapiを使用したくありません)
回答:
回答№1は1Hadoop Streamingを使うことができます。あなたのコードがstdioから読み込んでそれに書き戻すことができる限り、任意の言語でマッパーとレデューサーを書くことができます。インスピレーションのためには、 Hadoop StreamingでRを使用する方法
回答№2の場合は1
HDFSはファイルシステムです。どの言語でもHDFSファイルシステムを使用できます。
HDFSデータは複数のマシンに分散されているため、GPUコンピューティングでデータを処理することが可能です。
詳細情報の参照 Hadoopストリーミング.