Я пытаюсь запустить модульные тесты на своих скриптах pyspark локально, чтобы я мог интегрировать это в наш CI.
$ pyspark
...
>>> import pandas as pd
>>> df = pd.DataFrame([(1,2,3), (4,5,6)])
>>> df
0 1 2
0 1 2 3
1 4 5 6
Согласно документации , я смогу выполнить преобразование, используя следующее:
from awsglue.dynamicframe import DynamicFrame
dynamic_frame = DynamicFrame.fromDF(dataframe, glue_ctx, name)
Но когда я пытаюсь преобразовать в DynamicFrame, я получаюошибки при попытке создать экземпляр gluecontext
$ pyspark
>>> from awsglue.context import GlueContext
>>> sc
<SparkContext master=local[*] appName=PySparkShell>
>>> glueContext = GlueContext(sc)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Python/2.7/site-packages/awsglue/context.py", line 43, in __init__
self._glue_scala_context = self._get_glue_scala_context(**options)
File "/Library/Python/2.7/site-packages/awsglue/context.py", line 63, in _get_glue_scala_context
return self._jvm.GlueContext(self._jsc.sc())
TypeError: 'JavaPackage' object is not callable
Как мне это работает БЕЗ с использованием AWS Glue Dev Endpoint?Я не хочу, чтобы меня обвиняли КАЖДЫЙ РАЗ Я фиксирую свой код.это абсурд.