【问题标题】:Issue creating external tables from sql server to hadoop using polybase使用 polybase 从 sql server 创建外部表到 hadoop 的问题
【发布时间】:2019-12-17 03:41:02
【问题描述】:

我们最近在 SQL Server 中安装了 Polybase。我们正在尝试使用 Hortonworks 来获取数据。我在创建外部表时面临以下问题。

Msg 105019, Level 16, State 1, Line 1 
EXTERNAL TABLE access failed due to internal error: 'Java exception raised on call to HdfsBridge_IsDirExist:  
Error [End of File Exception between local host is: "xxxxx"; destination host is: "xxxxx":1111; :  
java.io.EOFException; For more details see:  http://wiki.apache.org/hadoop/EOFException] occurred while accessing external file.'

我尝试通过取消注释 Kerberos 选项来更改 SQL Server polybase 位置中的 core-site.xml 文件,这现在给了我以下错误:

Msg 105019, Level 16, State 1, Line 1
EXTERNAL TABLE access failed due to internal error: 'Java exception raised on call to HdfsBridge_Connect: 
Error [Unable to instantiate LoginClass] occurred while accessing external file.'

我怀疑这可能与创建数据库范围的凭据有关。

CREATE DATABASE SCOPED CREDENTIAL HadoopUser3
WITH IDENTITY = '<user>', Secret = '<Passw0rd>';  
go

谁能帮我理解我在身份和秘密方面遇到的问题。它与 Hadoop 凭据有关吗?我们必须提供什么样的秘密?

【问题讨论】:

    标签: sql-server hadoop sql-server-2016 hortonworks-data-platform polybase


    【解决方案1】:

    需要检查的几件事:

    在您的 core-site.xml 文件中尝试将 hadoop.security.authentication 设置为小写“kerberos”。另外,请确保您已添加 polybase.kerberos.realm 和 polybase.kerberos.kdhost

    确保您创建的数据源对您的 HDFS 集群使用正确的 LOCATION=。确保这是 IP 地址:端口,而不是服务器本身的名称

    检查外部表并确保您拥有集群物理文件本身的正确路径。

    【讨论】:

    • 感谢您提供的信息。此问题已解决。
    猜你喜欢
    • 2022-01-02
    • 2021-05-04
    • 2017-09-23
    • 2019-08-29
    • 2019-04-24
    • 2020-06-22
    • 1970-01-01
    • 2020-09-13
    • 1970-01-01
    相关资源
    最近更新 更多