我想将数据从Google云存储导入到Vertica的本机(托管)表中。我已经从Google云端存储导入了数据,但它正在外部表中。我已通过this link,但它仅使用外部表显示,并且我想将数据导入Vertica中的托管表中。
如果您要使表具有内部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表的自动,默认,投影将不是最佳设计...