阿里云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↓↓↓

相关推荐
Jack_hrx1 小时前
从0到1构建高并发秒杀系统:实战 RocketMQ 异步削峰与Redis预减库存
大数据·rocketmq·高并发·秒杀系统实战·异步削峰
Double@加贝2 小时前
MaxCompute的Logview分析详解
大数据·阿里云·dataworks·maxcompute
yuren_xia2 小时前
RabbitMQ 知识详解(Java版)
java·rabbitmq·java-rabbitmq
kfyty7252 小时前
轻量级 ioc 框架 loveqq,支持接口上传 jar 格式的 starter 启动器并支持热加载其中的 bean
java·jvm·ioc·jar·热加载
早起鸟儿3 小时前
docker-Dockerfile 配置
java·linux·运维·docker
云边小网安3 小时前
java集合篇(六) ---- ListIterator 接口
java·开发语言·青少年编程·java集合
都叫我大帅哥3 小时前
Spring WebFlux:响应式编程的“未来战士”还是“花架子”?
java·spring·flux
都叫我大帅哥3 小时前
Reactor 深度解析:响应式编程的「核反应堆」是如何工作的?
java·spring
不太厉害的程序员3 小时前
NC65配置xml找不到Bean
xml·java·后端·eclipse
我在北国不背锅4 小时前
基于Java开发的浏览器自动化Playwright-MCP服务器
java·playwright·mcp