처음 대하는 환경이라 스칼라 설치에, 스파크, maven설치에 winutils까지 이것 저것 삽질을 많이 했었는데,
쉘에서 실행해본다던가 다양한 방법이 있지만..
단지 스파크의 API를 스칼라 언어로 테스트해볼 것이라면 아래 설치만으로도 충분합니다.
뭐한건지...;;;
물론, 실제 운영 하려면 하둡설치에 다른 여러가지들이 필요 하겠지요.
간단하게 라인 수를 재는 프로그램을 돌려보기 위한 환경입니다.
스파크의 경우 파이썬, 자바, 스칼라 언어로 작동이 가능합니다.(공식문서에도 세가지 언어로 딱 가이드하더군요.)
스칼라 기준으로합니다.. (윈도우7/10 환경입니다.)
1. 자바를 설치합니다. 자바 설치후 환경변수로 JAVA_HOME 을 자바 설치 경로로 셋팅해줍니다. 설치되어있다면 패스~
설치 : http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
171버전을 설치했네요.
* 참고로 관리자 권한으로 CMD 입력창을 실행하고
"C:\Windows\system32\rundll32.exe" sysdm.cpl,EditEnvironmentVariables 를 입력하면 바로 환경변수 수정이 가능합니다.
2. IntelliJ를 설치합니다. 어차피 메모장에서 개발할 것은 아니기 때문에, 바로 IDE를 설치합니다. 설치시 scala 플러그인을 선택하면 필요한 것을 같이 받을 수 있습니다.
IntelliJ 설치 경로 : https://www.jetbrains.com/idea/download/#section=windows
위 링크에서 커뮤니티 버전을 선택하시면 무료로 테스트 사용이 가능합니다. (상용개발시에는 구매를 해야겠지요.)
64비트 런처 숏컷은 하나 만들었습니다 .x86은 JRE는 필요없어서 체크안했구요.
설치시 아래 화면은 기본으로 넘어가셔도 됩니다. 보시고 필요한 것 있으면 더 다운로드 받으시면 됩니다.
아래 화면에서는 플러그인에 Scala를 꼭 Install해주세요.~
런처화면이 나오고
Create New Porject 를 해서
Scala에 SBT를 선택합니다. SBT Simple Build Tool 이라해서, 스칼라 빌드 환경입니다.
기존에 JDK를 설치했기 때문에 설치한 경로로 JDK환경을 설정합니다.
위 화면이 중요한데요. 스파크 2.3.0 버전은 Scala 2.11.12 버전으로 해야 됩니다. 2.12.x로 하니 잘 안되더군요.
이것 때문에 또 삽질.
http://spark.apache.org/docs/latest/quick-start.html <- 여기는 2.11.8로 설명이..
프로젝트 뷰 창이 나오지 않으면 ALT+1 을 누르시거나 View 메뉴에 Tool Windows -> Project를 차례로 선택합니다.
그리고 build.sbt 파일을 위와 같이 수정합니다.
name := "lineCount" version := "0.1" scalaVersion := "2.11.12" libraryDependencies += "org.apache.spark" %% "spark-core" % "2.3.0"
스칼라 파일을 소스에 하나 추가합니다. (sbt파일이 한번 Sync가 되어야 Scala class파일을 추가할 수 있는걸로 보여집니다?)
Object를 추가할것으므로 Kind에서 Object를 선택하세요. 이름은 LineCount로 합니다.
소스파일 내용은 아래와 같습니다.
import org.apache.spark.{SparkConf, SparkContext}
object LineCount {
def main(args: Array[String]): Unit = {
val logFile = "c:\\download\\test.txt" //경로는 바꿀 수 있습니다.
val conf = new SparkConf().setAppName("Simple Application").setMaster("local")
val sc = new SparkContext(conf)
val logData = sc.textFile(logFile, 2).cache()
val lineCount = logData.count()
println("라인수==>"+lineCount)
sc.stop()
}
}
위와 같이 라인 수가 잘 나오는 것을 확인 할 수 있습니다
추가 링크:
스팍 개발 환경 설정(영어) : http://www.itversity.com/2018/04/19/setup-development-environment-big-data-hadoop-and-spark/
스팍 공식 문서(영어) http://spark.apache.org/docs/latest/index.html
스칼라 언어 배우기(한글) : https://twitter.github.io/scala_school/ko/index.html
'설정' 카테고리의 다른 글
Docker Mysql 설치 후 HeidiSQL 접속시 caching_sha2_password 에러 발생 대처 (0) | 2018.08.05 |
---|---|
Docker를 이용해 워드프레스 설치하기 (2) | 2018.07.28 |
Spectre & Metdown (스펙터, & 멜트다운) 업데이트 (0) | 2018.01.28 |
Syntax highlighting 붙히고 </t> 태그가 붙는 현상. (0) | 2018.01.21 |
postfix + opendkim 설정. (0) | 2017.11.18 |