Export

数据仓库 PALO

  • 功能发布记录
  • 操作手册1
    • LDAP认证
    • 时区
    • 使用S3-SDK访问对象存储
    • 权限管理
    • 物化视图
    • 变量
    • 资源管理
    • 数据更新与删除
      • 标记删除
      • Sequence-Column
      • 数据更新
      • 数据删除
    • 备份与恢复
      • 备份与恢复
    • 数据导出1
      • SELECT INTO OUTFILE
      • MySQL Dump
      • 数据导出概述
      • Export
    • 数据导出
      • 全量数据导出
      • 导出查询结果集
      • 导出总览
      • 导出数据到外部表
    • 查询加速1
      • 查询缓存
      • 物化视图
        • 同步物化视图
        • 物化视图概览
        • 异步物化视图
          • 异步物化视图常见问题
          • 最佳实践
          • 异步物化视图概述
          • 创建、查询与维护异步物化视图
    • 数据导入
      • JSON格式数据导入说明
      • 导入本地数据
      • 导入BOS中的数据
      • 导入事务和原子性
      • 通过外部表同步数据
      • 使用JDBC同步数据
      • 列的映射、转换与过滤
      • 订阅Kafka日志
      • 严格模式
      • 导入总览
    • 数据更新与删除1
      • 事务
      • 数据更新
        • 主键模型的导入更新
        • 主键模型的 Update 更新
        • 数据更新概述
        • 主键模型的更新并发控制
        • 聚合模型的导入更新
      • 数据删除
        • 删除操作概述
        • Truncate 操作
        • 表原子替换
        • Delete 操作
        • 基于导入的批量删除
        • 临时分区
    • 数据导入1
      • 高并发导入优化(Group Commit)
      • 导入概览
      • 异常数据处理
      • 导入高可用性
      • 导入时实现数据转换
      • 数据源
        • Kafka
        • S3 兼容存储
        • 从其他 TP 系统迁移数据
        • HDFS
        • 从其他 AP 系统迁移数据
        • Flink
        • 本地文件
      • 导入方式
        • Broker Load
        • MySQL Load
        • Insert Into Values
        • Stream Load
        • Insert Into Select
        • Routine Load
      • 文件格式
        • CSV
        • JSON
        • Parquet
        • ORC
      • 复杂数据类型
        • MAP
        • Variant
        • JSON
        • STRUCT
        • Bitmap
        • HLL
        • ARRAY
  • 开发指南
    • 迁移ClickHouse数据
    • Doris集群间数据迁移
    • 数据更新与删除
      • 事务
      • 数据更新
        • 主键模型的导入更新
        • 主键模型的 Update 更新
        • 数据更新概述
        • 主键模型的更新并发控制
        • 聚合模型的导入更新
      • 数据删除
        • 删除操作概述
        • Truncate 操作
        • 表原子替换
        • Delete 操作
        • 基于导入的批量删除
        • 临时分区
    • 查询加速
      • 查询缓存
      • Colocation Join
      • 高并发点查
      • Hint
        • Hint 概述
        • Leading Hint
        • Distribute Hint
      • 物化视图
        • 同步物化视图
        • 物化视图概览
        • 异步物化视图
          • 异步物化视图常见问题
          • 最佳实践
          • 异步物化视图概述
          • 创建、查询与维护异步物化视图
      • 高效去重
        • BITMAP 精准去重
        • HLL 近似去重
      • 优化技术原理
        • TOPN 查询优化
        • 统计信息
        • Pipeline 执行引擎
        • 查询优化器介绍
        • Runtime Filter
      • 查询调优概述
        • 调优概述
        • 诊断工具
        • 分析工具
        • 调优流程
      • 查询优化实践
        • 常见调优参数
        • 计划调优
          • 使用 Hint 控制代价改写
          • 使用异步物化视图透明改写
          • 使用 Leading Hint 控制 Join 顺序
          • 优化表 Schema 设计
          • 使用分区裁剪优化扫表
          • 优化索引设计和使用
          • 使用 Hint 调整 Join Shuffle 方式
          • DML 计划调优
          • 使用 Colocate Group 优化 Join
          • 使用同步物化视图透明改写
          • 使用 SQL Cache 加速查询
        • 执行调优
          • 数据倾斜处理
          • RuntimeFilter 的等待时间调整
          • 并行度调优
    • 数据查询
      • 连接(JOIN)
      • 子查询
      • 复杂类型查询
      • 列转行 (Lateral View)
      • MySQL 兼容性
      • 聚合多维分析
      • 分析函数(窗口函数)
      • 公用表表达式(CTE)
      • 自定义函数
        • 别名函数
        • Java UDF, UDAF, UDTF
    • 数据导出
      • SELECT INTO OUTFILE
      • MySQL Dump
      • 最佳实践
      • 数据导出概述
      • Export
    • 数据导入
      • 高并发导入优化(Group Commit)
      • 异常数据处理
      • 导入高可用性
      • 导入时实现数据转换
      • 导入最佳实践
      • 数据源
        • Kafka
        • Snowflake
        • S3 兼容存储
        • Google Cloud Storage
        • 从其他 TP 系统迁移数据
        • Azure Storage
        • 腾讯云 COS
        • MinIO
        • HDFS
        • 阿里云 OSS
        • 华为云 OBS
        • 从其他 AP 系统迁移数据
        • Flink
        • Redshift
        • Amazon S3
        • 本地文件
        • BigQuery
      • 导入方式
        • Broker Load
        • MySQL Load
        • Insert Into Values
        • Stream Load
        • Insert Into Select
        • Routine Load
      • 文件格式
        • CSV
        • JSON
        • Parquet
        • ORC
      • 复杂数据类型
        • MAP
        • Variant
        • JSON
        • STRUCT
        • Bitmap
        • HLL
        • ARRAY
    • BI工具接入
      • Sugar
      • Navicat
      • Tableau
      • DBeaver
      • 永洪BI
      • FineBI(帆软)
    • 数据库连接
      • 通过 MySQL 协议连接
      • 基于 Arrow Flight SQL 的高速数据传输链路
    • 湖仓一体
      • 分析 S3或HDFS 上的文件
      • 湖仓一体概述
      • SQL 方言兼容
      • 弹性计算节点
      • 云服务认证接入
      • 元数据缓存
      • 外表统计信息
      • 数据缓存
      • 数据库分析
        • MySQL
        • JDBC Catalog
        • Oracle
        • OceanBase
        • SAP HANA
        • 阿里云 MaxCompute
        • ClickHouse
        • PostgreSQL
        • IBM Db2
        • SQL Server
        • Elasticsearch
      • 湖仓一体最佳实践
        • 使用 PALO 和 Paimon
        • 使用 PALO 和 Iceberg
        • 使用 PALO 和 Hudi
        • 使用 PALO 和 LakeSoul
      • 数据湖构建
        • Iceberg
        • Hive
      • 数据湖分析
        • Hudi Catalog
        • 阿里云 DLF
        • Iceberg Catalog
        • Paimon Catalog
        • Hive Catalog
    • 数据表设计
      • 行业混存
      • 数据压缩
      • Schema 变更
      • 数据类型
      • 自增列
      • 概览
      • 数据库建表最佳实践
      • 冷热数据分层
        • SSD 和 HDD 层级存储
        • 远程存储
        • 冷热数据分层概述
      • 表索引
        • 倒排索引
        • 前缀索引与排序键
        • N-Gram 索引
        • BloomFilter 索引
        • 索引概述
      • 数据划分
        • 数据分桶
        • 数据分布概念
        • 动态分区
        • 自动分区
        • 手动分区
        • 常见文档
      • 数据模型
        • 使用注意
        • 模型概述
        • 主键模型
        • 明细模型
        • 聚合模型
  • 版本发布历史
    • 百度数据仓库 Palo 2.0 版本全新发布
  • SQL手册
    • 字面常量
    • 别名
    • SQL-手册
    • 数据类型
    • SQL语句
    • 注释
    • 内置函数
    • 白名单管理
    • SQL操作符
    • 内置函数
      • 聚合函数
      • 位操作函数
      • 字符串函数
      • 条件函数
      • 数学函数
      • JSON解析函数
      • 类型转换函数
      • 格式转换函数
      • 通用函数
      • 时间和日期函数
      • BITMAP函数
      • 窗口函数
      • 哈希函数
      • HLL函数
    • 语法帮助
      • DML
        • INSERT
        • ROUTINE-LOAD
        • RESTORE
        • SELECT-INTO-OUTFILE
        • ALTER-ROUTINE-LOAD
        • BROKER-LOAD
        • BACKUP
        • EXPORT
        • STREAM-LOAD
      • DDL
        • CREATE-FILE
        • DROP-RESOURCE
        • CREATE-RESOURCE
        • CREATE-MATERIALIZED-VIEW
        • DROP-RESROUCE
        • CREATE-TABLE
        • DROP-REPOSITORY
        • CREATE-REPOSITORY
        • CREATE-ODBC-TABLE
      • 信息查看语句
        • SHOW-BACKUP
        • SHOW-ALTER-TABLE-MATERIALIZED-VIEW
        • SHOW-SNAPSHOT
        • SHOW-ROUTINE-LOAD
        • SHOW-CREATE-ROUTINE-LOAD
        • SHOW-ROLES
        • SHOW-GRANTS
        • SHOW-EXPORT
        • SHOW-ROUTINE-LOAD-TASK
        • SHOW-REPOSITORIES
        • SHOW-LOAD
        • SHOW-RESOURCES
        • SHOW-RESTORE
        • SHOW-PROPERTY
        • SHOW-FILE
      • 辅助命令
        • PAUSE-ROUTINE-LOAD
        • STOP-ROUTINE-LOAD
        • ALTER-ROUTINE-LOAD
        • CANCEL-LOAD
        • RESUME-ROUTINE-LOAD
      • 账户管理
        • SET-PROPERTY
        • REVOKE
        • GRANT
        • CREATE-ROLE
        • DROP-ROLE
        • CREATE-USER
        • DROP-USER
        • SET-PASSWORD
  • 快速入门
    • 快速上手
    • 存算分离
    • 存算一体
  • 典型实践
    • 如何开启Debug日志
    • 导入分析
    • 查询分析
  • 操作手册
    • 权限和子用户
    • 存算一体
      • 连接集群
      • 查询分析
      • 监控告警
        • 监控指标
        • 告警配置
      • 备份恢复
        • 通过管理页面备份与恢复
        • 备份与恢复
      • 权限管理
        • 集群权限
        • 控制台权限
      • 集群管理
        • 集群创建
        • 停止与删除
        • 重置管理员密码
        • 集群扩缩容
        • 集群详情
    • 存算分离
      • 连接集群
      • 计算组管理
        • 重启计算组
        • 创建计算组
      • 监控告警
        • 监控指标
        • 告警配置
      • 权限管理
        • 集群权限
        • 控制台权限
      • 集群管理
        • 停止与删除
        • 创建集群
        • 重置管理员密码
        • 集群详情
  • 服务等级协议SLA
    • 服务等级协议(SLA)v1.0
  • 产品概述
    • 系统架构
    • 产品特点
    • 产品介绍
  • 视频专区
    • 操作指南
    • 产品简介
  • 产品定价
    • 预付费
    • 计费说明
    • 后付费
