java - TypeError:“JavaPackage”对象不可调用 AWS Glue Pyspark
问题描述
我正在尝试按照 AWS文档在我的 ubuntu 虚拟机上设置 AWS Glue 环境。
我已经按照建议完成了下载 aws 胶水库、spark 包和设置 spark home 之类的必要工作。之后,我无法初始化胶水上下文并面临以下错误。
from awsglue.context import GlueContext
from pyspark.context import SparkContext
glueContext = GlueContext(SparkContext.getOrCreate())
or
glueContext = GlueContext(sc)
错误:
TypeError Traceback (most recent call last)
<ipython-input-15-0798793d4033> in <module>
----> 1 glueContext = GlueContext(SparkContext.getOrCreate())
~/aws-glue-libs-glue-1.0/PyGlue.zip/awsglue/context.py in __init__(self, sparkContext, **options)
43 super(GlueContext, self).__init__(sparkContext)
44 register(sparkContext)
---> 45 self._glue_scala_context = self._get_glue_scala_context(**options)
46 self.create_dynamic_frame = DynamicFrameReader(self)
47 self.write_dynamic_frame = DynamicFrameWriter(self)
~/aws-glue-libs-glue-1.0/PyGlue.zip/awsglue/context.py in _get_glue_scala_context(self, **options)
64
65 if min_partitions is None:
---> 66 return self._jvm.GlueContext(self._jsc.sc())
67 else:
68 return self._jvm.GlueContext(self._jsc.sc(), min_partitions, target_partitions)
TypeError: 'JavaPackage' object is not callable
解决方案
将 aws-glue-libs jar 文件复制到 Spark Jar 文件夹。这意味着将 jar 文件从 \aws-glue-libs\jarsv1\ 文件夹复制到 \spark-2.4.3-bin-spark-2.4.3-bin-hadoop2.8\jars 文件夹
推荐阅读
- xslt - How to replace all occurences of an XML tag by its value in an SVG file
- angular - 使用角度材料日期选择器保存本地日期
- android - android自定义布局显示文件夹路径结构
- visual-studio-code - vscode - 在 1.31.0 版本中扩展文件夹
- batch-file - 如何自动化“刷新 cmd 窗口”?
- python - 如何将附加数据传递给 post_ajax 方法?
- xml - 运行基准测试时 XML 解析缓慢
- wso2 - WSO2 API 管理器 2.6
- c# - 如何在 Azure 托管网站上设置浏览器模拟
- excel-formula - 仅当另一列为真时才计算公式