Cloud Dataproc의 Scala에서 Spark 작업 생성 및 실행!!!

GCP에서 Scala에 작업 Spark를 배포하고 실행하는 것은 쉽습니다!!

Google Cloud를 사용하여 Scala에서 수행된 Spark 작업을 쉽게 실행하는 예제가 포함된 간단한 가이드입니다. :)

Java 8 JDK 또는 Java 11 JDK 설치

운영 체제에 Java가 설치되어 있는지 확인하려면 아래 명령을 사용하십시오.
java -version
자바 버전에 따라 이 명령어는 변경될 수 있습니다... :)

Java가 아직 설치되지 않은 경우 Oracle Java 8, Oracle Java 11 또는 AdoptOpenJDK 8/11 링크에서 설치하십시오. JDK 호환성 링크의 지침에 따라 JDK와 Scala 버전 간의 호환성을 항상 확인합니다.

스칼라 설치
  • 우분투:
  • sudo apt install scala
  • macOS:

  • brew update
    brew install scala
    


    Scala 설치 지침에 표시된 대로 SCALA_HOME 환경 변수를 설정하고 경로에 추가합니다. 예시:
    export SCALA_HOME=/usr/local/share/scala export PATH=$PATH:$SCALA_HOME/
    Windows를 사용하는 경우:

    %SCALA_HOME%c:\Progra~1\Scala 
    %PATH%%PATH%;%SCALA_HOME%\bin
    


    스칼라를 시작합니다.

    $ scala 
    Welcome to Scala 2.11.12 (OpenJDK 64-Bit Server VM, Java 11.0.9.1).
    Type in expressions for evaluation. Or try :help.
    


    설치에 따라 Scala 및 Java 버전이 변경될 수 있습니다...

    HelloWorld 코드를 복사하여 Scala REPL에 붙여넣기(터미널을 통한 대화형 모드)

    object HelloWorld {
     def main(args: Array[String]): Unit = {
     println(“Hello, world!”)
     }
    


    HelloWorld.scala를 저장하고 REPL을 종료합니다.

    scala> :save HelloWorld.scala 
    scala> :q
    


    다음으로 컴파일: scalac.
    $ scalac HelloWorld.scala
    컴파일된 .class 파일을 나열합니다.

    $ ls -al 
    HelloWorld*.class 
    HelloWorld$.class 
    HelloWorld.class
    


    스칼라 코드 복사

    집에 주문하자!

    mkdir hello
    $ cd hello
    $ echo \
    'object HelloWorld {def main(args: Array[String]) = println("Hello, world!")}' > \
    HelloWorld.scala
    


    sbt.build 구성 파일을 생성하여 artifactName(아래에서 생성할 jar 파일의 이름)을 "HelloWorld.jar"로 정의합니다.

    echo \
    'artifactName := { (sv: ScalaVersion, module: ModuleID, artifact: Artifact) =>
    "HelloWorld.jar" }' > \
    build.sbt
    


    SBT(Scala Package and Dependency Manager)를 시작하고 코드를 실행합니다.
    $ sbt
    SBT가 아직 설치되지 않은 경우 다운로드 및 설치됩니다. 시간이 걸릴 수 있습니다…

    sbt:hello> run
    [info] running HelloWorld 
    Hello, world!
    [success] Total time: 0 s, completed 4 de fev de 2021 00:20:26
    


    프로젝트를 패키징하여 .jar 파일 생성

    sbt:hello> package
    [success] Total time: 0 s, completed 4 de fev de 2021 00:20:35
    sbt:hello> exit
    [info] shutting down sbt server
    


    컴파일된 파일은 "./target/scala-version_xpto/HelloWorld.jar"에 있습니다.

    구글 클라우드 플랫폼(GCP)

    Google 클라우드 서비스를 사용하려면 결제를 활성화해야 합니다. 이 예에서는 클라우드 스토리지를 사용하여 Scala 코드와 함께 jar 파일을 저장하고 Cloud Dataproc을 사용하여 사용된 Spark 파일을 실행합니다.

    두 서비스 모두 무료 사용료가 있으며 할당량이 끝나면 계정에 연결된 신용 카드로 요금이 청구됩니다!

    Jar 파일을 클라우드 저장소의 버킷에 복사합니다.



    jar 파일이 있는 버킷 링크를 사용하여 Cloud Dataproc에서 새 작업을 제출합니다.



    필드 참조:
  • 클러스터: 목록에서 특정 클러스터를 선택합니다.
  • 작업 유형: "Spark"선택
  • 기본 클래스 또는 jar: jar 파일이 있는 버킷에 대한 링크를 붙여넣습니다.

  • 제출하기 전에 Spark 클러스터가 생성되었는지 확인하세요 :)

    양식을 작성한 후 "제출"을 선택하면 작업이 실행되고 작업 목록에 나타납니다.



    작업 ID를 선택하면 해당 출력을 볼 수 있습니다.



    이것은 Google 환경의 Scala에서 수행된 Spark 루틴을 배포하는 간단한 예였습니다. ssh를 통해 액세스하는 spark-shell을 통해 Spark 클러스터와 상호 작용할 가능성이 있으며 양식을 통해 제출하는 대신 Google을 사용할 수 있습니다. CLI 클라우드.

    참조:

    https://cloud.google.com/dataproc/docs/tutorials/spark-scala



    Medium에서 저를 팔로우하세요 :)

    좋은 웹페이지 즐겨찾기