所有文档
menu
没有找到结果,请重新输入

数据仓库 PALO

  • 功能发布记录
  • 操作手册1
    • LDAP认证
    • 时区
    • 使用S3-SDK访问对象存储
    • 权限管理
    • 物化视图
    • 变量
    • 资源管理
    • 数据更新与删除
      • 标记删除
      • Sequence-Column
      • 数据更新
      • 数据删除
    • 备份与恢复
      • 备份与恢复
    • 数据导出1
      • SELECT INTO OUTFILE
      • MySQL Dump
      • 数据导出概述
      • Export
    • 数据导出
      • 全量数据导出
      • 导出查询结果集
      • 导出总览
      • 导出数据到外部表
    • 查询加速1
      • 查询缓存
      • 物化视图
        • 同步物化视图
        • 物化视图概览
        • 异步物化视图
          • 异步物化视图常见问题
          • 最佳实践
          • 异步物化视图概述
          • 创建、查询与维护异步物化视图
    • 数据导入
      • JSON格式数据导入说明
      • 导入本地数据
      • 导入BOS中的数据
      • 导入事务和原子性
      • 通过外部表同步数据
      • 使用JDBC同步数据
      • 列的映射、转换与过滤
      • 订阅Kafka日志
      • 严格模式
      • 导入总览
    • 数据更新与删除1
      • 事务
      • 数据更新
        • 主键模型的导入更新
        • 主键模型的 Update 更新
        • 数据更新概述
        • 主键模型的更新并发控制
        • 聚合模型的导入更新
      • 数据删除
        • 删除操作概述
        • Truncate 操作
        • 表原子替换
        • Delete 操作
        • 基于导入的批量删除
        • 临时分区
    • 数据导入1
      • 高并发导入优化(Group Commit)
      • 导入概览
      • 异常数据处理
      • 导入高可用性
      • 导入时实现数据转换
      • 数据源
        • Kafka
        • S3 兼容存储
        • 从其他 TP 系统迁移数据
        • HDFS
        • 从其他 AP 系统迁移数据
        • Flink
        • 本地文件
      • 导入方式
        • Broker Load
        • MySQL Load
        • Insert Into Values
        • Stream Load
        • Insert Into Select
        • Routine Load
      • 文件格式
        • CSV
        • JSON
        • Parquet
        • ORC
      • 复杂数据类型
        • MAP
        • Variant
        • JSON
        • STRUCT
        • Bitmap
        • HLL
        • ARRAY
  • 开发指南
    • 迁移ClickHouse数据
    • Doris集群间数据迁移
    • 数据更新与删除
      • 事务
      • 数据更新
        • 主键模型的导入更新
        • 主键模型的 Update 更新
        • 数据更新概述
        • 主键模型的更新并发控制
        • 聚合模型的导入更新
      • 数据删除
        • 删除操作概述
        • Truncate 操作
        • 表原子替换
        • Delete 操作
        • 基于导入的批量删除
        • 临时分区
    • 查询加速
      • 查询缓存
      • Colocation Join
      • 高并发点查
      • Hint
        • Hint 概述
        • Leading Hint
        • Distribute Hint
      • 物化视图
        • 同步物化视图
        • 物化视图概览
        • 异步物化视图
          • 异步物化视图常见问题
          • 最佳实践
          • 异步物化视图概述
          • 创建、查询与维护异步物化视图
      • 高效去重
        • BITMAP 精准去重
        • HLL 近似去重
      • 优化技术原理
        • TOPN 查询优化
        • 统计信息
        • Pipeline 执行引擎
        • 查询优化器介绍
        • Runtime Filter
      • 查询调优概述
        • 调优概述
        • 诊断工具
        • 分析工具
        • 调优流程
      • 查询优化实践
        • 常见调优参数
        • 计划调优
          • 使用 Hint 控制代价改写
          • 使用异步物化视图透明改写
          • 使用 Leading Hint 控制 Join 顺序
          • 优化表 Schema 设计
          • 使用分区裁剪优化扫表
          • 优化索引设计和使用
          • 使用 Hint 调整 Join Shuffle 方式
          • DML 计划调优
          • 使用 Colocate Group 优化 Join
          • 使用同步物化视图透明改写
          • 使用 SQL Cache 加速查询
        • 执行调优
          • 数据倾斜处理
          • RuntimeFilter 的等待时间调整
          • 并行度调优
    • 数据查询
      • 连接(JOIN)
      • 子查询
      • 复杂类型查询
      • 列转行 (Lateral View)
      • MySQL 兼容性
      • 聚合多维分析
      • 分析函数(窗口函数)
      • 公用表表达式(CTE)
      • 自定义函数
        • 别名函数
        • Java UDF, UDAF, UDTF
    • 数据导出
      • SELECT INTO OUTFILE
      • MySQL Dump
      • 最佳实践
      • 数据导出概述
      • Export
    • 数据导入
      • 高并发导入优化(Group Commit)
      • 异常数据处理
      • 导入高可用性
      • 导入时实现数据转换
      • 导入最佳实践
      • 数据源
        • Kafka
        • Snowflake
        • S3 兼容存储
        • Google Cloud Storage
        • 从其他 TP 系统迁移数据
        • Azure Storage
        • 腾讯云 COS
        • MinIO
        • HDFS
        • 阿里云 OSS
        • 华为云 OBS
        • 从其他 AP 系统迁移数据
        • Flink
        • Redshift
        • Amazon S3
        • 本地文件
        • BigQuery
      • 导入方式
        • Broker Load
        • MySQL Load
        • Insert Into Values
        • Stream Load
        • Insert Into Select
        • Routine Load
      • 文件格式
        • CSV
        • JSON
        • Parquet
        • ORC
      • 复杂数据类型
        • MAP
        • Variant
        • JSON
        • STRUCT
        • Bitmap
        • HLL
        • ARRAY
    • BI工具接入
      • Sugar
      • Navicat
      • Tableau
      • DBeaver
      • 永洪BI
      • FineBI(帆软)
    • 数据库连接
      • 通过 MySQL 协议连接
      • 基于 Arrow Flight SQL 的高速数据传输链路
    • 湖仓一体
      • 分析 S3或HDFS 上的文件
      • 湖仓一体概述
      • SQL 方言兼容
      • 弹性计算节点
      • 云服务认证接入
      • 元数据缓存
      • 外表统计信息
      • 数据缓存
      • 数据库分析
        • MySQL
        • JDBC Catalog
        • Oracle
        • OceanBase
        • SAP HANA
        • 阿里云 MaxCompute
        • ClickHouse
        • PostgreSQL
        • IBM Db2
        • SQL Server
        • Elasticsearch
      • 湖仓一体最佳实践
        • 使用 PALO 和 Paimon
        • 使用 PALO 和 Iceberg
        • 使用 PALO 和 Hudi
        • 使用 PALO 和 LakeSoul
      • 数据湖构建
        • Iceberg
        • Hive
      • 数据湖分析
        • Hudi Catalog
        • 阿里云 DLF
        • Iceberg Catalog
        • Paimon Catalog
        • Hive Catalog
    • 数据表设计
      • 行业混存
      • 数据压缩
      • Schema 变更
      • 数据类型
      • 自增列
      • 概览
      • 数据库建表最佳实践
      • 冷热数据分层
        • SSD 和 HDD 层级存储
        • 远程存储
        • 冷热数据分层概述
      • 表索引
        • 倒排索引
        • 前缀索引与排序键
        • N-Gram 索引
        • BloomFilter 索引
        • 索引概述
      • 数据划分
        • 数据分桶
        • 数据分布概念
        • 动态分区
        • 自动分区
        • 手动分区
        • 常见文档
      • 数据模型
        • 使用注意
        • 模型概述
        • 主键模型
        • 明细模型
        • 聚合模型
  • 版本发布历史
    • 百度数据仓库 Palo 2.0 版本全新发布
  • SQL手册
    • 字面常量
    • 别名
    • SQL-手册
    • 数据类型
    • SQL语句
    • 注释
    • 内置函数
    • 白名单管理
    • SQL操作符
    • 内置函数
      • 聚合函数
      • 位操作函数
      • 字符串函数
      • 条件函数
      • 数学函数
      • JSON解析函数
      • 类型转换函数
      • 格式转换函数
      • 通用函数
      • 时间和日期函数
      • BITMAP函数
      • 窗口函数
      • 哈希函数
      • HLL函数
    • 语法帮助
      • DML
        • INSERT
        • ROUTINE-LOAD
        • RESTORE
        • SELECT-INTO-OUTFILE
        • ALTER-ROUTINE-LOAD
        • BROKER-LOAD
        • BACKUP
        • EXPORT
        • STREAM-LOAD
      • DDL
        • CREATE-FILE
        • DROP-RESOURCE
        • CREATE-RESOURCE
        • CREATE-MATERIALIZED-VIEW
        • DROP-RESROUCE
        • CREATE-TABLE
        • DROP-REPOSITORY
        • CREATE-REPOSITORY
        • CREATE-ODBC-TABLE
      • 信息查看语句
        • SHOW-BACKUP
        • SHOW-ALTER-TABLE-MATERIALIZED-VIEW
        • SHOW-SNAPSHOT
        • SHOW-ROUTINE-LOAD
        • SHOW-CREATE-ROUTINE-LOAD
        • SHOW-ROLES
        • SHOW-GRANTS
        • SHOW-EXPORT
        • SHOW-ROUTINE-LOAD-TASK
        • SHOW-REPOSITORIES
        • SHOW-LOAD
        • SHOW-RESOURCES
        • SHOW-RESTORE
        • SHOW-PROPERTY
        • SHOW-FILE
      • 辅助命令
        • PAUSE-ROUTINE-LOAD
        • STOP-ROUTINE-LOAD
        • ALTER-ROUTINE-LOAD
        • CANCEL-LOAD
        • RESUME-ROUTINE-LOAD
      • 账户管理
        • SET-PROPERTY
        • REVOKE
        • GRANT
        • CREATE-ROLE
        • DROP-ROLE
        • CREATE-USER
        • DROP-USER
        • SET-PASSWORD
  • 快速入门
    • 快速上手
    • 存算分离
    • 存算一体
  • 典型实践
    • 如何开启Debug日志
    • 导入分析
    • 查询分析
  • 操作手册
    • 权限和子用户
    • 存算一体
      • 连接集群
      • 查询分析
      • 监控告警
        • 监控指标
        • 告警配置
      • 备份恢复
        • 通过管理页面备份与恢复
        • 备份与恢复
      • 权限管理
        • 集群权限
        • 控制台权限
      • 集群管理
        • 集群创建
        • 停止与删除
        • 重置管理员密码
        • 集群扩缩容
        • 集群详情
    • 存算分离
      • 连接集群
      • 计算组管理
        • 重启计算组
        • 创建计算组
      • 监控告警
        • 监控指标
        • 告警配置
      • 权限管理
        • 集群权限
        • 控制台权限
      • 集群管理
        • 停止与删除
        • 创建集群
        • 重置管理员密码
        • 集群详情
  • 服务等级协议SLA
    • 服务等级协议(SLA)v1.0
  • 产品概述
    • 系统架构
    • 产品特点
    • 产品介绍
  • 视频专区
    • 操作指南
    • 产品简介
  • 产品定价
    • 预付费
    • 计费说明
    • 后付费
  • 文档中心
  • arrow
  • 数据仓库PALO
  • arrow
  • 操作手册1
  • arrow
  • 数据导出1
  • arrow
  • Export
