我想将数据从HDFS加载到vertica中,但是数据中的time_stamp值采用Unix纪元格式,我想将其作为Vertica中的TIMESTAMPTZ加载到vertica中。

在这种情况下,不知道如何即时使用强制转换功能。有人可以帮我吗?

我想在以下内容中添加 Actor 表

COPY search_mmx2 SOURCE Hdfs(url='http://hadoop-namenode:50070/webhdfs/v1/tmp/exported/2014/07/15/00/SEARCHES/part-m-0000*.bz2', username='xyz') filter BZip() DELIMITER E'\t';

还是有其他/更好的方法来做到这一点?

最佳答案

您将需要显式定义列列表,使用填充符,然后派生它以转换加载时的数据类型:

CREATE TABLE public.test (
  datetime TIMESTAMPTZ NOT NULL
);

COPY public.test (unix_timestamp FILLER VARCHAR(15),
                  datetime AS TO_TIMESTAMP(unix_timestamp))
FROM STDIN;

>> 1388552400
>> 1391230800
>> \.

SELECT * FROM public.test;

这给了我们

约会时间
------------------------
2014-02-01 00:00:00-05
2014-01-01 00:00:00-05

关于database - vertica将unix纪元复制到TIMESTAMPTZ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24944310/

10-11 08:38