sparklyr로 Exploratory에서 Spark에 연결해보십시오 (dplyr)

sparklyr로 Exploratory에서 Spark에 연결해보십시오 (dplyr)



빅데이터 분석 기반으로 더 이상 클래식한 아파치 스파크

지난번 은 SQL에서 Spark에 SQL 쿼리를 던져 데이터 분석을 하는 예를 설명했지만 이번에는 dplyr 쿼리를 사용한 예를 소개합니다.

Spark에 미국 항공사의 지연 데이터가 있다면 사실은 다음과 같이 dplyr 쿼리를 던져 Spark에서 데이터를 가져올 수 있습니다.
flights <- tbl(sc, "flights") %>%
  group_by(CARRIER, ORIGIN_STATE_ABR) %>% 
  summarize(DEP_DELAY_AVG = mean(DEP_DELAY)) %>%
  top_n(10, DEP_DELAY_AVG) %>%
  collect()

Exploratory의 유저, 혹은 지금의 R의 유저라면 dplyr의 문법(데이터 랭글링의 글래머라고 말해지고 있는 것)에 익숙해 있다고 생각합니다만, 번잡한 SQL을 손으로 쓰는 것과 비교해, 현격히 직관적으로 Spark 데이터 분석을 할 수 있습니다.

그래서 오늘은 Exploratory 중에서 sparklyr를 사용하여 Spark에 dplyr 쿼리를 던져 그 결과만을 스마트하게 가져오려면 어떻게 할 것인가를 소개하고 싶습니다.

준비



먼저, sparklyr라는 R 패키지와 Java를 설치합니다.

sparklyr 패키지 설치



dplyr로 데이터베이스에 연결하려면 sparklyr이라는 R에서 직접 Spark에 액세스하기 위해 R 패키지를 설치해야합니다.
Exploratory에서 CRAN에서 sparklyr 패키지를 다음과 같이 직접 설치합니다.

Java 설치 컴퓨터에 Java가 설치되어 있지 않은 경우, 여기에서 다운로드하여 설치하십시오.

Spark에서 dplyr로 데이터 로드



그런 다음 R 스크립트를 사용하여 데이터 소스에서 Spark에 sparklyr를 사용하여 연결합니다.

R 스크립트에서 다음과 같이 Spark에 연결합니다. (여기에서는 local에 배포한 Spark를 예로 들고 있습니다.) # Spark에 연결 (로컬 컴퓨터 예) # 환경 변수 설정 Sys.setenv(SPARK_HOME = "/Users/hidekoji/spark/spark-2.2.0-bin-hadoop2.7") #sparklyr 불러오기 library(sparklyr) # Spark에 연결 sc <- spark_connect(master = "spark://Hidetakas-MacBook-Pro.local:7077") 이제 각 항공사에 대해 평균 출발 지연의 상위 10개 주를 계산해 봅시다. dplyr의 쿼리는 다음과 같습니다. . flights <- tbl(sc, "flights") %>% group_by(CARRIER, ORIGIN_STATE_ABR) %>% summarize(DEP_DELAY_AVG = mean(DEP_DELAY)) %>% top_n(10, DEP_DELAY_AVG) %>% collect() 마지막 collect() 는 쿼리 실행 결과를 데이터 프레임으로 만드는 함수입니다. 이 기사의 맨 마지막에 이 2개의 섹션을 정리한 스크립트가 있으므로, 복사 & 붙여넣기로서, 필요한 부분을 변경해 시험할 수 있습니다.
データの取得 버튼을 클릭하여 결과를 확인한 다음 保存 버튼을 클릭하여 데이터 프레임으로 저장합니다.

데이터를 저장하고 테이블 뷰에서 결과를 확인합니다.



이 dplyr 쿼리의 결과를 막대 차트로 사용하여 "반복"에 항공사를 할당하면 항공사 당 출발 지연 시간 Top10의 상태를 시각화 할 수 있습니다.



요약



sparklyr 을 사용하면 Spark에 연결하여 Scala 또는 Python으로 프로그래밍하지 않고 SQL 쿼리를 작성하지 않아도 dplyr 쿼리로 데이터를 검색하여 시각화 및 추가 분석이 가능합니다. 됩니다.

데이터 과학을 본격적으로 배우고 싶은 분에게



올해 10월에, Exploratory사가 실리콘 밸리에서 실시하고 있는 연수 프로그램을 일본용으로 한, 데이터 과학 부트 캠프 의 제3회째가 도쿄에서 행해집니다. 본격적으로 상기와 같은 데이터 사이언스의 수법을, 프로그래밍 없이 배우고 싶은 분, 그러한 수법을 나날의 비즈니스에 활용해 보고 싶은 분은 꼭 이 기회에, 참가를 검토해 보는 것은 어떻습니까. 여기 에 자세한 정보가 있으므로 꼭 봐 주세요.

보충



이 예제를 사용하려면



다음 스크립트를 R 스크립트 데이터 소스로 복사하고 붙여넣고 필요에 따라 변경 후 실행하십시오.
# Sparkに接続 (ローカルのマシンの例)
# 環境変数の設定
Sys.setenv(SPARK_HOME = "/Users/hidekoji/spark/spark-2.2.0-bin-hadoop2.7")
# sparklyrを読み込む
library(sparklyr)
# Sparkに接続する
sc <- spark_connect(master = "spark://Hidetakas-MacBook-Pro.local:7077")
flights <- tbl(sc, "flights") %>%
  group_by(CARRIER, ORIGIN_STATE_ABR) %>% 
  summarize(DEP_DELAY_AVG = mean(DEP_DELAY)) %>%
  top_n(10, DEP_DELAY_AVG) %>%
  collect()

좋은 웹페이지 즐겨찾기