Java C/C++程序可以调用mapreduce程序吗

Java C/C++程序可以调用mapreduce程序吗,java,c++,hadoop,mapreduce,Java,C++,Hadoop,Mapreduce,我对hadoop领域以及C/C++编程相当陌生。我主要来自Java领域。有两组C++程序实现了贪婪、最近邻居等算法。我正在使用Hadoop对算法部分进行并行化,虽然我不想将整个C++程序转换成MapReduce。是否可以调用从某个C++程序环境中实现某种算法的MapReduce程序? 谢谢 是的,这是很有可能的 你需要写两个类;MapTask实现一个映射函数来处理键/值对生成一组中间键/值对和ReduceTask,ReduceTask实现一个reduce函数来合并与同一个中间键关联的所有中间值

我对hadoop领域以及C/C++编程相当陌生。我主要来自Java领域。有两组C++程序实现了贪婪、最近邻居等算法。我正在使用Hadoop对算法部分进行并行化,虽然我不想将整个C++程序转换成MapReduce。是否可以调用从某个C++程序环境中实现某种算法的MapReduce程序? 谢谢
是的,这是很有可能的

你需要写两个类;MapTask实现一个映射函数来处理键/值对生成一组中间键/值对和ReduceTask,ReduceTask实现一个reduce函数来合并与同一个中间键关联的所有中间值

class map_task
{
  public:
    typedef std::string   key_type;
    typedef std::ifstream value_type;
    typedef std::string   intermediate_key_type;
    typedef unsigned      intermediate_value_type;

    map_task(job::map_task_runner &runner);
    void operator()(key_type const &key, value_type const &value);
};

class reduce_task
{
  public:
    typedef std::string  key_type;
    typedef size_t       value_type;

    reduce_task(job::reduce_task_runner &runner);

    template<typename It>
    void operator()(typename map_task::intermediate_key_type const &key, It it, It ite)
};

JNI:javac.JNA:Java->CYes您将在Qt框架中找到一个mapreduce,您应该搜索QtConcurrent。