Marvel: Infinity War o Cómo recopilar datos para su proyecto en un par de minutos



Tengo dos áreas de interés. El primero: la sociedad de analistas anónimos de datos perezosos , el segundo: la sociedad de geeks anónimos. Y si todo está bien con el segundo, entonces con el primero todo es más complicado. Cuando le dice a la gente qué tareas resuelven los analistas de datos, ¿qué representan? Por el bien del experimento, ella introdujo la definición en Google y la primera:
Un analista de datos es un especialista versátil que tiene conocimiento en matemáticas, estadística, informática, informática, negocios y economía. El analista de Big Data estudia grandes conjuntos de datos que contienen información diversa, por ejemplo: resultados de investigación, tendencias del mercado, preferencias de los clientes, etc. La investigación y el análisis de dicha información pueden conducir a nuevos descubrimientos científicos, aumentar la eficiencia de la empresa, nuevas oportunidades para generar ingresos y un mejor servicio al cliente. etc. La principal habilidad de los científicos de datos es ver conexiones lógicas en el sistema de información recopilada y, sobre esta base, desarrollar ciertas soluciones de negocios, modelos.

Definición de buduguru.org/profession/39 .

Especialista universal, está bien. A juzgar por la descripción de algo entre el Dr. Manhattan y Stephen Hawking.


Sin embargo, no entraré en la semántica de esta definición, quiero hablar sobre el doloroso tema de los analistas de datos (no, no en el que los molestos hablan de la falta de datos). ¿Y qué pasa si los datos son?

Y aquí vamos a los siguientes problemas:

  • ¿Qué herramientas puedo usar para estudiar estos datos?
  • ¿Cómo convertir estas matrices de datos?
  • ¿Cómo almacenarlos? ¿Necesito almacenarlos?
  • ¿Qué pasa si hay muchas fuentes y todas son heterogéneas?

Esta bien Formamos un grupo de problemas, pero ¿qué hacer a continuación? En este artículo, hablaré sobre la herramienta que implementó nuestro equipo de desarrollo, a saber, el sistema en la nube iDVP.Data SaaS .

Que es esto

iDVP.Data SaaS es una herramienta multifuncional para trabajar con datos en la nube, que le permite conectar varios datos, convertirlos y enviarlos a sistemas externos, como servicios web.

Guerra infinita


Aquí nos cruzamos involuntariamente con la segunda esfera de intereses: como ejemplo, decidí conectar los datos abiertos de Marvel con iDVP.Data SaaS . ¿Han visto todos una nueva película sobre Infinity War? Después de ver la película, no pude evitar recordar otros conflictos a gran escala en el universo Marvel, que han sufrido cambios globales en la franquicia. Me resultó interesante recordar cuántos personajes de la línea cómica participaron en Infinity War y cuántos murieron en ella. Para responder a estas preguntas, recurrí a la fuente más confiable: el sitio web oficial de Marvel .



En primer lugar, vayamos al sitio web iDVP.Data SaaS y registremos.

Después de eso, llegamos a la página de trabajo del usuario, donde hay espacios de trabajo con casos de demostración de prueba. Presentan flujos de datos desde la conexión de una fuente de datos a un escaparate de datos.



Después de examinar los casos de prueba y agregar un nuevo espacio de trabajo, pasemos a crear nuestro propio flujo de datos. Como fuentes, elegí los siguientes datos:

  • Servicio REST que devuelve información sobre todos los personajes del universo Marvel;
  • Servicio REST que devuelve información sobre todos los eventos del universo Marvel;
  • archivo en formato CSV, que indica los principales participantes en la guerra civil.

Paso 1. Conéctate

Conectamos los datos uno por uno:



Como resultado, obtenemos tres fuentes de datos conectadas:



  • participantes_marvel_raw - servicio;
  • characters_marvel_raw - servicio;
  • events_marvel_raw - archivo en formato CSV.

Paso 2. Convertir

Después de conectar los datos, creamos conjuntos de datos (Conjuntos de datos), donde realizamos las transformaciones necesarias (limpieza de datos, cálculos o, por ejemplo, análisis de datos desde JSON) utilizando scripts SQL.

select k.id, k.name, k.com.name as comics_name, k.ser.name as series_name, k.stor.name as stories_name, k.event.name as events_name from ( select a.id, a.name, flatten(a.comics) as com, flatten(a.series) as ser, flatten(a.stories) as stor, flatten(a.events) as event from ( select c.`data`.id as id, c.`data`.name as name, c.`data`.comics.`items` as comics, c.`data`.series.`items` as series, c.`data`.stories.`items` as stories, c.`data`.events.`items` as events from ( select t.res.`data`.`results` as `data` from ( select convert_from(a.content, 'JSON') res from `characters_marvel_raw` a ) t ) c ) a ) k 

Como resultado, obtenemos datos analizados:



Y tal cadena de flujos de datos:



Después de conectar los datos y convertirlos, la velocidad de acceso a la información recibida aún puede ser baja (debido a la larga respuesta de la fuente o debido a la gran cantidad de datos). Aquí se activa el mecanismo de "materialización" (almacenamiento) de datos en el iDVP.Data SaaS . El acceso a los datos almacenados es extremadamente rápido, incluso cuando se trabaja con grandes volúmenes de información mediante el uso de tecnologías BigData. Los datos guardados se pueden actualizar en cualquier momento (en su totalidad o en parte), así como ajustar el calendario mediante el cual el sistema los actualizará automáticamente.

Por lo tanto, es posible acumular datos históricos, incluso si la fuente misma no lo admite. La materialización también ayuda a continuar trabajando con datos si la fuente se vuelve inaccesible guardando iDVP.Data SaaS en el sistema de archivos.



Paso 3. Publicar

Creamos un escaparate de datos (servicio web), que también representa una consulta SQL. En el escaparate de datos, puede definir los parámetros de entrada y salida.



Una vez que se crean los data marts, pueden publicarse en el dominio público y utilizarse en sus sistemas externos.




El servicio resultante se puede usar para crear informes y aplicaciones 3D, ya que, por ejemplo, lo hicimos para visualizar los datos de las Elecciones 2018 .

PS Conclusiones




Primera conclusión

Recordamos la línea de cómics donde se menciona la Guerra Infinita, y esto es lo que obtuvimos:

  • 57 personajes participaron;
  • 5 no confirmado;
  • 15 murieron.

Segunda conclusión

Si necesita hacer frente a los datos de manera rápida y fácil, puede usar el sistema iDVP.Data SaaS , que actualmente se encuentra en pruebas beta. Nuestro equipo espera que entre ustedes que hayan leído esta historia hasta el final, haya quienes serán los primeros probadores de nuestra nueva herramienta.

Con él, puedes independientemente:

  • conectarse a varias fuentes;
  • recibir de manera uniforme datos de cualquier fuente;
  • Realizar transformaciones de datos ETL usando SQL
  • aumentar la velocidad de procesamiento de datos utilizando tecnologías BigData;
  • analizar datos;
  • proporcionar datos a sistemas externos;
  • Lleve a cabo estas operaciones en una interfaz conveniente y sencilla.

Gracias de antemano por sus comentarios!

Un ejemplo de uso en los comentarios a la publicación:

Estadísticas de comentarios .

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


All Articles