本页目录
  • 适用场景
  • 快速上手
  • 建表与导入数据
  • 创建导出作业
  • 查看导出作业
  • 取消导出作业
  • 导出说明
  • 导出数据源
  • 导出数据存储位置
  • 导出文件类型
  • 导出示例
  • 导出到开启了高可用的 HDFS 集群
  • 导出到开启了高可用及 kerberos 认证的 HDFS 集群
  • 指定分区导出
  • 导出时过滤数据
  • 导出外表数据
  • 导出前清空导出目录
  • 设置导出文件的大小
  • 注意事项
  • 附录
  • 基本原理
  • 导出到本地文件系统

Export

更新时间:2025-08-21

本文档将介绍如何使用EXPORT命令导出 Doris 中存储的数据。

Export 是 Doris 提供的一种将数据异步导出的功能。该功能可以将用户指定的表或分区的数据,以指定的文件格式,导出到目标存储系统中,包括对象存储、HDFS 或本地文件系统。

Export 是一个异步执行的命令,命令执行成功后,立即返回结果,用户可以通过Show Export 命令查看该 Export 任务的详细信息。

有关EXPORT命令的详细介绍,请参考:EXPORT

关于如何选择 SELECT INTO OUTFILE 和 EXPORT,请参阅 导出综述。

