第3.3章:StarRocks数据导入--Stream Load

一、概述

     Stream Load是StarRocks常见的数据导入方式,用户通过发送HTTP请求将本地文件或数据流导入至StarRocks中,该导入方式不依赖其他组件。

    Stream Load作是一种同步导入方式,可以直接通过请求的返回值判断导入是否成功,无法手动取消Stream Load任务,在超时或者导入错误后会被系统自动取消。

   Stream Load支持csv和json两种数据文件格式,适用于数据文件数量较少且单个文件的大小不超过10GB 的场景。Stream Load支持在导入过程中做数据转换、以及通过 upsert和delete 操作实现数据变更。

二、 Stream Load原理

2.1 流程图

    Stream Load本质上是一个HTTP的PUT请求 ,执行流程如下:

2.2 流程详解

(1)用户发起导入请求,该请求可以直接发往FE,由FE将请求转发给某个BE,由该BE充当协调者的角色,也可以由用户自己在导入请求时指定某个BE为协调者角色,发起导入请求。

   ps:如果把导入作业请求发送给 FE,FE 会通过轮询机制选定由哪一个 BE 来接收请求,从而实现 StarRocks 集群内的负载均衡。因此,推荐您把导入作业请求发送给 FE。

(2)协调者在收到导入请求后,会把数据分发到其他BE数据节点,当集群内一份数据有两个数据节点完成数据写入后,就标志着这次导入事务成功,剩余的一份数据会由剩下的节点从这两个副本中去同步数据。

(3)导入数据成功后,协调者会将导入任务的状态返回给用户。

2.3 注意事项

(1)请求直接发往FE时,FE 会通过 HTTP 重定向 (Redirect) 指令将请求转发给某一个 BE。需要注意重定向过程中,可能会由于网络波动问题造成导入任务的失败。

(2) Stream Load导入作业的系统参数配置:

streaming_load_max_mb:代表单个源数据文件的大小上限,默认文件大小上限为 10 GB

  建议一次导入的数据量不要超过 10 GB,否则失败重试的代价过大。源文件较大,可以拆分为多个Stream Load任务并行的方式(手动指定不同的协调者BE)来提高Stream Load导入任务的导入性能。如果确实无法拆分,可以适当调大该参数的取值,从而提高数据文件的大小上限。

   ps :如果调大该参数的取值,需要重启 BE 才能生效,系统性能可能会受影响,失败重试时的代价也会增加。

2.4 应用案例

   Stream Load对本地csv和json两种数据格式的导入案例,见文章

第3.2章:StarRocks数据导入--Stream Load_starrocks stream load-CSDN博客

参考文章:

第3.2章:StarRocks数据导入--Stream Load_starrocks stream load-CSDN博客

从本地文件系统导入 | StarRocks

Docs

如何基于 Apache Doris 构建简易高效的用户行为分析平台?|解决方案

Apache Doris 2.0 如何实现导入性能提升 2-8 倍

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/693002.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Docker的常用命令||Docker是个流行的容器化平台,它允许你打包、分发和运行应用程序。

Docker是一个流行的容器化平台&#xff0c;它允许你打包、分发和运行应用程序。以下是一些常用的Docker命令及其示例用法&#xff1a; 1. **docker run**: 用于运行一个新的容器实例。 docker run <image_name> 例如&#xff0c;运行一个Nginx容器&#xff1a; docker ru…

【FX——详细介绍】

FX——详细介绍 1. 介绍2. 外汇市场&#xff08;FX Market&#xff09;2.1 定义2.2 功能2.3 参与者2.4 主要货币对2.5 交易特征2.6 外汇报价2.7 计算和交易2.8 风险管理2.9 分析类型2.10 平台和工具2.11 监管 1. 介绍 FX在不同的上下文中可以指代多种含义&#xff0c;但在经济…

C 编码规范

目录 一、命名 1、通用规范 2、文件名 3、变量名 4、函数名 5、宏名 二、变量 三、函数 1、重复代码尽可能提炼为函数 2、函数不超过 50 行 3、代码块嵌套不超过四层 4、可重入函数避免使用共享变量 5、对参数的合法性进行检查 6、设计合理的函数错误码 7、函数…

vue前端docx库生成word表格 并合并单元格的例子

Vue.js 是一个流行的前端JavaScript框架&#xff0c;用于构建用户界面和单页应用程序。在Vue中生成Word表格并合并单元格&#xff0c;通常需要使用额外的库&#xff0c;如docx&#xff0c;它是一个用于创建和修改Word文档&#xff08;.docx&#xff09;的JavaScript库。 …

JAVA并发编程之原子性、可见性与有序性

并发编程-原子性、可见性与有序性 一、CPU的可见性 1.1 缓存一致性问题的出现 CPU处理器在处理速度上&#xff0c;远胜于内存&#xff0c;主内存执行一次内存的读写操作&#xff0c;所需要的时间足够处理器去处理上百条指令。 为了弥补处理器与主内存处理能力之间的差距&am…

将phantomjs制成docker镜像

几个前的一篇文章中介绍了phantomjsecharts生成图表图片的一种方式&#xff0c;但其部署复杂&#xff0c;制作为docker镜像运行就方便多了。文章参见&#xff1a;https://blog.csdn.net/u011943534/article/details/121524397 1、准备echarts 将上次文章中提到过下载的Echart…

(三)Spring 核心之面向切面编程(AOP)—— 代理的创建

