ClickHouse SQL可实现分布式SQL查询及处理结构化数据,提高作业的执行效率。DataWorks的ClickHouse SQL节点可进行ClickHouse SQL任务的开发和周期性调度,以及与其他作业的集成操作。本文为您介绍使用ClickHouse SQL节点进行任务开发的主要流程。
前提条件
EMR引擎类型包括新版数据湖(DataLake)及Hadoop,不同类型引擎创建节点前需执行的准备工作不同。您可根据实际情况完成EMR侧及DataWorks侧的准备工作。
DataLake:详情请参见DataLake集群配置、DataWorks配置。
Hadoop:Hadoop集群开发前准备工作。
已创建ClickHouse数据源并绑定至工作空间。
您需要在DataWorks中创建ClickHouse数据源并绑定至数据开发(Data Studio),才可通过ClickHouse数据源访问ClickHouse数据,进行后续的开发操作。详情请参见创建ClickHouse数据源、绑定计算资源(参加新版数据开发公测)。
已开发创建项目目录,详情请参见项目目录。
已创建ClickHouse SQL节点,详情请参见创建任务节点。
操作步骤
在ClickHouse SQL节点编辑页面,执行如下开发操作。
开发SQL代码
在SQL编辑区域开发任务代码,您可在代码中使用${变量名}的方式定义变量,并在节点编辑页面右侧调度配置的调度参数中为该变量赋值。实现调度场景下代码的动态传参,调度参数使用详情,请参考调度参数支持格式,示例如下。
CREATE DATABASE IF NOT EXISTS ck_test; CREATE TABLE IF NOT EXISTS ck_test.first_table ( `product_code` String, `package_name` String ) ENGINE = MergeTree ORDER BY package_name SETTINGS index_granularity = 8192; INSERT INTO ck_test.first_table (product_code, package_name) VALUES ('1', ${var}); SELECT * FROM ck_test.first_table;
示例中的变量参数${var}可设置为
1
。执行SQL任务
在调试配置的计算资源中,选择配置计算资源和DataWorks资源组。
计算资源选择您在DataWorks上注册的CDH集群名称。
资源组选择与数据源测试连通性成功的调度资源组。详情请参见网络连通方案。
在工具栏的参数对话框中选择已创建的ClickHouse数据源,单击运行SQL任务。
如需定期执行节点任务,请根据业务需求配置调度信息。配置详情请参见调度配置。
节点任务配置完成后,需对节点进行发布。详情请参见节点发布。
任务发布后,您可以在运维中心查看周期任务的运行情况。详情请参见运维中心入门。
- 本页导读 (1)
- 前提条件
- 操作步骤