将 Spark SQL 与 Dataproc Metastore 搭配使用

本页展示了将 Spark SQL 与 Dataproc Metastore 服务搭配使用的示例。在此示例中,您将在 Managed Service for Apache Spark 集群上启动 Spark SQL 会话,并运行一些示例命令来创建数据库和表。

准备工作

连接到 Spark SQL

如需开始使用 Spark SQL,请使用 SSH 连接到与 Dataproc Metastore 服务关联的 Managed Service for Apache Spark 集群。通过 SSH 连接到集群后,您可以运行 Spark 命令来管理元数据。

连接到 Spark SQL

  1. 在 Google Cloud 控制台中,前往虚拟机实例页面。
  2. 在虚拟机实例列表中,点击要连接的 Managed Service for Apache Spark 虚拟机实例所在行中的 SSH

此时会打开一个浏览器窗口,并显示节点上的主目录,其中包含类似于以下内容的输出:

Connected, host fingerprint: ssh-rsa ...
Linux cluster-1-m 3.16.0-0.bpo.4-amd64 ...
...
example-cluster@cluster-1-m:~$

如需启动 Hive 并创建数据库和表,请在 SSH 会话中运行以下命令:

  1. 启动 Spark shell。

    spark-shell
    
  2. 创建一个名为 myDB 的数据库。

    spark.sql("create database myDB");
    
  3. 使用您创建的数据库。

    spark.sql("use myDB");
    
  4. 创建名为 myTable 的表。

    spark.sql("create table bar(id int,name string)");
    
  5. 列出 myDB 下的表格。

    spark.sql("show tables").show();
    
  6. 在您创建的表中显示表格行。

    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|
+--------+---------+-------+

后续步骤