Хорошо, когда вы запускаете:
glueContext.create_dynamic_frame.from_catalog(database="legislators", table_name="persons")
Создает только ссылку Spark DF.
Spark работает с преобразованиями (т. Е. Фильтровать, отображать, выбирать) и действиями (т. Е. Собирать, считать, показывать). Вы можете прочитать больше об этом здесь Как работает Преобразование и действие Apache Spark , но в основном ваша таблица базы данных будет загружаться в память только при вызове action
. Это одна из многих причин, по которым Spark настолько мощен и рекомендуется работать с набором данных любого размера.
Этот PDF показывает все доступные преобразования и действия и некоторые примеры их использования.
Так что да, вам нужно сделать несколько шагов перед тем, как:
df = glueContext.create_dynamic_frame.from_catalog(database="legislators", table_name="persons")
df = df.filter(YOUR_FILTER).select(SPECIFIC_COLS)
# Calling an action to show the filtered DF
df.show()
Это гарантирует, что вы загружаете только определенные столбцы и строки в память