如何从GCS导入数据到Vertica本机表

问题描述 投票:0回答:1

我想将数据从Google云存储导入到Vertica的本机(托管)表中。我已经从Google云端存储导入了数据,但它正在外部表中。我已通过this link,但它仅使用外部表显示,并且我想将数据导入Vertica中的托管表中。

google-cloud-platform google-cloud-storage vertica
1个回答
0
投票

如果您要使表具有内部Vertica ROS(读取优化存储)格式,您要做的就是创建表,然后将外部表中的行插入新表中:

所以-获取外部表的定义:

SQL>select export_objects('','conc_ext',false)                                                                                                                                                                
export_objects

CREATE EXTERNAL TABLE public.conc_ext
(
    ts timestamp,
    request_type varchar(12),
    concurrency int
)
 AS 
copy from '/home/gessnerm/1/Vertica/bmw/conc.csv' delimiter '|' skip 1;

并使用上面的输出并删除EXTERNAL关键字,创建自己的内部表,相同的架构,新名称:

CREATE TABLE public.conc_ros                                                                                                                                                                                  
(
    ts timestamp,
    request_type varchar(12),
    concurrency int
);

最后,]:>

INSERT /*+DIRECT */ INTO public.conc_ros SELECT * FROM public.conc_ext;

应该是这样。

当然,通过优化物理设计,有很多改进性能的可能性,因为新ROS表的自动,默认,投影将不是最佳设计...

© www.soinside.com 2019 - 2024. All rights reserved.