适用场景

Export 适用于以下场景:

  • 大数据量的单表导出、仅需简单的过滤条件。
  • 需要异步提交任务的场景。

使用Export 时需要注意以下限制:

  • 当前不支持文本文件压缩格式的导出。
  • 不支持 Select 结果集导出。若需要导出 Select 结果集,请使用OUTFILE 导出

快速上手

建表与导入数据

Plain Text
1CREATE TABLE IF NOT EXISTS tbl (
2    `c1` int(11) NULL,
3    `c2` string NULL,
4    `c3` bigint NULL
5)
6DISTRIBUTED BY HASH(c1) BUCKETS 20
7PROPERTIES("replication_num" = "1");
8
9
10insert into tbl values
11    (1, 'doris', 18),
12    (2, 'nereids', 20),
13    (3, 'pipelibe', 99999),
14    (4, 'Apache', 122123455),
15    (5, null, null);

创建导出作业

导出到 HDFS

将 tbl 表的所有数据导出到 HDFS 上,设置导出作业的文件格式为 csv(默认格式),并设置列分割符为,。

Plain Text
1EXPORT TABLE tbl
2TO "hdfs://host/path/to/export_" 
3PROPERTIES
4(
5    "line_delimiter" = ","
6)
7with HDFS (
8    "fs.defaultFS"="hdfs://hdfs_host:port",
9    "hadoop.username" = "hadoop"
10);

