【问题标题】:Using teradata fast export within sqoop command在 sqoop 命令中使用 teradata 快速导出
【发布时间】:2020-05-02 00:47:37
【问题描述】:

在使用 Teradata 方法“--fast-export”时从 Teradata 数据库进行 sqooping 时遇到问题,下面是 sqoop 查询示例


-Dhadoop.security.credential.provider.path=jceks:/PATH/TO/password/password.jcecks

-Dteradata.db.job.data.dictionary.usexviews=false

--connect

jdbc:teradata://DATABASE

--password-alias

password.alias

--username

USER

--connection-manager

org.apache.sqoop.teradata.TeradataConnManager

--fields-terminated-by

'\t'

--lines-terminated-by

'\n'

--null-non-string

''

--null-string

''

--num-mappers

8

--split-by

column3

--target-dir

/THE/TARGET/DIR

--query

SELECT column1,column2,column3 WHERE column3 > '2020-01-01 00:00:00' and column3 <= '2020-01-12 10:41:20' AND $CONDITIONS

--

--method

internal.fastexport

我得到的错误是

原因:com.teradata.connector.common.exception.ConnectorException: java.sql.SQLException: [Teradata Database] [TeraJDBC] [Error 3524] [SQLState 42000] 用户没有 CREATE VIEW 访问权限到数据库 DATABASE。

我怀疑快速导出将实现临时创建的临时表/视图,并且引擎盖下的工作将从临时表中提取。这是一个sqoop机制吗,可以关掉吗?

非常感谢

【问题讨论】:

  • 这可能是一个愚蠢的问题,但是 -- 您的数据库实际上命名为 DATABASE 吗?如果没有,看起来这个参数没有被正确设置/传递。
  • 对不起,我应该提到。我从问题中删除了更敏感的信息(服务器详细信息等),我发现如果我从 sqoop 查询中删除快速导出方法,那么它运行良好但性能较差
  • 我认为您应该使用 --output-method 而不是 --method ,如下面的参考链接中所示。还按照此页面的说明使用连接字符串。 docs.cloudera.com/documentation/other/connectors/teradata/1-x/…

标签: hadoop teradata sqoop


【解决方案1】:

快速导出不实现任何视图来提取数据。该视图是由 Sqoop 基于 --query 值创建的。因此,运行作业的用户必须在 DATABASE 上授予 CV 权限。

您可以通过运行以下查询将 USER_NAME 和 DATABASE_NAME 替换为您的环境中的值来检查用户对数据库的权限。

ACCESS_RIGHT = 'CV' ,表示 CREATE VIEW 所以保持原样。

SELECT * 
FROM dbc.allRoleRights WHERE roleName IN 
(SELECT roleName FROM dbc.roleMembers WHERE grantee = 'USER_NAME')
AND DATABASENAME = 'DATABASE_NAME'
AND ACCESS_RIGHT = 'CV'
ORDER BY 1,2,3,5;

您可能需要 CT(创建表)权限才能创建日志表以便快速导出。这是由 Sqoop 参数 --error-table 和 --error-database 给出的

【讨论】:

    猜你喜欢
    • 2018-07-22
    • 2014-08-21
    • 1970-01-01
    • 1970-01-01
    • 2015-03-25
    • 1970-01-01
    • 1970-01-01
    • 2015-09-25
    • 1970-01-01
    相关资源
    最近更新 更多