2016-07-05 3 views
1

databricks를 사용하지 않고 spark DataFrames로 CSV 파일을 직접 읽는 방법 csv api?
databricks csv api가 있지만 API를 사용할 수 없다는 것을 알고 있습니다.
cols (0) 위치에 따라 cols를 사용하고 매핑하는 사례 클래스가 있습니다. 그러나 문제는 내가 22 개 이상의 coloumns를가집니다. 나는 케이스 클래스를 사용하지 않는다. 왜냐하면 클래스에서 우리는 단지 22 개의 coloumns를 사용하는 제한이 있기 때문이다. 구조체를 정의하는 structtype이 있지만 structype에서 40 개의 coloumns를 정의하는 데 매우 긴 코드가 될 것이라고 생각합니다. read 메서드를 사용하여 데이터 프레임을 읽을 무언가를 찾고 있습니다.하지만 우리가 파싱해야하는 CSV 파일을 직접 지원하지는 않습니다. 하지만 우리가 40 개 이상의 칼을 가지고 있다면 어떨까요?databricks csv api를 사용하지 않고 spark DataFrames로 직접 CSV 파일을 읽는 방법?

+0

을하시기 바랍니다? – Himaprasoon

+0

@Himaprasoon, databricks csv api와 아무 문제가 없습니다. 실제로 인증 hortonworks hdpcd 스파크를 작성해야합니다. 테스트에서 그들은 databricks API를 제공하지 않습니다 .. 우리가 사용할 수있는 inbuilt API를 켜십시오 ... –

+0

내 대답 도움이 되셨습니까? 만약에 다른 것이 있으면 무엇을 발견 했습니까? –

답변

0

나는 또한 이것을 조사하여 파스 (라인) 함수와 스키마 정의를위한 스칼라 코드를 생성하는 파이썬 스크립트를 작성했다. 예, 이것은 코드가 길어질 수 있습니다.

데이터가 너무 크지 않으면 걸어 갈 수있는 또 다른 경로 : python pandas! 시작 py-spark, 데이터를 팬더 데이터 프레임으로 읽어 들인 다음 스파크 데이터 프레임을 만듭니다. 저장하십시오 (예 : 쪽매 세공 파일). 그리고 마루 파일을 scala-spark에 적재하십시오.

1

scala 2.11.x 이상인 것 같습니다. arity limit issue이 수정되었습니다. extends Product를 사용하고 방법 productArity, productElement을 무시 2.11 my answer를 참조 <에서이 문제를 극복하기 위해 https://issues.scala-lang.org/browse/SI-7296

봐, databricks의 CSV API를 사용하여 무엇이 잘못되었는지 canEqual (that:Any)