Mida siete veces, una vez que implemente la herramienta de BI

No hace mucho tiempo, me enfrenté a la tarea de cambiarme a un nuevo sistema de BI para nuestra empresa. Como tuve que profundizar bastante en este tema, decidí compartir mis pensamientos sobre esto con la comunidad de buena reputación.

imagen
En Internet hay muchos artículos sobre este tema, pero, para mi gran sorpresa, no respondieron muchas de mis preguntas sobre la elección de la herramienta adecuada y fueron algo superficiales. En las 3 semanas posteriores a la prueba, probamos 4 herramientas: Tableau, Looker, Periscope / Sisense, Mode analytics . Estas herramientas se discutirán principalmente en este artículo. Debo decir de inmediato que el artículo propuesto es la opinión personal del autor, que refleja las necesidades de una empresa de TI pequeña pero de rápido crecimiento :)

Unas palabras sobre el mercado


Ahora, se están produciendo cambios bastante interesantes en el mercado de BI, la consolidación está en marcha, los principales jugadores de tecnología en la nube están tratando de fortalecer sus posiciones integrando verticalmente todos los aspectos del trabajo con datos (almacenamiento de datos, procesamiento, visualización). En los últimos meses, ha habido 5 adquisiciones importantes: Google compró Looker, Salesforce compró Tableau, Sisense compró Periscope Data, Logi Analytics compró Zoomdata, Alteryx compró ClearStory Data. No nos sumergiremos más en el mundo corporativo de fusiones y adquisiciones, vale la pena señalar que se pueden esperar más cambios en el precio y las políticas proteccionistas de los nuevos propietarios de las herramientas de BI (como la herramienta Alooma nos complació recientemente, poco después de su compra por parte de Google, dejar de admitir todas las fuentes de datos, excepto Google BigQuery :)).

Poco de teoría


Entonces, quería comenzar con una pequeña parte teórica, porque ahora no tenía teoría. Como nos dice Gartner, un sistema de BI es un término que combina productos de software, herramientas, infraestructura y mejores prácticas, lo que nos permite mejorar y optimizar las decisiones [1]. Esta definición también incluye almacenamiento de datos y ETL. En este artículo, propongo centrarnos en un segmento más estrecho, a saber, productos de software para visualización y análisis de datos.

En la pirámide de creación de valor para la empresa (tuve el coraje de proponer otra presentación de esta estructura obvia en la Fig. 0), las herramientas de BI se encuentran después de los bloques para almacenar registros y procesamiento de datos preliminares (ETL).

Es importante entender esto: la mejor práctica en este caso es la separación de las tareas de ETL y BI . Además de un proceso más transparente de trabajar con datos, tampoco estará vinculado a una solución de software y podrá elegir la herramienta más adecuada para cada una de las tareas de ETL y BI. Con un proceso ETL bien estructurado y una arquitectura óptima de tablas de datos, generalmente puede cerrar el 80% de todos los problemas empresariales urgentes sin utilizar un software especial. Esto, por supuesto, requerirá una participación significativa de analistas y DS. Por lo tanto, llegamos a la pregunta principal: ¿qué necesitamos en primer lugar de un producto de software de BI?

imagen
Fig. 0 0

Criterios clave para elegir un producto de software de BI


Como ya hemos entendido, todas las métricas clave y los indicadores de rendimiento de la empresa en su conjunto pueden tomarse directamente de las tablas analíticas en la base de datos preparada previamente como parte del proceso ETL (en el próximo artículo le diré cómo construir de manera óptima un proceso ETL Mientras tanto, daré un adelanto de por qué esto es tan importante: según una encuesta de Kaggle, la principal dificultad que enfrenta la mitad de los DS son los datos sucios [2]). El principal problema en este caso, obviamente, será la complejidad e ineficiencia del uso del tiempo de los analistas. En lugar de crear un producto completo, los analistas / DS prepararán indicadores todo el tiempo, contarán métricas, verificarán las discrepancias en los números, buscarán errores en el código SQL y realizarán otras actividades inútiles. Aquí estoy convencido de que lo principal que deben hacer los analistas / DS es crear un producto que aporte valor a la empresa a largo plazo. Esto puede ser un servicio de liquidación / predictivo, cuyo resultado es parte del producto principal de la compañía (por ejemplo, un algoritmo para calcular el costo / tiempo de un viaje) o, por ejemplo, un algoritmo para distribuir pedidos entre clientes, o un informe analítico completo que identifica las razones del flujo de salida de los usuarios y una disminución en la MAU .

