Hadoop大数据教程:基于Streaming实现的编译
来源:优技培训(CUUG)
Hadoop大数据教程:基于Streaming实现的编译,在Streaming接口实现的程序中,用户的Map和Reduce都是单独的可执行程序,在上节实现中是使用C++实现的,包括Map程序WordcountMap.cpp,Reduce程序WordcountReduce.cpp。由于写Streaming程序不依赖于Hadoop的类库,因此可以像一般的C++程序一样进行编译,例如这里使用make进行编译,Makefile内容如下:
CXX = g++
CXXFLAGS = -g -Wall -O2
sMap = WordcountMap.cpp
sReduce = WordcountReduce.cpp
tMap = $(basename $(sMap))
tReduce = $(basename $(sReduce))
.PHONY : all
all : $(tMap) $(tReduce)
WordcountMap : WordcountMap.o
$(CXX) $< -o $@
WordcountReduce : WordcountReduce.o
$(CXX) $< -o $@
%.o : %.cpp
$(CXX) -c $< -o $@ $(CXXFLAGS)
PHONY : clean
clean :
-rm -rf $(tMap) $(tReduce) *.o
编写完Makef?ile之后直接使用make就可以进行编译了,这和一般的C++程序的编译没有任何区别。
精华阅读