이 페이지에서는 Dataproc Metastore 서비스에서 Spark SQL을 사용하는 예시를 보여줍니다. 이 예시에서는 Dataproc 클러스터에서 Spark SQL 세션을 시작하고 몇 가지 샘플 명령어를 실행하여 데이터베이스 및 테이블을 만듭니다.
시작하기 전에
Spark SQL에 연결
Spark SQL을 사용하려면 SSH를 사용하여 Dataproc Metastore 서비스와 연결된 Dataproc 클러스터에 연결합니다. SSH를 사용하여 클러스터에 연결한 후에는 Spark 명령어를 실행하여 메타데이터를 관리할 수 있습니다.
Spark SQL에 연결
- Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.
- 가상 머신 인스턴스 목록에서 연결할 Dataproc VM 인스턴스 행의 SSH를 클릭합니다.
노드의 홈 디렉터리에 다음과 비슷한 출력이 표시된 브라우저 창이 열립니다.
Connected, host fingerprint: ssh-rsa ...
Linux cluster-1-m 3.16.0-0.bpo.4-amd64 ...
...
example-cluster@cluster-1-m:~$
Hive를 시작하고 데이터베이스와 테이블을 만들려면 SSH 세션에서 다음 명령어를 실행합니다.
Spark 셸을 시작합니다.
spark-shell
myDB
라는 데이터베이스를 만듭니다.spark.sql("create database myDB");
생성한 데이터베이스를 사용합니다.
spark.sql("use myDB");
myTable
이라는 테이블을 만듭니다.spark.sql("create table bar(id int,name string)");
myDatabase
아래의 테이블을 나열합니다.spark.sql("show tables").show();
생성한 테이블의 테이블 행을 표시합니다.
desc myTable;
이러한 명령어를 실행하면 다음과 비슷한 출력이 표시됩니다.
$spark-shell
scala>spark.sql("create database myDB");
scala>spark.sql("use myTable");
scala>spark.sql("create table myTable(id int,name string)");
scala>spark.sql("show tables").show();
+--------+---------+-----------+
|database|tableName|isTemporary|
+--------+---------+-----------+
| myDB| myTable| false|
+--------+---------+-----------+
+--------+---------+-------+
|col_name|data_type|comment|
+--------+---------+-------+
| id| int| null|
| name| string| null|
+--------+---------+-------+