|
@@ -0,0 +1,193 @@
|
|
|
+@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% %MAPRED_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
|
|
|
+ goto :eof
|
|
|
+
|
|
|
+:queue
|
|
|
+ set CLASS=org.apache.hadoop.mapred.JobQueueClient
|
|
|
+ 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%
|
|
|
+
|
|
|
+: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
|
|
|
+ @echo Most commands print help when invoked w/o parameters.
|
|
|
+
|
|
|
+endlocal
|