2017-12-26 33 views
1

Cloudera Spark 2를 사용하고 있습니다. 클러스터에 Kerberos가 구현되어 있습니다.PySpark : 처리중인 100000 열 데이터 세트

400000x100000의 CSV 데이터 세트가 있습니다. 500GB가 있습니다. 내가 다음과 같은 짓을 :

  • df = spark.read.csv('largefile.csv',header=Ture,maxCoulmns=100000)
  • print(df.count()) 및 스파크 작업이 실행되는 터미널 spark2-submit --master yarn --deploy-mode cluster spark_test.py

에서 spark_test.py

  • 에 저장, 나는 추적 할 수 있어요 Spark UI에서 30 분 정도 지나면 계속 실행됩니다.


    테스트 목적으로 위의 단계를 10 열 데이터 집합으로 시도했는데 작업이 성공적으로 완료되었습니다.


    Spark에서 처리하는 열을 늘리기위한 제한이나 구성이 있습니까?

  • +0

    어떻게 실패 하는가? 오류 스택을 게시하십시오. – MaxU

    +0

    지금 스택 추적을 제공 할 수 없습니다.이 작업은 cloudera spark에서 실행 중입니다. Kerberos가 구현되었습니다. 로그에서 작업이 오랜 시간 실행되고 있음을 알 수 있습니다. 그리고 작업이 중단되었다는 의미로 쓰여졌습니다. 즉 시스템 정책에 의해 중단되고 있다는 뜻입니다. Kerberos에 이와 같은 구성이있을 가능성이 있습니까? 아니면 Spark에서이 많은 칼럼을 읽는데 한계가 있습니까? – deadbug

    +1

    30 분 후에 유효한 Kerberos 티켓을 가지고 있습니까? 나는 또한'--principal'과'--keytab' 매개 변수를 지정할 것입니다. – MaxU

    답변

    1

    아마도 Kerberos 티켓이 만료되었을 수 있습니다.

    principal를 지정하는 것을 시도하고 keytabspark2-submit를 호출 할 때 :

    spark2-submit --keytab=/local/path/to/file.keytab [email protected] \ 
           --master yarn --deploy-mode cluster spark_test.py 
    
    +0

    Cloudera doc '보안 클러스터의 경우 Spark History Server는 자동으로 Kerberos를 사용하므로 구성 할 필요가 없습니다. Spark 응용 프로그램을 실행하는 사용자는 먼저 kinit를 사용하여 Kerberos에 인증해야합니다. 즉, 먼저 kinit을 입력 한 다음 영역의 암호를 입력하십시오. 위의 단계를 실행하려고합니까? – deadbug

    +0

    @VipinGS, 오류 추적에는 무엇이 있습니까? – MaxU

    +0

    오류 : CoarseGrainedExecutorBackend : 수신 된 신호 : – deadbug