请教一个关于机器学习PAI的问题。插件已下,会是什么原因?[阿里云机器学习PAI]

请教一个关于机器学习PAI的问题。问题一:pyalink=1.6.1,使用KafkaSourceStreamOp,提示 File “./readkafka.py”, line 53, in
data = source.link(
File “/root/anaconda3/envs/py3.8.2/lib/python3.8/site-packages/pyalink/alink/common/types/bases/algo_operator.py”, line 126, in link
return self.linkTo(op)
File “/root/anaconda3/envs/py3.8.2/lib/python3.8/site-packages/pyalink/alink/common/types/bases/algo_operator.py”, line 116, in linkTo
op.linkFrom(self)
File “/root/anaconda3/envs/py3.8.2/lib/python3.8/site-packages/pyalink/alink/stream/base.py”, line 57, in linkFrom
self._j_op.linkFrom(j_args)
File “/root/anaconda3/envs/py3.8.2/lib/python3.8/site-packages/py4j/java_gateway.py”, line 1285, in call
return_value = get_return_value(
File “/root/anaconda3/envs/py3.8.2/lib/python3.8/site-packages/py4j/protocol.py”, line 326, in get_return_value
raise Py4JJavaError(
y4j.protocol.Py4JJavaError: An error occurred while calling o54.linkFrom.
ERROR: 0x0860080000001001-Unclassified error: Could not find the class factory in classloader.
插件已下,会是什么原因? [root@SeanZ alink_10]# pip list | grep -E ‘link’
apache-flink 1.13.3
apache-flink-libraries 1.13.3
pyalink 1.6.1
[root@SeanZ alink_10]# python -V
Python 3.8.13 问题二:我开始没设置,发现报错后再手工设置,问题依旧。此外,我用pyalink=1.5.1做过同类测试,没有该问题,我怀疑还是版本的问题。

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
3 条回复 A 作者 M 管理员
  1. 回答一:根据错误提示,可能是在加载KafkaSourceStreamOp类时出现问题。可以检查一下代码中是否正确导入了该类,并且尝试重新安装pyalink包。

    回答二:手工设置配置文件需要确保修改的配置生效,需要重启Flint服务。另外,确实存在一些版本相关的问题,可能不同版本的Pyalink包和其他组件不兼容。建议检查一下Flint的文档或者与厂商联系,查看是否存在兼容性问题。

  2. 这个错误可能是由于类加载器无法找到所需的类工厂而引起的。可能是由于版本不兼容或依赖项缺失导致的。您可以尝试以下步骤来解决此问题:

    确认您的所有依赖项已正确安装,并且版本兼容。

    确认您的环境变量和路径设置正确。如果您手动设置了路径,请确保路径设置正确。

    尝试重新安装Pyalink和所有相关依赖项。可以尝试使用conda或pip重新安装。

    如果问题仍然存在,请尝试使用较新的版本。您可以尝试使用Pyalink的最新版本或Apache Flink的最新版本。

    如果您仍然无法解决问题,请考虑向Pyalink或Apache Flink社区提交问题报告。他们可能能够提供更多帮助和解决方案。

  3. 针对问题一中的报错信息,根据您提供的信息,很难判断具体是哪个地方出了问题。不过,根据常见的情况来看,该错误通常是由于类加载器无法找到相应的类工厂,导致无法进行链接。您可以尝试使用 PyAlink 中的 PyFlinkEnv,在代码中将该环境发布到阿里云,来避免该错误。

    代码示例:

    from pyalink.alink import PyFlinkEnvenv = PyFlinkEnv(env_config={...})

    针对问题二中的版本问题,的确版本问题可能导致部分功能失效。建议尝试将 PyAlink 更新到最新版本,同时检查相应的依赖库是否也需要升级到最新版本。另外,您可以在 PyAlink 的官方文档中查看该功能对 PyAlink 的支持版本,以获得更准确的答案。

  4. 针对问题一的回答:看着是路径填的不对,下载的插件最好是让它自动下载。 针对问题二的回答:我看下。–此回答整理自钉群“Alink开源–用户群”