火山引擎 E-MapReduce(EMR)Serverless OLAP 是开源 Doris、StarRocks 在火山引擎上的全托管服务,您可以通过 EMR Serverless OLAP 灵活的创建和管理 Doris 或 StarRocks 实例以及数据。其中 EMR Serverless StarRocks 是新一代极速全场景 MPP 型数据库,其愿景是能够让您的数据分析变得更加简单和敏捷,您无需经过复杂的预处理,就可以用 Serverless StarRocks 来支持多种数据分析场景的极速分析。
使用 EMR Serverless StarRocks,您可以灵活构建包括大宽表、星型模型、雪花模型在内的各类模型,支持行存表、行列混存表,增强高频点查和更新能力,满足企业混合负载需求,且其全托管的免运维产品服务形态,极大地降低了运维和使用的难度及成本。
本文将为您介绍通过 DataLeap 创建 EMR Serverless StarRocks 节点,使用 SQL 语句,周期性的进行数据加工、查询、分析等操作。
任务配置步骤如下:
任务创建成功后,进入到 EMR Serverless StarRocks 任务配置界面,在配置界面中您可按需编写 StarRocks 支持的 SQL 语法。
在代码编辑器界面,输入对应 EMR Serverless StarRocks SQL 语句,示例如下:
说明
--创建 StarRocks 数据库; CREATE DATABASE IF NOT EXISTS emr_sr_x; --创建数据表 DROP TABLE IF EXISTS emr_sr_x.sr_test_table; CREATE TABLE IF NOT EXISTS emr_sr_x.sr_test_table ( event_day DATE, siteid INT DEFAULT '10', city VARCHAR(32) DEFAULT '', username VARCHAR(32) DEFAULT '', pv BIGINT SUM DEFAULT '0' ) AGGREGATE KEY(event_day, siteid, city, username) PARTITION BY RANGE(event_day) ( PARTITION p201706 VALUES LESS THAN ('2020-07-01'), PARTITION p201707 VALUES LESS THAN ('2020-08-01'), PARTITION p201708 VALUES LESS THAN ('2020-09-01') ) DISTRIBUTED BY HASH(siteid) BUCKETS 10 PROPERTIES("replication_num" = "1"); --清空表中历史数据 TRUNCATE TABLE emr_sr_x.sr_test_table; --插入新数据 insert into emr_sr_x.sr_test_table VALUES ('2020-07-11',27,'天津市丽县', '张三',1669); --查询 StarRocks 表中数据 SELECT * FROM emr_sr_x.sr_test_table;
功能名称 | 描述 |
---|---|
格式化 | 依据在个性化设置中的 SQL 格式化风格的设置,格式化编辑完成的代码,使其语法结构看起来简洁明了。 |
解析 | 解析检查书写的 SQL 代码的语法和语义正确性,运行前检查语法错误信息,防止运行出错。 |
执行引擎 | 支持 StarRocks 执行引擎。 |
任务配置完成后,在右侧导航栏中,单击调度配置按钮,进入调度配置窗口,您可以在此设置基本信息、调度属性、依赖等信息,详细参数设置详见:调度设置。
任务产出数据登记,用于记录任务、数据血缘信息,并不会对代码逻辑造成影响。您可在调度设置 > 任务产出数据登记一栏中,设置产出登记相关信息。
对于系统无法通过解析获取产出信息的任务,EMR Serverless StarRocks 任务可通过手动方式登记其产出信息。如果任务含有 StarRocks 库表数据的产出,则强烈建议填写,以便后续维护任务数据血缘关系。
自动登记:
任务产出数据使用“自动登记”模式,则任务每次上线时,系统将根据代码解析结果自动进行更新。您可单击查看“线上版本”的产出数据、查看“草稿版本”的产出数据按钮,查看当前任务不同版本下的产出数据自动登记结果。
注意
选择自动登记时,若 SQL 代码查询的字段名中包含 SQL 关键字,则需对其进行转义操作,即添加转义符号,如将 group 转义为 group
、order 转义为 order
等。若不进行转义,将会影响后续数据地图中的数据血缘图谱、表生产信息等内容展现,或者您也可通过下方的手动登记方式,进行手动登记任务产出数据。
手动登记:
您手动填写的内容即为任务产出,支持填写多个。其他同引擎任务依赖时,您可在其调度设置界面,通过手动添加的方式,依据此处 StarRocks 任务产出的库表名信息来搜索添加依赖。 具体登记内容包括以下数据类型:
任务代码逻辑和参数配置完成后,您可在编辑器上方,单击操作栏中的保存和调试按钮,进行任务调试。
注意
调试操作,直接使用线上数据进行调试,需谨慎操作。
调试任务开始运行后,可在下方查看调试记录,您也可以查看任务的历史运行记录,包括状态、业务日期、开始时间、结束时间、耗时、提交人等。
单击调试记录,可以查看以下详情内容:
结果:展示代码执行后的查询结果。
概览:查看运行结果的代码。
日志:查看运行详情,可下载日志。
查询结果确认无误后,单击上方操作栏中的保存和提交上线按钮,在提交上线对话框中,选择回溯数据、监控设置、提交设置等参数,最后单击确认按钮,完成作业提交。 提交上线说明详见:数据开发概述---离线任务提交。
后续任务运维操作详见:离线任务运维。