Snowpark Scala용 Scala REPL 설정하기¶
이 항목에서는 Snowpark용 Scala REPL을 설정하는 방법에 대해 설명합니다.
이 항목의 내용:
Scala REPL 설치¶
Scala 빌드 도구에는 Scala REPL (read-eval-print loop)이 제공됩니다. 지원되는 Scala 빌드 도구 버전 을 설치하려면 사용할 버전을 찾고 설치 지침을 따르십시오.
Scala REPL 실행¶
Scala REPL에서 Snowpark 라이브러리를 사용하려면 다음을 수행하십시오.
아직 이렇게 하지 않은 경우, Snowpark 라이브러리 아카이브 파일을 다운로드하고 파일의 내용을 추출합니다.
아카이브 파일에 제공된
run.sh
셸 스크립트를 실행하여 REPL을 시작합니다.
cd <path>/snowpark-1.10.0 ./run.sh
run.sh
스크립트는 다음을 수행합니다.
Snowpark 라이브러리 및 종속성을 클래스 경로에 추가합니다.
Scala REPL에 의해 생성된 클래스에 대한 <path>/snowpark-1.10.0/repl_classes/ 디렉터리를 만듭니다.
com.snowflake.snowpark
패키지와com.snowflake.snowpark.functions
오브젝트를 가져오는preload.scala
파일을 미리 로딩합니다.
Scala에 다른 REPL을 사용하는 경우:
Snowpark 라이브러리 JAR 파일 및 종속성을 클래스 경로에 추가합니다.
Snowpark 라이브러리 JAR 파일은 추출된 TAR/ZIP 아카이브 파일의 최상위 디렉터리에 있습니다.
종속성은 추출된 TAR/ZIP 아카이브 파일의
lib
디렉터리에 있습니다.
REPL에 의해 생성된 클래스에 대한 임시 디렉터리를 만들고, 해당 디렉터리에 클래스를 생성하도록 REPL을 구성합니다.
나중에 인라인 사용자 정의 함수(UDF)를 정의할 때 REPL 클래스의 디렉터리를 종속성으로 지정 해야 합니다.
Scala REPL 구성 확인¶
Snowpark를 사용하도록 프로젝트를 구성했는지 확인하려면 Snowpark 코드의 간단한 예를 실행하십시오.
.zip
/.tar.gz
파일에서 추출한 파일이 포함된 디렉터리(즉,run.sh
스크립트가 포함된 디렉터리)에서 아래 코드가 포함된Main.scala
파일을 만듭니다.import com.snowflake.snowpark._ import com.snowflake.snowpark.functions._ object Main { def main(args: Array[String]): Unit = { // Replace the <placeholders> below. val configs = Map ( "URL" -> "https://<account_identifier>.snowflakecomputing.com:443", "USER" -> "<user name>", "PASSWORD" -> "<password>", "ROLE" -> "<role name>", "WAREHOUSE" -> "<warehouse name>", "DB" -> "<database name>", "SCHEMA" -> "<schema name>" ) val session = Session.builder.configs(configs).create session.sql("show tables").show() } }
다음 사항을 참고하십시오.
<placeholders>
를 Snowflake에 연결하는 데 사용하는 값으로 바꾸십시오.<account_identifier>
에 계정 식별자 를 지정하십시오.키 페어 인증 을 사용하려는 경우:
PASSWORD
를PRIVATE_KEY_FILE
로 바꾸고 개인 키 파일의 경로로 설정하십시오.개인 키가 암호화된 경우,
PRIVATE_KEY_FILE_PWD
를 개인 키 암호 해독을 위한 암호 구문으로 설정해야 합니다.
PRIVATE_KEY_FILE
및PRIVATE_KEY_FILE_PWD
를 설정하는 대신, 개인 키 파일에서 암호화되지 않은 개인 키 의 문자열 값으로PRIVATEKEY
속성을 설정할 수 있습니다.예를 들어, 개인 키 파일이 암호화되지 않은 경우, 이를 파일의 키 값으로 설정합니다(
-----BEGIN PRIVATE KEY-----
및-----END PRIVATE KEY-----
머리글 및 바닥글을 제외하고 줄 끝 제외).개인 키가 암호화된 경우, 키를
PRIVATEKEY
속성 값으로 설정하기 전에 키의 암호를 해독해야 합니다.
UDF를 만들려는 경우:
App
특성을 확장하도록object
를 설정하지 마십시오. 자세한 내용은 App 특성을 사용하여 오브젝트에서 UDF를 만드는 것에 대한 주의 사항 섹션을 참조하십시오.직렬화할 수 없는 클래스나 특성을 확장하도록
object
를 설정하지 마십시오.
디렉터리 내에서
run.sh
스크립트를 실행하여 Snowpark 라이브러리에 필요한 설정으로 Scala REPL을 시작합니다../run.sh
Scala REPL 셸에서 다음 명령을 입력하여, 방금 만든 샘플 파일을 로딩합니다.
:load Main.scala
다음 문을 실행하여, 로딩한 클래스의
main
메서드를 실행합니다.Main.main(Array[String]())
이는
SHOW TABLES
명령을 실행하고 결과의 처음 10개 행을 출력합니다.