常用命令
MaxCompute 基础命令、生命周期、正则表达式等命令相关问题
1. 常用命令有哪些?
MaxCompute 常用命令如下:
类别 |
常用命令 |
项目空间操作 |
|
set 操作 |
|
安全操作 |
移除可信项目空间(remove trustedproject)查看可信项目空间(list trustedprojects) |
类别 |
常用命令 |
||
用户和角色操作 |
|||
授权操作 |
|||
表操作 |
|||
分区和列操作 |
类别 |
常用命令 |
实例操作 |
|
资源操作 |
|
函数操作 |
|
Tunnel 操作 |
|
时区配置操作 |
|
其它操作 |
2. MaxCompute中有命令可以把所有的 project 列出来吗?
可以执行 list projects [-user <user_account>] 可以看到账号下的 project 列表。
3. MaxCompute客户端(odpscmd)可以通过什么命令导出数据?
可以使用 Tunnel download。可以参考下面这篇官方文档。
4. 如何查看 MaxCompute 每个分区存储的数据大小?
desc <table_name> partition (<pt_spec>); 比如desct 1 partition(ds="20190820");
5. 如何查看当前项目空间的所有自定义函数?
查看当前项目空间中的所有自定义函数:LIST FUNCTIONS; 查看指定项目空间下的所有自定义函数:LIST FUNCTIONS -p project_name;
6. 在 MaxCompute 中如果一个表下面有很多分区,需要清空这个表所有的分区,应该怎么操作?
使用删除分区语法:ALTER TABLE TABLE_NAME DROP [IF EXISTS] PARTITION partition_spec;
需要一个个删除分区,如果要删除大量分区,建议重建一个新表。具体操作可参考文档。
7. MaxCompute 表 dim_xxxx 正在使用时找不到了。使命令行 show p; 没有查到相关 sql,没有发现 DROP 语句,这个表是谁在什么时间删除的?
如果没有 DROP 语句,表是因为设置了 lifecycle 导致的。当设置 lifecycle 后数据没有更新的,到时间后表会被 MaxCompute 自动回收。
8. 有什么命令可以查询 MaxCompute 内表的存储量和记录条数?
单表的存储量可以使用 desc 命令查看,记录条数可以使用 count 函数。
9. MaxCompute 表的默认生命周期是多少呢? 如何查看具体的值?以及各分区的lifecycle 的值?
如果您没有为表指定生命周期,则表(分区)不会根据生命周期规则被 MaxCompute 自动回收,所以默认周期为永久。如果设置了 lifecycle,可以通过 desc table 命令来查看。可参考官方文档。
10. MaxCompute中如何禁止/恢复生命周期功能?
可使用禁止/恢复生命周期 SQL 来设置。具体语法如下:
alter table <table_name> [<pt_spec>] {enable|disable} lifecycle;
11. Tunnel Upload 是否支持通配符或正则表达式?
使用 Tunnel Upload 命令上传数据时,不支持通配符或正则表达式。
12. Tunnel Upload 对文件大小是否有限制?记录大小是否有限制?是否要使用压缩?
使用 Tunnel Upload 命令上传文件时,对文件大小没有限制,但一次上传时长不能超过2 小时。您可以根据实际上传速度和时间估算能够上传的数据量。
记录大小不能超过 200 MB。
Tunnel Upload 默认会使用压缩,如果带宽允许的情况下,可以通过-cp 参数关掉压缩。
13. 使用 Tunnel Upload 命令上传两个文件时,第一个文件上传结束之后,第二个文件没有上传且没有报错信息,是什么原因?
当 MaxCompute 客户端上传参数有--scan 时,续跑模式的参数传递存在问题,将--scan=true 去掉重试即可。
14. 使用 Tunnel Upload 命令上传数据时,共分为 50 个 Block,开始一切正常,但是在第 22 个 Block 时,出现 Upload Fail,重试直接跳过开始上传第 23 个 Block,如何解决?
一个Block 对应一个 HTTP Request,多个Block 的上传可以并发且是原子的,一次同步请求要么成功要么失败,不会影响其他的 Block。
重传 Retry 有次数的限制,当重传的次数超过了这个限制,就会继续上传下一个 Block。上传完成后,可以通过 select count(*) from table;语句,检查是否有数据丢失。
15. Tunnel Download 导出格式有哪些?
使用 Tunnel Download 导出的数据文件格式为 TXT 或 CSV。
16. Tunnel上传数据的流程是什么?
Tunnel 上传数据的流程如下:
1、 准备源数据,例如源文件或数据表。
2、 设计表结构和分区定义,进行数据类型转换,然后在 MaxCompute 上创建表。
3、 在 MaxCompute 表上添加分区,没有分区时忽略此步骤。
4、 把数据上传到指定分区或表上。
17. Tunnel 使用分隔符时,需要注意什么?
Tunnel 使用分隔符时,需要注意:
- 行分隔符为 rd,列分隔符为 fd。
- 列分隔符 fd 不能包含行分隔符 rd。
- Tunnel 的默认分隔符为\r\n(Windows)和\n(Linux)。
- 上传开始的时候,屏显会打印提示信息,告知本次上传所使用的行分隔符(0.21.0 版本及以后)供用户查看和确认。
>>快来点击免费下载《阿里云MaxCompute百问百答》了解更多详情!<<