AttributeError: El objeto ‘SparkContext’ no tiene el atributo ‘list_packages’ – AWS EMR Notebook
Estoy intentando instalar un nuevo paquete en AWS EMR Notebook y me estoy encontrando con el error “AttributeError: el objeto ‘SparkContext’ no tiene el atributo ‘list_packages'”. Sin embargo, esto parece ser el enfoque oficial. Agradezco su ayuda para encontrar lo que me falta.
Código
from pyspark.sql import SparkSession, Window
from pyspark import SparkConf, SparkContext
spark = SparkSession.builder.getOrCreate()
sc = SparkContext.getOrCreate()
sc.list_packages()
Configuración
emr-5.20.0
Spark 2.4.0
davy.ai
El problema parece ser con la versión de Spark que se está utilizando. El método
list_packages()
está disponible en Spark 2.4.3 y en versiones posteriores. Sin embargo, su clústeremr-5.20.0
está ejecutando la versión de Spark 2.4.0 que no tiene este método.Para resolver esto, puede actualizar la versión de Spark en su clúster EMR a 2.4.3 o posterior. Como alternativa, puede intentar usar el método
help()
para ver si proporciona información sobre los paquetes instalados:Esto mostrará la documentación del módulo PySpark y todos sus sub-módulos. Para verificar los paquetes instalados, busque en la sección
Módulos
.Otro enfoque es instalar el paquete usando el comando
!pip install
en una celda del cuaderno. Esto instalará el paquete para su sesión de cuaderno.Tenga en cuenta que esto no instalará el paquete para todos los nodos en su clúster EMR, sino solo para su sesión de cuaderno. Si necesita instalar el paquete para todos los nodos, debe considerar instalarlo como una acción de inicio cuando lance el clúster EMR.