2017-12-29 17 views
0

현재 InvokeHTTP 프로세서를 사용하여 HTTP 끝점을 HDFS로 처리 중입니다. 내 HTTP 엔드 포인트는 http://www.cbioportal.org/webservice.do?cmd=getMutationData&case_set_id=gbm_tcga_all&genetic_profile_id=gbm_tcga_mutations&gene_list=TP53+PIK3CA입니다.NIFI의 HTTP 응답에서 첫 번째 행 제거하기

처음으로 행을 슬래시하고 HDFS로 밀어 넣고 싶습니다. InvokeHTTP의 속성을 살펴 보았지만 머리글 행 등을 제거 할 수있는 기능이 없습니다. 이러한 경우를 처리하는 가장 효과적인 방법이 무엇인지 알고 싶습니다.

답변

2

당신은 IHMO 스크립트 될 것 SplitTextMergeContent

하지만 가장 효과적인의 순서를 사용할 수 있습니다.

ExecuteScript(groovy)

def ff=session.get() 
if(!ff)return 
ff = session.write(ff, {rawIn, rawOut-> 
    rawOut.withWriter("UTF-8"){writer-> 
     rawIn.eachLine("UTF-8"){line,index-> 
      if(index>1)writer.append(line).append('\n') 
     } 
    } 
} as StreamCallback) 
session.transfer(ff, REL_SUCCESS) 
0

어떤 FlowFile 내용의 첫 번째 줄을 삭제하는 가장 빠른 방법은 ExecuteStreamCommand의 processsor를 사용하여 '1D 나오지도'리눅스 명령을 통해 실행하는 것입니다. ExecuteStreamCommand for sed 1d in NiFi-1.2.0