Hay mucha confusión, sobretodo por parte de las personas que no trabajan a diario con la tecnología, sobre cuál es la diferencia entre Big data, Analytics o Data Science.

En resumen, Big Data es la infraestructura que soporta el análisisAnalytics, es la matemática aplicada y esa analítica también se llama Data Science.

Dicho esto, se puede usar Big Data sin usar Analytics, cómo simplemente un lugar para almacenar registros o archivos de medios. Y puede usar Analytics sin una base de datos de Big Data, utilizando, por ejemplo, Microsoft Excel.

Analytics (Analítica)

La investigación de operaciones aplica las matemáticas a los procesos industriales para ajustarlos. Matemáticos y estadísticos antes de la década de 1990 hicieron esto usando las herramientas disponibles: Microsoft Excel y paquetes estadísticos como SPSS para PC o SaaS para el Mainframe. (¡antes de eso usaban calculadoras y reglas de cálculo con lápiz y papel!)

Es difícil procesar datos médicos e industriales como este por varias razones:

En primer lugar, el estadístico / matemático (científico de datos) sabe COBOL, SQL y otros lenguajes de programación y bases de datos de mainframe. Por lo tanto, el científico de datos tiene que esperar a que el programador cargue datos en el mainframe. A la inversa, el programador tiene conocimiento limitado o nulo de matemáticas aplicadas por lo que sería mejor si el científico de datos pudiera programarlo él mismo.

En segundo lugar, sin SDK de aprendizaje automático, el programador tendría que escribir algoritmos estadísticos. Por supuesto, esos están integrados en productos como SaaS. Pero COBOL no hace eso a menos que lo programes para hacerlo.

En tercer lugar, SaaS es un software propietario. Así es IBM SPSS. No es de código abierto. Por lo tanto, los académicos y los profesionales no pueden contribuir con su propio trabajo a los sistemas con los que trabajan, como scikit-learn , TensorFlow, Keras, Spark Machine Language y otras herramientas modernas. Imagínese si solo pudiera usar las herramientas proporcionadas por los monopolios de Microsoft (antiguo), IBM (antiguo) y Oracle (actual). Eso limitaría su valor.

La siguiente dificultad es que para colocar los datos en una base de datos SQL, los datos se deben colocar en un formato específico de fila-columna rígido. No soporta datos no estructurados .

Finalmente, tales sistemas no pueden escalarse casi sin límite, al igual que las bases de datos distribuidas como Spark, ElasticSearch y Hadoop.

Big Data

Spark, ElasticSearch, Hadoop, etc. son herramientas que se crearon principalmente para manejar las enormes demandas de datos en Yahoo, Google y Facebook. Esas compañías crearon ese software, con la asistencia de académicos en lugares como Stanford, y luego lo regalaron como software de código abierto.

Estos sistemas pueden ejecutarse en una red (clúster) de PCs de bajo coste. Pueden procesar más datos, incluso el mainframe más grande, ya que puede agregar tantas máquinas adicionales al clúster cómo desee.

Las PC son lo que Amazon EC2, las tiendas de TI internas y otras utilizan en los centros de datos para computadoras. Esos han reemplazado, en su mayor parte, los mainframes, Sun Solarix, IBM AIX y otras computadoras grandes y caras. Esto había hecho tales sistemas baratos.

Hadoop no es una base de datos. Es un sistema de archivos distribuido, lo que significa que puede usarlo para almacenar datos que abarcan varias máquinas.

Aquí es de donde aparece el Big Data, la información que no cabe en la unidad de disco de una sola máquina.

En cuanto a los límites de memoria, Apache Mesos y sistemas similares resumen la memoria para que pueda ser más grande que los confines de una máquina. Para agregar más memoria simplemente es necesario agregar otra máquina. Cuando la adición de x máquina aumenta la memoria en una cantidad igual (x), se dice que tal sistema se escala linealmente .

ElasticSearch y MongoDB son bases de datos de Big Data no estructuradas . Esto significa que puede almacenar datos en el formato JSON (Notación de objetos de JavaScript) de formato relativamente libre. Además, no tiene que definir la relación entre entidades como lo haría con SQL. En otras palabras, no es necesario definir claves externas, etc.

Por ejemplo, un registro JSON de MongoDB podría ser:

{nombre: "Caminante", edad: "secreto"}

Mientras que el siguiente podría ser diferente, como tener campos adicionales:

{nombre: "Stephen", edad: "joven", empleador: "BMC"}

 

Cassandra también es una nueva idea en computación. Esta es una base de datos orientada a columnas . Tal base de datos puede tener valores perdidos. Por ejemplo, el registro de un empleado podría incluir un número de seguridad social para los estadounidenses, pero dejarlo vacío para los extranjeros. Tal base de datos no desperdicia espacio como lo hace Oracle SQL al reservar espacio para valores vacíos. También se ejecuta más rápido agrupando columnas con el mismo valor uno al lado del otro (más bien, en orden alfabético).

Esto ha sido una introducción básica a la diferencia entre Big data y Analytics. Los programadores pueden especializarse en la programación de big data al ser, por ejemplo, un ingeniero o arquitecto de big data. Pero solo los ingenieros con conocimientos de matemáticas aplicadas pueden hacer ciencia de datos.