Snowparkとは
クラウド型DWHのSnowlakeから今年の6月にリリースされた新機能です。
Snowflake内のデータを操作するAPIでSnowflakeの計算リソースを使って処理の実行をすることができます。
現在はScalaのみサポートしてるみたいです。
試してみる
公式の手順に沿ってやってみました。
build.sbtに依存関係を追加します。
Scala 2.13.x
ではSnowparkは対応していないようなので気をつけてください!
build.sbt
name := "snowpark"
version := "0.1"
scalaVersion := "2.12.13"
libraryDependencies += "com.snowflake" % "snowpark" % "0.10.0"
table1の内容をセレクトするコードを書いてみました。
設定情報はprofile.properties
に書いています。
Main.scala
import com.snowflake.snowpark.Session
object Main {
def main(args: Array[String]): Unit = {
val session = Session.builder.configFile(getClass.getResource("/profile.properties").getPath).create
session.sql("select * from table1").show()
session.close()
}
}
無事取得できました!
クラウドデータプラットフォームを目指すという心意気が感じられる機能だと思いました。
機械学習系のライブラリもSnowflakeのリソースを使って実行できるのでPythonのサポートも楽しみですね!