Wa0020.
Wa0020.
Wa0020.
Uno de los objetivos del uso de las tecnologías Big Data es el de transformar los datos en
conocimiento útil para la empresa, y para ello se necesitan herramientas Big Data que nos
ayuden a analizar, procesar y almacenar todos los datos recogidos. Un gran número de entre
las mejores herramientas usadas en Big Data son open source, lo que da fe del éxito de este
modelo de desarrollo, además de las alternativas de pago.
1. Hadoop
No se puede hablar de Big Data sin hablar de la veterana Apache Hadoop. Esta herramienta
Big Data open source se considera el framework estándar para el almacenamiento de grandes
volúmenes de datos; se usa también para analizar y procesar, y es utilizado por empresas
como Facebook y Yahoo!.
2. MongoDB
Dentro de las bases de datos NoSQL, probablemente una de las más famosas sea MongoDB.
Con un concepto muy diferente al de las bases de datos relacionales, se está convirtiendo en
una interesante alternativa para almacenar los datos de nuestras aplicaciones.
MongoDB es una base de datos orientada a documentos (guarda los datos en documentos, no
en registros). Estos documentos son almacenados en BSON, que es una representación
binaria de JSON.
3. Elasticsearch
Elasticsearch es un motor de búsqueda y analítica de RESTful distribuido capaz de abordar un
número creciente de casos de uso. Como núcleo del Elastic Stack, almacena de forma central
tus datos para una búsqueda a la velocidad de la luz, relevancia refinada y analíticas
poderosas que escalan con facilidad.
Elastic es un motor de búsqueda con capacidades analíticas que permite procesar grandes
volúmenes de datos en tiempo real. Es una tecnología de código abierto que se adapta a las
necesidades de cada proyecto.
4. Apache Spark
Apache Spark es un motor unificado de analíticas para procesar datos a gran escala que
integra módulos para SQL, streaming, aprendizaje automático y procesamiento de grafos.
Spark se puede ejecutar de forma independiente o en Apache Hadoop, Apache Mesos,
Kubernetes, la nube y distintas fuentes de datos
Creado por Matei Zaharia en la Universidad de Berkeley, se considera el primer software open
source que hace la programación distribuida (muy en esencia, consiste en distribuir el trabajo
entre un grupo de ordenadores, “cluster”, que trabajan como uno) realmente accesible a los
científicos de datos.
5. Apache Storm
Apache Storm es un sistema de computación distribuida en tiempo real orientado a procesar
flujos constantes de datos, por ejemplo, datos de sensores que se emiten con una alta
frecuencia o datos que provengan de las redes sociales, donde a veces es importante saber
qué se está compartiendo en este momento.
7. Python
Python es un lenguaje de programación ampliamente utilizado en las aplicaciones web, el
desarrollo de software, la ciencia de datos y el machine learning (ML). Los desarrolladores
utilizan Python porque es eficiente y fácil de aprender, además de que se puede ejecutar en
muchas plataformas diferentes.
Python es usado en prácticamente todos los sectores de la industria y de la ciencia que puedas
imaginar, incluyendo:
● Ciencia de datos.
● Aprendizaje automático (machine learning).
● Desarrollo web.
● Enseñanza de computación y programación.
● Visión por computadora y procesamiento de imágenes.
MongoDB MongoDB es una base de datos 1. Es ideal para entornos 1. No es una base de
orientada a documentos. Esto con pocos recursos de datos , adecuada para
quiere decir que, en lugar de computación. aplicaciones con
guardar los datos en registros, 2. Es una herramienta con transacciones
guarda los datos en documentos. un coste bajo. complejas
Estos documentos son 3. Tiene una gran 2. Es una tecnología
almacenados en BSON, que es documentación. joven.
una representación binaria de 4. Es un complemento 3. No tiene un reemplazo
JSON. perfecto para JavaScript. para las soluciones de
herencia.
Otra característica a destacar de 4. No tiene Joins para
MongoDB, sin duda esta sería la consultas.
velocidad, que alcanza un
balance perfecto entre
rendimiento y funcionalidad
gracias a su sistema de consulta
de contenidos.
Apache Spark Apache Spark es un popular 1. Una de las propiedades 1. Los códigos deben
motor de análisis unificado para más interesantes de una optimizarse
Big Data y Machine Learning. Es solución de código abierto manualmente en
el motor de código abierto más es la actividad de su Apache Spark, ya que
grande utilizado para el análisis comunidad. carece de un proceso
de datos. Desde sus inicios, 2. Una de las primeras de optimización
Apache Spark ha tenido un circunstancias que automático
impacto significativo en el alcance sorprenden de Spark es 2. Rentabili aspecto que
de Big Data debido a su que, para ser una debe tenerse en cuenta
capacidad para manejar plataforma de código al utilizar Apache Spark
conjuntos de datos a gran escala abierto, su velocidad es es su rentabilidad.
y su interfaz fácil de desarrollar enorme, muy por encima Como mencionamos
de algunas soluciones anteriormente, Apache
propietario. utiliza un sistema en
3. Una gran API para memoria para procesar
trabajar con los datos grandes cantidades de
Apache Spark tiene APIs datos; Este sistema no
nativas para los lenguajes es rentable ya que
de programación Scala, requiere una enorme
Python y Java. cantidad de memoria
4. Consola interactiva para procesar datos, lo
Una de las ventajas de que genera mayores
trabajar con Spark son las gastos .
consolas interactivas que 3. Apache Spark carece
tiene para dos de los de procesamiento en
lenguajes con los que se tiempo real y en su
puede programar, Scala lugar utiliza
(que se ejecuta en una procesamiento por
máquina micro lotes. Un flujo en
5. Una plataforma unificada vivo de datos que llega
para gestionar datos se segmenta en lotes;
Es una de las Estos lotes se conocen
características más como bases de datos
reconocibles de Apache distribuidas resistentes
Spark. Es una plataforma (RDD).
de plataformas. Un ‘todo 4. Apache Spark carece
en uno’ que agiliza mucho de la capacidad de
el funcionamiento .: procesar la gestión de
archivos por sí solo.
5. Apache Spark tiene
una condición conocida
como búfer de datos.
En el caso de Apache,
el buffer se llena por
completo, lo que resiste
la transferencia de
datos
Apache Storm Apache Storm es una 1. Una de las ventajas más 1. Apache Storm puede
herramienta de procesamiento de destacadas de Apache tener una curva de
flujos de datos en tiempo real que Storm es su capacidad aprendizaje
se ha vuelto cada vez más para procesar conjuntos pronunciada para
popular en el ámbito del big data. de datos en tiempo real. aquellos que no están
Con su capacidad de 2. Apache Storm es familiarizados con el
procesamiento de conjuntos de altamente escalable, lo procesamiento de flujos
datos en tiempo real, Apache que permite manejar de datos en tiempo
Storm ofrece numerosas ventajas grandes volúmenes de real.
y beneficios a aquellos que datos y procesarlos de 2. Debido a la naturaleza
necesitan gestionar grandes manera eficiente incluso en tiempo real de
volúmenes de datos y obtener cuando la carga aumenta Apache Storm, requiere
información valiosa en tiempo 3. Otra ventaja de Apache una infraestructura
real Storm es su capacidad sólida y confiable para
para manejar fallos y garantizar un
garantizar un rendimiento óptimo.
procesamiento continuo 3. Si no se configura
de los datos, incluso en adecuadamente,
situaciones imprevistas. Apache Storm puede
4. Apache Storm se integra generar una carga
fácilmente con otras adicional en la
herramientas y infraestructura y redes
tecnologías de big data, lo existentes debido a su
que permite a las procesamiento en
organizaciones tiempo real.
aprovechar sus 4. Si surgen problemas
inversiones existentes en durante la
infraestructura y implementación de
herramientas. Apache Storm, puede
ser difícil de depurar y
solucionar los
problemas debido a su
naturaleza compleja y
dispersa
Python
Es un lenguaje interpretado, no 1. Simplificado y rápido: 1. Problemas con
compilado, usa tipado dinámico, Este lenguaje simplifica hosting: existen
fuertemente tipado. mucho la programación muchos servidores que
haciendo que te adaptes a no soportan Python y
Es multiplataforma, lo cual es un modo de lenguaje de en caso de hacerlo, su
ventajoso para hacer ejecutable programación, con un configuración suele ser
su código fuente entre varios patrón sencillo. compleja.
sistemas operativos.
2. Elegante y flexible: El 2. Librerías incorporadas:
Es un lenguaje de programación lenguaje le da al usuario a pesar de incluir un
multiparadigma, el cual soporta muchas herramientas compendio de librerías
varios paradigmas de para crear código de populares (por ejemplo:
programación como orientación a manera flexible. kivy, requests, scapy,
objetos, estructurada, entre otras), algunas de
programación imperativa y, en 3. Ordenado y limpio: este esas no son necesarias
menor medida, programación lenguaje es legible y o se usan muy poco.
funcional. entendible para cualquier
programador que quiera 3. Lentitud al ejecutar
En Python, el formato del código trabajar sobre una múltiples hilos: a pesar
es estructural. estructura ya establecida de que no necesita
y ello se debe a la compilarse, si quieres
organización de sus ejecutar múltiples hilos
módulos. de programación puede
que no aproveches
4. Programación sana y toda la potencia de tu
productiva: Programar en PC.
Python se convierte en un
estilo muy sano de 4. No dispone de buena
programar, pues es documentación: Python
sencillo de aprender, esta no cuenta con buena
direccionado a las reglas documentación, por lo
perfectas, Además, que puedes tener
sumado a sus otros problemas para
beneficios hace que sea comprender algunas
un lenguaje productivo. librerías y ciertas
estructuras, sobre todo
5. Portable: Es un lenguaje si no has programado
muy portable (ya sea en antes.
Mac, Linux o Windows) en
comparación con otros 5. Curva de aprendizaje:
lenguajes. La curva de
aprendizaje cuando ya
6. Cuenta con una estás en la parte web
comunidad activa: la no es tan sencilla,
misma comunidad de sobre todo si no se
Python cuida el lenguaje y tiene ninguna idea
casi todas las sobre programación
actualizaciones se hacen orientada a objetos.
de manera democrática.
6. No tiene
identificadores
protegidos: a diferencia
de otros tipos de
lenguajes como PHP,
Python no cuenta con
identificadores
protegidos, por lo que
los métodos empleados
son públicos.
REFERENCIA
https://blogs.imf-formacion.com/blog/tecnologia/ventajas-y-desventajas-del-lenguaje-r-202007/
https://www.theknowledgeacademy.com/blog/advantages-and-disadvantages-of-apache-spark/
https://es.indeed.com/orientacion-laboral/desarrollo-profesional/herramientas-big-data
https://www.iebschool.com/blog/mejores-herramientas-big-data/