forked from steveloughran/winutils
-
Notifications
You must be signed in to change notification settings - Fork 0
/
mapred.cmd
200 lines (159 loc) · 5.61 KB
/
mapred.cmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
@echo off
@rem Licensed to the Apache Software Foundation (ASF) under one or more
@rem contributor license agreements. See the NOTICE file distributed with
@rem this work for additional information regarding copyright ownership.
@rem The ASF licenses this file to You under the Apache License, Version 2.0
@rem (the "License"); you may not use this file except in compliance with
@rem the License. You may obtain a copy of the License at
@rem
@rem http://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem The Hadoop mapred command script
setlocal enabledelayedexpansion
if not defined HADOOP_BIN_PATH (
set HADOOP_BIN_PATH=%~dp0
)
if "%HADOOP_BIN_PATH:~`%" == "\" (
set HADOOP_BIN_PATH=%HADOOP_BIN_PATH:~0,-1%
)
set DEFAULT_LIBEXEC_DIR=%HADOOP_BIN_PATH%\..\libexec
if not defined HADOOP_LIBEXEC_DIR (
set HADOOP_LIBEXEC_DIR=%DEFAULT_LIBEXEC_DIR%
)
call %DEFAULT_LIBEXEC_DIR%\mapred-config.cmd %*
if "%1" == "--config" (
shift
shift
)
:main
if exist %MAPRED_CONF_DIR%\mapred-env.cmd (
call %MAPRED_CONF_DIR%\mapred-env.cmd
)
set mapred-command=%1
call :make_command_arguments %*
if not defined mapred-command (
goto print_usage
)
@rem JAVA and JAVA_HEAP_MAX are set in hadoop-confg.cmd
if defined MAPRED_HEAPSIZE (
@rem echo run with Java heapsize %MAPRED_HEAPSIZE%
set JAVA_HEAP_SIZE=-Xmx%MAPRED_HEAPSIZE%m
)
@rem CLASSPATH initially contains HADOOP_CONF_DIR and MAPRED_CONF_DIR
if not defined HADOOP_CONF_DIR (
echo NO HADOOP_CONF_DIR set.
echo Please specify it either in mapred-env.cmd or in the environment.
goto :eof
)
set CLASSPATH=%HADOOP_CONF_DIR%;%MAPRED_CONF_DIR%;%CLASSPATH%
@rem for developers, add Hadoop classes to CLASSPATH
if exist %HADOOP_MAPRED_HOME%\build\classes (
set CLASSPATH=%CLASSPATH%;%HADOOP_MAPRED_HOME%\build\classes
)
if exist %HADOOP_MAPRED_HOME%\build\webapps (
set CLASSPATH=%CLASSPATH%;%HADOOP_MAPRED_HOME%\build
)
if exist %HADOOP_MAPRED_HOME%\build\test\classes (
set CLASSPATH=%CLASSPATH%;%HADOOP_MAPRED_HOME%\build\test\classes
)
if exist %HADOOP_MAPRED_HOME%\build\tools (
set CLASSPATH=%CLASSPATH%;%HADOOP_MAPRED_HOME%\build\tools
)
@rem Need YARN jars also
set CLASSPATH=%CLASSPATH%;%HADOOP_YARN_HOME%\%YARN_DIR%\*
@rem add libs to CLASSPATH
set CLASSPATH=%CLASSPATH%;%HADOOP_MAPRED_HOME%\%MAPRED_LIB_JARS_DIR%\*
@rem add modules to CLASSPATH
set CLASSPATH=%CLASSPATH%;%HADOOP_MAPRED_HOME%\modules\*
call :%mapred-command% %mapred-command-arguments%
set java_arguments=%JAVA_HEAP_MAX% %HADOOP_OPTS% -classpath %CLASSPATH% %CLASS% %mapred-command-arguments%
call %JAVA% %java_arguments%
goto :eof
:classpath
@echo %CLASSPATH%
goto :eof
:job
set CLASS=org.apache.hadoop.mapred.JobClient
set HADOOP_OPTS=%HADOOP_OPTS% %HADOOP_CLIENT_OPTS%
goto :eof
:queue
set CLASS=org.apache.hadoop.mapred.JobQueueClient
set HADOOP_OPTS=%HADOOP_OPTS% %HADOOP_CLIENT_OPTS%
goto :eof
:sampler
set CLASS=org.apache.hadoop.mapred.lib.InputSampler
set HADOOP_OPTS=%HADOOP_OPTS% %HADOOP_CLIENT_OPTS%
goto :eof
:historyserver
set CLASS=org.apache.hadoop.mapreduce.v2.hs.JobHistoryServer
set HADOOP_OPTS=%HADOOP_OPTS% -Dmapred.jobsummary.logger=%HADOOP_JHS_LOGGER% %HADOOP_JOB_HISTORYSERVER_OPTS%
if defined HADOOP_JOB_HISTORYSERVER_HEAPSIZE (
set JAVA_HEAP_MAX=-Xmx%HADOOP_JOB_HISTORYSERVER_HEAPSIZE%m
)
goto :eof
:distcp
set CLASS=org.apache.hadoop.tools.DistCp
set CLASSPATH=%CLASSPATH%;%TOO_PATH%
set HADOOP_OPTS=%HADOOP_OPTS% %HADOOP_CLIENT_OPTS%
goto :eof
:archive
set CLASS=org.apache.hadop.tools.HadoopArchives
set CLASSPATH=%CLASSPATH%;%TOO_PATH%
set HADOOP_OPTS=%HADOOP_OPTS% %HADOOP_CLIENT_OPTS%
:hsadmin
set CLASS=org.apache.hadoop.mapreduce.v2.hs.client.HSAdmin
set HADOOP_OPTS=%HADOOP_OPTS% %HADOOP_CLIENT_OPTS%
:pipes
goto not_supported
:mradmin
goto not_supported
:jobtracker
goto not_supported
:tasktracker
goto not_supported
:groups
goto not_supported
@rem This changes %1, %2 etc. Hence those cannot be used after calling this.
:make_command_arguments
if [%2] == [] goto :eof
if "%1" == "--config" (
shift
shift
)
shift
set _mapredarguments=
:MakeCmdArgsLoop
if [%1]==[] goto :EndLoop
if not defined _mapredarguments (
set _mapredarguments=%1
) else (
set _mapredarguments=!_mapredarguments! %1
)
shift
goto :MakeCmdArgsLoop
:EndLoop
set mapred-command-arguments=%_mapredarguments%
goto :eof
:not_supported
@echo Sorry, the %COMMAND% command is no longer supported.
@echo You may find similar functionality with the "yarn" shell command.
goto print_usage
:print_usage
@echo Usage: mapred [--config confdir] COMMAND
@echo where COMMAND is one of:
@echo job manipulate MapReduce jobs
@echo queue get information regarding JobQueues
@echo classpath prints the class path needed for running
@echo mapreduce subcommands
@echo historyserver run job history servers as a standalone daemon
@echo distcp ^<srcurl^> ^<desturl^> copy file or directories recursively
@echo archive -archiveName NAME -p ^<parent path^> ^<src^>* ^<dest^> create a hadoop archive
@echo hsadmin job history server admin interface
@echo
@echo Most commands print help when invoked w/o parameters.
endlocal