내 데이터 형식은 새 줄 대신 \ 0을 사용합니다. 그래서 기본 텍스트 라인 리더가 작동하지 않습니다. 특수 문자로 구분 된 행을 읽으려면 어떻게 구성해야합니까?특수 문자로 분리 된 hadoop에서 텍스트 소스를 읽는 방법
LineReader를 구성 할 수없는 경우,이를 수행하는 방법이 확실하지 않은 특정 스트림 프로세서 (tr "\ 0" "\ n")를 적용 할 수 있습니다.
내 데이터 형식은 새 줄 대신 \ 0을 사용합니다. 그래서 기본 텍스트 라인 리더가 작동하지 않습니다. 특수 문자로 구분 된 행을 읽으려면 어떻게 구성해야합니까?특수 문자로 분리 된 hadoop에서 텍스트 소스를 읽는 방법
LineReader를 구성 할 수없는 경우,이를 수행하는 방법이 확실하지 않은 특정 스트림 프로세서 (tr "\ 0" "\ n")를 적용 할 수 있습니다.
\n
대신에 \0
에 데이터를 분할하는 사용자 고유의 InputFormat 클래스를 작성할 수 있습니다. http://developer.yahoo.com/hadoop/tutorial/module5.html#fileformat
그것의 요점은 기본 InputFormat 클래스를 서브 클래스 필요가있다, 또는 그 서브 클래스의 및 사용자 정의 규칙을 자신의 RecordReader
을 정의하는 작업을 수행하는 방법에 대한 연습은 여기를 확인하십시오. 더 자세한 내용은 InputFormat 문서를 참조하십시오.
어쨌든 TextDelimited
체계를 사용하는 것이 어떻습니까? 자신의 InputFormat
를 작성하지 피한다 http://docs.cascading.org/cascading/1.2/javadoc/cascading/scheme/TextDelimited.html
등으로 구분 된 텍스트의
예는 그 목적을 위해 "textinputformat.record.delimiter"
구성 속성이 있습니다 https://github.com/Cascading/Impatient/wiki/Part-2
에 있습니다. 이 속성 값을 "\ 0"으로 변경하여 기본 EOL ("\ n") 구분 기호를 변경할 수 있습니다.
자세한 내용은 여기 : Setting textinputformat.record.delimiter in spark
: 대한 비슷한 질문도 있습니다 http://amalgjose.wordpress.com/2013/05/27/custom-text-input-format-record-delimiter-for-hadoop유용도있을 수 있습니다 스파크의 기본 구분 기호를, 변경에 대한