将gzip hdfs数据复制到vertica

px9o7tmv  于 2021-06-02  发布在  Hadoop
关注(0)|答案(3)|浏览(378)

我想把hdfs(gzip)数据复制到vetica中。
我正在使用以下命令。但它不起作用
复制pix001源hdfs(url='http://hadoopnemenode.com:50070/webhdfs/v1/bq upload/pix/m=03/d=01/03-01.txt.gz',username='xyz')gzip分隔符e'\t';
有人知道更好的方法吗
谢谢

5ktev3wc

5ktev3wc1#

再加上罗伊的回答,
下面给出了制作(构建)的步骤,(#roy答案的第2步)

sudo apt-get install g++ 
sudo apt-get install zlib1g-dev  # for gzip 
g++ -lz -D HAVE_LONG_INT_64 -I /opt/vertica/sdk/include -Wall -shared -Wno-unused-value    -fPIC -o /opt/vertica/sdk/examples/build/GZipLib.so /opt/vertica/sdk/examples/FilterFunctions/GZip.cpp /opt/vertica/sdk/include/Vertica.cpp

提示:-lz标志将zlib库与gzip.so静态链接
用于编译自定义项的vertica文档

oalqel3c

oalqel3c2#

看起来不像是从支持gzip的hdfs复制
https://my.vertica.com/docs/7.0.x/html/content/authoring/hadoopintegrationguide/hdfsconnector/loadingdatafromhdfs.htm
无论如何,我在那个医生身上看不到。

piok6c0g

piok6c0g3#

是的,有gzip支持,只需要编译gzip libs[vertica的人终于帮了我:)]
步骤如下:

cd/opt/vertica/sdk/示例/

制造

vsql-f filterfunctions.sql

dbadmin=>创建库gziplib为'/opt/vertica/sdk/examples/build/gziplib.so';
dbadmin=>create filter gzip as language'c++'name'gzip解包工厂'library gziplib;
复制002源hdfs(url='http://hadoop-namenode.com:50070/webhdfs/v1/03-01.txt.gz',username='xyz')filter gzip()分隔符e'\t';

相关问题