Por lo tanto, el criterio principal para elegir un sistema analítico debería ser la capacidad de descargar a los analistas tanto como sea posible de problemas ad hoc y fluidez. ¿Cómo se puede lograr esto? De hecho, hay dos opciones: a) automatizar, b) delegar. Por el segundo párrafo, me refiero a la ahora popular frase Self Service , para dar a las empresas la oportunidad de profundizar en los datos en sí.

Es decir, los analistas configuran un producto de software una vez: crean cubos de datos, configuran actualizaciones automáticas de cubos (por ejemplo, todas las noches), envían informes automáticamente, preparan varios asistentes de tablero y enseñan a los usuarios cómo usar el producto. Además, el negocio proporciona sus necesidades adicionales de forma independiente, calculando los indicadores necesarios para ello en varios agregados y filtros de datos utilizando la opción simple y comprensible de arrastrar y soltar .

Además de la simplicidad del proceso de informes, la velocidad de ejecución de consultas también es importante . Nadie esperará 15 minutos para el mes anterior para cargar datos o métricas para otra ciudad. Para abordar este problema, hay varios enfoques generalmente aceptados. Uno de ellos es la creación de cubos de datos OLAP (procesamiento analítico en línea). En los cubos OLAP, los tipos de datos se dividen en dimensiones (dimensiones): estos son campos por los que se pueden realizar agregaciones (por ejemplo, ciudad, país, producto, intervalos de tiempo, tipo de pago ...), y las medidas son métricas calculadas para las medidas (por ejemplo, número de viajes, ingresos, número de nuevos usuarios, cheque promedio, ...). Los cubos de datos son una herramienta bastante poderosa que le permite producir resultados muy rápidamente utilizando datos previamente agregados y métricas calculadas. La otra cara de los cubos OLAP es el hecho de que todos los datos se recopilan previamente y no cambian hasta la próxima generación de cubos. Si necesita la agregación de datos o una métrica que no se calculó originalmente, o si necesita datos más recientes, debe volver a crear el cubo de datos.

Otra solución para aumentar la velocidad de trabajo con datos son las soluciones en memoria . In Memory Database (IMDB) está diseñado para proporcionar el máximo rendimiento cuando hay suficiente RAM para almacenar datos. Si bien las bases de datos relacionales están diseñadas para proporcionar el máximo rendimiento cuando los datos no se colocan completamente en la RAM, y la E / S de disco lento debe realizarse en tiempo real. Muchas herramientas modernas combinan ambas soluciones (por ejemplo, Sisense, Tableau, IBM Cognos, MicroStrategy, etc.).

Antes de eso, hablamos sobre la simplicidad y conveniencia de usar herramientas de BI para usuarios comerciales. Es importante establecer un proceso conveniente de desarrollo y lanzamiento de paneles para analistas / DS. Aquí, la situación es similar a la de cualquier otro producto de TI: necesita un proceso de implementación rápido y conveniente ( tiempo de implementación rápido ), así como un proceso de desarrollo reflexivo, pruebas, revisión de código, lanzamiento, control de versiones, colaboración en equipo. Todo esto se combina con el concepto de flujo de trabajo.

Por lo tanto, llegamos a los requisitos clave para el producto de software de BI . Los mismos requisitos formaron la base del mapa de velocidad, en base al cual finalmente elegimos un proveedor de productos.

Tabla 1. Criterios de selección de herramientas de BI.
NoRequisitoDescripciónImportancia (min = 1, max = 5)
1UX + arrastrar y soltarSe requiere una interfaz de arrastrar y soltar fácil de usar y accesible para la presentación de informes para los usuarios empresariales.5 5
2Manejo de datosCómo el sistema almacena y procesa los datos. Estas son las mismas mecánicas como OLAP y soluciones en memoria de las que hablamos anteriormente. Cuanto más rápido y fácil se organice el acceso a los datos, mejor.5 5
3Flujo de trabajoSe requiere un tiempo de implementación rápido y conveniente. También revisión de código, control de versiones, desarrollo y lanzamiento.5 5
4 4VisualizaciónEl conjunto de visualizaciones de datos disponibles. Cuantas más opciones diferentes para presentar datos, mejor.4 4
5 5ApoyoDisponibilidad de soporte, SLA para responder a una solicitud.3
6 6EstadísticasLa capacidad de utilizar métodos estadísticos, integración con Python.2
7 7PrecioAquí todo está claro, Lebowski :)4 4


