Fix:
  Don't need to add the argument dataType in AbstractProcessor.parse(String 
recordEntry, OutputCollector<ChukwaRecordKey, ChukwaRecord> output, Reporter 
reporter).
  I can get the datatype  from the chunk.
-- 
Best regards,

Ivy Tang

On 2013-7-12, at 下午3:04, IvyTang <[email protected]> wrote:

> Hi,Eric
> In order to applying to all multiple datatypes in Demux,init the Reducer 
> class depends on the ChukwaRecordKey's datatype . I need the datatype in 
> ChukwaRecordKey.
> 
> The ChukwaRecordKey needs to add a  field named dataType , showing this 
> ChukwaRecord's datatype . And also i need add an argument in 
> parse(String recordEntry, OutputCollector<ChukwaRecordKey, ChukwaRecord> 
> output, Reporter reporter) 
> 
> An argument String dataType needs to be passed to this method to build the 
> ChukwaRecordKey.
> 
> Adding a field in ChukwaRecordKey ,and add an argument in method 
> AbstractProcessor.parse(String recordEntry, OutputCollector<ChukwaRecordKey, 
> ChukwaRecord> output, Reporter reporter)
> 
> Is that acceptable? This is the only way i can think of to make the custom 
> reducer more configurable.
> 
> -- 
> Best regards,
> 
> Ivy Tang
> 
> On 2013-7-10, at 下午12:01, Eric Yang <[email protected]> wrote:
> 
>> Yes that will help.  Please include test case as well.  Thanks Ivy.
>> 
>> regards,
>> Eric
>> 
>> 
>> On Mon, Jul 8, 2013 at 10:42 PM, IvyTang <[email protected]> wrote:
>> 
>>> This issue has been reported
>>> https://issues.apache.org/jira/browse/CHUKWA-581.
>>> 
>>> And i think i can submit a patch later .
>>> 
>>> Should i open a new jira  or just assign this CHUKWA-581 to myself?
>>> 
>>> This can implement reducer outside chukwa.
>>> 
>>> --
>>> Best regards,
>>> 
>>> Ivy Tang
>>> 
>>> On 2013-7-9, at 下午1:22, Eric Yang <[email protected]> wrote:
>>> 
>>>> The recommended change can improve usability to implement parsers outside
>>>> of Chukwa packages.  +1 on the change.  Do you mind open a jira for this?
>>>> Thanks
>>>> 
>>>> regards,
>>>> Eric
>>>> 
>>>> 
>>>> On Mon, Jul 8, 2013 at 6:54 AM, 唐 颖 <[email protected]> wrote:
>>>> 
>>>>> We can write our own mapper ,because MapProcessorFactory uses
>>>>> Class.forName(parserClass).getConstructor().newInstance();
>>>>> since we config the parserClass in config file.
>>>>> 
>>>>> But the ReduceProcessorFactory inits  the reducer class using the
>>>>> classname
>>> "org.apache.hadoop.chukwa.extraction.demux.processor.reducer."+
>>>>> reduceType.
>>>>> So the reducer class must be put in package
>>>>> org.apache.hadoop.chukwa.extraction.demux.processor.reducer and named
>>>>> reduceType.
>>>>> 
>>>>> Why not we put the reducer  class name in config file either?
>>>>> For exam, the {customdatatype_mapper} means mapper class
>>>>> ,{customdatatype_reducer} means reducer class.
>>>>> 
>>>>> This can give chukka more flexibility.
>>>>> 
>>>>> --
>>>>> Best regards,
>>>>> 
>>>>> Ivy Tang
>>>>> 
>>>>> 
>>> 
>>> 
> 

Reply via email to