설명하다

디버깅을 위해 (논리적 및 물리적) 계획을 콘솔에 인쇄합니다.

문법

explain(extended: Optional[Union[bool, str]] = None, mode: Optional[str] = None)

매개 변수

매개 변수 유형 설명
extended bool, 선택 사항 기본값 False입니다. 이면 False실제 계획만 인쇄합니다. 이 문자열은 지정 mode하지 않고 문자열인 경우 모드가 지정된 대로 작동합니다.
mode str, 선택 사항 는 계획의 예상 출력 형식을 지정합니다. simple: 실제 계획만 인쇄합니다. extended: 논리적 계획과 물리적 계획을 모두 인쇄합니다. codegen: 사용 가능한 경우 물리적 계획 및 생성된 코드를 인쇄합니다. cost: 논리 계획 및 통계를 사용할 수 있는 경우 인쇄합니다. formatted: 설명 출력을 실제 계획 개요 및 노드 세부 정보의 두 섹션으로 분할합니다.

예제

df = spark.createDataFrame(
    [(14, "Tom"), (23, "Alice"), (16, "Bob")], ["age", "name"])
df.explain()
# == Physical Plan ==
# *(1) Scan ExistingRDD[age...,name...]

df.explain(extended=True)
# == Parsed Logical Plan ==
# ...
# == Analyzed Logical Plan ==
# ...
# == Optimized Logical Plan ==
# ...
# == Physical Plan ==
# ...

df.explain(mode="formatted")
# == Physical Plan ==
# * Scan ExistingRDD (...)
# (1) Scan ExistingRDD [codegen id : ...]
# Output [2]: [age..., name...]
# ...