Так что это была не настоящая проблема. Получил обзор от команды AWS, и они сказали, что вы получите эти предупреждения и ошибки rubbi sh при запуске сценариев зажигания в EMR через PyCharm, но это не должно влиять на реальную задачу вашего сценария. Оказалось, что созданный мной dataFrame;
persons_DyF = glueContext.create_dynamic_frame.from_catalog(database="database", table_name="table")
не показывал мне никакой схемы, когда я делал persons_DyF.printSchema()
. Принимая во внимание, что я почти уверен, что определил эту схему таблицы. Он просто выводит root
и persons_DyF.count() = 0
. Так что вместо этого я бы использовал pySpark
from pyspark.sql import SparkSession
spark = SparkSession.builder.getOrCreate()
df = spark.read.table("ingestion.login_emr_testing")
print(df.printSchema())
df.select(df["feed"], df["timestamp_utc"], df['date'], df['hour']).show()
дал мне следующий результат:
.
.
allot of rubbish errors and warning including `java.io.IOException: File '/var/aws/emr/userData.json' cannot be read`
.
.
+------+--------------------+----------+----+
| feed | timestamp_utc| date|hour|
+------+--------------------+----------+----+
|TWEAKS|19-Mar-2020 18:59...|2020-03-19| 19|
|TWEAKS|19-Mar-2020 18:59...|2020-03-19| 19|
|TWEAKS|19-Mar-2020 19:00...|2020-03-19| 19|
|TWEAKS|19-Mar-2020 18:59...|2020-03-19| 19|
|TWEAKS|19-Mar-2020 19:00...|2020-03-19| 19|
|TWEAKS|19-Mar-2020 19:00...|2020-03-19| 19|
|TWEAKS|19-Mar-2020 19:00...|2020-03-19| 19|
|TWEAKS|19-Mar-2020 19:00...|2020-03-19| 19|
|TWEAKS|19-Mar-2020 19:00...|2020-03-19| 19|
|TWEAKS|19-Mar-2020 19:00...|2020-03-19| 19|
|TWEAKS|19-Mar-2020 19:00...|2020-03-19| 19|
|TWEAKS|19-Mar-2020 19:00...|2020-03-19| 19|
|TWEAKS|19-Mar-2020 19:00...|2020-03-19| 19|
+-----+--------------------+----------+----+