Sqoop 导出中的 --direct 参数如何与 Vertica 一起使用?
How does --direct parameter in Sqoop export work with Vertica?
我在将大量数据从 HDFS 导出到 Vertica 时遇到 Too many ROS containers ...
错误。我知道 vsql COPY
有一个 direct
选项,它将绕过 WOS 并将数据加载到 ROS 容器中。我还注意到 Sqoop Export 中的 --direct
,see this Sqoop User Guide。我只是想知道这两个 "direct" 是否具有相同的功能。
我曾尝试修改 Vertica 配置参数,例如 MoveOutInterval
、MergeOutInterval
... 但这并没有太大帮助。
所以有人知道 direct
Sqoop 导出模式是否有助于解决 ROS 容器问题。谢谢!
--direct
仅受特定数据库连接器支持。由于没有用于 Vertica 的工具,您将使用通用 JDBC 工具。我真的怀疑使用 --direct
有什么作用...但是如果你真的想测试它,你可以查看 query_requests
中发送的语句。
select *
from query_requests
where request_type = 'LOAD'
and start_timestamp > clock_timestamp() - interval '1 hour'
这将向您显示过去一小时内的所有加载语句。 sqoop 语句应转换为 COPY
。无论如何我真的希望!如果它是一堆 INSERT ... VALUES
语句,那么我强烈建议不要使用它。如果它没有生成 COPY
,那么您需要更改上面的查询以查找 INSERT
。
select *
from query_requests
where request_type = 'QUERY'
and request ilike 'insert%'
and start_timestamp > clock_timestamp() - interval '1 hour'
让我知道您在这里找到了什么。如果它正在执行 INSERT...VALUES
那么我可以告诉您如何修复它(但这需要一些工作)。
我在将大量数据从 HDFS 导出到 Vertica 时遇到 Too many ROS containers ...
错误。我知道 vsql COPY
有一个 direct
选项,它将绕过 WOS 并将数据加载到 ROS 容器中。我还注意到 Sqoop Export 中的 --direct
,see this Sqoop User Guide。我只是想知道这两个 "direct" 是否具有相同的功能。
我曾尝试修改 Vertica 配置参数,例如 MoveOutInterval
、MergeOutInterval
... 但这并没有太大帮助。
所以有人知道 direct
Sqoop 导出模式是否有助于解决 ROS 容器问题。谢谢!
--direct
仅受特定数据库连接器支持。由于没有用于 Vertica 的工具,您将使用通用 JDBC 工具。我真的怀疑使用 --direct
有什么作用...但是如果你真的想测试它,你可以查看 query_requests
中发送的语句。
select *
from query_requests
where request_type = 'LOAD'
and start_timestamp > clock_timestamp() - interval '1 hour'
这将向您显示过去一小时内的所有加载语句。 sqoop 语句应转换为 COPY
。无论如何我真的希望!如果它是一堆 INSERT ... VALUES
语句,那么我强烈建议不要使用它。如果它没有生成 COPY
,那么您需要更改上面的查询以查找 INSERT
。
select *
from query_requests
where request_type = 'QUERY'
and request ilike 'insert%'
and start_timestamp > clock_timestamp() - interval '1 hour'
让我知道您在这里找到了什么。如果它正在执行 INSERT...VALUES
那么我可以告诉您如何修复它(但这需要一些工作)。