SPARK SQL이란 ?

: 구조화/반구조화 된 데이터를 처리하는 것     

sql에 대한 기본 지원을 제공, 외부 소스 모두에 저장된 데이터 조회가 간소화 됨, RDDs와 관계형 테이블의 경계가 사라짐.

- Import relational data from Parquet files and Hive tables

- Run SQL queries over imported data and existing RDDs

- Easily write RDDs out to Hive tables or Parquet files


다양한 interface 지원

> SQL, HiveSQL queries & DataFrame API (java, python, scala R) & DataSet API(scala, java)

다양한 Input source를 지원

>RDD & 임시테이블

 JSON 데이터 셋

 Parquet file

 HIve Table

 ODBC/JDBC 서버와의 연동


DataFrame이란 ?

: columns 들로 조직된 분산된 데이터 모음 ( 관계형 데이터베이스와 같은 개념) - 데이터 프레임이란 관계형 데이터 베이스의 테이블과 R, python의 데이터 프레임과 같은 개념이다. (데이터 프레임은 2차원 배열 구조로 구성되어 있다.)

DF can be constructed from structured data files, tables in Hive, external databases, or existing RDDs

python에서 DF를 만드는 방법    
 

  • Ability to scale from kilobytes of data on a single laptop to petabytes on a large cluster

  • Support for a wide array of data formats and storage systems

  • State-of-the-art optimization and code generation through the Spark SQL Catalystoptimizer

  • APIs for Python, Java, Scala, and R (in development via SparkR)


외부 데이터 소스를 읽어오면 데이터 프레임 형태로 읽음 (예제)

Running SQL Queries Programmatically



'Data Engineer > Spark' 카테고리의 다른 글

Spark STREAM??  (0) 2016.05.12
Spark - RDD란 !!? (2)  (0) 2016.05.09
Spark - RDD란 !!?  (0) 2016.05.09
Spark - 클러스터 설정/ 구축  (1) 2016.05.09
Spark 설치 방법 (우분투 ubuntu 환경)  (0) 2016.05.09

+ Recent posts