StarRocks大批量数据导入方案-使用 Routine Load 导入数据

本文详细介绍如何使用Routine Load 导入数据

一、准备工作

1.1 安装基础环境

主要是安装StarRocks和Kafka,本文直接跳过不做详细介绍~

二、概念及原理

2.1 概念

  • 导入作业(Load job)

    导入作业会常驻运行,当导入作业的状态为 RUNNING 时,会持续不断生成一个或多个并行的导入任务,不断消费 Kafka 集群中一个 Topic 的消息,并导入至 StarRocks 中。

  • 导入任务(Load task)

    导入作业会按照一定规则拆分成若干个导入任务。导入任务是执行导入的基本单位,作为一个独立的事务,通过 Stream Load 导入机制实现。若干个导入任务并行消费一个 Topic 中不同分区的消息,并导入至 StarRocks 中。

三、创建导入任务

3.1 语法

sql 复制代码
CREATE ROUTINE LOAD example_db.example_tbl1_ordertest1 ON example_tbl1
COLUMNS TERMINATED BY ",", -- 指定 CSV 数据的列分隔符,默认为\t 可不止指定
COLUMNS (order_id, pay_dt, customer_name, nationality, temp_gender, price) -- 可不指定
PROPERTIES
(
    "desired_concurrent_number" = "5" ,-- 单个 Routine Load 导入作业的期望任务并发度,表示期望一个导入作业最多被分成多少个任务并行执行。默认值为 3
    "max_batch_interval" = "5", -- 任务的调度间隔,即任务多久执行一次。单位:秒。取值范围:5~60。默认值:10。
    "format"="json", -- 源数据的格式,取值范围:CSV、JSON。默认值:CSV
    "strip_outer_array" ="true" -- 是否裁剪 JSON 数据最外层的数组结构。取值范围:TRUE 或者 FALSE。默认值:FALSE
)
FROM KAFKA
-- 项目是kafka相关配置
(
    "kafka_broker_list" = "<kafka_broker1_ip>:<kafka_broker1_port>,<kafka_broker2_ip>:<kafka_broker2_port>",
    "kafka_topic" = "ordertest1",
    "kafka_partitions" = "0,1,2,3,4",
    "property.kafka_default_offsets" = "OFFSET_BEGINNING"
);

3.2 其他重要语法

  • 查看导入作业:SHOW ROUTINE LOAD
  • 查看导入任务:SHOW ROUTINE LOAD TASK
sql 复制代码
SHOW ROUTINE LOAD TASK WHERE JobName = "example_tbl2_ordertest2"
  • 暂停导入作业:PAUSE ROUTINE LOAD
sql 复制代码
PAUSE ROUTINE LOAD FOR example_tbl2_ordertest2;
  • 恢复导入作业:RESUME ROUTINE LOAD
sql 复制代码
RESUME ROUTINE LOAD FOR example_tbl2_ordertest2;
相关推荐
AKAMAI8 小时前
分布式边缘推理正在改变一切
人工智能·分布式·云计算
慧一居士8 小时前
xxl-job服务搭建,以及 springboot 集成xxl-job 项目完整步骤示例
分布式·中间件
oMcLin13 小时前
如何在 Ubuntu 22.04 服务器上实现分布式数据库 Cassandra 集群,优化数据一致性与写入吞吐量
服务器·分布式·ubuntu
2501_9418824814 小时前
互联网分布式系统中的性能优化工程实践与多语言示例随笔分享
kafka·rabbitmq
零度@15 小时前
Java消息中间件-Kafka全解(2026精简版)
java·kafka·c#·linq
2501_9418714515 小时前
从接口限流到全链路流控的互联网工程语法构建与多语言实践分享
kafka·rabbitmq
马达加斯加D16 小时前
系统设计 --- 使用消息队列解决分布式事务
分布式
遇见火星17 小时前
RabbitMQ 高可用:HAProxy 负载均衡实战指南
分布式·消息队列·rabbitmq·负载均衡·haproxy
Blossom.11818 小时前
基于多智能体协作的自动化数据分析系统实践:从单点工具到全流程智能
运维·人工智能·分布式·智能手机·自动化·prompt·边缘计算
回家路上绕了弯19 小时前
MDC日志链路追踪实战:让分布式系统问题排查更高效
分布式·后端