返回介绍

下载

编译与部署

开始使用

操作手册

最佳实践

扩展功能

设计文档

SQL 手册

开发者手册

Apache 社区

EXPORT

发布于 2021-09-30 01:42:48 字数 6865 浏览 946 评论 0 收藏 0

description

该语句用于将指定表的数据导出到指定位置。
该功能通过 broker 进程实现。对于不同的目的存储系统,需要部署不同的 broker。可以通过 SHOW BROKER 查看已部署的 broker。
这是一个异步操作,任务提交成功则返回。执行后可使用 SHOW EXPORT 命令查看进度。

语法:
    EXPORT TABLE table_name
    [PARTITION (p1[,p2])]
    [WHERE [expr]]
    TO export_path
    [opt_properties]
    [broker|S3];

1. table_name
  当前要导出的表的表名,目前支持engine为olap和mysql的表的导出。

2. partition
  可以只导出指定表的某些指定分区

3. expr
  导出满足 where 条件的行,选填。不填则默认导出所有行。

4. export_path
  导出的路径,需为目录。支持导出到本地,hdfs,百度bos,s3协议的其他存储系统。

5. opt_properties
  用于指定一些特殊参数。
      语法:
      [PROPERTIES ("key"="value", ...)]

      可以指定如下参数:
        column_separator: 指定导出的列分隔符,默认为\t。支持不可见字符,比如 '\x07'。
        column: 指定待导出的列,使用英文逗号隔开,如果不填这个参数默认是导出表的所有列。
        line_delimiter: 指定导出的行分隔符,默认为\n。支持不可见字符,比如 '\x07'。
        exec_mem_limit: 导出在单个 BE 节点的内存使用上限,默认为 2GB,单位为字节。
        timeout:导入作业的超时时间,默认为1天,单位是秒。
        tablet_num_per_task:每个子任务能分配的最大 Tablet 数量。

6. broker|s3
  指定使用broker导出或者通过S3协议导出
      语法:
      WITH [BROKER broker_name | S3] ("key"="value"[,...])
      这里需要指定具体的broker name, 以及所需的broker属性, 如果使用S3协议则无需指定broker name

  对于不同存储系统对应的 broker,这里需要输入的参数不同。具体参数可以参阅:`help broker load` 中 broker 所需属性。
  导出到本地时,不需要填写这部分。

example

1. 将 testTbl 表中的所有数据导出到 hdfs 上
    EXPORT TABLE testTbl TO "hdfs://hdfs_host:port/a/b/c" WITH BROKER "broker_name" ("username"="xxx", "password"="yyy");

2. 将 testTbl 表中的分区p1,p2导出到 hdfs 上
    EXPORT TABLE testTbl PARTITION (p1,p2) TO "hdfs://hdfs_host:port/a/b/c" WITH BROKER "broker_name" ("username"="xxx", "password"="yyy");

3. 将 testTbl 表中的所有数据导出到 hdfs 上,以","作为列分隔符
    EXPORT TABLE testTbl TO "hdfs://hdfs_host:port/a/b/c" PROPERTIES ("column_separator"=",") WITH BROKER "broker_name" ("username"="xxx", "password"="yyy");

4. 将 testTbl 表中 k1 = 1 的行导出到 hdfs 上。
    EXPORT TABLE testTbl TO "hdfs://hdfs_host:port/a/b/c" WHERE k1=1 WITH BROKER "broker_name" ("username"="xxx", "password"="yyy");

5. 将 testTbl 表中的所有数据导出到本地。
    EXPORT TABLE testTbl TO "file:///home/data/a";

6. 将 testTbl 表中的所有数据导出到 hdfs 上,以不可见字符 "\x07" 作为列或者行分隔符。
    EXPORT TABLE testTbl TO "hdfs://hdfs_host:port/a/b/c" PROPERTIES ("column_separator"="\\x07", "line_delimiter" = "\\x07") WITH BROKER "broker_name" ("username"="xxx", "password"="yyy")

7. 将 testTbl 表的 k1, v1 列导出到本地。
    EXPORT TABLE testTbl TO "file:///home/data/a" PROPERTIES ("columns" = "k1,v1");

keyword

EXPORT

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文