La tabla final de resultados de votación dentro de nuestro equipo es la siguiente:

Tabla 2. Resultados de la votación para elegir una herramienta de BI.
NoRequisitoRelevanciaCuadroLookerPeriscopioEl modo
1UX + arrastrar y soltar5 54.3 4.34.62.72.8
2Manejo de datos5 54.43.53.62.3
3Flujo de trabajo5 53.14.83.83,3
4 4Visualización4 43.83.73.42.1
5 5Apoyo33.74.2 4.23.83.4
6 6Estadísticas22.32.2 2.22.52.8
7 7Precio4 44 424 43
Total3.773.793,432,79

Por parte de los usuarios comerciales (también participaron en la selección del producto), los votos se dividieron aproximadamente en partes iguales entre Tableau y Looker. Como resultado, la elección se hizo a favor de Looker. Por qué Looker y cuáles son las diferencias fundamentales entre las herramientas, discutiremos ahora.

Descripción detallada de la herramienta


Entonces, comencemos con la descripción de las herramientas de BI.

  1. Cuadro

    (aquí hablaremos sobre un paquete de servicio extendido: Tableau Online)
    1. UX + arrastrar y soltar.
      Tableau es una herramienta bastante antigua en el mercado desde 2003, y existe la sensación de que la interfaz no ha cambiado mucho desde entonces. Puede tener miedo a las ventanas emergentes y las opciones desplegables al estilo de Windows XP (Fig. 1, Fig. 2). Pero bastante rápido puede acostumbrarse y dominar la funcionalidad básica de la herramienta. Tableau recuerda a muchas de las versiones avanzadas de Excel, tiene pestañas (hojas de trabajo) y paneles (paneles), una combinación de visualizaciones obtenidas en hojas de trabajo. La opción de arrastrar y soltar es bastante fácil de usar, los filtros en los gráficos se configuran y cambian fácilmente (Fig. 3, Fig. 4). Tableau tiene dos versiones del servicio: Desktop y Desktop + Online. El escritorio es más antiguo: de hecho, es Excel avanzado. La versión en línea para el período de prueba a menudo fue considerada y a veces terminó en actualizar la página sin guardar su trabajo.

      imagen
      Fig. 1

      imagen
      Fig. 2


      Fig. 3


      Fig. 4 4

    2. Manejo de datos.
      Tableau maneja los datos muy rápidamente, cambiando el filtro de tiempo o la agregación ocurre en cuestión de segundos, incluso en grandes volúmenes de datos (más de 20 millones de registros). Como ya dijimos, para esto, Tableau usa cubos de datos OLAP y un motor de datos en memoria. Tableau afirma que gracias a su solución interna en memoria Hyper, la velocidad de ejecución de consultas ha aumentado 5 veces .

      Los cubos de datos pueden configurarse en la versión local de Tableau Desktop y descargarse o actualizarse en un servidor de red, en cuyo caso todos los paneles creados en la versión anterior del conjunto de cubos se actualizarán automáticamente. Los cubos de actualización se pueden configurar automáticamente, por ejemplo, de noche. Todas las medidas y medidas (dimensiones y medidas) se establecen de antemano al ensamblar el cubo y no cambian hasta la próxima versión del ensamblaje. Junto con el uso de cubos de datos en Tableau, es posible acceder a la base de datos directamente, esto se llama conexión en vivo, en cuyo caso la velocidad será mucho menor, pero los datos serán más relevantes. El proceso de ensamblar un cubo de datos es bastante simple, lo principal es seleccionar los campos correctos para ensamblar varias tablas (uniones) (Fig. 5).

      imagen
      Fig. 5 5

    3. Flujo de trabajo
      Es por este punto que no elegimos Tableau en el futuro. Según este parámetro, Tableau se quedó atrás de la industria y no pudo ofrecer ninguna herramienta para simplificar el desarrollo y el lanzamiento de paneles. Tableau no proporciona control de versiones, revisión de código, colaboración en equipo, ni existe un entorno de desarrollo y prueba bien pensado. Es precisamente por esto que las empresas a menudo abandonan Tableau en favor de herramientas más avanzadas. Ya con unos pocos empleados involucrados en la creación de cubos de datos y paneles, puede surgir confusión: dónde encontrar la última versión de los datos, qué métricas se pueden usar y cuáles no. Hay una falta de integridad de datos, lo que lleva a una desconfianza del negocio en las métricas que ve en el sistema.

    4. Visualización
      En términos de visualización de datos, Tableau es una herramienta muy poderosa. Puede encontrar cuadros y gráficos para todos los gustos y colores (Fig. 6). Visualización de datos: página, como en Excel, puede cambiar entre pestañas.

      imagen
      Fig. 6 6

    5. Apoyo.
      Desde el punto de vista del soporte de Tableau, me pareció que no estaba muy orientado al cliente , tenía que encontrar la respuesta para la mayoría de las preguntas. Afortunadamente, Tableau tiene una comunidad bastante grande donde puede encontrar respuestas a la mayoría de las preguntas.

    6. Estadísticas
      Tableau tiene la capacidad de integrarse con Python, se pueden encontrar más detalles.

    7. Precio
      Los precios son bastante estándar para el mercado, se pueden encontrar en el sitio web oficial. El precio depende del nivel de usuario (Desarrollador, Explorador, Visor), la descripción se puede encontrar allí . Al calcular 10 desarrolladores, 25 exploradores y 100 espectadores, sale $ 39,000 / año por año.


  2. Looker


    1. UX + arrastrar y soltar.
      Looker es una empresa relativamente joven, fundada en 2012. UX es nativamente claro y simple para el usuario, arrastrar y soltar se implementa convenientemente (Fig. 7).

      imagen
      Fig. 7 7

    2. Manejo de datos.
      Trabajar con datos en Looker es notablemente más lento que en Tableau . La razón principal es que Looker realiza consultas directamente a la base de datos sin crear cubos OLAP. Como comentamos, este enfoque tiene sus ventajas: el hecho de que los datos siempre están actualizados y se puede hacer cualquier agregación de datos. Looker también proporciona una herramienta para acelerar consultas complejas: consultas en caché , es decir, la capacidad de almacenar en caché las consultas.

    3. Flujo de trabajo
      La principal ventaja de Looker en comparación con todas las herramientas de BI que probamos es su bien pensado proceso de desarrollo y lanzamiento de paneles . Looker integra el control de versiones usando github . El entorno de desarrollo ( modo de producción) y el entorno productivo (Fig. 8) también están bien separados. Otra ventaja de Looker es que el acceso al modelado de datos permanece en las mismas manos: solo hay una versión maestra del modelo de datos, lo que garantiza la integridad.
      Aquí tiene sentido mencionar también que Looker tiene su propio análogo del lenguaje SQL con características adicionales para el modelado de datos: LookML. Esta es una herramienta bastante simple y flexible que le permite personalizar la funcionalidad de arrastrar y soltar y agrega muchas opciones nuevas (Fig. 9).

      imagen
      Fig. 8

      imagen
      Fig. 9 9

    4. Visualización
      Desde el punto de vista de la visualización, Looker no es muy inferior a Tableau, en él puede encontrar cualquier gráfico y gráfico a su gusto. La organización de los gráficos es vertical, a diferencia de Tableau, donde la organización está paginada (Fig. 10, Fig. 11). Una característica útil para los usuarios empresariales es la profundización: la capacidad de segmentar los datos seleccionados en dimensiones predefinidas.

      imagen
      Fig. 10

      imagen
      Fig. 11

    5. Apoyo.
      Debo decir que el apoyo de los consultores comerciales y expertos técnicos de Looker fue sorprendente: pudimos programar una videollamada en media hora sobre cualquier problema y obtener una respuesta completa. Parece que Looker realmente valora a sus clientes y trata de simplificar sus vidas.

    6. Estadísticas
      Looker tiene una API: Look API y SDK para Python, con su ayuda puede conectarse a Looker desde Python y descargar la información necesaria, luego realizar las transformaciones necesarias y el análisis estadístico en Python y cargar los resultados nuevamente en la base de datos con la salida posterior a los observadores en los paneles.

    7. Precio
      Looker cuesta significativamente más que Tableau , para un conjunto similar de usuarios, Looker salió casi 2 veces más caro que Tableau, aproximadamente $ 60,000 / año.


  3. Periscopio


    1. UX + arrastrar y soltar.
      Periscope es una herramienta bastante fácil de usar con funcionalidad limitada . También hay una función de arrastrar y soltar, pero los filtros para diferentes gráficos deberán crearse por separado, lo cual es inconveniente (Fig. 12). No puede prescindir de SQL para crear consultas un poco más complejas.

      imagen
      Fig. 12

    2. Manejo de datos.
      Periscope tiene un cruce entre cubos OLAP y almacenamiento en caché de consultas. En él, puede crear Vistas y almacenarlas en caché. La vista es cualquier consulta SQL, para su almacenamiento en caché es necesario hacer clic en el botón 'materializar' en la configuración de esta vista (Fig. 13). También puede publicar una Vista de 'publicación' para que pueda usarla para arrastrar y soltar.

      imagen
      Fig. 13

    3. Flujo de trabajo
      Periscope Pro integra el control de versiones usando git. También existe la oportunidad de ver el historial de cambios en cualquier panel y volver a la versión anterior.

    4. Visualización
      El conjunto de gráficos y gráficos es muy limitado; no puede encontrar la variedad aquí como en Tableau o Looker.

    5. Apoyo.
      El soporte es bastante operativo si realiza la modificación de que el centro de soporte opera a la hora estándar del Pacífico. En 24 horas, definitivamente recibirá una respuesta.

    6. Estadísticas
      Periscope tiene integración con Python. Más detalles se pueden encontrar aquí .

    7. Precio
      Periscope Pro costará aproximadamente como Tableau: $ 35,000.


  4. Análisis de modo


    1. UX + arrastrar y soltar.
      El modo es la más simple de estas herramientas. Su diferencia clave es la integración con Python y la capacidad de crear informes analíticos basados ​​en Jupyter Notebook (Fig. 14). Si no ha desarrollado el proceso de creación de informes analíticos con Jupyter Notebook, esta herramienta puede serle útil. El modo es más bien una adición a un sistema de BI completo, su funcionalidad es muy limitada, con el fin de crear paneles, puede usar tablas de no más de 27 mil líneas, lo que limita en gran medida las capacidades de la herramienta (Fig. 15). De lo contrario, debe escribir consultas SQL separadas para cada gráfico para agregar los datos y obtener una tabla de dimensiones más pequeña para la visualización (Fig. 16).

      imagen
      Fig. 14

      imagen
      Fig. 15

      imagen
      Fig. 16

    2. Manejo de datos.
      En el Modo como tal, falta el manejo de datos. Todas las consultas se realizan directamente a la base de datos, no hay forma de almacenar en caché las tablas principales.

    3. Flujo de trabajo
      El modo tiene integración con Github, más detalles se pueden encontrar aquí .

    4. Visualización
      El conjunto de visualizaciones de datos es muy limitado; hay 6-7 tipos de gráficos.

    5. Apoyo.
      Durante el período de prueba, el soporte fue bastante operativo.

    6. Estadísticas
      Como ya se mencionó, el Modo está bien integrado con Python, lo que le permite crear informes analíticos fáciles de usar con el Jupyter Notebook.

    7. Precio
      El modo, por extraño que parezca, es bastante costoso por sus capacidades: alrededor de $ 50,000 / año.




Conclusiones


La elección de un proveedor de herramientas de BI debe abordarse a fondo, con el apoyo de los usuarios comerciales y la definición de los criterios principales para elegir una herramienta (preferiblemente en forma de un mapa de velocidad). Los criterios presentados en este artículo tienen como objetivo principal mejorar la eficiencia del trabajo con datos, simplificar el proceso de extracción de información, mejorar la calidad de la visualización de datos y reducir la carga sobre los analistas.


Fuentes


  1. Gartner, Business Intelligence - BI - Glosario de TI de Gartner
  2. Kaggle
  3. Tableau - Hyper
  4. ZDNet - Salesforce-Tableau, otras transacciones de BI fluyen
  5. Sitio web de Tableau
  6. Sitio web de Looker
  7. Sitio web de periscopio
  8. Sitio web de análisis de modo

Source: https://habr.com/ru/post/460807/


All Articles