导出到对象存储

将 tbl 表中的所有数据导出到对象存储上,设置导出作业的文件格式为 csv(默认格式),并设置列分割符为,。

Plain Text
1EXPORT TABLE tbl TO "s3://bucket/export/export_" 
2PROPERTIES (
3    "line_delimiter" = ","
4) WITH s3 (
5    "s3.endpoint" = "xxxxx",
6    "s3.region" = "xxxxx",
7    "s3.secret_key"="xxxx",
8    "s3.access_key" = "xxxxx"
9);

查看导出作业

提交作业后,可以通过 SHOW EXPORT 命令查询导出作业状态,结果举例如下:

Plain Text
1mysql> show export\G
2*************************** 1. row ***************************
3      JobId: 143265
4      Label: export_0aa6c944-5a09-4d0b-80e1-cb09ea223f65
5      State: FINISHED
6   Progress: 100%
7   TaskInfo: {"partitions":[],"parallelism":5,"data_consistency":"partition","format":"csv","broker":"S3","column_separator":"\t","line_delimiter":"\n","max_file_size":"2048MB","delete_existing_files":"","with_bom":"false","db":"tpch1","tbl":"lineitem"}
8       Path: s3://bucket/export/export_
9 CreateTime: 2024-06-11 18:01:18
10  StartTime: 2024-06-11 18:01:18
11 FinishTime: 2024-06-11 18:01:31
12    Timeout: 7200
13   ErrorMsg: NULL
14OutfileInfo: [
15  [
16    {
17      "fileNumber": "1",
18      "totalRows": "6001215",
19      "fileSize": "747503989",
20      "url": "s3://bucket/export/export_6555cd33e7447c1-baa9568b5c4eb0ac_*"
21    }
22  ]
23]
241 row in set (0.00 sec)

