通过DataWorks连接StarRocks实例

DataWorksStarRocks数据源为您提供读取和写入StarRocks的双向通道,支持通过StarRocks节点进行任务开发和周期性调度,以及与其他作业的集成操作。本文为您介绍如何通过DataWorks连接StarRocks实例。

前提条件

  • 已开通DataWorks并创建项目,详情请参见开通DataWorks服务

  • 已购买并完成DataWorks资源组的空间绑定、网络等配置,详情请参见资源组管理

  • 已创建EMR Serverless StarRocks实例,详情请参见创建实例

操作步骤

步骤一:网络准备

为保证资源组网络连通性,您需要提前将后续要使用的DataWorks资源组的IP地址添加至EMR Serverless StarRocks实例的内网白名单中。

步骤二:创建StarRocks数据源

  1. 进入数据集成页面。

    登录DataWorks控制台,切换至目标地域,单击左侧导航栏的数据集成 > 数据集成,在下拉框中选择对应工作空间后单击进入数据集成

  2. 在左侧导航栏单击数据源,然后单击新增数据源

  3. 新增StarRocks数据源。

    1. 新增数据源的搜索栏中,输入并选择StarRocks数据源。

    2. 新增StarRocks数据源对话框中,配置以下基础信息,其余参数保持默认值即可。

      image

      参数

      说明

      数据源名称

      您已自定义。本示例为StarRocks。

      配置模式

      选择阿里云实例模式

      • 内网连接:本文使用的是内网连接方式,需确保DataWorks资源组与StarRocks实例处于同一VPC。

      • 公网连接:选择连接串模式。如果您需要使用公网连接,更多参数信息请参见StarRocks数据源

      地域

      选择StarRocks实例所在的地域。例如,华东1(杭州)。

      实例

      选择已创建的StarRocks实例。

      数据库名称

      指定要连接的数据库名称。您可以通过以下方式获取:

      说明

      DataWorks中编写SQL代码时,若需跨数据库访问表,需确保当前用户具有目标数据库的访问权限,并使用<数据库名>.<表名>格式访问。

      用户名密码

      StarRocks实例的用户名和密码。

      默认管理员用户为admin,密码为创建实例时自定义的密码。如果忘记该密码,可以进行重置,详情请参见如何重置实例的密码?

  4. 连接配置区域,找到工作空间已绑定的资源组,单击连通状态列的测试连通性

    • 如果测试资源组连通性状态为可连通,即完成新增数据源的创建。

    • 如果显示无法连通,表示资源组与数据源无法连通,后续相应数据源任务将无法正常执行,此时您需要根据右侧弹出的连通性诊断工具窗口,自助解决连通性问题,连通性诊断工具会提示目前连通失败的原因,请根据提示进行修改调整。

  5. 单击完成

步骤三:创建StarRocks节点

StarRocks节点用于编写、调试及调度SQL任务,创建后可在调度配置中设置执行周期。

  1. 进入数据开发页面。

    登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的数据开发与运维 > 数据开发,在下拉框中选择对应工作空间后单击进入数据开发

  2. 单击目标业务流程,右键选择新建节点 > 数据库 > StarRocks

  3. 新建节点对话框输入节点名称,单击确认,节点创建完成,您可在节点中进行对应任务的开发与配置。

步骤四:开发StarRocks任务

  1. 数据开发页面,从数据源下拉列表中选择已创建的StarRocks数据源。

  2. 编写并运行SQL代码。

    根据您的需求编写并运行SQL代码,选择运行需使用的调度资源组。本文通过以下两个示例展示如何开发StarRocks任务:

    • 示例1:创建数据库

      CREATE DATABASE IF NOT EXISTS load_test;

      执行成功后,您可以在EMR Serverless StarRocks页面验证结果。

      1. 通过EMR StarRocks Manager连接StarRocks实例

      2. SQL Editor中执行以下命令,查看已创建的数据库。

        SHOW DATABASES;

        如果 load_test 数据库出现在结果列表中,则说明创建成功。

        image

    • 示例2:查询StarRocks数据库中所有基本表信息

      SELECT * FROM information_schema.tables
      WHERE table_type = 'BASE TABLE';

      执行上述查询后,返回的结果可能如下所示。

      image

相关文档

如需通过StarRocks节点进行任务开发和周期性调度,请参见StarRocks节点