DEV Community

Cover image for Python o Spark
Andres
Andres

Posted on • Edited on

Python o Spark

Estaba recordando como fue mi inicio en el mundo de los datos y creo que como muchos, empezamos con MS Excel.

Recuerdo una herramienta que permitia hacer depuracion de datos, un poco de programacion (VBA) y luego crear tableros de indicadores geniales, todo esto es un mismo archivo. (Buenos recuerdos).

Pero ahora vemos multiples herramienas y lo mejor lenguajes de programacion enfocados a datos, los cuales nos permiten ver esos datos como codigo, para un ingeniero de software esto fue en su momento un Buummmmm!, me exploto la cabeza 🤯. Me encanto!!.

Image description

Principalmente en mi trabajo y en mis proyectos personales, utilizo dos lenguajes de programacion, Python por excelencia y Spark.

Me gustaria hacer una comparativa entre ambos y revisar para que casos se deben utilizar.

  • Python: Es un lenguaje de programación conocido por su simplicidad y legibilidad.

  • Apache Spark: Es un motor de procesamiento de datos en clúster, diseñado para realizar análisis de datos a gran escala.

2. Arquitectura

  • Python: Funciona en un solo nodo y es adecuado para el procesamiento de datos en memoria en un entorno local.

  • Apache Spark: Utiliza una arquitectura distribuida que permite el procesamiento paralelo de datos en múltiples nodos de un clúster.

Image description

3. Ecosistema y Bibliotecas

  • Python: Cuenta con un gran ecosistema de bibliotecas, como Pandas, NumPy, Scikit-learn, TensorFlow, entre otros, estas a mi forma de ver las principales, pero claro que hay muchas mas.

Image description

  • Apache Spark: Ofrece un conjunto de componentes integrados, como Spark SQL, Spark Streaming.

4. Rendimiento

  • Python: procesamiento de datos en memoria y puede es eficiente para conjuntos de datos pequeños a medianos.
  • Apache Spark: Es el indicado para grandes volúmenes de datos por el tipo de arquitectura que veíamos anteriormente.

Si estas empezando el mundo de los datos, lo que te recomiendo inicialmente es que entrenes tu lógica, suena muy obvio, pero esto te va a ayudar enormemente, antes de empezar a programar, luego inicia con Python, con las bases de este lenguaje, tipo de datos, cálculos matemáticos, duplas, diccionarios, listas, arreglos, bucles.

Una vez tengas las bases, empieza a crear tus propias ejecuciones, muy sencillas, toma Dataset, que están disponibles en la web, te recomiendo una página, muy buena para ello, Kaggle:

https://www.kaggle.com/

Image description

Y simplemente intenta, convertir fechas en meses, suma columnas entre sí, convierte los tipos de archivos, etc.

Espero este post te seas de gran ayuda.

Hasta la próxima!!

-GuechaTech

Postmark Image

Speedy emails, satisfied customers

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay