azure-databricks - 在 databricks 中使用具有基本身份验证的融合 kafka-schema-registry-client 和托管融合模式注册表
问题描述
在我的 spark 应用程序中,我有以下 scala 代码
val restService = new RestService(schemaRegistryUrl)
val props = Map(
"basic.auth.credentials.source" -> "USER_INFO",
"basic.auth.user.info" -> "%s:%s".format(key, secret)
).asJava
val schemaRegistryClient = new CachedSchemaRegistryClient(restService, 100, props)
// later:
schemaRegistryClient.getSchemaById(id) // fails with 401
我已经验证我能够使用相同的基本身份验证凭据从其他 API 中通过相同的 id 获取模式。但是使用代码,我得到一个身份验证错误 - 401。所以很明显我在这里遗漏了一些东西,我很乐意在这里寻求帮助。
restService 和 SchemaRegistry 6.2.1 的版本(我相信是最新的)
请注意,当我通过相同的模式注册表使用相同的凭据运行此代码时,这在本地有效,当我使用具有相同连接变量的 python 时,它在 databricks 中有效。只是使用来自databricks的Scala我得到401
解决方案
所以答案结果是,我的装配构建在我丢弃时丢弃了一些重要的东西META-INF
,而不是丢弃它,但是明智地选择我需要的东西需要一些努力,但最终还是奏效了。然后它起作用了。
事实证明,我使用的 avro 版本 (1.10) 的 Confluent 模式注册表客户端的版本与 Databricks (3/3.1) 中仅支持 1.8 的现有 spark 版本不兼容
推荐阅读
- hangouts-chat - 我无法在谷歌聊天中获得“配置 webhook”选项
- mysql - MySQL 错误 1044/1045 拒绝用户访问
- angular - Rxjs timeout() 运算符不在管道中工作
- javascript - 如何使用 react-window 跨行创建动态大小的列?
- snowflake-cloud-data-platform - 将文件从本地上传到雪花表阶段时出现问题
- php - 对集合 Laravel 进行过滤后获取分页
- javascript - 使用 react axios 下载的 zip 文件在服务器中损坏
- python-3.8 - 在python3中计算dict中的键
- python - 如何创建 asyncio websocket 客户端的多个实例?
- wordpress - Woocommerce 模板文件不允许使用 div