【问题标题】:Sqoop and VerticaSqoop 和 Vertica
【发布时间】:2016-02-17 18:56:08
【问题描述】:

这里有人使用过 sqoop 和 hp vertica 吗?

我正在尝试将数据从 sqoop 导出到 vertica,但发现性能极差。

我可以切换到 HP vertica 连接器...但我仍然想知道为什么 sqoop 在将数据导出到 vertica 时运行如此缓慢。

我还发现,在插入数据时,sqoop 不支持针对 vertica 的 upsert。我想知道这个问题是否会很快得到解决?

sqoop export -Dsqoop.export.records.per.statement=1 --driver 
com.vertica.jdbc.Driver --mysql-delimiters  --username **** --password **** --
connect jdbc:vertica://hostname/schema?ConnectionLoadBalance=1 --export-dir <hdfs-
data-dir> --table <table_name>

其中一个问题是 sqoop 如果强制我们将 Vertica 的 sqoop.export.records.per.statement 设置为 1。否则会抛出错误。

【问题讨论】:

  • 你使用的sqoop命令是什么?
  • @woot 我尖叫独家新闻。

标签: sqoop vertica


【解决方案1】:

我没用过sqoop,但是vertica中的命令行数据导入功能使用了COPY功能;基本上它会创建一个临时文件,然后在后台运行文件导入。这不是一个优雅的解决方案,但您可以尝试将数据转储到 gzip,然后直接运行 COPY 函数。我发现 gzip 始终是超过某个阈值(~50Mb+)的文件的瓶颈,而不是 COPY。可能是加快导入速度的后门。

【讨论】:

    【解决方案2】:

    我使用 vertica 数据库使用 sqoop,我使用 sqoop 将数据从 vertica 导出到 hive/HDFS 并且它可以正常工作,您只需将 vertica jar 添加到 sqoop 文件夹。 当我想对 HDFS/Hive 中的数据询问 vertica 时,我使用 vertica 的 hcatalog。在 8.1.* 版本中,它带有 vertica 数据库,您不需要更多连接器。

    hcatalog

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多