Las nuevas generaciones y los datos

 

La historia se repite. Las nuevas generaciones pasan a las existentes a una velocidad inimaginable.

Si hace unos años éramos nosotros los que sabíamos cómo programar el vídeo para que nuestros padres pudieran graba una película, ahora son nuestros hijos los que nos tienen que enseñar cómo funcionan algunas de las tecnologías con las que no nos atrevemos a interaccionar.

Con la explotación de los datos pasa exactamente lo mismo.

 

Patrón de conducta

A lo largo de mi vida profesional he tenido la oportunidad de tener reuniones y entrevistas con directivos, cargos medios y empleados de todo tipo de organizaciones. Analizando las respuestas de los diferentes interlocutores, he visto que hay un patrón que se repite muy a menudo. Es el siguiente:

• Si la persona supera cierta edad, suele ser reacio al cambio que supone confiar en los datos para mejorar la toma de decisiones dentro de la organización, su departamento o su día a día.
• Si la persona se encuentra por debajo de cierta edad, está mucho más abierta a incorporar cambios en sus procesos con el fin de obtener mejoras en la toma de decisiones gracias al análisis de datos.

¿Porqué se da este patrón?

Llegados a este punto, mi hipótesis se basa en tres aspectos que considero claves:

  • La formación de personas por encima de cierta edad no incluyó en su día el análisis de datos como vehículo para la mejora en la toma de decisiones.
  • La reticencia al cambio en personas acostumbradas a lo largo de los años a trabajar de una manera concreta es contraproducente a la hora de incorporar nuevos procesos para la toma de decisiones.
  • La inseguridad producida por el miedo a perder esa importancia que la persona pueda tener en la organización al suponer que la toma de decisiones será basada en datos y no en la experiencia de la persona (cuando en realidad, la persona continuará tomando las decisiones, solamente que de forma más informada), hace que se vea el análisis de datos como una amenaza a su puesto de trabajo.

Esto no deja de ser una hipótesis, pero veamos cómo probablemente una persona de menor edad encajaría en cada uno de estos aspectos:

  • La formación superior actual incluye en muchos casos pinceladas sobre el análisis de datos y la transformación digital de las organizaciones gracias a las nuevas tecnologías, entre las que se incluyen las herramientas analíticas.
  • La reticencia al cambio desaparece a medida que disminuye la edad de la persona, ya que a menor edad es más evidente que la persona debe aprender cosas nuevas, incluyendo nuevos procesos y nuevas maneras de trabajar y tomar decisiones.
  • La inseguridad a tempranas edades se produce más por el hecho de no saber y no poder adquirir nuevos conocimientos que por otro hecho. Incluir nuevas maneras de trabajar no hace más que sumar capacidades y habilidades a la persona.

Para poder superar esa barrera que muestra el patrón, es necesario que los empleados reciban la formación adecuada. Esta formación incluye no solamente formación focalizada en los conceptos y herramientas de análisis de datos, sinó también con énfasis en los beneficios que puede suponer para el empleado el hecho de abrazar el cambio. Entre ellos destacan las oportunidades de promoción, mejora en la eficiencia en el trabajo, en los resultados y en la satisfacción en el puesto de trabajo.

Jóvenes, Aunque Sobradamente Preparados

Dando formación en la universidad y en escuelas de negocios he visto hasta qué punto la nuevas generaciones están preparadas. Cierto es que les falta cierta experiencia en muchos casos, pero los conocimientos que tienen algunos de los alumnos que he tenido ha llegado a sorprenderme.

A nivel tecnológico, tienen acceso a una gran cantidad de plataformas y herramientas. Disponen de ordenadores potentes donde poder ejecutar sus pruebas de concepto. Y si necesitan más recursos, los hallan en proveedores de servicios en el cloud.

A nivel teórico, Internet les proporciona todo aquello que necesitan, a menudo de forma gratuita.

A nivel de actitud respecto al análisis de datos, las nuevas generaciones creen en los beneficios que aportan a la toma de decisiones. Han crecido en la era digital. Han visto cómo los asistentes de sus teléfonos inteligentes, tabletas y ordenadores son capaces de utilizar todos los datos que recaban para ofrecerles servicios, para facilitarles tareas y para hacer que su vida sea más fácil, entretenida e interesante. Es por eso que no hace falta convencerles de los beneficios del análisis de datos.

Pero lo mejor de todo es que disponen de tiempo y energía para adentrarse en este fantástico mundo de la analítica de datos. Eso hace que nos encontremos con gente muy capacitada a pesar de su juventud.

Conclusión

La gente joven tiende a estar más receptiva a la hora de incorporar procesos de análisis de datos en la toma de decisiones que las personas de edad superior.

Es posible ayudar a las personas reticentes a incluir la toma de decisiones basada en el análisis de datos, para que se adhieran a esta realidad. Para ello es necesario una formación en diferentes aspectos, incluyendo tanto la tecnología como los beneficios que recibirá la persona.

