本文介绍了 Databricks 既不提供也不支持的 DataGrip。 若要联系提供商,请参阅 DataGrip 支持

DataGrip 是一个适用于数据库开发人员的集成开发环境 (IDE),它提供查询控制台、架构导航、解释计划、智能代码完成、实时分析和快速修复、重构、版本控制集成以及其他功能。

本文介绍了如何使用本地开发计算机来安装、配置和使用 DataGrip,以使用 Azure DataRicks 中的数据库。

本文已使用 macOS、 Databricks JDBC Driver 版本 2.6.25 和 DataGrip 版本 2021.1.1 进行了测试。

安装 DataGrip 之前,本地开发计算机必须满足以下要求:

  • Linux、macOS 或 Windows 操作系统。
  • Databricks JDBC 驱动程序 下载到本地开发计算机上,从下载的 DatabricksJDBC42-<version>.zip 文件中提取 DatabricksJDBC42.jar 文件。
  • 要与 DataGrip 连接的 Azure Databricks 群集 SQL 仓库
  • 步骤 1:安装 DataGrip

    下载并安装 DataGrip

  • Linux:下载 .zip 文件,提取其内容,然后按照 Install-Linux-tar.txt 文件中的说明进行操作。
  • macOS:下载并运行 .dmg 文件。
  • Windows:下载并运行 .exe 文件。
  • 有关详细信息,请参阅 DataGrip 网站上的 安装 DataGrip

    步骤 2:配置用于 DataGrip 的 Databricks JDBC 驱动程序

    使用前面下载的 Databricks JDBC 驱动程序的相关信息设置 DataGrip。

  • 启动 DataGrip。
  • 单击“文件”>“数据源”。
  • 在“数据源和驱动程序”对话框中,单击“驱动程序”选项卡。
  • 单击“ (驱动程序)”按钮来添加驱动程序 +
  • 对于“名称”,请输入 Databricks
  • 在“常规”选项卡上的“驱动程序文件”列表中,单击“ (添加)”按钮 +
  • 单击“自定义 JAR”。
  • 通过浏览找到并选择你之前提取的 DatabricksJDBC42.jar 文件,然后单击“打开”。
  • 对于“类”,请选择 com.databricks.client.jdbc.Driver
  • 单击“确定”。
  • 步骤 3:将 DataGrip 连接到你的 Azure Databricks 数据库

    使用 DataGrip 连接到要使用的群集或 SQL 仓库,以访问 Azure Databricks 工作区中的数据库。

  • 在 DataGrip 中,单击“文件”>“数据源”。

  • 在“数据源”选项卡上,单击“ (添加)”按钮 +

  • 选择在上一步添加的 Databricks 驱动程序。

  • 在“常规”选项卡上,对于“URL”,请输入你的 Azure Databricks 资源的“JDBC URL”字段的值,如下所示:

  • 在群集的“ 高级选项 ”区域中的“JDBC/ODBC”选项卡上查找“JDBC URL”字段值。 JDBC URL 应当类似于以下项:

    jdbc:databricks://adb-1234567890123456.7.azuredatabricks.net:443/default;transportMode=http;ssl=1;httpPath=sql/protocolv1/o/1234567890123456/1234-567890-reef123;AuthMech=3;UID=token;PWD=<personal-access-token>
    

    如果 JDBC URL 以 jdbc:spark: 开头,则必须将其更改为 jdbc:databricks:,否则稍后会出现连接错误。

  • <personal-access-token> 替换为用于 Azure Databricks 工作区的个人访问令牌

    如果不希望在本地开发计算机上存储个人访问令牌,请在 JDBC URL 中省略 UID=token;PWD=<personal-access-token>,在“保存”列表中选择“从不”。 每次尝试连接时,系统都会提示你输入用户 (token) 和密码(你的个人访问令牌)。

  • 对于“名称”,请输入“Databricks 群集”。

    有关详细信息,请参阅 DataGrip 网站上的“数据源和驱动程序”对话框

    SQL 仓库

  • 在 SQL 仓库的“连接详细信息”选项卡上找到“JDBC URL”字段值。 JDBC URL 应当类似于以下项:

    jdbc:databricks://adb-1234567890123456.7.azuredatabricks.net:443/default;transportMode=http;ssl=1;AuthMech=3;httpPath=/sql/1.0/warehouses/a123456bcde7f890;
    

    如果 JDBC URL 以 jdbc:spark: 开头,则必须将其更改为 jdbc:databricks:,否则稍后会出现连接错误。

  • 对于“用户”,输入 token

  • 对于“密码”,请输入你的个人访问令牌

    如果不希望在本地开发计算机上存储个人访问令牌,请将“用户”和“密码”留空,并在“保存”列表中选择“从不”。 每次尝试连接时,系统都会提示你输入用户(单词 token)和密码(你的个人访问令牌)。

  • 对于“名称”,请输入“Databricks SQL 仓库”。

    有关详细信息,请参阅 DataGrip 网站上的“数据源和驱动程序”对话框

  • 单击 “测试连接”

    在测试连接之前,你应当启动你的资源。 否则,测试会在资源启动的同时进行,可能需要几分钟才能完成。

  • 如果连接成功,请在“架构”选项卡上选中你希望能够访问的架构对应的复选框,例如“default”。

  • 单击“确定”。

    针对需要 DataGrip 访问的每个资源,按此步骤中的说明重复操作。

    步骤4:使用 DataGrip 来浏览表

    使用 DataGrip 访问你的 Azure Databricks 工作区中的表。

  • 在 DataGrip 的“数据库”窗口中,依次展开你的资源节点、要浏览的架构、“tables”。
  • 双击某个表。 此时会显示该表中的第一组行。
  • 按此步骤中的说明重复操作,以访问其他表。

    若要访问其他架构中的表,请在“数据库”窗口的工具栏中,单击“数据源属性”图标。 在“数据源和驱动程序”对话框中的“架构”选项卡上,选中你要访问的每个其他架构对应的复选框,然后单击“确定”。

    步骤 5:使用 DataGrip 运行 SQL 语句

    使用 DataGrip 将示例 diamonds 表从示例数据集加载到工作区中的 default 数据库,然后查询该表。 有关详细信息,请参阅教程:使用笔记本查询数据中的创建表。 如果不想加载示例表,请跳到后续步骤

  • 在 DataGrip 的“数据库”窗口中(此时“default”架构已展开),单击“文件”>“新建”>“SQL 文件”。

  • 为文件输入一个名称,例如 create_diamonds

  • 在文件选项卡中,输入以下 SQL 语句,这将删除名为 diamonds 的表(如果该表存在),然后基于指定的 Databricks 文件系统 (DBFS) 装入点中 CSV 文件的内容创建一个名为 diamonds 的表:

    DROP TABLE IF EXISTS diamonds;
    CREATE TABLE diamonds USING CSV OPTIONS (path "/databricks-datasets/Rdatasets/data-001/csv/ggplot2/diamonds.csv", header "true");
    
  • 选择 DROP TABLE 语句。

  • 在文件选项卡的工具栏上,单击“执行”图标。

  • 从下拉列表中选择“DROP TABLE IF EXISTS diamonds; CREATE TABLE diamon...”。

    若要更改单击“执行”图标时会发生的操作,请在下拉列表中选择“自定义”。

  • 在“数据库”窗口中,双击 diamonds 表以查看其数据。 如果 diamonds 表未显示,请单击窗口的工具栏中的“刷新”按钮。

    若要删除 diamonds 表,请执行以下操作:

  • 在 DataGrip 的“数据库”窗口的工具栏中,单击“跳转到查询控制台”按钮。

  • 选择“控制台(默认)”。

  • 在控制台选项卡中,输入以下 SQL 语句:

    DROP TABLE diamonds;
    
  • 选择 DROP TABLE 语句。

  • 在控制台选项卡的工具栏上,单击“执行”图标。 diamonds 表从表的列表中消失。 如果 diamonds 表未显示,请单击“数据库”窗口的工具栏中的“刷新”按钮。

  • 详细了解 DataGrip 中的查询控制台
  • 了解 DataGrip 中的数据编辑器
  • 详细了解 DataGrip 中的各种工具窗口
  • 了解如何在 DataGrip 中进行搜索
  • 了解如何在 DataGrip 中导出数据
  • 了解如何在 DataGrip 中使用正则表达式查找和替换文本
  • DataGrip 文档
  • DataGrip 支持
  •