目录 一. 前言 二. 代理的创建 2.1. 创建前准备 2.2. 获取所有的 Advisor 2.3. 创建代理的入口方法 2.4. 依据条件创建代理&#xff08;JDK 或 CGLIB&#xff09; 三. 动态代理要解决什么问题 3.1. 什么是代理 3.2. 什么是动态代理 四. 总结 一. 前言 前面两篇文章《…

MyBatis学习总结

MyBatis分页如何实现 分页分为 逻辑分页&#xff1a;查询出所有的数据缓存到内存里面&#xff0c;在从内存中筛选出需要的数据进行分页 物理分页&#xff1a;直接用数据库语法进行分页limit mybatis提供四种方法分页&#xff1a; 直接在sql语句中分页&#xff0c;传递分页参数…

网贷大数据查询多了对征信有影响吗?

网贷大数据在日常的金融借贷中起到很重要的风控作用&#xff0c;不少银行已经将大数据检测作为重要的风控环节。很多人在申贷之前都会提前了解自己的大数据信用情况&#xff0c;那网贷大数据查询多了对征信有影响吗?本文带你一起去看看。 首先要说结论&#xff1a;那就是查询网…

[极客大挑战2019]upload

该题考点&#xff1a;后缀黑名单文件内容过滤php木马的几种书写方法 phtml可以解析php代码&#xff1b;<script language"php">eval($_POST[cmd]);</script> 犯蠢的点儿&#xff1a;利用html、php空格和php.不解析<script language"php"&…

寄存器 Flip-Flop

组合逻辑是电平输入和电平输出。&#xff08;组合逻辑虽然符合人的思维习惯&#xff0c;并且元器件结构简单&#xff0c;但问题是如果输入含有毛刺&#xff0c;输出就有毛刺。eg. 如果输入信号突然从0变成1后又在短时间内恢复0&#xff0c;可以视为毛刺&#xff0c;输出信号受到…

说说 Dubbo 工作原理?Dubbo 容错策略?Zookeeper 和 Dubbo 的关系?Dubbo 动态代理策略有哪些?Dubbo 负载均衡策略?

说说 Dubbo 工作原理? 工作原理分 10 层&#xff1a; 第一层&#xff1a; service 层&#xff0c;接口层&#xff0c;给服务提供者和消费者来实现的&#xff08;留给开发人员来实现&#xff09;&#xff1b; 第二层&#xff1a; config 层&#xff0c;配置层&#xff0c…

Oracle的TimesStamp和Date的区别

在Oracle数据库中&#xff0c;DATE和TIMESTAMP数据类型都是用于存储日期和时间信息&#xff0c;但它们之间有几个重要的区别&#xff1a; 精度不同&#xff1a; DATE数据类型能存储日期和时间到秒的精度&#xff0c;格式通常是YYYY-MM-DD HH24:MI:SS&#xff0c;并且它总是包含…

软件测试工程师经典面试题

软件测试工程师&#xff0c;和开发工程师相比起来&#xff0c;虽然前期可能不会太深&#xff0c;但是涉及的面还是比较广的。前期面试实习生或者一年左右的岗位&#xff0c;问的也主要是一些基础性的问题比较多。涉及的知识主要有MySQL数据库的使用、Linux操作系统的使用、软件…

缓存驱动联邦学习架构赋能个性化边缘智能 | TMC 2024

缓存驱动联邦学习架构赋能个性化边缘智能 | TMC 2024 伴随着移动设备的普及与终端数据的爆炸式增长&#xff0c;边缘智能&#xff08;Edge Intelligence, EI&#xff09;逐渐成为研究领域的前沿。在这一浪潮中&#xff0c;联邦学习&#xff08;Federated Learning, FL&#xf…

golang 如何防止内存逃逸

在Go语言中&#xff0c;内存逃逸是指在函数中分配的变量在函数结束后仍然被引用&#xff0c;从而导致变量的生命周期延长&#xff0c;被分配在堆上而不是栈上。防止内存逃逸有助于提高程序的性能&#xff0c;因为栈上分配的内存可以更快地被回收。 以下是一些防止内存逃逸的方…

leetcode hot100零钱兑换Ⅱ

本题可以看出也是背包问题&#xff0c;但区别于之前的01背包问题&#xff0c;这个是完全背包问题的变形形式。 下面介绍01背包和完全背包的区别与联系&#xff1a; 01背包是背包中的物品只能用一次&#xff0c;不可以重复使用&#xff0c;而完全背包则是可以重复使用。01/完全…

为BUG编程:char的默认类型导致的BUG

char的默认类型大部分是signed&#xff0c;教科书上也这么讲&#xff0c;所以一般遇不到什么问题&#xff0c;但是在arm上出问题了&#xff0c;默认char是unsigned&#xff0c;导致c<0永远失败。 代码是这样的&#xff1a; //计算输出长度size_t outputlen(string const &am…

一个基于C#开发的、开源的特殊字符输入法

emoji表情在社交网络非常流行&#xff0c;我们在手机也非常方便输入&#xff0c;但是在PC电脑我们一般需要到归集好的网页拷贝&#xff0c;所以今天推荐一个Windows小工具&#xff0c;让你方便输入特殊字符和emoji表情。 01 项目简介 这是一个基于C#开发的开源项目&#xff0…

JCL中的位置参数

JCL中DD语句的位置参数 ​ DD语句的格式&#xff1a; ​ //DD名 DD 位置参数 ​ DD名&#xff0c;是DD语句定义的名字&#xff0c;由1-8个字符组成&#xff0c;一个STEP里面可以有多个DD语句&#xff0c;每个DD语句指向一个系统中的数据资源&#xff0c;这就是为了操纵数据文…