복붙노트

[HADOOP] Spark 데이터 프레임을 Pandas / R 데이터 프레임으로 변환하기위한 요구 사항

HADOOP

Spark 데이터 프레임을 Pandas / R 데이터 프레임으로 변환하기위한 요구 사항

나는 Hadoop의 YARN에서 Spark를 실행 중입니다. 이 변환은 어떻게 작동합니까? 전환하기 전에 collect ()가 발생합니까?

또한 변환을 위해 모든 슬레이브 노드에 Python과 R을 설치해야합니까? 나는 이것에 대한 문서를 찾기 위해 고심하고있다.

해결법

  1. ==============================

    1.toPandas (PySpark) / as.data.frame (SparkR)

    toPandas (PySpark) / as.data.frame (SparkR)

    로컬 데이터 프레임을 만들기 전에 데이터를 수집해야합니다. 예를 들어 toPandas 메소드는 다음과 같습니다.

    def toPandas(self):
        import pandas as pd
        return pd.DataFrame.from_records(self.collect(), columns=self.columns)
    

    각 노드에 설치된 모든 종속성과 함께 최적으로 Python이 필요합니다.

    SparkR 카운터 파트 (as.data.frame)는 단순히 collect의 별칭입니다.

    요약하면, 데이터는 드라이버 노드에 수집되어 로컬 데이터 구조 (Python 및 R에서는 각각 pandas.DataFrame 및 base :: data.frame)로 변환됩니다.

    벡터화 된 사용자 정의 함수

    Spark 2.3.0부터 PySpark는 또한 다음과 같이 정의 된 데이터 덩어리에서 병렬로 작동하는 pandas_udf (SCALAR, GROUPED_MAP, GROUPED_AGG) 세트를 제공합니다.

    각 청크는

    마찬가지로, Spark 2.0.0부터 SparkR은 파티션 및 그룹화 표현식으로 각각 정의 된 data.frames에서 작동하는 dapply 및 gapply 기능을 제공합니다.

    앞서 언급 한 기능들 :

  2. from https://stackoverflow.com/questions/30983197/requirements-for-converting-spark-dataframe-to-pandas-r-dataframe by cc-by-sa and MIT license