[SQL] 스파크에서 쿼리의 실행 시간을 측정하는 방법
SQL스파크에서 쿼리의 실행 시간을 측정하는 방법
아파치 스파크 (Bluemix) 쿼리의 실행 시간을 측정 할 필요가있다. 내가 뭘하려합니다 :
import time
startTimeQuery = time.clock()
df = sqlContext.sql(query)
df.show()
endTimeQuery = time.clock()
runTimeQuery = endTimeQuery - startTimeQuery
그것은 좋은 방법인가? 나는 외모를 내가 표를 볼 때 너무 작은 상대를 얻을 시간.
해결법
-
==============================
1.최신 정보: 아니, 시간이 패키지를 사용하면 스파크 작업의 실행 시간을 측정하는 가장 좋은 방법은 아니다. 내가 아는 가장 편리하고 정확한 방법은 스파크 역사 서버를 사용하는 것입니다.
최신 정보: 아니, 시간이 패키지를 사용하면 스파크 작업의 실행 시간을 측정하는 가장 좋은 방법은 아니다. 내가 아는 가장 편리하고 정확한 방법은 스파크 역사 서버를 사용하는 것입니다.
Bluemix에, 당신의 노트북에 오른쪽에있는 "Paelette"로 이동합니다. 은 "Evironment"패널을 선택하고 당신은 당신이 계산 시간을 포함하여 수행 스파크 작업을 조사 할 수있는 스파크 역사 서버에 대한 링크를 볼 수 있습니다.
-
==============================
2.나는 System.nanoTime이 같은 도우미 함수를 감싸 사용 -
나는 System.nanoTime이 같은 도우미 함수를 감싸 사용 -
def time[A](f: => A) = { val s = System.nanoTime val ret = f println("time: "+(System.nanoTime-s)/1e6+"ms") ret } time { df = sqlContext.sql(query) df.show() }
-
==============================
3.스파크 쉘 (스칼라)에서 작업을 수행하려면, 당신은 spark.time ()을 사용할 수 있습니다.
스파크 쉘 (스칼라)에서 작업을 수행하려면, 당신은 spark.time ()을 사용할 수 있습니다.
https://stackoverflow.com/a/50289329/3397114 : 내게로 다른 응답
df = sqlContext.sql(query) spark.time(df.show())
출력은 다음과 같습니다
+----+----+ |col1|col2| +----+----+ |val1|val2| +----+----+ Time taken: xxx ms
관련 : 성능 문제 해결을위한 아파치 스파크 워크로드 메트릭 측정에.
-
==============================
4.SPARK 자체는 스파크 작업의 각 단계에 대한 많은 세부 정보를 제공합니다.
SPARK 자체는 스파크 작업의 각 단계에 대한 많은 세부 정보를 제공합니다.
// IP-MasterNode을 : 당신은 HTTP에 실행중인 작업을 볼 수 있습니다 4040 또는 당신은 나중에 작업을 분석하는 역사 서버를 활성화 할 수 있습니다.
역사 서버에 대한 추가 정보를 원하시면 여기를 참조하십시오.
from https://stackoverflow.com/questions/34629313/how-to-measure-the-execution-time-of-a-query-on-spark by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 어떻게 중포 기지 분석 원시 데이터에 세션 및 세션 기간을 계산? (0) | 2020.05.27 |
---|---|
[SQL] SQL 여러 조건 조항에 LINQ (0) | 2020.05.27 |
[SQL] HQL : 그것은 내부 하위 쿼리에 가입 수행 할 수 있습니까? (0) | 2020.05.27 |
[SQL] IDENT_CURRENT 대 SCOPE_IDENTITY (0) | 2020.05.27 |
[SQL] 오라클에 연결되어 SQL 서버에서 SQL 쿼리를 작성할 때 어떻게 날짜 리터럴을 지정합니까? (0) | 2020.05.27 |