GET 命令
概述
GET 命令用于从云器 Lakehouse 的数据湖 Volume 对象中下载文件到客户端本地路径。通过该命令,用户可以轻松地将数据从云端同步到本地环境,以便进行进一步的分析和处理。要执行 GET 命令,您可以使用 sqlline 工具或 数据库管理工具。该命令暂不支持在 Studio 中运行。
使用场景
- 数据分析:将数据文件从云端下载到本地进行分析和挖掘。
- 数据迁移:将数据从云端迁移到本地存储,以便在本地进行备份或迁移到其他云平台。
- 数据恢复:从云端恢复丢失或损坏的数据到本地。
语法
GET
[ VOLUME volume_name | TABLE VOLUME table_name | USER VOLUME ]
[ FILE 'file' ]
TO 'local_path'
[ option_key = option_value ] ...
参数说明
VOLUME/TABLE VOLUME/USER VOLUME
:分别指将外部 Volume,TABLE VOLUME 和USER VOLUME 中的数据下载到本地。具体导出使用方式参考COPY INTO导出
FILE
:指定下载文件
local_path
:本地下载的本地路径,根据不同操作系统有所区别。
示例
-
将表中数据导出到本地
--将数据导出到内部user volume中
COPY INTO USER VOLUME SUBDIRECTORY 'tmp/' FROM TABLE mytable file_format = (type = CSV);;
-- 查看导出的文件
SHOW USER VOLUME DIRECTORY;
+-------------------+------------------------------------------------------------------------------------------------------------+------+---------------------+
| relative_path | url | size | last_modified_time |
+-------------------+------------------------------------------------------------------------------------------------------------+------+---------------------+
| tmp/part00001.csv | oss://xxxx/tmp/part00001.csv | 5 | 2024-11-14 19:44:37 |
+-------------------+------------------------------------------------------------------------------------------------------------+------+---------------------+
--下载文件
GET USER VOLUME FILE 'tmp/part00001.csv' TO './';
--删除volume中文件,避免占用存储
REMOVE USER VOLUME FILE 'tmp/part00001.csv';
SHOW USER VOLUME DIRECTORY;
+---------------+-----+------+--------------------+
| relative_path | url | size | last_modified_time |
+---------------+-----+------+--------------------+
注意事项
- 从外部 Volume 下载文件会产生所属云账号的对象存储下载费用。
- GET 命令不能通过 Studio SQL 任务节点执行。可以通过云器 Lakehouse SQLline 客户端、JDBC 客户端以及 SDK 来执行。