반응형
테스트환경
- zeppelin 0.8.1
- spark 2.4.0
코드
%spark
import scala.io.Source.fromFile
// fromFile : hdfs 경로 안됨. 로컬 경로만 가능
val empPath = "/root/sunny/spark-in-action/ghEmployess.txt"
val employees = Set() ++ (
for{
line <- fromFile(empPath).getLines
}yield line.trim
)
-
fromFile은 hdfs 경로에 있는 파일 읽기는 안 된다. 로컬 서버에 있는 파일경로만 가능하다.
-
hdfs 파일 읽을 때는 textFile 연산자를 사용한다.
val lines = sc.textFile("/spark-in-action/client-ids.log")
%spark
// udf 만들기
val isEmp = user => employees.contains(user)
val isEmployee = spark.udf.register("isEmpUdf", isEmp)
// udf 사용하기
sql("""select isEmpUdf("NathanNg") as isEmpUdf from orderedTable limit 1""").show()
반응형
'BigData 기술 > Spark' 카테고리의 다른 글
[Spark] Spark 예제 - 고객별 구매횟수, 구매금액 등 구해보기 (count, sum, sort) (4) | 2020.07.06 |
---|---|
[Spark] Spark 예제 - json 데이터에서 원하는 데이터만 추출 (2) | 2020.06.25 |
histogram in spark (scala) using zeppelin (4) | 2020.06.23 |
jupyter 노트북에서 pyspark 사용하기 (2) | 2020.04.28 |
docker로 spark-hadoop-cluster 구축하기 (4) | 2020.04.24 |
댓글