StarRocks从入门到精通系列五:导入数据
一、导入总览
下图详细展示了在各种数据源场景下,应该选择哪一种导入方式。
数据导入是指将原始数据按照业务需求进行清洗、转换、并加载到 StarRocks 中的过程,从而可以在 StarRocks 系统中进行极速统一的数据分析。
StarRocks 通过导入作业实现数据导入。每个导入作业都有一个标签 (Label),由用户指定或系统自动生成,用于标识该导入作业。每个标签在一个数据库内都是唯一的,仅可用于一个成功的导入作业。一个导入作业成功后,其标签不可再用于提交其他导入作业。只有失败的导入作业的标签,才可再用于提交其他导入作业。这一机制可以保证任一标签对应的数据最多被导入一次,即实现“至多一次 (At-Most-Once) ”语义。
StarRocks 中所有导入方式都提供原子性保证,即同一个导入作业内的所有有效数据要么全部生效,要么全部不生效,不会出现仅导入部分数据的情况。这里的有效数据不包括由于类型转换错误等数据质量问题而被过滤掉的数据。
StarRocks 提供两种访问协议用于提交导入作业:MySQL 协议和 HTTP 协议。
支持的数据类型
StarRocks 支持导入所有数据类型。个别数据类型的导入可能会存在一些限制。
导入模式
StarRocks 支持两种导入模式:同步导入和异步导入。
同步导入
同步导入是指您创建导入作业以后,StarRocks 同步执行作业,并在作业执行完成以后返回导入结果。您可以通过