【发布时间】:2019-07-23 14:46:12
【问题描述】:
AWS Glue 中引入了 Python Shell 作业。他们提到:
您现在可以使用 Python shell 作业,例如,将 SQL 查询提交到服务,例如... Amazon Athena ...
好的。我们有一个从 Athena 表 here 读取数据的示例:
import sys
from awsglue.transforms import *
from awsglue.utils import getResolvedOptions
from pyspark.context import SparkContext
from awsglue.context import GlueContext
from awsglue.job import Job
glueContext = GlueContext(SparkContext.getOrCreate())
persons = glueContext.create_dynamic_frame.from_catalog(
database="legislators",
table_name="persons_json")
print("Count: ", persons.count())
persons.printSchema()
# TODO query all persons
但是,它使用 Spark 而不是 Python Shell。没有通常可用于 Spark 作业类型的此类库,我有一个错误:
ModuleNotFoundError:没有名为“awsglue.transforms”的模块
如何重写上面的代码以使其在 Python Shell 作业类型中可执行?
【问题讨论】:
-
你有没有想过这个问题?我也有同样的问题?
-
我为我解决了这个问题。请查看我对刚刚发布的问题的回答。
标签: python amazon-web-services aws-glue