Hadoop大数据教程:基于Streaming实现的编译
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++程序的编译没有任何区别。
-
标签错误:<!-- #Label#
labelId=20160707140604
moduleId=1
classId=12231768634
orderby=2
fields=url,title,u_info
attribute=
datatypeId=22192428132
recordCount=3
pageSize=
<htmlTemplate><dt><img src="/images/index_26${index}.jpg" width="100" height="62" /><a href="$url" title="${title}">${title}</a><span>${api.left(u_info,60)}</span></dt></htmlTemplate>
-->
- 我要参加技术沙龙