阿里云ACP大数据高级工程师知识点,超详细,看完就够了!

本文以Tunnel 命令章节知识点为例,不说废话直接上干货!

一、 Tunnel概述

  • Tunnel是MaxCompute提供的数据通道服务,各种异构数据源都可以通过Tunnel服务导入MaxCompute或从MaxCompute导出。
  • Tunnel提供了RestfulAPI接口,提供了Java SDK,方便用户编程

二、命令行客户端odpscmd

  • 基本语法

• Usage: tunnel <subcommand> [options] [args]

• subcommand

• upload (u) download (d) resume (r) show (s) purge (p) help (h)

  • subcommand

• upload

• 上传数据到MaxCompute的表中。支持文件或目录(指一级目录)的上传,每一次上传只支持数据上传到一张表或表的一个分区。分区表一定要指定上传的分区,多级分区一定要指定到末级分区。

• download

• 从MaxCompute的表中下载数据。只支持下载到单个文件,每一次下载只支持下载一张表或一个分区到一个文件。分区表一定要指定下载的分区,多级分区一定要指定到末级分区。

• 其他命令

• resume

• 因为网络或Tunnel服务的原因出错,支持续传文件或目录。如果上传数据失败,通过resume命令进行断点续传,仅支持上传数据的续传。每次上传、下载数据被称为一个Session。在resume后指定session id完成续传。

• show

• 查看历史运行信息

• purge

• 清理Session目录,默认清理3天内的日志

• help

• 输出Tunnel帮助信息

  • 常用参数

• -c,-charset <ARG> :数据文件字符编码,默认为UTF-8

  • -ni,-null-indicator <ARG> :指定NULL数据标识符。默认值为""(空字符串)

• -fd,-field-delimiter <ARG>:分隔符

• -dfp,-date-format-pattern <ARG>:日期格式,指定DATETIME类型数据格式,默认为yyyy-MM-dd HH:mm:ss

• -sd,-session-dir <ARG> :指定Session目录。•

• 其他上传参数

• -acp,-auto-create-partition <ARG>

• 如果指定分区不存在,自动创建目标分区。默认值为False。

• -cp,-compress <ARG>

• 指定是否在本地压缩数据后再上传,减少网络流量。默认值为True

• -dbr,-discard-bad-records <ARG>

• 指定是否忽略脏数据(多列、少列、列数据类型不匹配等情况)。默认值为False。True:忽略全部不符合表定义的数据。False:如果遇到脏数据,则给出错误提示信息,目标表内的原始数据不会被污染

• -s,-scan <ARG>

• 指定是否扫描本地数据文件。默认值为True。True:先扫描数据,若数据格式正确,再导入数据。False:不扫描数据,直接导入数据。Only:仅扫描本地数据,扫描结束后不继续导入数据

三、Tunnle特点

  • 支持对表的读写,不支持视图。
  • 写表是追加模式。
  • 采用并发以提高整体吞吐量。
  • 避免频繁提交。
  • 目标分区必须存在。

四、Tunnel上传下载限制

  • Tunnel功能及Tunnel SDK当前不支持外部表操作
  • Tunnel命令不支持上传下载ARRAY、MAP和STRUCT类型的数据
  • 每个Tunnel的Session在服务端的生命周期为24小时,创建后24小时内均可使用,也可以跨进程/线程共享使用,但是必须保证同一个BlockId没有重复使用
  • 如果您根据Session下载,请注意只有主账号创建的Session,可以被主账号及所属子账号下载

文章篇幅有限,更多阿里云ACP大数据高级工程师备考知识点及题库试题,可戳下方明~pian↓↓↓

相关推荐
架构师沉默12 小时前
别又牛逼了!AI 写 Java 代码真的行吗?
java·后端·架构
后端AI实验室16 小时前
我把一个生产Bug的排查过程,交给AI处理——20分钟后我关掉了它
java·ai
凉年技术18 小时前
Java 实现企业微信扫码登录
java·企业微信
狂奔小菜鸡19 小时前
Day41 | Java中的锁分类
java·后端·java ee
hooknum19 小时前
学习记录:基于JWT简单实现登录认证功能-demo
java
程序员Terry20 小时前
同事被深拷贝坑了3小时,我教他原型模式的正确打开方式
java·设计模式
NE_STOP20 小时前
MyBatis-缓存与注解式开发
java
武子康20 小时前
大数据-243 离线数仓 - 实战电商核心交易增量导入(DataX - HDFS - Hive 分区
大数据·后端·apache hive
码路飞20 小时前
不装 OpenClaw,我用 30 行 Python 搞了个 QQ AI 机器人
java
Re_zero20 小时前
以为用了 try-with-resources 就稳了?这三个底层漏洞让TCP双向通讯直接卡死
java·后端