有关 show export 命令的详细用法及其返回结果的各个列的含义可以参看 SHOW EXPORT:

取消导出作业

提交 Export 作业后,在 Export 任务成功或失败之前可以通过 CANCEL EXPORT 命令取消导出作业。取消命令举例如下:

Plain Text
1CANCEL EXPORT FROM dbName WHERE LABEL like "%export_%";

导出说明

导出数据源

EXPORT 当前支持导出以下类型的表或视图

  • Doris 内表
  • Doris 逻辑视图
  • External Catalog 中的表

导出数据存储位置

Export 目前支持导出到以下存储位置:

  • 对象存储:Amazon S3、COS、OSS、OBS、Google GCS
  • HDFS

导出文件类型

EXPORT 目前支持导出为以下文件格式:

  • Parquet
  • ORC
  • csv
  • csv_with_names
  • csv_with_names_and_types

导出示例

导出到开启了高可用的 HDFS 集群

如果 HDFS 开启了高可用,则需要提供 HA 信息,如:

Plain Text
1EXPORT TABLE tbl 
2TO "hdfs://HDFS8000871/path/to/export_" 
3PROPERTIES
4(
5    "line_delimiter" = ","
6)
7with HDFS (
8    "fs.defaultFS" = "hdfs://HDFS8000871",
9    "hadoop.username" = "hadoop",
10    "dfs.nameservices" = "your-nameservices",
11    "dfs.ha.namenodes.your-nameservices" = "nn1,nn2",
12    "dfs.namenode.rpc-address.HDFS8000871.nn1" = "ip:port",
13    "dfs.namenode.rpc-address.HDFS8000871.nn2" = "ip:port",
14    "dfs.client.failover.proxy.provider.HDFS8000871" = "org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider"
15);

