SDKMANの「sdk list」を見ていて、Apache Sparkが扱えるようになっていたことに気付きまして。
なぜにApache Spark?と思わないでもないものの、どのようなものか試しておきましょう。
インストール。
$ sdk install spark
$HOMEの.sdkmanディレクトリ配下に、Apache Sparkがインストールされます。
$ ll $HOME/.sdkman/candidates/spark 合計 12 drwxrwxr-x 3 xxxxx xxxxx 4096 6月 8 23:28 ./ drwxrwxr-x 9 xxxxx xxxxx 4096 6月 8 23:27 ../ drwxr-xr-x 13 xxxxx xxxxx 4096 2月 23 04:42 2.3.0/ lrwxrwxrwx 1 xxxxx xxxxx 45 6月 8 23:28 current -> $HOME/.sdkman/candidates/spark/2.3.0/
コマンドもインストールされており、パスが通った状態になっています。
$ ll $HOME/.sdkman/candidates/spark/2.3.0/bin 合計 116 drwxr-xr-x 2 xxxxx xxxxx 4096 2月 23 04:42 ./ drwxr-xr-x 13 xxxxx xxxxx 4096 2月 23 04:42 ../ -rwxr-xr-x 1 xxxxx xxxxx 1089 2月 23 04:42 beeline* -rw-r--r-- 1 xxxxx xxxxx 1064 2月 23 04:42 beeline.cmd -rwxr-xr-x 1 xxxxx xxxxx 3826 2月 23 04:42 docker-image-tool.sh* -rwxr-xr-x 1 xxxxx xxxxx 1933 2月 23 04:42 find-spark-home* -rw-r--r-- 1 xxxxx xxxxx 2681 2月 23 04:42 find-spark-home.cmd -rw-r--r-- 1 xxxxx xxxxx 1892 2月 23 04:42 load-spark-env.cmd -rw-r--r-- 1 xxxxx xxxxx 2025 2月 23 04:42 load-spark-env.sh -rwxr-xr-x 1 xxxxx xxxxx 2989 2月 23 04:42 pyspark* -rw-r--r-- 1 xxxxx xxxxx 1170 2月 23 04:42 pyspark.cmd -rw-r--r-- 1 xxxxx xxxxx 1540 2月 23 04:42 pyspark2.cmd -rwxr-xr-x 1 xxxxx xxxxx 1030 2月 23 04:42 run-example* -rw-r--r-- 1 xxxxx xxxxx 1223 2月 23 04:42 run-example.cmd -rwxr-xr-x 1 xxxxx xxxxx 3196 2月 23 04:42 spark-class* -rw-r--r-- 1 xxxxx xxxxx 1180 2月 23 04:42 spark-class.cmd -rw-r--r-- 1 xxxxx xxxxx 2545 2月 23 04:42 spark-class2.cmd -rwxr-xr-x 1 xxxxx xxxxx 3017 2月 23 04:42 spark-shell* -rw-r--r-- 1 xxxxx xxxxx 1178 2月 23 04:42 spark-shell.cmd -rw-r--r-- 1 xxxxx xxxxx 1631 2月 23 04:42 spark-shell2.cmd -rwxr-xr-x 1 xxxxx xxxxx 1065 2月 23 04:42 spark-sql* -rw-r--r-- 1 xxxxx xxxxx 1173 2月 23 04:42 spark-sql.cmd -rw-r--r-- 1 xxxxx xxxxx 1118 2月 23 04:42 spark-sql2.cmd -rwxr-xr-x 1 xxxxx xxxxx 1040 2月 23 04:42 spark-submit* -rw-r--r-- 1 xxxxx xxxxx 1180 2月 23 04:42 spark-submit.cmd -rw-r--r-- 1 xxxxx xxxxx 1155 2月 23 04:42 spark-submit2.cmd -rwxr-xr-x 1 xxxxx xxxxx 1039 2月 23 04:42 sparkR* -rw-r--r-- 1 xxxxx xxxxx 1168 2月 23 04:42 sparkR.cmd -rw-r--r-- 1 xxxxx xxxxx 1097 2月 23 04:42 sparkR2.cmd
Apache Sparkがインストールされたので、Quick Startに沿って使ってみます。
サンプルとなる、README.mdをダウンロード。
$ wget https://raw.githubusercontent.com/apache/spark/master/README.md
spark-shell起動。
$ spark-shell ... Spark context Web UI available at http://192.168.254.128:4040 Spark context available as 'sc' (master = local[*], app id = local-1528468478799). Spark session available as 'spark'. Welcome to ____ __ / __/__ ___ _____/ /__ _\ \/ _ \/ _ `/ __/ '_/ /___/ .__/\_,_/_/ /_/\_\ version 2.3.0 /_/ Using Scala version 2.11.8 (OpenJDK 64-Bit Server VM, Java 1.8.0_171) Type in expressions to have them evaluated. Type :help for more information.
確認。
scala> val textFile = spark.read.text("README.md") textFile: org.apache.spark.sql.DataFrame = [value: string] scala> textFile.count() res0: Long = 103 scala> textFile.first() res1: org.apache.spark.sql.Row = [# Apache Spark]
あっさりと。Apache Sparkをちょこっと簡単に使う環境を用意するという分には、良いかもしれません。