Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Nivel 01
Introducción
La persona que termine este curso será capaz de identificar los principios necesarios
para el aprovechamiento de datos, con grandes volúmenes, variedad y crecimiento.
Como visualizador de Big Data puedes desarrollar aplicaciones que obtengan, limpien
y procesen, todo tipo de datos de diversas fuentes, la razón de hacer esto, es generar y
presentar gráficos, que permitan tener una visión del comportamiento de una
organización, esta visión es muy valorada, ya que puede sugerir el rumbo de toda una
empresa teniendo como objetivo, mejorar procesos, minimizar costos y encontrar
oportunidades de crecimiento.
Lección 01
Características principales
Volumen
Variedad (Datos estructurados y no estructurados)
Velocidad
Otras características
Veracidad
Valor
Mejorar operaciones
Toma de decisiones complejas
Reducción de costos
Reducción de tiempos
Despliegue de ofertas personalizadas
Inteligencia de negocios
Lección 02
Ecosistema
Flujo de trabajo
Obtención de datos
Big Data
Big Analytics
Usuarios
Ciclo de vida
Clusters. Varias computadoras conectadas entre sí, a cada una se le conoce como
NODO. Ventajas:
Trabajo en paralelo
Alto rendimiento
Soporte de altas cargas de trabajo
Escalabillidad
Nivel 02
Lección 01
Tipos de API
El API de una red social es el principal método para atender y mandar datos de la
plataforma.
Import Facebook
Import requests
Token = “EAAC.”
Graph = Facebook GraphAPI (token)
cantidadComentarios = 100
PageId = 13254565767
CuentaLikes = 0
ListaComents = [ ]
Bandera = False
Coments = graph.get_connections (PageId, ‘feed’)
Lección 02
Orientadas a Clave-Valor
Orientadas a documentos
Orientadas a columnas
Orientadas a grafos
Lección 01
Identificar:
Patrones
Correlaciones
Tendencias
Preferencias de los clientes
Objetivos
Beneficios
Mejora de servicios
Generación de eficiencia en las operaciones que dan ventaja sobre la
competencia.
Análisis predictivo
Minería de datos
Análisis de texto
Análisis estadístico
Machine Learning
Visualización de datos
Otras herramientas basadas en análisis de datos NoSQL
Sectores que usan Big Data
Clasificación
Clasificación estadística
Clustering
Regresión
Detección de anomalías
Reglas de asociación
Análisis de sentimientos
Lógica de programación
Import requests
Apikey = ‘ab881ef9-5941-45d7-95ª7-595fc89d129d’
Lenguaje = ‘spa’
ligaPeticion =
‘https://api.havenondemand.com/1/api/sync/analyzesentiment/v1?text=(0)&language=(1)&apikey
=(2)’
mensaje = “me gusto mucho el apoyo pero todo esta muy mal”
ligaPeticion = ligaPeticion.format(mensaje1.lenguaje.apikey)
jsonRespuesta = requests.get(ligaPeticion).json()
Estructura del resultado del análisis
Lección 02
Web Scraping
Copiar y pegar
Regex
Algoritmos de minería de datos
Parseo de HTML
Aplicaciones o programas
Por ejemplo para obtener el dato del tipo de cambio del dólar.
Usa el método find para encontrar el subcadena dentro del texto, este método retoma
la posición dentro del texto completo, debes contar las posiciones para definir los datos
que quieres del inicio al final. Haz funciones para obtener los datos de interés, en la
parte de tratamiento de los datos adquiridos, es en donde programarás la lógica a
seguir, considera el tipo de actualización, mantén un programa en un ciclo para que
corra continuamente hasta que tú lo quieras detener.
Lección 03
En un archivo HTML agrega la estructura del HTML, las bibliotecas y los títulos
de los gráficos
Agrega el objeto plotOptions para añadir el porcentaje de cada barra
Agrega el objeto series incluyendo los datos totales de cada barra para indicar
el despliegue del detalle de cada barra.
Después agrega la propiedad drilldown con su respectivo nombre.
Agrega otro objeto llamado drilldown, seguido de una lista series, para
especificar el detalle de cada barra.
Agrega un objeto con información a detalle de cada barra y añade el ID con el
nombre que indicaste como drilldown en los objetos de totales.
Recarga la página y verifica la funcionalidad de detalle en cada barra.
Un servicio web es un programa que corre del lado del servidor para intercambiar
información entre aplicaciones. Estos pueden brindar información en dos formatos XML
y JSON. Un servicio web requiere lo siguiente:
Para programar un servicio que regrese una colección en una base de datos no
relacional, sigue estos pasos:
Para desarrollar una aplicación que funcione en tiempo real, necesitas consultar una
base de datos utilizando un servicio web en PHP que regrese un JSON, para
programarlo sigue estos pasos:
Para dibujar un gráfico con HTML y JavaScript en tiempo real, partiendo de una gráfica
en línea, sigue estos pasos:
Agrega la variable series en la parte de load, para que se actualice la gráfica cada vez
que se ingrese un registro nuevo a la base de datos.
Agrega dos variables temporales en la parte de document ready una para x y otra para
y, ahí guardas el último registro agregado a la gráfica.
Crea las funciones de get y set que te permitirán ingresar y modificar a esas dos
variables.
Agrega una petición ajax, esta te va a permitir realizar consultas y actualizar la gráfica
sin tener que actualizar la página, esta petición va a requerir de dos datos, la url del
servicio web con la petición para traer todos los datos y el tipo de petición en este caso
será get.
Recorre el JSON del contenido de cada petición y guarda cada uno de sus elementos
en un arreglo.
Guarda las variables temporales en un registro de X y Y.
Por último asigna el arreglo al parámetro data para que los datos estén dibujados en la
gráfica.
Ahora puedes ver como los datos se trazan en la gráfica, pero todavía no está en
tiempo real.
Para hacer que la gráfica se actualice en tiempo real sigue estos pasos:
Modifica la función del intervalo, que ya trae la gráfica, agregando petición al servicio
web, pero esta vez con el parámetro de 1 para traer solo el último registro.
Compara la X y Y del último registro de la base de datos con el registro que dibujaste
en la gráfica, si los dos son distintos, quiere decir que se agregó un nuevo registro a la
base de datos y es cuando se agregarán los nuevos puntos a la gráfica.
Guarda los nuevos registros en las variables temporales.
Por último asigna un intervalo de 1000 milisegundos, para volver a correr esta petición.
Estructura de un dashboard
Define los KPIs de la organización, enlístalos por orden de importancia, selecciona los
tres o cuatro más importantes, si son más de cuatro debes dividirlos en diferentes
grupos para no saturarlo, selecciona las gráficas que muestren el comportamiento de
los KPIs elegidos. Acomoda las gráficas en un solo panel, coloca filtros, funciones de
ordenamiento y descripciones.
Evaluación
¡Correcto!
Resultados de la pregunta
Si con la siguiente línea de código se hace una consulta a la base de datos NoSQL del
último registro ingresado, ¿cómo debes modificar la instrucción para traer todos los
elementos en orden ascendente?
Respuesta del usuario:
$cursor = $coleccion->find()->sort(array('$natural' => 1))->asd(1);
Resultado:
Iván está programando una aplicación para desplegar una gráfica de línea, pero la
gráfica NO despliega los datos. Si está utilizando el siguiente objeto para los datos,
¿qué debe hacer Iván con los datos para resolver el problema?
¡Correcto!
Resultados de la pregunta
Qué salida tiene un servicio web en php con las siguientes líneas de código
suponiendo que la variable "$cursor" contiene esta lista de objetos: [{“x”: “1”, “y”:
“2”},{“x”: “2”, “y”: “5”},{“x”: “3”, “y”: “8”}]
¡Correcto!
Resultados de la pregunta
Suponiendo que la petición "ajax" del siguiente segmento de codigo, retorne un JSON,
qué es lo que imprimiría en consola:
$.ajax({
url: "datos.php?Consultar=0",
type: 'get',
success: function(DatosRecuperados) {
$.each(DatosRecuperados, function(i,o){
Concoles.log( parseInt(o.x));
Concoles.log( parseInt(o.y));
});
Respuesta del usuario:
Las cordenadas del JSON que se mandaron como respuesta
Resultado:
title: {
titulo: 'Cuenta usuarios'
},
Respuesta del usuario:
Cambiando el nombre de título por text
Resultado:
¡Correcto!
Resultados de la pregunta
María está instalando una base de datos NoSQL en php y ya colocó el archivo en la
carpeta de extensiones. ¿Qué es lo que tiene que hacer para poder usar la biblioteca ?
Respuesta del usuario:
Revisar en la extensiones instaladas
Resultado:
Si con la siguiente linea de código se hace una consulta a la base de datos NoSQL del
último registro ingresado, ¿cómo debes modificar la instrucción para traer el primer
registro? $cursor = $coleccion->find()->sort(array('$natural' => -1))->limit(1);
Respuesta del usuario:
$cursor = $coleccion->find()->sort(array('$natural' => 1))->limit(1);
Resultado:
¡Correcto!
Resultados de la pregunta
José tiene la siguiente salida de un servicio web y está utilizando ésta instrucción para
leer los datos. ¿Qué va obtener como resultado José?
<Remitente>
<Nombre>Nombre del remitente</Nombre>
<Mail> Correo del remitente </Mail>
</Remitente>
<Destinatario>
<Nombre>Nombre del destinatario</Nombre>
<Mail>Correo del destinatario</Mail>
</Destinatario>
</Remitente>
Respuesta del usuario:
Una gráfica sin datos porque la información que se intenta gráficar no corresponde al
tipo de gráfica
Resultado:
José tiene la siguiente salida de un servicio web y está utilizando ésta instrucción para
leer los datos. ¿Qué va obtener como resultado José?
<Remitente>
<Nombre>Nombre del remitente</Nombre>
<Mail> Correo del remitente </Mail>
</Remitente>
<Destinatario>
<Nombre>Nombre del destinatario</Nombre>
<Mail>Correo del destinatario</Mail>
</Destinatario>
</Remitente>
Respuesta del usuario:
Un error en la lectura porque no es una entrada válida para la instrucción que utiliza
Resultado:
¡Correcto!
Resultados de la pregunta
¿Cuántos dashboards necesitas si seleccionaste 10 KPIs?
Respuesta del usuario:
3
Resultado:
¡Correcto!
Resultados de la pregunta
Yvette está programando una gráfica, pero ésta NO despliega el título del eje x de la
gráfica y encontró el error en ésta parte del programa. ¿A qué se debe este error?
ejex: {
title: {
enabled: true,
text: 'Altura (cm)'
}
},
Respuesta del usuario:
El nombre del objeto es incorrecto
Resultado:
¡Correcto!
Resultados de la pregunta
Si con la siguiente linea de código se hace una consulta a la base de datos NoSQL del
último registro ingresado, ¿cómo debes modificar la instrucción para traer el primer
registro? $cursor = $coleccion->find()->sort(array('$natural' => -1))->limit(1);
Respuesta del usuario:
$cursor = $coleccion->find()->sort(array('$natural' => 1))->limit(1);
Resultado:
¡Correcto!
Resultados de la pregunta
Qué salida tiene un servicio web en php con las siguientes líneas de código
suponiendo que la variable "$cursor" contiene esta lista de objetos: [{“x”: “1”, “y”:
“2”},{“x”: “2”, “y”: “5”},{“x”: “3”, “y”: “8”}]
¡Correcto!
Resultados de la pregunta
¿Qué debes hacer en caso de que los KPIs que seleccionaste para hacer un
dashboard sobrepasan los 4?
Respuesta del usuario:
Distribuirlos en distinto dashboard
Resultado:
¡Correcto!
Resultados de la pregunta
Suponiendo que la petición "ajax" del siguiente segmento de codigo, retorne un JSON,
qué es lo que imprimiría en consola:
$.ajax({
url: "datos.php?Consultar=0",
type: 'get',
success: function(DatosRecuperados) {
$.each(DatosRecuperados, function(i,o){
Concoles.log( parseInt(o.x));
Concoles.log( parseInt(o.y));
});
Respuesta del usuario:
Una gráfica con los datos que incluía el JSON de la petición
Resultado:
chart: {
type: 'graph-bar'
},
Respuesta del usuario:
El objeto que está programando no existe
Resultado:
¡Correcto!
Resultados de la pregunta
Karen tiene problemas programando un servicio web php y necesita traer de una base
de datos NoSQL llamada "Departamentos" la colección de cocina. ¿Cuál es el error en
el código?
¡Correcto!
Nivel 04
Lección 01
Ciencia de datos
Funciones
Para que un científico de datos obtenga conocimiento del Big Data debe realizar las
siguientes tareas con los datos:
Adquirirlos
Analizarlos
Filtrarlos
Extraerlos
Representarlos
Refinarlos
Interactuar con ellos
A la estructura que sirve como base para desarrollar y organizar software con diversas
herramientas integradas se le llama framework.
Common
Distributed file system
YARN
MapReduce
Los requerimientos para empezar a aprovechar Big Data son los siguientes:
Toda la empresa debe conocer el impacto del uso adecuado de los datos en el
negocio y en su trabajo diario
No es necesario conocer aspectos técnicos
El director de la empresa debe ser el primero en entender el beneficio que trae
esta tecnología y comunicárselo a los demás
Contratar a un especialista en Big Data
Evaluación
¿Cuál de los protocolos es el recomendable para conectar tu servicio Web con la base
de datos relacional?
¡Correcto!
Resultados de la pregunta
¡Correcto!
Resultados de la pregunta
En la base de datos relacional que creaste, los siguientes son campos indispensables
para tu modelo, excepto:
¡Correcto!
Resultados de la pregunta
¡Correcto!
Resultados de la pregunta
En tu aplicación, ¿cuál de los siguientes métodos es el correcto para mostrar la
frecuencia de likes según la hora?
¡Correcto!
Resultados de la pregunta
En la aplicación que creaste, ¿cuál es el mínimo de ciclos anidados que necesitas para
obtener los comentarios de cada publicación en la red social?
¡Correcto!
Resultados de la pregunta
¡Correcto!
Resultados de la pregunta
Para habilitar la página Web del servidor de tu aplicación, debes realizar las siguientes
tareas, excepto:
¡Correcto!