Las nuevas generaciones han tenido acceso a formación y recursos, y han dispuesto de tiempo para experimentar con los datos. Eso les hace unos firmes creyentes en el análisis de datos. El futuro es suyo.

Una solución para cada problema

 

No existe una solución genérica que sea la mejor para todo tipo de situación. Cada escenario, cada situación tiene su propia solución más efectiva.

Hallar esa solución requiere una combinación de conocimiento, análisis y destreza a la hora de identificar los detalles del escenario y cuál de las posibles soluciones se adapta mejor a ese caso.

Para ilustrar esto, vamos a centrarnos en un problema concreto: la inserción registros en una tabla de una base de datos.

 

Definición del escenario

Nuestro objetivo es insertar registros en una tabla de base de datos.

Ante estos requerimientos debemos analizar con más detalle el escenario. Deberíamos plantearnos cuestiones como:

  • ¿De cuántos registros estamos hablando?
  • ¿De cuánto tiempo disponemos para realizar esa inserción?

Es evidente que insertar 1 registro o 50 millones es importante a la hora de definir el escenario.

En el caso de la inserción de un solo registro, el rendimiento (en la mayoría de procesos) no va a ser crítico, ya que la diferencia de ejecución de las diferentes alternativas de inserción posiblemente será imperceptible por el usuario.

Sin embargo, si el número de registros es elevado, una pequeña diferencia de tiempo por registro puede convertirse en una gran diferencia al final del proceso. Si la ventana para la realización de la inserción es corta, elegir la alternativa más lenta podría ser fatal para el proceso o sus procesos dependientes.

Conocimiento de la tecnología y los procesos

Supongamos que nuestra base de datos es Oracle. Esta tecnología tiene dos maneras diferentes de realizar inserciones:

  • La inserción registro a registro
  • La inserción multi-registro (bulk insert)

La inserción registro a registro inserta 1 único registro cada vez que se ejecuta. Su sintaxis en Oracle es:

INSERT INTO tabla (columna_1, columna_2, …) VALUES (valor_1, valor_2, …);

Cada una de estas inserciones se divide en dos tareas. La primera se ocupa de encontrar la posición dentro de la tabla dónde vamos a insertar esa fila. La segunda tarea se ocupa de insertar los datos en esa posición.

Por otra parte, al ejecutar un bulk insert, una sola instrucción insertará un número de registros que puede ser superior a 1.

Las instrucciones que utilizan bulk insert son:

INSERT INTO tabla (columna_1, columna_2, …) SELECT ...
CREATE TABLE tabla AS SELECT ...
SQL*Loader

Ante la necesidad de insertar potencialmente más de una fila, la búsqueda de una ubicación para los registros carece de sentido. Si fuese así, la inserción tendría un alto coste debido a la repetición de la primera tarea de la inserción para cada uno de los registros de la consulta. En este caso, lo que el motor de base de datos lleva a cabo es la inserción de todos los registros implicados, a partir de la última posición de la tabla.

Implicaciones de los dos métodos de inserción

La inserción registro a registro permite aprovechar mejor el espacio ocupado por la tabla, al ocupar espacio libre dentro de ésta (producido por la eliminación de registros de la tabla). Es decir, tenemos una mayor densidad de registros por espacio de disco (throughput). Este mejor aprovechamiento del espacio supone que, en un acceso secuencial a la tabla, el espacio de disco a escanear tiende a ser óptimo. Esto supone un mejor rendimiento en las consultas donde esta tabla sea accedida en modo secuencial. Sin embargo, la operación de inserción añade un sobrecoste debido a la búsqueda de un espacio libre en la tabla en cada instrucción (es decir, para cada registro insertado).

La inserción multi-registro tan solo realiza la acción de añadir filas a la tabla (sin buscar un espacio libre para cada registro insertado). Esto se realiza añadiendo los registros a partir de la última posición en la tabla a la cual podemos acceder mediante un puntero, . Al hacer esto, el sobrecoste de encontrar un espacio libre en la tabla desaparece. Sin embargo, el hecho de añadir registros siempre al final de la tabla significa que está crecerá cada vez que ejecutemos una inserción de este tipo. La consecuencia es que, en el caso de acceder a todos los registros de la tabla en una consulta, estaremos accediendo a una cantidad cada vez mayor de espacio en disco. En este caso, el throughput disminuirá progresivamente en la tabla a medida que vayamos realizando inserciones multi-registro.

Conclusión

Tal y como he comentado al inicio de este artículo, no existe una solución que se comporte siempre de manera óptima en todos los casos.

Es necesario identificar los detalles específicos de cada escenario que decantarán la decisión de utilizar una u otra solución.

El análisis previo al diseño de la solución nos aportará la información que necesitamos para poder elegir el diseño más adecuado en cada caso.

El conocimiento de la tecnología nos permitirá identificar las diferentes alternativas de diseño con sus beneficios e inconvenientes.

Y finalmente, la destreza a la hora de combinar toda la información disponible nos permitirá elegir la mejor solución dentro de toda la gama de grises disponible.