DataScience con PySpark I: Apache Spark, Python, DataFrames y RDDs

แชร์
ฝัง
  • เผยแพร่เมื่อ 22 ต.ค. 2024

ความคิดเห็น • 65

  • @NullSafeArchitect
    @NullSafeArchitect  3 ปีที่แล้ว +17

    Tenéis disponible el código en el blog www.albertcoronado.com/2021/03/18/datascience-con-pyspark-i-apache-spark-python-dataframes-y-rdds/ ! Si os a gustado y tenéis ganas de echar un cable compartid en Twitter, Linkedin, Grupos de Discord, Whatsapp con vuestros compañeros de Estudios, trabajo y a todo aquel al que le pueda interesar!

  • @sebastianpaez2505
    @sebastianpaez2505 2 ปีที่แล้ว +4

    A los 6min ya estoy fascinado con tus explicaciones. Se agradece muchisimo!

  • @herzt5
    @herzt5 3 ปีที่แล้ว +5

    La mejor manera de apoyar estos canales es dando manita arriba, comentando, compartiendo y viendo los comerciales. Gracias

  • @mariusserban5643
    @mariusserban5643 2 ปีที่แล้ว +4

    Yo he aprobado la 2ª Evaluación de Sistemas del grado superior de DAW gracias al video de comandos y scripts en la bash (consistía todo el examen en hacer scripts de la bash), 50 minutos, una evaluación. La 3ª Evaluación, también de sistemas, gracias a los cursos de docker y apache spark. He recomendado tu canal a todos mis compañeros e incluso a mi profesor. Enhorabuena por tus vídeos y muchas gracias!

  • @juanmadev
    @juanmadev 3 ปีที่แล้ว +3

    Muy interesante el vídeo, la verdad que es este mundo antes de ponerte a ello se ve como una montaña y luego de ir viendo vídeos como este se ve más accesible

  • @ruedmo
    @ruedmo 3 ปีที่แล้ว +2

    Muchas gracias por compartir uno de los mejores de la red. Te auguro mucho éxito

  • @Ravi.Kumar-
    @Ravi.Kumar- ปีที่แล้ว +1

    Thanks a lot. I’m able to grasp it well. No one showed me how to do it on big data like you did. 🙏 🎉

  • @pedroangel5974
    @pedroangel5974 2 ปีที่แล้ว +1

    Muy buena introducción a la herramienta de Apache Spark. EL tutorial es fácil de seguir, tiene ejemplos con los que romper mano muy interesantes y sencillos. No es el primer tutorial de Albert que sigo y todos me han resultado muy útiles y amigables. Enhorabuena por tu trabajo Albert! Ojalá sigas haciendo más tutoriales.

  •  3 ปีที่แล้ว +1

    Genial, Albert. Muy bien explicado y planteado. Con tutoriales, ebooks y documentación oficial es un poco lioso, pero lo has dejado muy claro y fácil. Muchas gracias por estos vídeos.

  • @THEAIMODEL
    @THEAIMODEL 2 ปีที่แล้ว +1

    Muchas gracias por tus videos. Van al grano y bien explicados!! ♥

  • @Amamaster
    @Amamaster 3 ปีที่แล้ว +1

    Wow, que gran contenido! Súper bien explicar 👏🏻👏🏻👏🏻👏🏻👏🏻

  • @akuelperrito
    @akuelperrito 2 ปีที่แล้ว

    EXCELENTE Albert. Simplemente espectacular. ¿No estás compartiendo mas videos?

  • @jesuslopez6873
    @jesuslopez6873 20 วันที่ผ่านมา +1

    Gran video tio

  • @matiasbravo6649
    @matiasbravo6649 11 หลายเดือนก่อน +1

    Excelente trabajo

  • @fernandomartinez2834
    @fernandomartinez2834 2 ปีที่แล้ว +1

    gracias me ayudo mucho estoy empezando en esto

  • @aarce2
    @aarce2 3 ปีที่แล้ว +1

    Genial, yo he estado trabajando 2 años con Spark, tanto haciendo cositas con MLlib, como creando Streams para procesar eventos desde colas Kafka pero con Apache Beam en Java ejecutando en un cluster de Spark en Azure y es superpotente, ahora, tunear bien los Jobs (asignar recursos) para ejecutarlos en un cluster de streaming sin problemas da bastantes dolores de cabeza , quizá por eso Databricks está pegando fuerte. Sigue por favor con la serie y muchas gracias

  • @daesvideo
    @daesvideo 2 ปีที่แล้ว +1

    Muy ejemplificado, muy bien, gracias!

  • @lesterjuandediosvillarzamo7435
    @lesterjuandediosvillarzamo7435 3 ปีที่แล้ว +1

    Excelente Albert, gracias

  • @mdchaparror10
    @mdchaparror10 3 ปีที่แล้ว +3

    Excelente vídeo muchas gracias, creo que se podría configurar pyspark para que inicie un notebook de júpiter , lo que ayudaría un poco a la visualización de los ejemplos explicados,

  • @ukiomaro
    @ukiomaro 3 ปีที่แล้ว +5

    Buenas Albert, Scala no solo es interpretado, también puede ser compilado tanto con Maven como con SBT. SI bien con spark-shell, logras que sea "interpretado" tienes las otras posibilidades. Añadir, que el mismo Spark esta desarrollado en Scala.

    • @UnDiaDeBronca
      @UnDiaDeBronca ปีที่แล้ว

      Si es opción, pero es un paso más a además se generan muchas piezas, la primera vez que me acerque a spark lo hice así, y es mas trabajo, el formato de interprete es más rápido y versionas menos piezas y hay menos uso de disco al no generar binarios

  • @CharlyRoseroC
    @CharlyRoseroC 3 ปีที่แล้ว +5

    Albert excelente contenido, muchas gracias. en el próximo video ¿nos explicaras las funciones para trabajar con RDD?

  • @victorgastaneta3008
    @victorgastaneta3008 10 หลายเดือนก่อน +1

    Gracias, muy didactico

  • @stefanor.g550
    @stefanor.g550 3 ปีที่แล้ว +1

    he aprendido mucho, gracias

  • @JuanMunoz-we1ep
    @JuanMunoz-we1ep 2 ปีที่แล้ว

    Antes había visto el video donde trabajas con Hadoop, pero solo vi el 30%, porque trabajabais con Linux, (que no lo sé) y otras cosas que no entendía nada. Hoy ya he madurado más cosas de big data y he comprendido todo lo que has compartido y lo encontré clarísimo, muy didáctico y accesible, mis felicitaciones. Lo he visto anoche y de nuevo lo revisado hoy en la mañana, porque quedé enganchado. Pero hay algo que todavía no se, Linux. Por lo tanto mi pregunta es la siguiente: ¿puedo hacer esto mismo en Window?. Estaré eternamente agradecido por vuestra respuesta y que Dios te multiplique siempre.

  • @kmiiloberrio-dev
    @kmiiloberrio-dev 3 ปีที่แล้ว +2

    Hola albert, gracias por compartir se te entiende muy bien, pero me gustaría empezar de cero, tienes alguna lista de reproducción? porque veo que en este video aterrizas conceptos que tal vez ya existieron en algún otro video. de antemano muchas gracias.

  • @insecureup
    @insecureup ปีที่แล้ว +1

    Muy interesante, te propongo una serie de videos apache druid, no hay nada en español para youtube.

  • @IronRacer13
    @IronRacer13 3 ปีที่แล้ว +1

    Excelente video!!!

  • @davidaarondiazescamilla2411
    @davidaarondiazescamilla2411 ปีที่แล้ว +1

    Excelente tutorial, una pregunta: ¿cual es el video para descargar Apache Spark?

  • @mauropereyra591
    @mauropereyra591 4 หลายเดือนก่อน

    Hola! Me encantan tus vídeos. Tengo una consulta, los Dataframes realmente solo trabajan en una maquina? Porque según leo la documentación tanto RDD's y Dataframes creo entender que pueden funcionar de manera distribuida. Muchas gracias!

    • @JonathanEtitoO
      @JonathanEtitoO หลายเดือนก่อน

      No, eso no es cierto. Tanto los RDDs (Resilient Distributed Datasets) como los DataFrames en PySpark están diseñados para funcionar en un entorno distribuido y pueden correr en múltiples máquinas (nodos) dentro de un clúster de Spark. Vamos a detallar las diferencias clave entre ambos para aclarar este malentendido:
      1. RDDs (Resilient Distributed Datasets):
      Qué son: RDDs son la abstracción fundamental de Spark para la manipulación de datos distribuidos de manera inmutable y tolerante a fallos.
      Distribución: Los RDDs se distribuyen automáticamente a través de los nodos de un clúster. Los cálculos sobre RDDs se ejecutan en paralelo en todas las máquinas disponibles.
      API: La API de RDDs es más cercana a la programación funcional, con operaciones como map, filter, y reduce.
      Eficiencia: Los RDDs no tienen optimizaciones internas avanzadas como el planificador Catalyst de los DataFrames, por lo que pueden ser menos eficientes para algunas operaciones complejas.
      2. DataFrames:
      Qué son: DataFrames son una abstracción de alto nivel basada en RDDs pero optimizada para trabajar con datos estructurados (similar a tablas de bases de datos).
      Distribución: Al igual que los RDDs, los DataFrames están distribuidos a través de un clúster de Spark. Esto significa que las operaciones sobre DataFrames se ejecutan en paralelo en múltiples máquinas.
      Optimización: Los DataFrames utilizan el optimizador Catalyst y el motor de ejecución Tungsten, lo que permite realizar optimizaciones automáticas como la selección de los métodos de ejecución más eficientes y la generación de planes de ejecución optimizados.
      API: Ofrecen una API similar a SQL, lo cual facilita la manipulación de datos estructurados y complejos.
      Diferencias Clave:
      Optimización: La mayor diferencia radica en la eficiencia y optimización. DataFrames aprovechan el optimizador Catalyst, que puede reordenar y optimizar las consultas de manera más avanzada que los RDDs.
      Uso de Recursos: DataFrames están diseñados para ser más eficientes en cuanto al uso de memoria y CPU debido a optimizaciones como la generación de código a bajo nivel y la reducción de objetos de JVM.
      Simplicidad y Usabilidad: DataFrames permiten trabajar con datos de manera más sencilla y con menos líneas de código gracias a su API orientada a SQL y su manejo automático de tipos de datos.
      Conclusión:
      Ambos, RDDs y DataFrames, están diseñados para trabajar en entornos distribuidos y pueden correr en múltiples máquinas. La idea de que los DataFrames solo corren en una máquina es incorrecta; tanto RDDs como DataFrames están optimizados para aprovechar el paralelismo y la distribución en un clúster de Spark.

  • @ibrahincruz2895
    @ibrahincruz2895 3 ปีที่แล้ว

    Muchas gracias por el video muy bien explicado, solo me quedo la duda de si al convertir el dataframe ya no se procesa en paralelo en los demas nodos, muchas gracias!

  • @mateoguerrerorestrepo9127
    @mateoguerrerorestrepo9127 3 ปีที่แล้ว +1

    Muy interesante apache spark muchas gracias Albert. Maestro una pregunta si se aumenta un worker más el proceso sería más rápido o es indiferente ya que el dataframe no es paralelizable?

    • @NullSafeArchitect
      @NullSafeArchitect  3 ปีที่แล้ว +1

      Con DataFrames es indiferente. Con RDDs si que sería mas rápido

  •  3 ปีที่แล้ว +2

    Excelente

  • @alonsolr
    @alonsolr 3 ปีที่แล้ว +1

    Muy bien... gracias

  • @frangzzv2213
    @frangzzv2213 3 ปีที่แล้ว +1

    Increíble...!

  • @BrunoSarverry
    @BrunoSarverry 3 ปีที่แล้ว +1

    Muy bueno Albert! Por curioso: cuánta RAM tiene la notebook donde mostraste el uso de esta herramienta?

  • @UnDiaDeBronca
    @UnDiaDeBronca ปีที่แล้ว

    Excelente video, falto la parte de rdd en pyspark , conexion a base de datos y levantar un rdd o data frame a partir de una tabla, y por otro lado un despliegue de un programa pyspark ejecutando con spark-submit. No es lo mismo ejecutar codigo directo en pyspark y luego ejecutarlo por spark-submit., que nos puedes contar al respecto Nullsafe Architect

  • @jaime4leon
    @jaime4leon 3 ปีที่แล้ว +1

    Buenísimo

  • @magelatorres3494
    @magelatorres3494 6 หลายเดือนก่อน

    hola, ¿hay alguna forma de "unir" todos esos ficheros csv que genera "products.write.mode(“overwrite”).csv..." en un único fichero CVS? Gracias

  • @gquisbert
    @gquisbert 2 ปีที่แล้ว

    Espero puedas responder, tengo Oracle 19c y NO puede realizar la conexion, buscando lei por ahi que NO es compatible aun Spark y Oracle 19c. Me gustaria conocer si sabes algo acerca la compatibilidad y si es posible realizar esta conexion?

  • @Gonza2432
    @Gonza2432 3 ปีที่แล้ว +1

    Hola! Que curso me recomendarías para arrancar desde cero con Spark?

  • @yeiferrodriguez3434
    @yeiferrodriguez3434 2 ปีที่แล้ว

    Hola Me puedes indicar cual es la cam con la cual grabas los videos?, gracias.

  • @cristianch9460
    @cristianch9460 2 ปีที่แล้ว

    Me gustaría q te mandaras con un vídeo para crear y usar udf's sería un éxito

  • @fernandoverri1242
    @fernandoverri1242 2 ปีที่แล้ว

    Hola muy buenos tus videos, estoy arrancando a usar pyspark y me resulto muy fácil gracias a tus videos. Quería consultarte como poder ejecutar todos estos comando desde un archivo .py. Si es que se puede

  • @luisandraschnik3001
    @luisandraschnik3001 2 ปีที่แล้ว

    Hola Alberto no entiendo la diferencia entre Apache Spark y Pandas? Sdos

  • @fannyhernandezramirez3306
    @fannyhernandezramirez3306 2 ปีที่แล้ว

    Como conviertes el mes a número en las fechas ?

  • @juancuevas4405
    @juancuevas4405 2 ปีที่แล้ว +1

    estimado su tutorial debe actualizarlo desde la linea de comandos todo desactualizado

  • @juanete69
    @juanete69 2 ปีที่แล้ว

    Cuando lee los archivos con *.csv... ¿los concatena?

  • @gonzalosurribassayago4116
    @gonzalosurribassayago4116 3 ปีที่แล้ว

    Hola excelente video me puedes ayudar si coloco
    df = spark.read.options(header='True', inferSchema='True').csv("/dataset/*.csv")
    se queda
    y si coloco
    df = spark.read.options(header='True', inferSchema='True').csv("/dataset/2019-Oct.csv")
    uno por uno lo carga como hago para que se sumen todos en el df porque asi me guarda el ultimo nada mas

    • @gonzalosurribassayago4116
      @gonzalosurribassayago4116 3 ปีที่แล้ว +1

      Hola lo hice en Linux y no tuve ningún problema en windows solo me los leía uno por uno

  • @malecruzs
    @malecruzs 6 หลายเดือนก่อน

    Soy nueva en pypark y cuando intento cargar todos los .parquet que tengo dentro de una ruta me arroja este error py4j.protocol.Py4JJavaError: An error occurred while calling o44.parquet.
    alguien sabe como lo puedo solucioanr?

  • @abelsena830
    @abelsena830 ปีที่แล้ว

    que hace pyspark que no podemos hacer con pandas ?

  • @deantonio09
    @deantonio09 2 ปีที่แล้ว

    A alguien le ha ocurrido un error que indica JAVA_HOME is not set? he buscado en varios sitios y no encuentro solución. De antemano gracias por la ayuda!

  • @ManuelVillanueva
    @ManuelVillanueva ปีที่แล้ว +1

    Hola buen dia, el sitio esta caido, podria subir subir el codigo a github por favor?

    • @NullSafeArchitect
      @NullSafeArchitect  ปีที่แล้ว

      Resuelto! A ver si con lo que le acabo de hacer no falla mas.

  • @bananaallin3597
    @bananaallin3597 6 หลายเดือนก่อน

    8:59

  • @joelgaspar5365
    @joelgaspar5365 ปีที่แล้ว +1

    Tu página esta caida, amigo

    • @NullSafeArchitect
      @NullSafeArchitect  ปีที่แล้ว

      Resuelto! A ver si con lo que le acabo de hacer no falla mas.

  • @aniballinares5555
    @aniballinares5555 3 ปีที่แล้ว

    Excelente Albert, gracias