导出到开启了高可用及 kerberos 认证的 HDFS 集群

如果 Hadoop 集群开启了高可用并且启用了 Kerberos 认证,可以参考如下 SQL 语句:

Plain Text
1EXPORT TABLE tbl 
2TO "hdfs://HDFS8000871/path/to/export_" 
3PROPERTIES
4(
5    "line_delimiter" = ","
6)
7with HDFS (
8    "fs.defaultFS"="hdfs://hacluster/",
9    "hadoop.username" = "hadoop",
10    "dfs.nameservices"="hacluster",
11    "dfs.ha.namenodes.hacluster"="n1,n2",
12    "dfs.namenode.rpc-address.hacluster.n1"="192.168.0.1:8020",
13    "dfs.namenode.rpc-address.hacluster.n2"="192.168.0.2:8020",
14    "dfs.client.failover.proxy.provider.hacluster"="org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider",
15    "dfs.namenode.kerberos.principal"="hadoop/_HOST@REALM.COM"
16    "hadoop.security.authentication"="kerberos",
17    "hadoop.kerberos.principal"="doris_test@REALM.COM",
18    "hadoop.kerberos.keytab"="/path/to/doris_test.keytab"
19);

指定分区导出

导出作业支持仅导出 Doris 内表的部分分区,如仅导出 test 表的 p1 和 p2 分区

Plain Text
1EXPORT TABLE test
2PARTITION (p1,p2)
3TO "s3://bucket/export/export_" 
4PROPERTIES (
5    "columns" = "k1,k2"
6) WITH s3 (
7    "s3.endpoint" = "xxxxx",
8    "s3.region" = "xxxxx",
9    "s3.secret_key"="xxxx",
10    "s3.access_key" = "xxxxx"
11);

导出时过滤数据

导出作业支持导出时根据谓词条件过滤数据,仅导出符合条件的数据,如仅导出满足k1 < 50条件的数据

Plain Text
1EXPORT TABLE test
2WHERE k1 < 50
3TO "s3://bucket/export/export_"
4PROPERTIES (
5    "columns" = "k1,k2",
6    "column_separator"=","
7) WITH s3 (
8    "s3.endpoint" = "xxxxx",
9    "s3.region" = "xxxxx",
10    "s3.secret_key"="xxxx",
11    "s3.access_key" = "xxxxx"
12);

导出外表数据

导出作业支持 Export Catalog 外表数据的导出:

Plain Text
1-- Create a hive catalog
2CREATE CATALOG hive_catalog PROPERTIES (
3    'type' = 'hms',
4    'hive.metastore.uris' = 'thrift://172.0.0.1:9083'
5);
6
7-- Export hive table
8EXPORT TABLE hive_catalog.sf1.lineitem TO "s3://bucket/export/export_"
9PROPERTIES(
10    "format" = "csv",
11    "max_file_size" = "1024MB"
12) WITH s3 (
13    "s3.endpoint" = "xxxxx",
14    "s3.region" = "xxxxx",
15    "s3.secret_key"="xxxx",
16    "s3.access_key" = "xxxxx"
17);

导出前清空导出目录

