Using an Open Name Parser MapReduce Job
-
Create an instance of
UniversalNameFactory
, using its static methodgetInstance()
. -
Provide the input and output details for the Open Name Parser job by creating
an instance of
OpenNameParserDetail
specifying theProcessType
. The instance must use the type MRProcessType.-
Configure the open name parser rules by creating an instance of
OpenNameParserConfiguration
. -
Set the details of the Reference Data path and location type by
creating an instance of
ReferenceDataPath
. See Enum ReferenceDataPathLocation. -
Create an instance of
OpenNameParserDetail
, by passing an instance of typeJobConfig
, and theOpenNameParserConfiguration
andReferenceDataPath
instances created earlier as the arguments to its constructor.TheJobConfig
parameter must be an instance of type MRJobConfig. -
Set the details of the input file using the
inputPath
field of theOpenNameParserDetail
instance.- For a text input file, create an instance of
FilePath
with the relevant details of the input file by invoking the appropriate constructor. - For an ORC input file, create an instance of
OrcFilePath
with the path of the ORC input file as the argument. - For a Parquet input file, create an instance of ParquetFilePath with the path of the Parquet input file as the argument.
- For a text input file, create an instance of
-
Set the details of the output file using the
outputPath
field of theOpenNameParserDetail
instance.- For a text output file, create an instance of
FilePath
with the relevant details of the output file by invoking the appropriate constructor. - For an ORC output file, create an instance of
OrcFilePath
with the path of the ORC output file as the argument. - For a Parquet output file, create an instance of ParquetFilePath with the path of the Parquet output file as the argument.
- For a text output file, create an instance of
-
Set the name of the job using the
jobName
field of theOpenNameParserDetail
instance.
-
Configure the open name parser rules by creating an instance of
-
To create a MapReduce job, use the previously created instance of
UniversalNameFactory
to invoke its methodcreateJob()
. In this, pass the above instance ofOpenNameParserDetail
as an argument.ThecreateJob()
method returns aList
of instances ofControlledJob
. -
Run the created job using an instance of
JobControl
. -
To display the reporting counters post a successful MapReduce job run, use the
previously created instance of
UniversalNameFactory
to invoke its methodgetCounters()
, passing the created job as an argument.