sql-server - 使用 polybase 从 sql server 创建外部表到 hadoop 的问题
问题描述
我们最近在 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.'
我尝试core-site.xml
通过取消注释 Kerberos 选项来更改 SQL Server polybase 位置中的文件,该选项现在给我以下错误:
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 凭据有关吗?我们必须提供什么样的秘密?
解决方案
几件事情要检查:
在您的 core-site.xml 文件中,尝试将 hadoop.security.authentication 设置为小写“kerberos”。此外,请确保您已添加 polybase.kerberos.realm 和 polybase.kerberos.kdchost
确保您创建的数据源对您的 HDFS 集群使用正确的 LOCATION=。确保这是 IP 地址:端口,而不是服务器本身的名称
检查外部表并确保您拥有集群物理文件本身的正确路径。
推荐阅读
- haskell - TimeDuration 类型可以是 Semigroup 和 Monoid 的实例吗?
- angular - 如何将登录名与应用程序的其余部分分开?
- javascript - 如何在 JavaScript if/else 语句和 Bootstrap 4 下拉菜单中使用 innerHTML
- c# - C#如何获取字典的第一个元素并移动到另一个
- javascript - 我的插入方法不起作用
- java - 通过 WhatsApp 分享原始资源“发送失败,请重试”
- dependency-injection - 如何为具有依赖关系的类创建工厂
- sql - 查找每天热销产品的产品ID,使用总销量确定热销产品
- wordpress - 单击时搜索按钮移动
- http - 去多个 response.WriteHeader 调用