当前位置: Oracle DBA培训网-优技培训 >> Hadoop大数据 > Hadoop培训教程 >

Hadoop大数据教程:基于Streaming实现的编译

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++程序的编译没有任何区别。

技术沙龙MORE+

标签错误:<!-- #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> -->
我要参加技术沙龙