spark sql 예제

DSL 내부의 함수를 사용하는 경우(현재 데이터 프레임 API로 대체) 사용자가 org.apache.spark.sql.catalyst.dsl을 가져오는 데 사용됩니다. 대신 공용 데이터 프레임 함수 API를 사용해야 합니다. 하이브 메타 스토어 마루 테이블에 읽고 쓸 때, 스파크 SQL은 더 나은 성능을 위해 하이브 SerDe 대신 자신의 마루 지원을 사용하려고합니다. 이 동작은 spark.sql.hive.convertMetastoreParquet 구성에 의해 제어되며 기본적으로 켜지다. 블로그에 표시된 쿼리 예제의 경우 `employee.txt`와 `employee.json`의 두 개의 파일을 사용할 것입니다. 아래 이미지는 두 파일의 내용을 보여줍니다. 이 두 파일은 스파크 설치가 포함된 폴더 내부에 `예제/src/main/scala/apache/spark/spark/sparkSQLExample.scala`에 저장됩니다(~/다운로드/스파크-2.0.2-bin-hadoop2.7). 따라서 쿼리를 실행하는 모든 사용자가 이 디렉토리에 배치하거나 아래 코드 줄에 파일 경로를 설정합니다. Spark 1.3은 DataType의 기본 sql 패키지에 있던 형식 별칭을 제거합니다. 사용자는 대신 org.apache.spark.sql.type에서 클래스를 가져와야 합니다. 예를 들어 사용자 정의 평균은 다음과 같이 보일 수 있습니다: Hive로 작업할 때 영구 Hive 메타스토어에 대한 연결, Hive serdes 지원 및 Hive 사용자 정의 기능을 포함하여 Hive 지원을 통해 SparkSession을 인스턴스화해야 합니다.

기존 Hive 배포가 없는 사용자는 여전히 Hive 지원을 사용할 수 있습니다. hive-site.xml에 의해 구성되지 않은 경우 컨텍스트는 자동으로 현재 디렉터리에서 metastore_db를 만들고 spark.sql.warehouse.dir로 구성된 디렉토리를 만듭니다. 스파크 응용 프로그램이 시작됩니다. 하이브 사이트.xml의 hive.metastore.warehouse.dir 속성은 Spark 2.0.0 이후 더 이상 사용되지 않습니다. 대신 spark.sql.warehouse.dir을 사용하여 웨어하우스에서 데이터베이스의 기본 위치를 지정합니다. Spark 응용 프로그램을 시작하는 사용자에게 쓰기 권한을 부여해야 할 수 있습니다.

Ce contenu a été publié dans Non classé par samuel. Mettez-le en favori avec son permalien.