Plain Text
1EXPORT TABLE test TO "s3://bucket/export/export_"
2PROPERTIES (
3    "format" = "parquet",
4    "max_file_size" = "512MB",
5    "delete_existing_files" = "true"
6) WITH s3 (
7    "s3.endpoint" = "xxxxx",
8    "s3.region" = "xxxxx",
9    "s3.secret_key"="xxxx",
10    "s3.access_key" = "xxxxx"
11);

如果设置了 "delete_existing_files" = "true",导出作业会先将 s3://bucket/export/目录下所有文件及目录删除,然后导出数据到该目录下。

若要使用 delete_existing_files 参数,还需要在 fe.conf 中添加配置 enable_delete_existing_files = true 并重启 fe,此时 delete_existing_files 才会生效。该操作会删除外部系统的数据,属于高危操作,请自行确保外部系统的权限和数据安全性。

设置导出文件的大小

导出作业支持设置导出文件的大小,如果单个文件大小超过设定值,则会对导出文件进行切分。

Plain Text
1EXPORT TABLE test TO "s3://bucket/export/export_"
2PROPERTIES (
3    "format" = "parquet",
4    "max_file_size" = "512MB"
5) WITH s3 (
6    "s3.endpoint" = "xxxxx",
7    "s3.region" = "xxxxx",
8    "s3.secret_key"="xxxx",
9    "s3.access_key" = "xxxxx"
10);

通过设置 "max_file_size" = "512MB",则单个导出文件的最大大小为 512MB。

注意事项

  • 导出数据量

不建议一次性导出大量数据。一个 Export 作业建议的导出数据量最大在几十 GB。过大的导出会导致更多的垃圾文件和更高的重试成本。如果表数据量过大,建议按照分区导出。

另外,Export 作业会扫描数据,占用 IO 资源,可能会影响系统的查询延迟。

  • 导出文件的管理

如果 Export 作业运行失败,已经生成的文件不会被删除,需要用户手动删除。

  • 导出超时

若导出的数据量很大,超过导出的超时时间,则 Export 任务会失败。此时可以在 Export 命令中指定 timeout 参数来增加超时时间并重试 Export 命令。

  • 导出失败

在 Export 作业运行过程中,如果 FE 发生重启或切主,则 Export 作业会失败,需要用户重新提交。可以通过show export 命令查看 Export 任务状态。

  • 导出分区数量

一个 Export Job 允许导出的分区数量最大为 2000,可以在 fe.conf 中添加参数maximum_number_of_export_partitions并重启 FE 来修改该设置。

  • 数据完整性

导出操作完成后,建议验证导出的数据是否完整和正确,以确保数据的质量和完整性。

附录

基本原理

Export 任务的底层是执行SELECT INTO OUTFILE SQL 语句。用户发起一个 Export 任务后,Doris 会根据 Export 要导出的表构造出一个或多个 SELECT INTO OUTFILE 执行计划,随后将这些SELECT INTO OUTFILE 执行计划提交给 Doris 的 Job Schedule 任务调度器,Job Schedule 任务调度器会自动调度这些任务并执行。

导出到本地文件系统

导出到本地文件系统功能默认是关闭的。这个功能仅用于本地调试和开发,请勿用于生产环境。

如要开启这个功能请在 fe.conf 中添加 enable_outfile_to_local=true并且重启 FE。

示例:将 tbl 表中的所有数据导出到本地文件系统,设置导出作业的文件格式为 csv(默认格式),并设置列分割符为,。

Plain Text
1EXPORT TABLE db.tbl TO "file:///path/to/result_"
2PROPERTIES (
3  "format" = "csv",
4  "line_delimiter" = ","
5);

此功能会将数据导出并写入到 BE 所在节点的磁盘上,如果有多个 BE 节点,则数据会根据导出任务的并发度分散在不同 BE 节点上,每个节点有一部分数据。

如在这个示例中,最终会在 BE 节点的 /path/to/ 下生产一组类似 result_7052bac522d840f5-972079771289e392_0.csv 的文件。

具体的 BE 节点 IP 可以在 SHOW EXPORT 结果中的 OutfileInfo 列查看,如:

Plain Text
1[
2    [
3        {
4            "fileNumber": "1", 
5            "totalRows": "0", 
6            "fileSize": "8388608", 
7            "url": "file:///172.20.32.136/path/to/result_7052bac522d840f5-972079771289e392_*"
8        }
9    ], 
10    [
11        {
12            "fileNumber": "1", 
13            "totalRows": "0", 
14            "fileSize": "8388608", 
15            "url": "file:///172.20.32.137/path/to/result_22aba7ec933b4922-ba81e5eca12bf0c2_*"
16        }
17    ]
18]

警告
此功能不适用于生产环境,并且请自行确保导出目录的权限和数据安全性。

上一篇
数据导出概述
下一篇
数据导出