더북(TheBook)

5.3.3 쓰리프트 서버로 스파크 SQL 접속

 

스파크 프로그램에서 직접 쿼리를 실행하거나 SQL 셸로 쿼리를 입력하는 방법 외에도 스파크 쓰리프트15라는 JDBC(또는 ODBC) 서버를 이용해 원격지에서 SQL 명령을 실행할 수 있다. JDBC(또는 ODBC)는 관계형 데이터베이스의 표준 접속 프로토콜이므로 쓰리프트 서버를 이용해 관계형 데이터베이스와 통신할 수 있는 모든 애플리케이션에서 스파크를 사용할 수 있다.

쓰리프트 서버는 여러 사용자의 JDBC 및 ODBC 접속을 받아 사용자의 쿼리를 스파크 SQL 세션으로 실행하는 독특한 스파크 애플리케이션이다. 다른 스파크 애플리케이션과 마찬가지로 쓰리프트 서버 또한 스파크 클러스터에서 구동한다. 쓰리프트 서버로 전달된 SQL 쿼리는 DataFrame으로 변환한 후 (앞서 언급한 바와 같이) 최종적으로 RDD 연산으로 변환해 실행하며, 실행 결과는 다시 JDBC 프로토콜로 반환한다. 쿼리가 참조하는 DataFrame은 쓰리프트 서버가 사용하는 하이브 메타스토어에 미리 영구적으로 등록해야 한다.

 

15 쓰리프트(Thrift) 이름은 하이브의 쓰리프트 서버에서 유래했다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.