RESUMEN
Machine Learning Studio es una herramienta colaborativa de
arrastrar y colocar que permite compilar, probar e implementar
soluciones de análisis predictivo que usan los datos. Machine Learning
Studio publica modelos como servicios web que pueden usarse
fácilmente en aplicaciones personalizadas o herramientas de BI como
Excel.
Machine Learning Studio es el lugar en el que confluyen la ciencia de
datos, el análisis predictivo, los recursos en la nube y sus datos.
1
Ahora que ha creado una cuenta y un área de trabajo de Machine
Learning Studio, puede empezar a crear sus propios experimentos
personalizados y publicarlos como servicios web.
RESUMEN
Ha hecho un gran avance en este módulo. QnA Maker es una manera
fácil de proporcionar respuestas a preguntas habituales mediante el
uso de documentos existentes o listas de preguntas más frecuentes. La
integración del servicio QnA Maker con un bot de chat puede ayudar
a los usuarios a interactuar más fácilmente con las listas de preguntas
más frecuentes de manera conversacional. De este modo, se evitan
tener que realizar búsquedas en documentos largos en un explorador.
Limpieza
Para evitar costes inesperados en la cuenta de Azure, elimine el grupo
1
de recursos LearnRG. De este modo, se eliminarán los recursos que ha
creado en este módulo. Estos son los pasos que se deben seguir:
1. Busque el grupo de recursos LearnRG. Haga clic en Grupos de
recursos en la barra lateral de Azure para encontrarlo
rápidamente.
2. Seleccione el grupo de recursos y haga clic con el botón
derecho en la fila, o bien use el botón de puntos suspensivos
(…) situado en el extremo derecho de la fila para abrir el menú.
3. Haga clic en Eliminar grupo de recursos.
4. Escriba el nombre del grupo de recursos y haga clic
en Eliminar. Azure quitará todos los recursos.
EJERCICIO: AGRUPACIÓN
EN CLÚSTERES K-MEANS
Vamos a probar la agrupación en clústeres k-means en
Azure Notebooks.
En los ejercicios de este módulo se usa Azure Notebooks. Es un
recurso de uso gratuito.
Si los vínculos siguientes no funcionan, tiene que configurar una
cuenta gratuita de Azure Notebooks y clonar el proyecto para este
módulo. Vea el repositorio de Python en GitHub o el repositorio de R
1 en GitHub para obtener instrucciones para comenzar.
1. Los usuarios de Python deben ir a la biblioteca.
2. Seleccione el ejercicio 12. Clustering - [Link].
3. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
4. Los usuarios de R deben ir a la biblioteca.
5. Seleccione el ejercicio 12. Clustering - [Link].
6. Después, seleccione "Run on Free Compute" (Ejecutar en un
proceso gratuito).
EJERCICIO: REDES
NEURONALES
AVANZADAS
Ahora se creará una red neuronal con Keras. Se comprobará si se
puede mejorar la precisión mediante otras funciones de activación. En
los ejercicios de este módulo se usa Azure Notebooks. Es un recurso
de uso gratuito.
Si los vínculos siguientes no funcionan, tiene que configurar una
cuenta gratuita de Azure Notebooks y clonar el proyecto para este
1 módulo. Vea el repositorio de Python en GitHub o el repositorio de R
en GitHub para obtener instrucciones para comenzar.
1. Los usuarios de Python deben ir a la biblioteca.
2. Seleccione el ejercicio 09. Neural Networks Advanced -
[Link].
3. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
4. Los usuarios de R deben ir a la biblioteca.
• Seleccione el ejercicio 09. Neural Networks Advanced -
[Link]és, seleccione "Run on Free
Compute" (Ejecutar en un proceso gratuito). n y
optimizadores.
EJERCICIO: RNN
A continuación se probarán las RNN en Azure Notebooks.
En los ejercicios de este módulo se usa Azure Notebooks. Es un
recurso de uso gratuito.
Si los vínculos siguientes no funcionan, tiene que configurar una
cuenta gratuita de Azure Notebooks y clonar el proyecto para este
módulo. Vea el repositorio de Python en GitHub o el repositorio de R
en GitHub para obtener instrucciones para comenzar.
1. Los usuarios de Python deben ir a la biblioteca.
1
2. Seleccione el ejercicio 11. Recurrent Neural Networks -
[Link].
3. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
4. Los usuarios de R deben ir a la biblioteca.
5. Seleccione el ejercicio 11. Recurrent Neural Networks -
[Link].
6. Después, seleccione "Run on Free Compute" (Ejecutar en un
proceso gratuito).
RESUMEN
En este módulo ha obtenido información sobre las metodologías de
gobernanza de Azure, la supervisión y los informes en Azure, y los
estándares de privacidad, cumplimiento y protección de datos en
Azure.
Más información
Aquí tiene algunos recursos para obtener más información sobre lo
1 que se ha tratado hoy:
• Declaración de privacidad de Microsoft
• Microsoft Trust Center
• Portal de confianza de servicios
• Azure Service Health
• Azure Monitor
• Estado de Azure
RESUMEN
En este módulo se ha analizado mucha información.
• Ha aprendido cómo iniciar sesión en Azure mediante una
cuenta de Azure.
• Ha revisado las características de Azure Portal y sus opciones
de personalización.
• Ha creado, personalizado y compartido un panel.
1
Sin embargo, esto es solo el principio. Azure tiene mucho más que
ofrecerle, con independencia de la función que desempeñe en su
organización. Si es un desarrollador, Azure proporciona una manera
fácil de probar nuevas plataformas y crear aplicaciones sofisticadas. Si
es administrador, usará Azure Portal, la CLI de Azure o las
herramientas de Azure PowerShell para administrar la infraestructura
basada en la nube. Si es un arquitecto, puede usar Azure para probar
rápidamente nuevas ideas de arquitectura.
Para continuar con la exploración de Azure, seleccione una o más
rutas a través del contenido que tenga la estructura específica para lo
que quiera aprender.
RESUMEN
Ahora, la aplicación de tres niveles se ejecuta en Azure en la región
Este de EE. UU. Una región es uno o varios centros de datos de Azure
dentro de una ubicación geográfica específica.
Cada nivel solo puede acceder a los servicios de un nivel inferior. La
máquina virtual que se ejecuta en el nivel web tiene una dirección IP
pública porque recibe tráfico de Internet. Las máquinas virtuales de
los niveles inferiores (de aplicación y de datos), tienen direcciones IP
1
privadas porque no se comunican directamente a través de Internet.
Las redes virtuales permiten agrupar y aislar sistemas relacionados.
Puede definir grupos de seguridad de red para controlar qué tráfico
puede pasar a través de una red virtual.
La configuración que ha visto aquí es un buen punto de partida. Pero
cuando implemente el sitio de comercio electrónico en producción en
la nube, es probable que experimente los mismos problemas que
experimentó en la implementación local.
RESUMEN
Con el equilibrio de carga en funcionamiento, el sitio de comercio
electrónico tiene ahora una alta disponibilidad y resistencia. Si realiza
tareas de mantenimiento o recibe un repunte del tráfico, el
equilibrador de carga puede distribuir el tráfico a otro sistema
disponible.
Aunque puede configurar su propio equilibrador de carga en una
máquina virtual, Azure Load Balancer reduce el mantenimiento ya que
1
no hay ninguna infraestructura o software que mantener.
DNS asigna nombres descriptivos a las direcciones IP, de forma
parecida a como una agenda de teléfonos asigna nombres de
personas o empresas a números de teléfono. Puede aportar su propio
servidor DNS o usar Azure DNS.
RESUMEN
Ha aprendido tan solo algunas de las formas en que los servicios de
red de Azure pueden ayudar a reducir la latencia y a hacer que las
aplicaciones y los servicios tengan una mayor disponibilidad.
Con el equilibrio de carga y la distribución global en marcha, el sitio
de comercio electrónico está listo para presentarse al mundo. Los
usuarios acceden al dominio que está más cercano geográficamente.
Cada dominio tiene conmutación por error integrada, lo cual ayuda a
1
que todos los usuarios tengan una gran experiencia. Las cifras ya
muestran un aumento del tráfico y el negocio está en alza.
RESUMEN
En este módulo se han tratado varios temas importantes.
• Ha obtenido información acerca de las opciones de compra y
la cuenta gratuita de Azure.
• Ha creado una cuenta gratuita de Azure y ha obtenido
información sobre iniciar sesión con esa cuenta.
• Ha visto cómo se administran la facturación, las suscripciones y
1
el soporte técnico en Azure.
Más información
• Preguntas frecuentes sobre la cuenta gratuita de Azure
• Exploración de opciones de compra flexibles para Azure
• Administración de la cuenta de Azure
• Límites y cuotas de suscripción de Azure
• Planes de soporte técnico de Azure
• Soporte técnico de la comunidad de Azure
AI azul
¿Por qué Azure para AI?
Azure es una plataforma flexible que permite a su organización
aprovechar los servicios y capacidades de Microsoft AI. Puede crear la
próxima generación de aplicaciones inteligentes donde viven sus
datos: en la nube, en las instalaciones y con sus dispositivos en el borde
inteligente.
Solo Azure te da poder con:
• Décadas de investigación innovadora para lograr la paridad
humana en visión, habla y lenguaje.
• Tecnología de IA con la que se ejecuta Microsoft.
1
• Las ofertas más completas de cumplimiento y seguridad.
MINERÍA DE
CONOCIMIENTO
¿Qué es la minería del conocimiento?
Los datos del mundo real son desordenados. A menudo abarca tipos
de medios, como documentos de texto, archivos PDF, imágenes y
bases de datos. Cambia constantemente, crece constantemente y
conlleva un conocimiento valioso de formas que no son fácilmente
utilizables. Minería de conocimiento se refiere a la capacidad de
recuperar información y extraer información dentro de una gran
cantidad de datos. Azure Search permite la extracción de conocimiento
1
mediante el uso de capacidades de inteligencia artificial integradas
para descubrir información latente de todo su contenido: documentos,
imágenes y medios. Azure Search es el único servicio de búsqueda en
la nube con capacidades de inteligencia artificial integradas que le
permiten descubrir patrones y relaciones en su contenido, comprender
sentimientos, extraer frases clave y más. Las organizaciones de
atención al cliente, por ejemplo, a menudo usan la minería de
conocimiento para extraer datos e inteligencia de la documentación
del caso. Pueden analizar el sentimiento del cliente para mejorar la
productividad del agente y la experiencia del cliente.
Con la aplicación de cámara AI para ver, puede sostener su teléfono
para escuchar información sobre el espacio que lo rodea, convirtiendo
el mundo visual en una experiencia audible. Puedes reconocer y
localizar los rostros de las personas con las que estás, junto con sus
características faciales y su edad, emoción y mucho más. Finalmente,
puede escuchar fragmentos de texto para obtener instrucciones de
audio en documentos completos.
Ahora, terminemos todo lo que has aprendido con una verificación de
conocimiento.
1
Bienvenido(a) al módulo de:
Análisis
de datos
Bienvenido(a) al módulo de:
Azure
Bienvenido(a) al módulo de:
Bot
Bienvenido(a) al módulo de:
Comunicación
Bienvenido(a) al módulo de:
Inteligencia
Artificial
Bienvenido(a) al módulo de:
Internet
de las cosas
RESUMEN
Vamos a repasar rápidamente lo que hemos aprendido en este
módulo.
En este módulo ha aprendido cómo, por qué y cuándo se debe usar el
servicio Power BI. Ha usado Inicio de Power BI y el panel de navegación
para buscar su contenido: paneles, informes y aplicaciones. Ha abierto
un panel y agregado comentarios y alertas. En ese panel ha
1
seleccionado iconos para abrir y ver informes. Con un informe abierto,
se ha movido entre las páginas del informe, ha cambiado las opciones
de visualización, ha exportado filtros y marcadores, y ha visto y
exportado los datos subyacentes. En la unidad final, aprendió a
compartir y colaborar con compañeros de trabajo.
RESUMEN
Ha aprendido cómo filtrar los datos para encontrar la información más
pertinente para tomar mejores decisiones empresariales. Hemos
analizado informes de varias páginas y hemos visto cómo navegar a
cada página. Hemos configurado marcadores y aprendido a exportar a
PowerPoint y Excel.
1
RESUMEN
Enhorabuena, ahora sabe cómo insertar datos en Power BI Desktop y
cómo darles forma o transformar esos datos para poder crear objetos
visuales atractivos.
1
En Power BI, puede crear una relación para crear una conexión lógica
entre distintos orígenes de datos. Una relación permite a Power BI
conectar tablas entre sí para poder crear objetos visuales e informes.
En este módulo se describen las relaciones centradas en datos y cómo
crear relaciones cuando no existe ninguna.
Nota
Una de las principales ventajas de Power BI es que no es
necesario acoplar los datos en una sola tabla, sino que se pueden
usar varias tablas de distintos orígenes y definir la relación entre
ellas.
También creará sus propios cálculos personalizados y asignará nuevas
métricas para ver segmentos específicos de los datos.
1 Administración de las
relaciones de datos
La vista de modelo de Power BI Desktop permite establecer
visualmente la relación entre las tablas o los elementos. Use la
vista modelo para obtener una vista de los datos en forma de
diagrama. Estas son las tareas de esta unidad:
RESUMEN
Enhorabuena. En este módulo, ha aprendido a crear relaciones
entre orígenes de datos y a optimizar datos. Estas aptitudes le
ayudarán a extraer datos limpios de distintos orígenes.
1
Puede mostrar títulos grandes, leyendas o párrafos cortos en
Cuadros de texto, que también pueden incluir vínculos y
direcciones URL.
Si selecciona Imagen, se abrirá un explorador de archivos, donde
podrá seleccionar la imagen del equipo o de otro origen en red.
Al cambiar el tamaño de una imagen, el informe mantendrá su
relación de aspecto de forma predeterminada.
Puede insertar cinco tipos de Formas, incluidos rectángulos y
1 flechas. Las formas pueden ser opacas o transparentes, con un
borde de color. Esto último es útil para crear bordes en torno a
grupos de visualizaciones.
Administración de la
superposición de
elementos
Cuando hay varios elementos en un informe, Power BI permite
controlar cómo se superponen entre sí. Este orden de capas se
conoce como orden Z.
Para administrar el orden Z de los elementos de un informe,
seleccione un elemento y use los botones Traer adelante y Enviar
atrás de la pestaña Herramientas de objetos visuales.
Reutilización de un diseño
de informe
Las páginas individuales de un informe pueden ser complejas, con
1
varias visualizaciones que interactúan de manera específica y que
tienen un formato concreto. En ocasiones, al crear un informe, puede
que quiera utilizar los mismos objetos visuales y diseños en dos
páginas diferentes. Por ejemplo, si acaba de crear una página de
informe con los ingresos brutos, probablemente querrá tener una
página casi idéntica con los ingresos netos.
RESUMEN
Los objetos visuales permiten comunicar de mejor forma la
información que se oculta tras los datos sin procesar. Los objetos
visuales pueden resaltar tendencias escondidas de formas que los
datos tabulares no pueden. Power BI incluye muchos objetos visuales
atractivos que se pueden usar para arrojar luz sobre los datos y contar
mejores relatos.
Más información
1
• Gráficos de medidor radial en Power BI
• Cambiar cómo interactúan los objetos visuales en un
informe de Power BI
• Procedimiento: Mostrar datos de países de dos letras en
un mapa de Power BI
• Sugerencias y trucos para el formato de color en Power BI
• Tutorial: Adición de opciones de formato a un objeto
visual personalizado de Power BI .
• Prácticas recomendadas de diseño para informes y objetos
visuales
2
Volver a realizar todo ese trabajo sería un engorro, pero con
Power BI Desktop puede duplicar una página de informe.
Haga clic con el botón derecho en la pestaña que quiera copiar
y seleccione Duplicar página.
Para obtener más información, vea Tutorial: Agregar opciones de
formato a un objeto visual personalizado de Power BI .
1
El servicio Power BI es la extensión natural de Power BI Desktop,
y sus características permiten cargar informes, crear paneles y
formular preguntas sobre los datos mediante un lenguaje
natural. El servicio puede usarse también para establecer las
horas de actualización de los datos, compartir datos con la
organización y crear Service Packs personalizados.
Inicio de sesión en el
servicio Power BI
Para poder iniciar sesión en Power BI, necesitará una cuenta.
Para obtener una evaluación gratuita, vaya
1 a [Link] y regístrese con su dirección de correo
electrónico.
Para obtener información detallada sobre cómo configurar una
cuenta, vea Inicio de sesión en el servicio Power BI .
Conclusiones rápidas en
Power BI
El servicio Power BI puede buscar información de forma
automática en un panel, informe o conjunto de datos.
RESUMEN
El servicio Power BI está lleno de excelentes maneras de explorar
datos, compartir información e interactuar con objetos visuales.
Todo está disponible a través de un explorador para que pueda
conectarse desde dondequiera que esté.
1
1
Publicación y uso
compartido en Power BI
BIENVENIDA
Publique y comparta informes y paneles de Power BI con sus
compañeros de equipo de la organización o con todos los
usuarios de la web.
En este módulo, aprenderá a:
Publicar informes
Imprimir y exportar informes
Compilar aplicaciones
Integrar con OneDrive
2 Publicar en la web
Requisitos previos
Acceso a Power BI Desktop
Introducción a los paquetes de contenido, seguridad y grupos
5 min
Publicación de informes de Power BI Desktop 6 min
Impresión y exportación de paneles e informes 7 min
Presentación de Power BI Mobile 5 min
Creación de áreas de trabajo en Power BI 6 min
Compilación de aplicaciones 5 min
Uso de aplicaciones 5 min
Integración de OneDrive para la Empresa con Power BI 5 min
Publicación en la web 5 min
Comprobación de conocimientos 10 min
3
Introducción a los
paquetes de contenido,
seguridad y grupos
Lo más seguro es que quiera compartir informes y paneles con
sus compañeros de trabajo y amigos en algún momento. Con
Power BI, publicar y compartir informes y paneles es muy
sencillo.
Tareas de este módulo:
4 Publicar informes
Imprimir y exportar informes
Compilar aplicaciones
Integrar con OneDrive
Publicar en la web
Uso compartido y
colaboración con
compañeros en Power BI
Power BI ofrece varias formas de compartir y colaborar con
compañeros en paneles, informes y datos. A saber:
• Publicación de informes de Power BI Desktop en el
servicio Power BI.
• Creación de aplicaciones que empaqueten un panel, un
informe y un conjunto de información para enviarlos a
sus compañeros para que lo usen como punto de partida
y mejorarlo aún más.
• Creación de grupos, que se pueden usar como modelo
1 de seguridad para identificar un subconjunto de los
usuarios que tienen acceso a los paneles, los informes y
los conjuntos de datos que cree.
• Publicación en la web para que los informes activos se
puedan insertar en una página web.
Publicación de informes
de Power BI Desktop
Publicar informes en la servicio Power BI es rápido y sencillo.
Cuando vuelva a publicar un informe en el servicio Power BI, se
le pedirá que confirme que quiere reemplazar los informes y los
conjuntos de datos anteriores.
Al seleccionar Reemplazar, los informes y los conjuntos de datos
del servicio Power BI se sobrescriben con los nuevos informes y
conjuntos de datos.
Para obtener más información, vea Exportar datos de
visualizaciones .
Presentación de Power BI
1
Mobile
Para llevar un seguimiento de los datos mientras está en movimiento,
puede usar una de las aplicaciones móviles táctiles de Power BI apta
para dispositivos iOS, Android o Windows.
RESUMEN
Publicar informes en la web y compartirlos con todo el mundo es
sencillo con Power BI Desktop.
1
RESUMEN
Considere el escenario de la sección anterior. El objetivo es
implementar modelos de aprendizaje automático entrenados en
producción en dispositivos perimetrales de una manera escalable.
Puede crear y entrenar el modelo mediante técnicas tradicionales. Sin
una estrategia de implementación basada en contenedores, tendría
dificultades para trabajar con distintas dependencias a fin de satisfacer
varias implementaciones de destino en el perímetro. Al implementar el
detector de anomalías como un contenedor, puede superar los
1
desafíos de la implementación en entornos perimetrales complejos a
escala.
RESUMEN
En este módulo, se han explorado las ventajas de usar Azure para
almacenar los datos. Azure proporciona las siguientes características:
• Almacenamiento de datos estructurados y no estructurados
• Alta seguridad compatible con los estándares de
cumplimiento globales
• Funcionalidades de equilibrio de carga, alta disponibilidad y
1
redundancia
• Posibilidad de enviar grandes volúmenes de datos
directamente en el explorador mediante características como
Azure Blob Storage
Por último, las funcionalidades de almacenamiento de datos de Azure
la convierten en una plataforma ideal para hospedar cualquier
aplicación o portal grande de ámbito global.
RESUMEN
Se ha descrito la calculadora de precios de Azure y cómo se
puede usar para estimar los costos en Azure y comparar los
precios entre las distintas ofertas de servicio. Hemos examinado
las opciones de ahorro, cómo exportar las estimaciones de
precios y las herramientas de Azure disponibles para mantener el
control del gasto en la nube.
• Azure Advisor proporciona recomendaciones en muchas
1
áreas, incluido el costo.
• Azure Cost Management permite generar informes y
proporciona información de facturación, para que pueda
visibilizar dónde gasta su dinero.
Después analizamos procedimientos recomendados para
ayudarle a ahorrar dinero en infraestructura y licencias.
Más información
• Configurar los límites de gasto de Azure
• Presupuestos de Azure
• Explore opciones de compra flexibles para Azure
RESUMEN
A continuación se resumirá lo que se ha aprendido en este módulo.
• Aprendizaje profundo simplemente significa el uso de redes
neuronales con muchas capas
o Al tener muchas capas, estas redes tienen más espacio
para aprender información abstracta, como el aspecto
de una nariz o un perro.
o Los algoritmos de aprendizaje profundo pueden tener
1 tiempos de entrenamiento muy largos.
o Hay diferentes formas de organizarlos.
• Las redes neuronales convolucionales se suelen usar para el
procesamiento de imágenes.
• Las redes neuronales recurrentes se suelen usar para los
datos en una secuencia, como música, texto y datos de series
temporales.
o Las RNN tienen un tipo especial de memoria para los
puntos de datos que se han detectado recientemente.
o Hay diferentes variantes de RNN, cada una con
distintas ventajas.
RESUMEN
La clasificación de imágenes desempeña un papel cada vez más
importante en el sector como un medio para automatizar tareas
como la comprobación de contenido ofensivo en las imágenes que se
cargan en los sitios web y la inspección de componentes que salen de
las líneas de montaje en busca de defectos. Crear manualmente un
modelo de clasificación de imágenes, es decir, programarlo desde
cero en Python, R o en otro lenguaje, resulta costoso y requiere
1 experiencia. Custom Vision Service permite crear modelos de
clasificación de imágenes sofisticadas prácticamente a cualquier
persona. Y después de crear y entrenar un modelo, una aplicación
que lo use solo está a unas líneas de código de distancia.
RESUMEN
Hemos leído que los algoritmos de aprendizaje no supervisado
pueden dividir los datos en categorías sin haber sido entrenados
1 nunca y sin tener etiquetas que juzguen su precisión. Estos métodos
son normalmente muy útiles con grandes conjuntos de datos sin
etiquetar o con problemas ambiguos. El aprendizaje no supervisado
se suele utilizar en los campos de la ciencia y la estadística.
Hemos conocido la agrupación en clústeres k-means, a la que se
pueden asignar datos sin etiquetar para que identifique una serie de
clústeres en esos datos. k-means se puede realizar en unos segundos.
Después de este módulo, debe ser capaz de:
• Definir el aprendizaje no supervisado
• Aplicar la agrupación en clústeres k-means para predecir
agrupaciones en los datos
¡Listo! Ha completado el módulo sobre aprendizaje no supervisado.
RESUMEN
Computer Vision API es una herramienta eficaz para el procesamiento
de imágenes. El uso de este servicio, en lugar de crear el suyo propio,
tiene la ventaja de ahorrarle costos de desarrollo y de mantenimiento
considerables. Debe concentrarse en escribir la lógica de negocios
para tomar una decisión relevante para su negocio y dejar que
Computer Vision API extraiga información enriquecida de las
imágenes para categorizar y procesar los datos visuales.
1
En este módulo hemos analizado imágenes, extraído texto y
generado miniaturas. Para llamar a Computer Vision API, hemos
creado una cuenta de Cognitive Services en nuestra suscripción de
Azure. Esta cuenta nos ha proporcionado las claves de acceso que
necesitábamos para realizar llamadas.
En el siguiente paso, tómese tiempo para realizar las mismas llamadas
con sus propias imágenes. Luego, ajuste los parámetros en cada
llamada para ver el efecto que tienen en los resultados. Puede ir más
allá y probar las otras operaciones en la API, como, por
ejemplo, describe y tag.
¡Felicidades!
Has concluido el módulo de Analítica de datos.
¡Felicidades!
Has concluido el módulo de Azure.
¡Felicidades!
Has concluido el módulo de Bot.
¡Felicidades!
Has concluido el módulo de Comunicación.
¡Felicidades!
Has concluido el módulo de Inteligencia Artificial.
¡Felicidades!
Has concluido el módulo de Internet de las cosas.
RESUMEN
Azure puede proporcionarnos una ayuda inmediata para hacer
frente a los problemas de seguridad. Uno de los primeros pasos
que debemos tomar es evaluar cuánta ayuda de Azure podemos
usar en función de si vamos a emplear IaaS, PaaS o SaaS.
Azure Security Center centraliza gran parte de la ayuda que Azure
tiene que ofrecer. Proporciona un único panel, que ofrece una
vista sobre muchos de los servicios y ayuda a garantizar que está
1
siguiendo los procedimientos recomendados. Los algoritmos de
aprendizaje automático que se actualizan continuamente le
ayudan a identificar si las amenazas más recientes van a atacar a
sus recursos. Y ayuda a su organización a mitigar las amenazas.
Este módulo es simplemente introductorio. La seguridad es un
tema amplio y complejo, por lo que sea cual sea su enfoque en la
nube, es necesaria una formación continua en materia de
seguridad. Pero este módulo debe encaminarle en la dirección
correcta, para que sepa lo que necesita aprender a continuación.
Contenedores en Azure
Azure admite contenedores de Docker (un modelo de contenedor
estandarizado), y hay varias maneras de administrar los contenedores
en Azure.
Azure Container Instances (ACI)
Azure Kubernetes Service (AKS)
Azure Container Instances
Azure Container Instances (ACI) ofrece la forma más rápida y sencilla
de ejecutar un contenedor en Azure. No tiene que administrar ninguna
máquina virtual ni configurar ningún servicio adicional. Es una oferta
PaaS que permite cargar los contenedores y ejecutarlos directamente
1
mediante el escalado elástico automático.
Azure Kubernetes Service
La tarea de automatizar y administrar una gran cantidad de
contenedores (y de interactuar con ellos) se conoce como
orquestación. Azure Kubernetes Service (AKS) es un servicio de
orquestación completa para contenedores con arquitecturas
distribuidas con varios contenedores.
Uso de contenedores en las soluciones
Los contenedores se usan normalmente para crear soluciones
mediante una arquitectura de microservicios. Esta arquitectura es
donde se dividen las soluciones en partes más pequeñas e
independientes. Por ejemplo, se puede dividir un sitio web en un
contenedor que hospeda el front-end, otro que hospeda el back-end
y un tercero para el almacenamiento. De esta forma, puede separar
partes de la aplicación en secciones lógicas que se pueden mantener,
escalar o actualizar independientemente.
1
RESUMEN
Azure proporciona varios servicios para llevar a cabo el proceso en la
nube, pero la elección del servicio correcto depende de sus
necesidades empresariales. Tenga en cuenta que algunas
funcionalidades pueden utilizarse para lo mismo. Por ejemplo, puede
usar contenedores de Azure o Azure Functions como parte de una
arquitectura sin servidor. Sin embargo, en última instancia, tomar la
decisión adecuada depende de la funcionalidad del servicio y las
1 habilidades de su equipo de desarrollo.
Más información
• Para obtener más información sobre los servicios de proceso
disponibles en Azure, consulte algunas de las páginas
siguientes.
• Introducción a las opciones de proceso de Azure
• Escenarios típicos para ejecutar máquinas virtuales de Azure
1
Publicación de un
experimento de Machine
Learning con Microsoft Azure
Machine Learning Studio
BIENVENIDA
Machine Learning desempeña un papel importante en las aplicaciones
que aprovechan la inteligencia artificial. Microsoft proporciona
Machine Learning Studio y Machine Learning Services para ayudarle a
aprovechar las ventajas de los modelos prediseñados o crear modelos
de aprendizaje de automático personalizados propios. Obtenga
información sobre cómo crear una cuenta en Azure Machine Learning
Studio, crear un experimento de ejemplo y, después, publicarlo e
implementarlo para usarlo como un servicio web.
2
Requisitos previos
Aspectos básicos de Azure
Creación de una cuenta de Azure Machine Learning Studio 28
min
Creación de un experimento en Azure Machine Learning Studio
41 min
RESUMEN
El equipo de garantía de productos necesitaba una forma más eficaz
de realizar la inspección visual final de los productos antes de su envío.
Necesitaba diseñar la solución para un proceso automatizado que
evaluara de forma precisa las características físicas de los distintos
productos para garantizar el estándar de calidad. El enfoque también
necesitaba cumplir los requisitos arquitectónicos y tenía que ser algo
que el equipo de desarrollo de software pudiera implementar.
El servicio Azure Custom Vision le ha permitido diseñar una solución
que automatiza la inspección visual de los productos. El servicio es
compatible con la arquitectura de red o de soluciones existente y
1
funciona con las herramientas y el lenguaje de software con los que el
equipo de desarrolladores está familiarizado. Mediante la evaluación
de los requisitos de Custom Vision API, ha podido planear los flujos de
trabajo de la imagen para Training y Prediction. También ha podido
diseñar la solución adecuada para su problema.
Imagínese cuánto tiempo y dinero ahorrará al librarse de la tarea de
inspección manual. Otra ventaja del servicio Custom Vision es que no
es necesario crear los modelos de Machine Learning desde cero.
Ha sido fácil crear el diseño de una solución para Training API y
Prediction API. La autenticación del servicio Custom Vision funciona
igual que la autenticación del servicio Computer Vision. No necesitará
miles de imágenes para cada tipo de producto a fin de satisfacer los
objetivos de calidad de la inspección. El servicio Custom Vision es
exactamente lo que necesitaba. Ahorrará mucho dinero a la empresa.
Más información
• ¿Qué es Azure Custom Vision?
• Referencia sobre Custom Vision Prediction API
• Referencia sobre Custom Vision Training API
• Migración a Custom Vision API 3.0
2
RESUMEN
En este módulo, ha aprendido que el reconocimiento del hablante se
compone de dos aspectos principales: la verificación y la identificación.
Speaker Verification API puede verificar y autenticar automáticamente
los usuarios a través de su voz. Cada voz tiene características únicas
que se pueden usar para identificar a una persona, de manera similar a
una huella dactilar. El uso de la voz para controlar el acceso no solo
ofrece una mayor seguridad, sino que también simplifica la experiencia
de autenticación para los clientes.
1
Speaker Identification API puede identificar automáticamente a la
persona que habla en un archivo de audio dentro de un grupo de
posibles hablantes. La API compara el audio de entrada con el grupo
de hablantes proporcionado y, si encuentra una coincidencia, devuelve
la identidad del hablante. Todos los hablantes que quiere comparar
deben someterse primero a un proceso de inscripción para grabar su
voz en el sistema y para que se cree una huella de voz.
Limpieza
Para evitar costos inesperados en la cuenta de Azure, elimine el grupo
de recursos mslearn-speakerapi. La eliminación de este grupo quitará
todos los recursos que se han creado en este módulo. Estos son los
pasos que debe seguir:
1. Inicie sesión en Azure Portal .
2. En el panel izquierdo, haga clic en Grupos de recursos y
busque el grupo de recursos mslearn-speakerapi.
3. Selecciónelo y haga clic con el botón derecho en la fila, o bien
pulse el botón de puntos suspensivos (…) para abrir el menú
contextual.
4. Haga clic en Eliminar grupo de recursos.
5. Escriba el nombre del grupo de recursos mslearn-
speakerapi y, luego, haga clic en Eliminar. Azure quitará todos
los recursos de forma automática.
2
RESUMEN
Como ha visto en este módulo, es fácil agregar filtros de texto a las
aplicaciones y los servicios con Microsoft Azure Content Moderator.
Con Text Moderation API, puede hacer lo siguiente:
• Analizar el texto para buscar contenido no deseado.
• Clasificar el contenido que podría resultar ofensivo.
• Obtener información sobre la posible información de
identificación personal que se comparte para que pueda
protegerla.
1 Limpieza
Para evitar costes inesperados en la cuenta de Azure, elimine el grupo
de recursos LearnRG. La eliminación de este grupo quitará todos los
recursos que se han creado en este módulo. Estos son los pasos que
debe seguir:
1. Inicie sesión en Azure Portal .
2. En el panel izquierdo, seleccione Grupos de recursos y busque
el grupo de recursos LearnRG.
3. Selecciónelo y haga clic con el botón derecho en la fila, o bien
pulse el botón de puntos suspensivos (…) para abrir el menú
contextual.
4. Haga clic en Eliminar grupo de recursos.
5. Escriba el nombre del grupo de recursos LearnRG y, luego,
seleccione Eliminar. Azure quitará todos los recursos de forma
automática.
2
USO DE LA AGRUPACIÓN
EN CLÚSTERES K-MEANS
PARA AGRUPAR DATOS
La agrupación en clústeres k-means hace honor a su nombre: separa
los ejemplos en un número k de clústeres (por lo que si k es 5, dividirá
los ejemplos en 5 clústeres) y dividirá los ejemplos por el promedio
(media) de los clústeres.
Lo único que k-means debe ejecutar es el conjunto de datos y el
número de clústeres que el usuario quiere planear.
1
Es muy común que los profesionales de la inteligencia artificial decidan
el número de clústeres mediante la ejecución de k-means con varios
números diferentes de clústeres. Los resultados se visualizan a
continuación para comprobar la decisión de los usuarios. Hay una
función de costo para determinar la tasa de errores, pero analizar el
costo de k-means suele ser ambiguo en lo que se refiere al número
correcto de clústeres.
Los puntos de inicio de los
clústeres empiezan de
forma aleatoria. Luego, k-
means tiene dos pasos:
1. Los ejemplos se
asignan al clúster al que
están más cerca.
2. Los puntos de inicio de los clústeres se mueven al valor medio
de los ejemplos agrupados en ese clúster.
Estos pasos se repiten varias veces y se completa la agrupación en
clústeres.
2
A continuación, usaremos k-means en Azure Notebooks.
RESUMEN
Se ha descrito gran cantidad de información sobre el reconocimiento
facial. Puede usar la interfaz de pruebas web para obtener información
sobre cómo funcionan las llamadas a la API. Además, considere la
posibilidad de usar una aplicación cliente para recorrer los conceptos.
Pruebe este tutorial de C# con una aplicación de inicio de ejemplo.
La detección de caras es solo una parte de Vision API general de Azure
Cognitive Services. Puede usarla en las aplicaciones para aprovechar las
funciones de reconocimiento facial que proporciona Microsoft. Si la
1 funcionalidad integrada no satisface sus necesidades por completo,
use la ciencia de datos para crear servicios de reconocimiento facial
propios, o bien las funciones de visión personalizadas.
Limpieza
Para evitar costes inesperados en la cuenta de Azure, elimine el grupo
de recursos mslearn-faceapi para quitar todos los recursos que se han
creado en este módulo. Estos son los pasos que se deben seguir:
1. Para encontrar rápidamente el grupo de recursos mslearn-
faceapi, haga clic en Grupos de recursos en la barra lateral de
Azure.
2. Seleccione el grupo de recursos y haga clic con el botón
derecho en la fila, o bien use el botón ... situado en el extremo
derecho de la fila para abrir el menú contextual.
3. Haga clic en Eliminar grupo de recursos.
4. Escriba el nombre del grupo de recursos y haga clic
en Eliminar. Azure desaprovisiona de forma automática todos
los recursos.
2
RESUMEN Y LIMPIEZA
En este módulo ha avanzado mucho. QnA Maker es una manera fácil
de proporcionar respuestas a preguntas habituales mediante
documentos existentes o listas de preguntas frecuentes.
La integración del servicio QnA Maker con un bot en Azure puede
facilitar la interacción de los usuarios con listas de preguntas frecuentes
a modo de conversación, para no tener que buscar en documentos de
gran tamaño en un explorador.
Limpieza
1
Para evitar costos inesperados en la cuenta de Azure, elimine el grupo
de recursos mslearn-factbot. Con esto se eliminan todos los recursos
creados en este módulo. Estos son los pasos:
1. Busque el grupo de recursos mslearn-factbot. Puede
seleccionar Grupos de recursos en la barra lateral de Azure
para encontrarlo rápidamente o bien usar la barra de búsqueda
global de la parte superior de la ventana del portal.
2. Seleccione el grupo de recursos y haga clic con el botón
derecho en la fila o use el botón de puntos suspensivos (…) del
extremo derecho de la fila para abrir el menú.
3. Haga clic en Eliminar grupo de recursos.
4. Escriba el nombre del grupo de recursos y haga clic
en Eliminar. Azure quita todos los recursos, incluida la base de
conocimiento de QnA Maker.
Más información
Se puede hacer mucho más para aprovechar la eficacia de Azure Bot
Service.
• Incorporación de cuadros de diálogo
• Agregar compatibilidad con FormFlow
• Compatibilidad con el lenguaje natural con Microsoft
Language Understanding and Intelligence Services (LUIS).
Con estas y otras características, puede compilar bots sofisticados que
2
respondan a las consultas y los comandos de los usuarios e interactúen
de manera fluida, no lineal y a modo de conversación.
Para obtener más información y para ver ideas para empezar, vea el
artículo de información general sobre Microsoft Bot Framework.
Si quiere que el bot sea más inteligente, considere la posibilidad de
expandir la base de conocimiento con otras preguntas y respuestas.
Por ejemplo, puede usar las preguntas frecuentes en línea para que
Bot Framework entrene al bot para que responda a preguntas sobre el
propio Framework.
RESUMEN
Language Understanding Intelligent Service (LUIS) permite que la
aplicación entienda lo que las personas quieren en sus propias
palabras. Con LUIS puede compilar aplicaciones que reciben la entrada
del usuario en lenguaje natural y extraen significado de ella.
En este módulo, ha creado una sencilla aplicación de LUIS. Después ha
agregado algunas intenciones, expresiones y entidades para probar
cómo interactúa con un usuario. La idea de compilar esta aplicación de
LUIS era integrarla en una aplicación de bot. Para integrar LUIS en sus
1 propias aplicaciones de inteligencia artificial, consulte la
documentación de la API para saber cómo realizar dicha integración.
Limpieza
1. Para evitar costes inesperados en la cuenta de Azure, elimine el
grupo de recursos LearnRG. La eliminación de este grupo
quitará todos los recursos que se han creado en este módulo.
Estos son los pasos que debe seguir:
2. Inicie sesión en Azure Portal .
3. En el panel izquierdo, seleccione Grupos de recursos y busque
el grupo de recursos LearnRG.
4. Selecciónelo y haga clic con el botón derecho en la fila, o bien
pulse el botón de puntos suspensivos (…) para abrir el menú
contextual.
5. Haga clic en Eliminar grupo de recursos.
6. Escriba el nombre del grupo de recursos LearnRG y, luego,
seleccione Eliminar. Azure quitará todos los recursos de forma
automática.
2
RESUMEN
Speech Translation API permite agregar a las aplicaciones,
herramientas y dispositivos una traducción de voz de varios idiomas de
un extremo a otro en tiempo real. La misma API se puede usar para la
traducción de voz a voz y la conversión de voz a texto.
Con Speech Translation API, las aplicaciones cliente usan audio de voz
con el servicio de Voz y reciben de vuelta una secuencia de resultados.
Estos resultados incluyen el texto reconocido en el idioma de origen.
Se pueden proporcionar traducciones provisionales hasta que se
1 complete una expresión, momento en el que se proporciona una
traducción final.
En Speech Translation API se usan las mismas tecnologías que ofrecen
varios servicios y productos de Microsoft. Miles de empresas en todo
el mundo ya usan este servicio en sus aplicaciones y flujos de trabajo.
Limpieza
Para evitar costos imprevistos en su cuenta de Azure, elimine los
grupos de recursos que se han creado mientras se trabajaba en los
ejercicios de este módulo. La eliminación de este grupo quitará todos
los recursos que se han creado en este módulo. Estos son los pasos
que debe seguir:
1. En el menú de la izquierda de Azure Portal, seleccione Grupos
de recursos y, después, busque el grupo de recursos que se ha
creado para este módulo.
2. Seleccione el grupo de recursos y haga clic con el botón
derecho en la fila, o bien pulse el botón de puntos
suspensivos (…) situado al final de la fila para abrir el menú
contextual.
3. Seleccione Eliminar grupo de recursos.
4. Escriba el nombre del grupo de recursos y, luego, haga clic
en Eliminar. Azure quitará todos los recursos de forma
automática.
2
RESUMEN
En este módulo En este módulo, hemos hablado sobre qué es la
informática en la nube y cuáles son sus características clave. Entre otros
aspectos, hemos tratado los siguientes:
Los diferentes tipos de modelos en la nube disponibles y las
consideraciones que hay que tener en cuenta al usarlos.
1
Algunos de los términos y conceptos clave, como alta disponibilidad,
agilidad, elasticidad, tolerancia a errores y gastos de capital frente a
gastos operativos.
Los diferentes servicios en la nube disponibles, las ventajas de usar
estos diferentes tipos y las responsabilidades de administración de
cada tipo de servicio.
Los modelos en la nube, como público, privado e híbrido, y las
características clave de cada uno.
Los distintos tipos de servicio en la nube disponibles: IaaS, PaaS y SaaS;
las características clave de cada servicio y las situaciones en las que se
recomienda usar uno u otro.
Un enchufe conectado para representar la electricidad que se va a
ofrecer
Microsoft Azure
Azure es la plataforma de informática en la nube de Microsoft. Azure
proporciona más de cien servicios que permiten hacer de todo, desde
ejecutar las aplicaciones existentes en máquinas virtuales hasta
explorar nuevos paradigmas de software, como los bots inteligentes y
la realidad mixta.
Estos son solo algunos tipos de servicios que encontrará en Azure:
• Los servicios de procesos, como las máquinas virtuales y los
2 contenedores, que pueden ejecutar las aplicaciones.
• Los servicios de base de datos que proporcionan opciones
relacionales y NoSQL.
• Los servicios de identidad que facilitarán la autenticación y
protección de los usuarios.
• Los servicios de redes que conectan el centro de datos a la
nube, proporcionan alta disponibilidad u hospedan el dominio
DNS.
• Las soluciones de almacenamiento que pueden hospedar
cantidades masivas de datos estructurados y no estructurados.
• Inteligencia artificial y aprendizaje automático pueden analizar
datos, texto, imágenes, comprender el habla y hacer
predicciones mediante datos, lo que permite el mundo de la
agricultura o la salud, entre otros.
• Y mucho más.
1
Procesamiento y traducción
de voz con Azure Cognitive
Speech Services
BIENVENIDA
Azure Cognitive Services proporciona funciones para habilitar los
servicios de voz en las aplicaciones. Obtenga información sobre cómo
integrar Cognitive Speech Services para convertir voz en texto y
reconocer hablantes específicos en las aplicaciones.
Requisitos previos
Aspectos básicos de Azure
Traducción de voz en tiempo real con Azure Cognitive Services
2
52 min
Reconocimiento de voces específicas con las API de Speaker
Recognition en Azure Cognitive Services 52 min
1
Evaluación de texto con Azure
Cognitive Language Services
BIENVENIDA
Obtenga información sobre cómo usar Cognitive Language Services
para analizar el texto, determinar la intención, detectar temas para
adultos y procesar la entrada de lenguaje natural.
Requisitos previos
Aspectos básicos de Azure
Clasificación y moderación de texto con Azure Content
Moderator 31 min
2
Incorporación de inteligencia conversacional a las aplicaciones
mediante Language Understanding Intelligent Service (LUIS) 54
min
Detección de opiniones en texto con Text Analytics API 48 min
1
Procesamiento y clasificación
de imágenes con los servicios
de Azure Cognitive Vision
BIENVENIDA
Microsoft Cognitive Services ofrece funciones pregeneradas para
habilitar la funcionalidad de Computer Vision en las aplicaciones.
Obtenga información sobre cómo usar los servicios de Cognitive Vision
para detectar caras, etiquetar y clasificar imágenes, e identificar
objetos.
Requisitos previos
Aspectos básicos de Azure
2
Identificación de caras y expresiones con Computer Vision API
en Azure Cognitive Services 47 min
Procesamiento de imágenes con el servicio Computer Vision 32
min
Clasificación de imágenes con Microsoft Custom Vision Service
40 min
Evaluación de los requisitos para implementar las API de
Custom Vision 46 min
1
Creación de bots inteligentes
con Azure Bot Service
BIENVENIDA
Con Bots, se puede permitir a los usuarios interactuar con aplicaciones
informáticas de forma conversacional mediante texto, gráficos o voz.
Puede ser un sencillo diálogo de preguntas y respuestas, o un bot
sofisticado que permita a los usuarios interactuar con los servicios de
una forma inteligente mediante la coincidencia de patrones, el
seguimiento de estados y técnicas de inteligencia artificial bien
integradas con los servicios empresariales existentes. Obtenga
información sobre cómo crear un bot de chat y agregarle inteligencia
2 mediante la integración de QnA Maker y LUIS.
Requisitos previos
Aspectos básicos de Azure
Compilación de un bot de chat de Preguntas más frecuentes
con QnA Maker y Azure Bot Service 48 min
RESUMEN
Se han analizado varias características que puede usar para
organizar y controlar los recursos de Azure.
Se ha descrito cómo funcionan los grupos de recursos y algunas
maneras de usarlos para organizar los recursos.
Se ha visto cómo las etiquetas permiten agregar información
contextual personalizada a los recursos, para su uso en áreas
1 como la facturación y el filtrado.
También, cómo se podrían usar directivas para aplicar estándares
a todos los recursos de Azure.
Se han usado bloqueos de recursos para impedir la eliminación
accidental de los recursos críticos.
Mediante el uso de estas herramientas en la totalidad del entorno
de Azure, tendrá una mayor organización en los recursos de
Azure.
Limpieza
A continuación se limpiarán los recursos que se han creado.
Como todo el contenido se ha implementado en un único
grupo de recursos, la limpieza es fácil.
1. Para continuar, abra Azure Portal en un explorador web si
todavía no lo ha hecho. En el cuadro de búsqueda de la
barra de navegación superior, busque msftlearn-core-
infrastructure-rg y haga clic en el grupo de recursos.
2. En el panel Información general, haga clic en Eliminar
grupo de recursos. Escriba el nombre del grupo de
recursos msftlearn-core-infrastructure-rg para confirmar
y haga clic en Eliminar.
2
•
Acaba de ver algunos ejemplos (recomendaciones minoristas,
mantenimiento predictivo y detección de riesgos) de cómo se aplica el
aprendizaje automático en diferentes industrias para mejorar los
resultados comerciales, así como los beneficios de los servicios y
características que ofrece Microsoft Azure AI para satisfacer sus
necesidades. objetivos de negocios.
¿Cómo funciona el aprendizaje automático?
Para simplificar y acelerar el aprendizaje automático, Azure Machine
Learning se ha basado en los siguientes principios de diseño:
Permita que los científicos de datos utilicen un conjunto familiar
y rico de herramientas de ciencia de datos.
Simplifique el uso de marcos de aprendizaje automático y
1
aprendizaje automático populares.
Acelere el tiempo de valor al ofrecer capacidades de ciclo de
vida de aprendizaje automático de extremo a extremo.
Hay tres pasos principales para usar el aprendizaje
automático:
El servicio Azure Machine Learning proporciona un entorno basado en
la nube que puede usar para desarrollar, capacitar, probar,
implementar, administrar y rastrear modelos de aprendizaje
automático.
2
Con el servicio Azure Machine Learning, los científicos de datos pueden
construir modelos más rápido con el aprendizaje automático, aumentar
la productividad con las capacidades de DevOps para el aprendizaje
automático e implementar fácilmente modelos en la nube y en el
borde.
En la siguiente unidad, cubriremos aplicaciones y agentes de IA.
1
APPS Y AGENTES
¿Qué son las aplicaciones y agentes de IA?
Una aplicación de inteligencia artificial es simplemente una
aplicación web o móvil con capacidades de inteligencia artificial, como
el procesamiento de la visión o el lenguaje. Por ejemplo, una aplicación
de servicios financieros que utiliza el reconocimiento facial como parte
de su proceso de inicio de sesión móvil es una aplicación móvil con
capacidades de inteligencia artificial. Un agente de IA es un programa
de máquina que utiliza capacidades de IA para interactuar con un
usuario humano. Por ejemplo, un bot de chat utilizado por una
2
empresa para gestionar solicitudes de servicio al cliente en vivo
basadas en la web es un ejemplo de un agente de inteligencia
artificial. Microsoft ofrece servicios inteligentes de aplicaciones de
inteligencia artificial con Azure Cognitive Services y desarrolla agentes
de inteligencia artificial con Azure Bot Services. Nuestros modelos de
inteligencia artificial que potencian estas aplicaciones y agentes
inteligentes se pueden personalizar para su negocio utilizando sus
propios datos y se pueden implementar en cualquier lugar.
Microsoft ofrece experiencias innovadoras en sus aplicaciones con
Azure Cognitive Services y Azure Bot Service. Los principales modelos
de IA se están utilizando en todas las industrias y en una variedad de
productos diferentes hoy en día, como Office 365, Xbox y Bing.
Para realizar los ejercicios de este modo, deberá tener instalado
Power BI Desktop y una cuenta del servicio Power BI configurada.
Descargar Power BI Desktop
Puede descargar Power BI Desktop desde la Web o como aplicación de
Microsoft Store en la pestaña Windows.
Estrategia de
descarga Vínculo Notas
Aplicación de la Tienda Se mantendrá actualizada
Tienda Windows Windows automáticamente
Descarga desde la Descargar Se debe actualizar periódicamente
1 Web .msi de manera manual
Iniciar sesión en el servicio Power BI
Para poder iniciar sesión en Power BI, necesitará una cuenta. Para
obtener una evaluación gratuita, vaya a [Link] y regístrese
con su dirección de correo electrónico.
Para más información sobre cómo configurar una cuenta, consulte
Inicio de sesión en el servicio Power BI.
Descarga de datos de ejemplo
Para seguir los ejemplos de los vídeos y en las páginas, descargue el
libro de Excel de ejemplo aquí e impórtelo en Power BI Desktop
(Obtener datos > Excel).
Exploración de Power BI
Desktop
La idea de crear y compartir informes es un concepto abstracto. Tendrá
mucho más sentido si explora Power BI Desktop de manera práctica. El
primer paso es iniciar y explorar la interfaz de usuario (UI).
En esta unidad, aprenderá a:
Iniciar Power BI Desktop.
Explorar la interfaz de usuario.
2
Nota
Para seguir los ejemplos de los vídeos y en esta página, descargue
la base de datos de Access de ejemplo aquí e impórtelo en
Power BI Desktop (Obtener datos > Excel).
Para crear una tabla calculada, vaya a Vista de datos en Power BI
Desktop, que puede activar en el lado izquierdo del lienzo del
informe. Seleccione Nueva tabla en la pestaña Modelado para
abrir la barra de fórmulas.
Escriba el nombre de la nueva tabla, inserte un signo igual e
indique el cálculo que quiere usar para formar la tabla. La nueva
tabla aparecerá en el panel Campos del modelo.
Una vez creada la tabla calculada, puede usarla como cualquier
otra tabla en las relaciones, las fórmulas y los informes.
Para obtener más información, vea: Uso de tablas calculadas en
Power BI Desktop .
Exploración de datos
basados en tiempo
Analizar datos basados en tiempo con Power BI es fácil. Las
herramientas de modelado de Power BI Desktop generan
automáticamente campos que permiten explorar en
profundidad los períodos de tiempo.
Estas son las tareas de esta unidad:
2
Esta unidad comienza con la base de las visualizaciones, los objetos
visuales sencillos que todo el mundo conoce, para garantizar que
conoce sus particularidades. En el resto del módulo encontrará
información más avanzada, o como poco menos habitual, para mejorar
sus conocimientos para crear informes.
1
La visualización de datos es una de las partes principales y uno de los
bloques de creación básicos de Power BI. La creación de objetos
visuales es una de las formas más eficaces de hallar y compartir
información.
Descubrirá una amplia variedad de visualizaciones en Power BI, que
ofrece características como gráficos de barras, gráficos circulares y
mapas sencillos, así como ofertas más elaboradas, como cascadas,
embudos y medidores. Power BI Desktop ofrece también un amplio
abanico de herramientas de formato de páginas (como las formas o las
imágenes), que contribuyen a que el informe cobre vida.
Creación y personalización
de visualizaciones sencillas
En esta unidad se explica cómo crear gráficos de barras, gráficos
circulares y gráficos de rectángulos, y cómo personalizarlos para
adaptarlos a los informes.
2
Puede que quiera visualizar dos medidas con diferentes escalas,
como ingresos y unidades. Use un gráfico combinado para
mostrar una línea y una barra con diferentes escalas de eje.
Power BI admite muchos tipos diferentes de gráficos
combinados de forma predeterminada, incluidos gráficos de
líneas y de columnas apiladas.
Para dividir cada columna por categoría, arrastre una categoría
al campo Serie de columnas. Al hacerlo, cada barra se
coloreará de forma proporcional con respecto a los valores
dentro de cada categoría.
Creación de
segmentaciones de datos
Las segmentaciones de datos son uno de los tipos más eficaces
de visualizaciones, especialmente cuando forman parte de un
informe muy cargado. Una segmentación de datos es un filtro
visual en lienzo que permite a los usuarios del informe
segmentar los datos según un valor concreto. Entre los
ejemplos de filtro están por año o por ubicación geográfica.
2
Para agregar una segmentación de datos a un informe,
seleccione Segmentación de datos en el panel Visualizaciones.
Arrastre el campo por el que quiera segmentar y colóquelo en
la parte superior del marcador de posición de segmentación de
datos. La visualización se convierte en una lista de elementos
con casillas. Estos elementos son los filtros. Active la casilla
1 situada junto al elemento que quiera segmentar y Power BI
filtrará (o segmentará) todos los demás objetos visuales de la
misma página del informe.
Existen varias opciones disponibles que ayudan a dar formato a
la segmentación de datos. Puede configurarlo para que acepte
varias entradas a la vez, o bien puede usar el modo Selección
única para usarlas una a una. También puede agregar una
opción Seleccionar todo a los elementos de la segmentación
de datos, lo que resulta útil si tiene una lista larga. Cambie la
orientación de la segmentación de datos del valor vertical
predeterminado a horizontal; se convertirá en una barra de
selección en lugar de en una lista de comprobación.
Cuando hay varias visualizaciones en la misma página de un
informe, Power BI Desktop permite controlar cómo fluyen las
2
interacciones entre los objetos visuales. Para más información,
vea Cambiar cómo interactúan los objetos visuales en un
informe de Power BI .
Asignación de
visualizaciones
Power BI tiene dos tipos diferentes de visualizaciones de mapa:
un mapa de burbujas, que coloca una burbuja sobre un punto
geográfico, y un mapa de formas, que muestra el contorno del
área que se quiere visualizar.
Si tiene información numérica en una tabla (como, por ejemplo,
una relación de ingresos), aparecerá una suma total en la parte
inferior. Puede ordenar manualmente por cada columna si
selecciona el encabezado de columna para cambiar el orden
entre ascendente y descendente. Si una columna no es lo
suficientemente ancha como para mostrar todo el contenido,
seleccione y arrastre el encabezado de columna para
expandirlo.
En el panel Visualizaciones, el orden de los campos en el cubo
Valores determina el orden en que aparecen en la tabla.
Una matriz es similar a una tabla, pero tiene encabezados de
categoría diferentes en las filas y columnas. Al igual que sucede
con las tablas, la información numérica se sumará
automáticamente en la parte inferior derecha de la matriz.
Existen muchas opciones cosméticas disponibles para las
matrices, como el ajuste automático del tamaño de las
2 columnas, la alternancia entre los totales de fila y de columna, el
establecimiento de colores, etc.
Creación de gráficos de
dispersión, cascada y
embudo
Use un gráfico de dispersión para comparar dos medidas
diferentes, como ventas por unidad frente a ingresos.
Los gráficos de cascada se suelen usar para mostrar los cambios que
se producen en un valor específico con el tiempo.
Las cascadas solo tienen dos opciones de cubo: Categoría y Eje Y.
Arrastre un campo basado en tiempo (como Año) al cubo Categoría y
arrastre el valor del que quiera llevar un seguimiento al cubo Eje Y.
Los períodos de tiempo en los que se haya producido un aumento
del valor se muestran de forma predeterminada de color verde,
mientras que los períodos con una disminución del valor aparecen de
color rojo.
Los gráficos de embudo se suelen usar para mostrar los cambios que
tienen lugar durante un proceso específico, como una canalización de
ventas o los esfuerzos de retención de sitios web.
2
Los gráficos de cascada y de embudo se pueden segmentar y
personalizar.
Modificación de colores
en gráficos y objetos
visuales
A veces, puede que quiera modificar los colores que se usan en
los gráficos u objetos visuales. Power BI le confiere el control de
cómo se muestran los colores. Para empezar, seleccione un
objeto visual y, después, seleccione el icono de pincel del panel
Visualizaciones.
Para crear un gráfico en blanco, seleccione Gráfico de
dispersión en el panel Visualizaciones. Arrastre y coloque los dos
1 campos que quiera comparar desde el panel Campos hasta los
cubos de opciones Eje X y Eje Y. En este punto, es probable que
el gráfico de dispersión tenga una burbuja pequeña en el centro
del objeto visual. Debe agregar una medida al cubo Detalles para
indicar cómo quiere segmentar los datos. Por ejemplo, si va a
comparar las ventas de artículos y los ingresos, probablemente
quiera dividir los datos por categoría, fabricante o mes de venta.
Al agregar otro campo al cubo Leyenda, se aplicará un código de
color a las burbujas según el valor del campo. También puede
agregar un campo al cubo Tamaño para modificar el tamaño de
la burbuja en función de ese valor.
Los gráficos de dispersión tienen muchas opciones de formato
visual también, como la activación de un contorno en cada
burbuja de color y la alternancia de etiquetas individuales.
Asimismo, se pueden cambiar los colores de datos de otros tipos
de gráficos.
2
Mantenga el puntero sobre un icono del panel y seleccione los
puntos suspensivos para ver las posibles acciones del icono.
Seleccione Abrir en modo de enfoque para expandir el icono y
abarcar el espacio completo del panel.
1
El modo de enfoque permite ver con más detalle los objetos
visuales y las leyendas. Por ejemplo, es posible que algunas de
las columnas no se muestren debido al espacio que está
disponible en el icono.
En el modo de enfoque, puede anclar el objeto visual
directamente en un panel diferente si selecciona el icono de
anclaje. Para salir del modo de enfoque, seleccione el icono Salir
del modo de enfoque en la esquina superior izquierda.
El proceso es similar cuando se está viendo un informe. Los
objetos visuales siguen siendo interactivos en el modo de
enfoque, aunque perderá temporalmente cualquier efecto de
filtro cruzado entre objetos visuales.
Edición de los detalles del
icono y adición de widgets
Después de crear un panel, puede dar formato a los iconos en el
servicio Power BI.
2
El método más sencillo para mostrar todo el panel en una
pantalla es seleccionar el botón Modo de pantalla completa
en la esquina superior derecha del panel.
Al seleccionar el botón Modo de pantalla completa, se quitan
todos los elementos de cromo de alrededor del panel, lo que
aumenta la cantidad de espacio visible.
En Modo de pantalla completa, puede seleccionar Ajustar a la
pantalla para reducir todos los iconos a una sola pantalla. Este
modo sin barras de desplazamiento se denomina normalmente
Modo TV y es útil para ofrecer presentaciones.
También puede seleccionar el icono de hamburguesa para
contraer el panel de navegación en el lado izquierdo de la
página. Para expandir el panel de navegación, vuelva a
seleccionar el icono.
Si quiere que un panel tenga siempre la barra de navegación
contraída, anexe lo siguiente al final de la dirección URL:
2
?collapseNavigation=true
Los usuarios que siguen ese vínculo abrirán el panel con una
barra de navegación contraída.
Cuando haya terminado de redactar el informe, seleccione el
botón Publicar en la pestaña Inicio.
Power BI empaqueta el informe y los datos (incluidas las
visualizaciones, las consultas y las medidas personalizadas) y los
carga en el servicio Power BI.
Nota
1
Los informes de Power BI Desktop se suelen conocer como
archivos .pbix, que es la extensión que se les confiere en
Microsoft Windows.
Una vez completada la carga, aparece un cuadro de diálogo que
informa de que el proceso de publicación se realizó
correctamente y donde, asimismo, se proporciona un vínculo al
informe en el servicio Power BI.
Impresión y exportación
de paneles e informes
En ocasiones, es posible que quiera imprimir un informe o un
panel para una reunión o para compartirlos con otros usuarios.
Power BI proporciona varias maneras de conseguir estas copias
impresas.
2
Empiece en el servicio Power BI. En Mi área de trabajo, creará
una aplicación que incluye el panel, el informe y el conjunto de
datos. Luego, compartirá la aplicación con los usuarios de la
organización para que puedan reutilizar esos artefactos. En la
vista de lista del área de trabajo, decida qué paneles e informes
quiere incluir en la aplicación.
Seleccione el botón Publicar aplicación en la esquina superior
derecha para iniciar el proceso de creación y publicación de una
aplicación desde el área de trabajo.
En Configuración, rellene el nombre y la descripción para ayudar
1 a los usuarios a encontrar la aplicación. Puede establecer un color
de tema para personalizarla. También puede agregar un vínculo
que lleve a un sitio de soporte.
Elija si quiere distribuir la aplicación a personas concretas o a
grupos y, tras ello, dé un título a la aplicación. Indique una
descripción detallada en el cuadro Descripción para que los
usuarios sepan lo que la aplicación ofrece.
2
En la parte inferior del cuadro de diálogo, puede cargar una
imagen relativa a la aplicación y, luego, seleccionar el panel que
se va a incluir en la aplicación. Al publicar la aplicación, esta se
agrega a la galería de contenido de la organización.
Para obtener más información, vea Publicación de una aplicación
en Power BI .
Uso de aplicaciones
En esta lección, creará una instancia de una aplicación para todos
los usuarios de un grupo.
OneDrive para la Empresa es una ubicación de almacenamiento
en potencia del contenido de Power BI que proporciona el
historial de versiones. Puede compartir sus archivos con un grupo
de Office365 para permitir que varias personas trabajen en los
mismos archivos de Power BI o de Excel.
Para conectarse a un archivo PBIX (Power BI Desktop) en
OneDrive para la Empresa, inicie sesión en el servicio Power BI y
1 seleccione Obtener datos. En Crear contenido, seleccione
Archivos y, luego, OneDrive para la Empresa. Resalte el archivo
y, después, seleccione Conectar.
El contenido aparece en la barra de navegación de la izquierda.
Los cambios de archivo en la página OneDrive para la Empresa
se reflejarán automáticamente en el entorno de Power BI y se
registrarán en el historial de versiones.
Para obtener más información, vea Conexión a archivos
almacenados en OneDrive del área de trabajo de la aplicación
Power BI .
Publicación en la web
En esta lección, va a compartir un informe de Power BI en una
página web o por correo electrónico. Esta característica de
Power BI suele conocerse como Publicar en la web.
2
RESUMEN
Considere el escenario de ciudad inteligente de ejemplo que se ha
presentado. La ciudad intenta optimizar el tráfico mediante datos de
sensores y cámaras. La solución se debe extender más allá del servicio
de telemetría básico. Necesita un centro de mensajería centralizado
para la comunicación bidireccional en la nube. Tendrá que autenticar,
administrar y aprovisionar millones de dispositivos de forma confiable
y segura. Además, necesitará supervisar el estado de estos dispositivos
1
en el tiempo para garantizar un tiempo de actividad constante. En esta
situación, IoT Hub puede ayudar a resolver el problema del
desarrollador porque proporciona el marco de trabajo para crear
funciones auxiliares, como la seguridad, el aprovisionamiento, etc.
Sin IoT Hub, el desarrollador tendría que crear personalmente toda la
funcionalidad. Con IoT Hub, puede centrarse en el problema
empresarial concreto (y proporcionar soluciones para toda la ciudad).
IoT Hub simplifica el desarrollo de soluciones de IoT al proporcionar
funcionalidades críticas de cualquier solución de IoT en cualquier
segmento industrial.
La resolución de problemas de toda la ciudad requiere otro tipo de
diseño. Un enfoque de ingeniería basado en el diseño de sistemas
podría ofrecer soluciones a problemas complejos como la
administración del tráfico, la reducción de emisiones de efecto
2 invernadero del tráfico, etc. El diseño de sistemas basados en
soluciones necesita la capacidad de administrar un gran número de
mensajes en tiempo real entre los distintos actores autónomos. IoT
Hub proporciona la capacidad de controlar ese tipo de mensajes.
RESUMEN
Considere el ejemplo de un desarrollador que va a implementar
aplicaciones de IoT en la nube para una aplicación de automatización
de fábrica. El desarrollador quiere simular el comportamiento de la
máquina, pero también el del entorno que la rodea. El módulo de
simulador de sensor de temperatura precompilado puede ayudar a
resolver este problema cuando se implementa en el perímetro. Sin este
módulo, el desarrollador no podrá probar la solución de forma
adecuada porque resulta caro adquirir datos del ambiente y de la
1
máquina. Al usar el módulo de sensor simulado creado previamente, el
desarrollador puede estar más seguro de que la aplicación funcionará
según lo estipulado.
En este módulo, se podrían explorar los temas de ingeniería siguientes:
Previsión del comportamiento de un componente o sistema: uso de
datos del sensor simulado para predecir el comportamiento de un
sistema para las pruebas.
Consideraciones de diseño: uso de datos simulados para diseñar
características del sistema.
Utilización de restricciones y tolerancias, y condiciones de
funcionamiento específicas: uso de datos simulados para comprender
las limitaciones de límite o umbral de una solución.
Consideraciones de seguridad: uso de datos simulados para
comprender las limitaciones de seguridad y límites del sistema.
Creación de herramientas que ayudan a compilar la solución: el sensor
de temperatura actúa como una herramienta para compilar la solución
real.
2
1
Creación de bots inteligentes
con Azure Bot Service
BIENVENIDA
Con Bots, se puede permitir a los usuarios interactuar con aplicaciones
informáticas de forma conversacional mediante texto, gráficos o voz.
Puede ser un sencillo diálogo de preguntas y respuestas, o un bot
sofisticado que permita a los usuarios interactuar con los servicios de
una forma inteligente mediante la coincidencia de patrones, el
seguimiento de estados y técnicas de inteligencia artificial bien
integradas con los servicios empresariales existentes. Obtenga
información sobre cómo crear un bot de chat y agregarle inteligencia
mediante la integración de QnA Maker y LUIS.
Requisitos previos
2
• Aspectos básicos de Azure
RESUMEN
Buen trabajo. Ha terminado la parte más difícil del curso.
Ya ha visto los aspectos básicos de las redes neuronales. No se
preocupe si en esta fase se siente algo confuso: las redes neuronales
no son intuitivas, ni siquiera para los expertos. También hay mucha
1
jerga y es normal pensar que es difícil. A continuación se resumirá lo
que se ha descrito.
Ha aprendido que:
• Las redes neuronales se componen de nodos.
o Cada nodo recibe información, la combina mediante
adiciones sencillas, más algún tipo de función de
activación, y envía el resultado a otros nodos
(normalmente) en la "capa" siguiente.
o Las conexiones entre los nodos se
denominan bordes y multiplican los valores que pasan
por ellos por su peso (número).
o Finalmente, esta información llega a la capa de salida y
los valores mostrados por estos nodos finales se
interpretan como una categoría de predicción como
"oreja" o "perro".
• El entrenamiento de una red neuronal consiste esencialmente
en el cambio de pesos hasta que se realicen las predicciones
precisas de forma confiable.
• Los pesos se cambian mediante descenso de gradiente. En
cada paso de este proceso:
o La red neuronal procesa un ejemplo de entrenamiento
(propagación directa).
o La predicción se compara con la realidad
2
o La propagación inversa identifica qué pesos se deben
cambiar y cuánto
o Para calcular el error de cada borde, la propagación
inversa se desplaza hacia atrás, desde la salida hacia el
nodo de entrada.
Ahora que ha revisado este módulo, debe ser capaz de:
• Obtener información sobre estructuras de red neuronal, capas,
bordes y pesos.
• Visualizar predicciones y refinar los modelos de red
[Link] distintos tipos de funciones de activación y
optimizadores.
RESUMEN
¡Enhorabuena! Ha creado un modelo de análisis predictivo sencillo
con Azure Machine Learning Studio. Resumamos lo que ha realizado.
Ha usado un conjunto de datos importado ("ingerir datos") para crear
un experimento. Después ha definido la lógica en el diseñador visual y
1 ha entrenado el modelo. Por último, ha probado y publicado el
experimento como un servicio web. Este fue un ejemplo sencillo, pero
los pasos que llevó a cabo son comunes a cualquier solución de
inteligencia artificial que cree.
Desarrollar un modelo como este es un proceso iterativo: a medida que
se modifican las diversas funciones y sus parámetros, sus resultados
convergen hasta que esté satisfecho con un modelo entrenado y
efectivo. A continuación, puede vincular este modelo a otros servicios
avanzados de inteligencia artificial en Azure o puede usar esta solución
como parte de una estructura de aplicación más grande para satisfacer
las necesidades empresariales.
Más información
• Documentación de Azure Machine Learning Studio
• Diagrama de las funcionalidades de Azure Machine Learning
Studio (PDF)
• Conjuntos de datos de ejemplo para Azure Machine Learning
Studio
Obtenga más información con una serie de vídeos de Channel 9
• [Link]
2
RESUMEN
En Microsoft proporciona más presencia global que cualquier otro
proveedor en la nube, con más de 54 regiones distribuidas en todo el
mundo. Esta infraestructura le ofrece la escala necesaria para acercar
las aplicaciones a los usuarios en todo el mundo. Azure también ha
dedicado regiones para admitir el uso de la administración pública y
las aplicaciones que deben implementarse en China para que pueda
asegurar la residencia y seguridad de los datos y cumplir los
1 requisitos de resistencia para los clientes independientemente del
tipo de requisitos empresariales que tenga.
Más información
Visite los siguientes vínculos para obtener más información sobre
algunos de los temas analizados en este módulo.
• Regiones de Azure
• Zonas geográficas de Azure
• Acuerdos de Nivel de Servicio de Azure
• Diseño de aplicaciones resistentes de Azure
• Criterios para elegir un servicio de proceso de Azure
•
2
RESUMEN
Buen trabajo. Con este primer sitio web en nuestro haber, ya nos
hemos compuesto una idea de cómo funciona Azure y lo fácil que es
poner en marcha un sistema, configurar algunos programas de
software y deshacerse de todo cuando ya no sea necesario.
Azure proporciona servicios que pueden ayudarnos a transformar el
modo en que la organización ofrece nuevas características a los
usuarios de formas que no serían posibles sin el poder de la nube.
1
Limpieza
El espacio aislado limpia los recursos automáticamente cuando haya
terminado con este módulo.
Al trabajar en una suscripción propia, se recomienda identificar al final
de un proyecto si aún necesita los recursos creados. Dejar recursos en
funcionamiento puede costarle dinero. Puede eliminar los recursos de
forma individual o eliminar el grupo de recursos para eliminar todo el
conjunto de recursos.
Continuación del recorrido por Azure
Microsoft Learn proporciona rutas de aprendizaje basadas en su rol e
intereses.
Ha dado el primer paso en la ruta de aprendizaje sobre los aspectos
básicos de Azure. Continúe avanzando para aprender cómo los
servicios de Azure, como los procesos, el almacenamiento, las redes y
la seguridad, pueden ayudarle a aprovechar el poder de la nube y crear
la próxima gran idea innovadora.
Si actualmente es usuario de AWS y quiere obtener más información
sobre los servicios de Azure, consulte el Centro de arquitectura de
Azure y vea el artículo en el que comparamos AWS y los servicios de
Azure.
2
APLICACIONES COMUNES
DE APRENDIZAJE
PROFUNDO
Cada vez que usa un asistente de voz en el teléfono móvil o hay una
sugerencia para etiquetar a un amigo en una fotografía en un medio
social, eso es el aprendizaje profundo.
Procesamiento de lenguaje natural
El procesamiento de lenguaje natural (NLP) usa modelos de
inteligencia artificial para analizar el idioma. NLP incluye revisión
1
ortográfica, traducción entre idiomas, reconocimiento de voz, bots de
chat, análisis de sentimiento, extracción de frases clave y muchas otras
áreas.
Visión informática
La visión informática, que a veces se denomina reconocimiento de
imágenes, puede analizar imágenes y extraer características de ellas
(como objetos, colores, ubicaciones o animales). La visión informática
se puede extender a vídeos para obtener información en tiempo real.
Algunos servicios combinan la visión informática con el reconocimiento
de voz para el análisis de vídeo.
La visión informática ha mejorado considerablemente la capacidad de
usar motores de búsqueda para las imágenes. Permite a los usuarios
entrenar fácilmente sus propios modelos de visión informática en el
explorador. Después, los usuarios pueden usar estos modelos en
aplicaciones individuales propias, por ejemplo para comprobar si se
cumple la normativa de uso obligatorio del casco en zonas de trabajo
peligrosas.
Recomendaciones
Programas de televisión que le pueden interesar, nuevos productos
basados en compras anteriores, amigos para agregar a sus redes y
anuncios que aparecen al explorar la web son aplicaciones de los
sistemas de recomendaciones de aprendizaje profundo.
A continuación se ofrecerá una introducción a las redes neuronales
convolucionales (CNN).
3
EJERCICIO: REGRESIÓN
LOGÍSTICA
En los ejercicios de este módulo se usa Azure Notebooks. Es un
recurso de uso gratuito.
Si los vínculos siguientes no funcionan, tiene que configurar una cuenta
gratuita de Azure Notebooks y clonar el proyecto para este módulo.
Vea el repositorio de Python en GitHub o el repositorio de R en
GitHub para obtener instrucciones para comenzar.
1. Los usuarios de Python deben ir a la biblioteca.
1
2. Seleccione el ejercicio 05. Logistic Regression - [Link].
3. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
4. Los usuarios de R deben ir a la biblioteca.
5. Seleccione el ejercicio 05. Logistic Regression - [Link].
6. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
REVISIÓN DE LA FUNCIÓN
DE COSTOS Y EL
DESCENSO DE GRADIENTE
En el ejercicio anterior se ha visto al algoritmo de regresión logística
optimizar el número de ejemplos clasificados correctamente. La
optimización se logra mediante dos métodos que se producen en
segundo plano en IA: función de costo y descenso de gradiente.
Actualización sobre la función de costo
El costo es la métrica de error y se quiere obtener un valor lo
2 más bajo posible.
El costo se determina con la función de costo.
Cada algoritmo tiene una función de costo distinta.
Descenso de gradiente
El descenso de gradiente optimiza los modelos para minimizar su
costo. Es el algoritmo de optimización más usado en IA y se emplea de
algún modo en prácticamente todos los conjuntos de entrenamiento
de modelos. Hay variaciones para las distintas aplicaciones, pero todas
usan los mismos conceptos básicos.
El descenso de gradiente modifica las predicciones de los modelos para
reducir el error mediante el cálculo, aunque no es necesario
profundizar en las matemáticas para realizar inteligencia artificial.
3
1
Curso de iniciación sobre
aprendizaje automático
BIENVENIDA
Introducción de alto nivel a la inteligencia artificial (IA) y al aprendizaje
automático. Los módulos están dirigidos a personas con poco o ningún
conocimiento de informática y estadísticas.
Trataremos los conceptos esenciales de la IA y mostraremos cómo
aplicar soluciones de aprendizaje automático personalizadas con
herramientas gratuitas y fáciles de usar. Conocerá métodos sencillos
pero eficaces empleados por los profesionales de la IA para realizar
predicciones sobre objetos, personas y el futuro.
2
A continuación, trataremos temas interesantes y complejos de los que
puede haber oído hablar, como redes neuronales, visión artificial,
aprendizaje profundo y aprendizaje no supervisado.
Requisitos previos
Ninguno
Predicción de valores numéricos mediante regresión 56 min
Predicción de categorías con la clasificación de aprendizaje
automático 1 h
Realización de predicciones a partir de datos complejos con
redes neuronales 38 min
Uso de modelos de aprendizaje profundo para realizar
predicciones sobre datos especializados 44 min
Uso del aprendizaje no supervisado para analizar datos sin
etiquetar 27 min
3
Como vio en el video, Azure Cognitive Search ingirió datos en forma
de archivos PDF en Azure Blob Storage. Luego, con la extracción de la
frase clave y el reconocimiento de la entidad con nombre, la detección
del idioma y la traducción automática, los servicios cognitivos
enriquecieron los datos y crearon un modelo de riesgo del Reglamento
General de Protección de Datos (GDPR) personalizado. Cuando se
conectó a las aplicaciones web de Azure, creó una experiencia de
búsqueda que permitió a dos millones de usuarios administrar más de
cinco millones de contratos.
Aquí hay un diagrama del proceso de minería de conocimiento similar
al proceso utilizado por iCertis. Este diagrama ilustra cómo se ingiere,
descifra, enriquece e indexa el contenido para permitir la extracción de
datos y la búsqueda a través de diversas aplicaciones (como sitios web
1
y chatbots).
Ahora que ha visto un ejemplo de cómo funciona la minería del
conocimiento, aquí hay algunos otros ejemplos de la industria en los
que la minería del conocimiento se aplica para resolver un problema
comercial.
Las organizaciones de atención médica enfrentan el desafío de
demasiados datos clínicos. Grandes volúmenes de datos pueden incluir
nombres de pacientes, datos demográficos, años de registros médicos
e historial médico, diagnósticos y resultados de laboratorio. Con la
minería de conocimientos, los proveedores de atención médica pueden
examinar grandes cantidades de datos para identificar infecciones
antes, predecir qué pacientes tienen más probabilidades de tener
ciertos problemas y permitir que los médicos atiendan mejor a los
pacientes.
En los servicios financieros, las empresas deben abordar el desafío de
dar sentido a grandes volúmenes de documentos, formularios,
contratos y más. Las técnicas de procesamiento del lenguaje natural
combinadas con modelos especializados de comprensión de
2 contenido permiten a las organizaciones de servicios financieros
comprender y atender mejor a sus clientes de manera personalizada.
Las compañías de petróleo y gas tienen equipos de geólogos y otros
especialistas que necesitan comprender los datos sísmicos y
geológicos. A menudo tienen décadas de archivos con imágenes y
notas de campo escritas a mano. Necesitan conectar lugares, expertos
en dominios y eventos, y sintetizar esta información para tomar
decisiones informadas.
Ahora que hemos visto cuán poderosas son las capacidades de minería
de conocimiento de IA de Azure, profundizaremos en las capacidades
de IA relacionadas con el aprendizaje automático.
APRENDIZAJE
AUTOMÁTICO
¿Qué es el aprendizaje automático?
El aprendizaje automático es una técnica de ciencia de datos que
permite a las computadoras aprender a usar los datos existentes, sin
ser programados explícitamente, para pronosticar comportamientos,
resultados y tendencias futuros.
Las capacidades avanzadas de aprendizaje automático de Azure le
permiten a su empresa construir, entrenar e implementar rápida y
fácilmente modelos de aprendizaje automático usando Azure Machine
3
Learning, Azure Databricks y ONNX (Open Neural Network
Exchange). Puede usar las herramientas y los marcos de su elección sin
estar limitado a tecnologías específicas, desarrollar modelos más
rápido utilizando el aprendizaje automático y administrar modelos a
través de la nube y el borde.
1
Aspectos básicos de Azure
BIENVENIDA
¿Está interesado en la nube, pero no está muy seguro de cómo puede
ayudarle? Esta ruta es el lugar para comenzar.
En esta ruta de aprendizaje conseguirá lo siguiente:
Aprender conceptos como alta disponibilidad, escalabilidad,
elasticidad, agilidad, tolerancia a errores y recuperación ante desastres.
Entender las ventajas de la informática en la nube con Azure y cómo
esta le puede ahorrar tiempo y dinero.
2
Comparar y contrastar estrategias básicas para realizar la transición a
la nube de Azure
Explorar la gran variedad de servicios disponibles en Azure, incluidos
los de procesos, redes, almacenamiento y seguridad.
Requisitos previos
Ninguno
Conceptos de la nube: Principios de la informática en la nube
1 h 2 min
Creación de una cuenta de Azure 39 min
Servicios principales Cloud Services: Introducción a Azure 36
min
Principales servicios en la nube: arquitectura de Azure y
garantías de servicio 45 min
Cloud Services básico: administración de servicios con Azure
Portal 1 h 13 min
Servicios principales Cloud Services: Opciones de proceso de
Azure 38 min
Principales Cloud Services: Opciones de almacenamiento de
datos de Azure 25 min
Cloud Services básico: opciones de redes de Azure 28 min
3
Seguridad, responsabilidad y confianza en Azure 1 h 16 min
Aplicación y supervisión de estándares de infraestructura con
Azure Policy 46 min
Control y organización de los recursos de Azure con Azure
Resource Manager 46 min
Predicción de los costos y optimización del gasto en Azure 1 h
14 min
RESUMEN
Vamos a repasar rápidamente lo que hemos aprendido en este
módulo.
Microsoft Power BI es una colección de servicios de software,
aplicaciones y conectores que funcionan conjuntamente para
convertir los datos en información interactiva. Puede usar datos de
1 orígenes básicos únicos, como un libro de Microsoft Excel, o
extraerlos de varias bases de datos y orígenes en la nube para crear
informes y conjuntos de datos complejos. Power BI puede ser tan
sencillo como desee o tan complejo como lo exija su empresa
internacional.
Power BI consta de tres elementos principales: Power BI Desktop, el
servicio Power BI y Power BI Mobile. Estos elementos funcionan de
forma conjunta para permitirle crear datos, interactuar con ellos,
compartirlos y utilizarlos como desee.
También hemos analizado los bloques de creación básicos de Power
BI:
• Visualizaciones: representaciones visuales de los datos, a
veces denominadas sencillamente "objetos visuales".
• Conjuntos de datos: colecciones de datos que Power BI
utiliza para crear visualizaciones.
• Informes: colecciones de objetos visuales de un conjunto de
datos que pueden ocupar una o varias páginas.
• Paneles: colecciones de objetos visuales de una página de
extensión, creados a partir de un informe.
• Iconos: visualizaciones únicas dentro de un informe o panel.
En el servicio Power BI, instalamos una aplicación con solo unos
clics. Esa aplicación, una colección de objetos visuales e informes lista
para su uso, permite conectarnos fácilmente a un servicio de
software para rellenar la aplicación y hacer que los datos cobren vida.
2 Por último, configuramos una programación de actualización para
nuestros datos, para asegurarnos de que los datos estén actualizados
la próxima vez que accedamos al servicio Power BI.
Pasos siguientes
¡Enhorabuena! Ha completado el primer módulo de la ruta de
aprendizaje de Power BI. Ahora cuenta con una base sólida de
conocimientos para pasar al módulo siguiente, que le guiará por los
pasos para crear su primer informe.
Anteriormente, ya mencionamos esto, pero vale la pena recalcarlo:
esta ruta de aprendizaje amplía sus conocimientos siguiendo el flujo
de trabajo habitual de Power BI:
• Integrar datos en Power BI Desktop y crear un informe.
• Publicarlo en el servicio Power BI, donde creará nuevas
visualizaciones o confeccionará paneles.
• Compartir sus paneles con otros usuarios, especialmente con
personas que se estén desplazando.
• Ver informes y paneles compartidos e interactuar con ellos en
aplicaciones de Power BI Mobile.
Es posible que usted no se encargue de todos esos procesos; algunas
personas solo ven los paneles creados por otros en el servicio, y ellos
solamente usarán el servicio. No hay problema. Pronto tendremos un
módulo dedicado a mostrarle cómo navegar y utilizar fácilmente el
servicio Power BI, para que pueda ver informes y aplicaciones e
interactuar con ellos.
3
Sin embargo, en el módulo siguiente se continúa con el flujo de
trabajo de Power BI, en el que se explica cómo crear un informe y
publicarlo en el servicio Power BI. Obtendrá información sobre cómo
se crean los informes y paneles y cómo se conectan a los datos.
Incluso puede decidir crear un informe o panel propio.
RESUMEN
Vamos a repasar rápidamente lo que hemos aprendido en este
módulo.
Microsoft Power BI es una colección de servicios de software,
aplicaciones y conectores que funcionan conjuntamente para
convertir los datos en información interactiva. Puede usar datos de
1 orígenes básicos únicos, como un libro de Microsoft Excel, o
extraerlos de varias bases de datos y orígenes en la nube para crear
informes y conjuntos de datos complejos. Power BI puede ser tan
sencillo como desee o tan complejo como lo exija su empresa
internacional.
Power BI consta de tres elementos principales: Power BI Desktop, el
servicio Power BI y Power BI Mobile. Estos elementos funcionan de
forma conjunta para permitirle crear datos, interactuar con ellos,
compartirlos y utilizarlos como desee.
También hemos analizado los bloques de creación básicos de Power
BI:
• Visualizaciones: representaciones visuales de los datos, a
veces denominadas sencillamente "objetos visuales".
• Conjuntos de datos: colecciones de datos que Power BI
utiliza para crear visualizaciones.
• Informes: colecciones de objetos visuales de un conjunto de
datos que pueden ocupar una o varias páginas.
• Paneles: colecciones de objetos visuales de una página de
extensión, creados a partir de un informe.
• Iconos: visualizaciones únicas dentro de un informe o panel.
En el servicio Power BI, instalamos una aplicación con solo unos
clics. Esa aplicación, una colección de objetos visuales e informes lista
para su uso, permite conectarnos fácilmente a un servicio de
software para rellenar la aplicación y hacer que los datos cobren vida.
2 Por último, configuramos una programación de actualización para
nuestros datos, para asegurarnos de que los datos estén actualizados
la próxima vez que accedamos al servicio Power BI.
Pasos siguientes
¡Enhorabuena! Ha completado el primer módulo de la ruta de
aprendizaje de Power BI. Ahora cuenta con una base sólida de
conocimientos para pasar al módulo siguiente, que le guiará por los
pasos para crear su primer informe.
Anteriormente, ya mencionamos esto, pero vale la pena recalcarlo:
esta ruta de aprendizaje amplía sus conocimientos siguiendo el flujo
de trabajo habitual de Power BI:
• Integrar datos en Power BI Desktop y crear un informe.
• Publicarlo en el servicio Power BI, donde creará nuevas
visualizaciones o confeccionará paneles.
• Compartir sus paneles con otros usuarios, especialmente con
personas que se estén desplazando.
• Ver informes y paneles compartidos e interactuar con ellos en
aplicaciones de Power BI Mobile.
Es posible que usted no se encargue de todos esos procesos; algunas
personas solo ven los paneles creados por otros en el servicio, y ellos
solamente usarán el servicio. No hay problema. Pronto tendremos un
módulo dedicado a mostrarle cómo navegar y utilizar fácilmente el
servicio Power BI, para que pueda ver informes y aplicaciones e
interactuar con ellos.
3
Sin embargo, en el módulo siguiente se continúa con el flujo de
trabajo de Power BI, en el que se explica cómo crear un informe y
publicarlo en el servicio Power BI. Obtendrá información sobre cómo
se crean los informes y paneles y cómo se conectan a los datos.
Incluso puede decidir crear un informe o panel propio.
RESUMEN
Vamos a repasar rápidamente lo que hemos aprendido en este
módulo.
Microsoft Power BI es una colección de servicios de software,
aplicaciones y conectores que funcionan conjuntamente para
convertir los datos en información interactiva. Puede usar datos de
1 orígenes básicos únicos, como un libro de Microsoft Excel, o
extraerlos de varias bases de datos y orígenes en la nube para crear
informes y conjuntos de datos complejos. Power BI puede ser tan
sencillo como desee o tan complejo como lo exija su empresa
internacional.
Power BI consta de tres elementos principales: Power BI Desktop, el
servicio Power BI y Power BI Mobile. Estos elementos funcionan de
forma conjunta para permitirle crear datos, interactuar con ellos,
compartirlos y utilizarlos como desee.
También hemos analizado los bloques de creación básicos de Power
BI:
• Visualizaciones: representaciones visuales de los datos, a
veces denominadas sencillamente "objetos visuales".
• Conjuntos de datos: colecciones de datos que Power BI
utiliza para crear visualizaciones.
• Informes: colecciones de objetos visuales de un conjunto de
datos que pueden ocupar una o varias páginas.
• Paneles: colecciones de objetos visuales de una página de
extensión, creados a partir de un informe.
• Iconos: visualizaciones únicas dentro de un informe o panel.
En el servicio Power BI, instalamos una aplicación con solo unos
clics. Esa aplicación, una colección de objetos visuales e informes lista
para su uso, permite conectarnos fácilmente a un servicio de
software para rellenar la aplicación y hacer que los datos cobren vida.
2 Por último, configuramos una programación de actualización para
nuestros datos, para asegurarnos de que los datos estén actualizados
la próxima vez que accedamos al servicio Power BI.
Pasos siguientes
¡Enhorabuena! Ha completado el primer módulo de la ruta de
aprendizaje de Power BI. Ahora cuenta con una base sólida de
conocimientos para pasar al módulo siguiente, que le guiará por los
pasos para crear su primer informe.
Anteriormente, ya mencionamos esto, pero vale la pena recalcarlo:
esta ruta de aprendizaje amplía sus conocimientos siguiendo el flujo
de trabajo habitual de Power BI:
• Integrar datos en Power BI Desktop y crear un informe.
• Publicarlo en el servicio Power BI, donde creará nuevas
visualizaciones o confeccionará paneles.
• Compartir sus paneles con otros usuarios, especialmente con
personas que se estén desplazando.
• Ver informes y paneles compartidos e interactuar con ellos en
aplicaciones de Power BI Mobile.
Es posible que usted no se encargue de todos esos procesos; algunas
personas solo ven los paneles creados por otros en el servicio, y ellos
solamente usarán el servicio. No hay problema. Pronto tendremos un
módulo dedicado a mostrarle cómo navegar y utilizar fácilmente el
servicio Power BI, para que pueda ver informes y aplicaciones e
interactuar con ellos.
3
Sin embargo, en el módulo siguiente se continúa con el flujo de
trabajo de Power BI, en el que se explica cómo crear un informe y
publicarlo en el servicio Power BI. Obtendrá información sobre cómo
se crean los informes y paneles y cómo se conectan a los datos.
Incluso puede decidir crear un informe o panel propio.
Nota
Para seguir con la hoja de cálculo de Excel de este vídeo, descargue el
.xlsx aquí.
Puede que un diseño de tabla que se vea bien no sea óptimo
para las consultas automatizadas. Por ejemplo, la hoja de cálculo
siguiente tiene encabezados que abarcan varias columnas.
Limpiar datos
Afortunadamente, el Editor de Power Query tiene herramientas
que lo ayudarán a transformar rápidamente tablas de varias
columnas en conjuntos de datos que puede usar.
Transponer datos
Con el uso de Transpose (Transponer) en el Editor de
Power Query, puede intercambiar filas en columnas para que los
datos tengan un mejor formato.
Dar formato a los datos
2
Es posible que tenga que darle formato a los datos para que
Power BI pueda clasificar en categorías e identificar
correctamente los datos. Con algunas transformaciones, limpiará
los datos de un conjunto de datos que puede usar en Power BI.
Entre los ejemplos de transformaciones eficaces se incluyen la
promoción de filas a encabezados, el uso de Rellenar para
reemplazar los valores null y Anular la dinamización de
columnas.
Con Power BI, puede experimentar con las transformaciones y
determinar cuál de ellas transformará los datos en el formato de
columna más utilizable. Recuerde que en la sección Pasos
aplicados del Editor de Power Query se registran todas sus
acciones. Si una transformación no funciona según lo previsto,
seleccione la X junto al paso y deshágalo.
Después de limpiar los datos y dejarlos en un formato utilizable,
puede empezar a crear objetos visuales atractivos en Power BI.
Para más información, consulte Tutorial: Combinación de datos
3 de ventas de Excel y una fuente de OData .
Nota
Para seguir los ejemplos de los vídeos y en esta página, descargue
la base de datos de Access de ejemplo aquí e impórtelo en
Power BI Desktop (Obtener datos > Excel).
Al crear una visualización de tabla en el informe mediante un
campo de fecha, Power BI Desktop incluye automáticamente los
desgloses por período de tiempo. Por ejemplo, Power BI ha
divido automáticamente el campo de fecha único de la tabla
Fecha en año, trimestre, mes y día.
Los objetos visuales muestran datos en el nivel de año de forma
predeterminada, pero este comportamiento se puede cambiar
activando Explorar en profundidad en la esquina superior
derecha del objeto visual.
Al seleccionar las barras o líneas del gráfico, el sistema explorará
en profundidad hasta el siguiente nivel de jerarquía de tiempo,
por ejemplo, de años a trimestres. Puede seguir explorando en
profundidad hasta alcanzar el nivel más granular de la jerarquía:
días. Para retroceder en la jerarquía de tiempo, seleccione
Explorar agrupando datos en la esquina superior izquierda del
objeto visual.
También puede explorar en profundidad todos los datos que se
muestran en el objeto visual, en lugar de hacerlo a través de un
período seleccionado. Para ello, use el icono de flecha doble Ir al
siguiente nivel de la jerarquía.
Siempre que el modelo tenga un campo de fecha, Power BI
generará automáticamente distintas vistas correspondientes
cada jerarquía de tiempo.
3
Use el menú Vista de página de la pestaña Vista para cambiar
la escala de las páginas del informe. Las opciones disponibles son
Ajustar a la página (predeterminada), Ajustar al ancho y
Tamaño real.
1
También se puede cambiar el tamaño de la página. El tamaño de
página de informe está establecido de forma predeterminada en
16:9. Para cambiar el tamaño de página, asegúrese de que no hay
objetos visuales seleccionados, seleccione el icono de pincel en
el panel Visualizaciones y, después, seleccione Tamaño de
página para expandir esa sección.
2 Entre las opciones de tamaño de página se incluyen 4:3 (más bien
una relación de aspecto cuadrada) y Dinámica (la página se
estirará para rellenar el espacio disponible). También hay
disponible una opción de tamaño Carta estándar para los
informes. Puede que haya que cambiar el tamaño de los objetos
visuales después de cambiar el tamaño de página para garantizar
que están completamente dentro del lienzo.
Puede especificar un tamaño de página personalizado
(estableciendo el tamaño en pulgadas o píxeles) y también
cambiar el color de fondo de todo el informe.
Otra opción consiste en seleccionar Cortana, que ajusta el
tamaño del informe para que se pueda usar como resultado en
las búsquedas que usan Cortana.
Agregar elementos
estáticos
Aparte de objetos visuales enlazados a datos, también se pueden
agregar elementos estáticos, como cuadros de texto, imágenes y
formas, para mejorar el diseño visual de los informes. Para
agregar un elemento visual, seleccione Cuadro de texto,
Imagen o Formas en la pestaña Inicio.
3
En la sección Conjuntos de datos, seleccione los puntos
suspensivos situados junto al conjunto de datos que le interese
y, después, seleccione Obtener conclusiones rápidas.
1
Al seleccionar Obtener conclusiones rápidas, Power BI busca
patrones en los datos. Después de unos 15 segundos, la
notificación cambia para que sepa que Power BI encontró
información.
Al seleccionar el botón Ver conclusiones en la notificación,
aparecerá una página de objetos visuales. Puede desplazarse
hacia abajo en la página para ver y estudiar los objetos visuales.
Como con cualquier otro objeto visual, puede interactuar con los
objetos visuales de la página Conclusiones rápidas. También
puede anclar cualquiera de ellos en un panel o filtrar para revelar
información adicional.
Con Conclusiones rápidas, puede dejar que Power BI se
encargue de detectar valores atípicos y tendencias en los datos.
Use esas conclusiones de los paneles o siga refinando y filtrando
para obtener la información que necesita.
Para obtener más información, vea Generación automática de
conclusiones de datos con Power BI .
Creación y configuración
de un panel
Los paneles de Power BI son colecciones de visualizaciones de
una página que se crean en el servicio Power BI. Los paneles
pueden crearse anclando objetos visuales de los informes.
3
Los usuarios verán las preguntas sugeridas cuando formulen una
pregunta.
Para agregar sus propias preguntas, seleccione los puntos
suspensivos junto al panel que quiera usar. Seleccione
Configuración en el menú. Puede deshabilitar por completo el
cuadro de entrada de Preguntas y respuestas en la sección
Paneles de la página Configuración.
1
Para agregar preguntas, seleccione la sección Conjuntos de
datos. Se muestran todos los conjuntos de datos que están
asociados al panel. Seleccione en la lista el conjunto de datos que
está asociado a su panel, seleccione Preguntas y respuestas
destacadas y, después, seleccione el vínculo Agregar una
pregunta. Escriba la pregunta en el cuadro de entrada y
seleccione Aplicar.
Cuando alguien seleccione el cuadro de entrada de búsqueda,
verá las entradas sugeridas en la parte superior de la lista de
opciones. Las preguntas personalizadas son una forma valiosa de
que los usuarios del panel reflexionen sobre el tipo de datos que
están disponibles y cómo usarlos de la mejor manera.
Para obtener más información, vea Crear las preguntas
destacadas para Preguntas y respuestas de Power BI .
Uso compartido de
paneles con su
organización
Los informes de Power BI le ayudarán a encontrar datos,
recopilarlos en un modelo de datos y crear informes y
visualizaciones. Estas características son aun más eficaces cuando
las conclusiones se comparten con otras personas de su
organización.
3
Para compartir un panel, ábralo en el servicio Power BI y
seleccione el vínculo Compartir en la esquina superior izquierda.
En la página Compartir panel, seleccione la sección Compartir.
En el campo Dirección de correo electrónico, escriba los
nombres de las personas a las que quiere conceder acceso al
panel. También puede copiar y pegar las direcciones de correo
electrónico en este campo, o usar una lista de distribución, un
1 grupo de seguridad o un grupo de Office 365.
2
Si selecciona la casilla Enviar notificación por correo
electrónico a los destinatarios, los destinatarios recibirán un
correo electrónico con un vínculo al panel compartido. Puede
agregar una nota opcional al correo electrónico.
Nota
Los destinatarios que aún no tengan una cuenta de Power BI
deberán realizar el proceso de registro antes de ver el panel.
Todas las personas con las que comparta un panel pueden ver e
interactuar con el panel de la misma manera que usted. Sin
embargo, solo tienen acceso de lectura a los informes
subyacentes y no pueden acceder a los conjuntos de datos ocultos.
Para obtener más información, vea Uso compartido de informes
y paneles de Power BI con compañeros y otros usuarios .
Visualización de objetos
visuales e iconos en
pantalla completa
3 Al examinar paneles o informes en el servicio Power BI, puede resultar
útil expandir y centrarse en un gráfico u objeto visual concreto. Puede
hacerlo de dos maneras diferentes.
Para modificar un icono, mantenga el puntero sobre los puntos
suspensivos y selecciónelos para ver las opciones que se
muestran en la captura de pantalla siguiente.
Seleccione el icono del lápiz para abrir el panel Detalles del
icono. En este panel, puede cambiar el Título o el Subtítulo del
icono, o incluir la hora de su última actualización.
2
De forma predeterminada, al seleccionar un icono del panel, se
abrirá el informe desde el que se originó. Este comportamiento
puede cambiarse en el campo Establecer vínculo personalizado
del panel Detalles del icono. Un uso común de esta característica
es redirigir a los usuarios a la página principal de la organización
cuando seleccionan una imagen de logotipo.
Adición de imágenes y
texto al panel
También se pueden agregar iconos que contengan imágenes,
vídeos en línea, cuadros de texto o contenido web. Al seleccionar
el vínculo Agregar icono en la esquina superior izquierda de un
panel, aparece el cuadro de diálogo Agregar icono.
Por ejemplo, cuando se agrega un cuadro de texto, aparece un
3 panel Detalles del icono en el lado derecho, donde se pueden
editar los detalles. También está disponible una sección para
definir o modificar el contenido del icono, que incluye opciones
como un editor de texto enriquecido para un cuadro de texto.
Con los iconos y la capacidad de editar los detalles, se puede
personalizar el panel y hacer que aparezca del modo deseado.
Para obtener más información, vea Editar o quitar un icono de
panel .
Obtención de más espacio
en el panel
Es posible que tenga más contenido del que cabe en un lienzo.
Puede administrar la distribución del espacio del panel para
obtener una vista completa de su contenido.
Inicie sesión en su cuenta con la información de la cuenta del
servicio Power BI. La primera pantalla muestra todo el contenido
al que tiene acceso, incluidos informes, paneles y grupos. El área
de trabajo también incluye paneles de ejemplo que puede
explorar para inspirarse.
Pulse en cualquier panel para abrirlo. En un panel, puede pulsar
un icono de panel para centrarse en él en una vista más grande.
1 Fíjese en la información que se revela al pulsar el botón Anotar
en la esquina superior derecha. La característica Anotar permite
dibujar en un icono enfocado para resaltar las áreas de interés.
Las herramientas de anotación aparecen dispuestas a lo largo de
la parte inferior de la pantalla.
2
Para compartir el icono anotado, pulse el vínculo Compartir
situado en la esquina superior derecha.
Para obtener más información, vea ¿Qué son las aplicaciones
móviles de Power BI?
Creación de áreas de
trabajo en Power BI
En esta unidad, creará un grupo que define un conjunto de usuarios
con acceso a paneles, informes y datos específicos.
3
Empiece en Mi área de trabajo, seleccione el grupo que creó
anteriormente, seleccione Mi organización para examinar los
paquetes de contenido y, después, conéctese a la aplicación.
Power BI importa los paneles, informes y conjuntos de datos
que se incluyen en la aplicación.
1 Cuando selecciona el conjunto de datos, Power BI le pregunta si
quiere personalizar la aplicación. Cree una copia de la aplicación
para usarla para realizar cambios y mantenerla desconectada de
la versión publicada de la aplicación. Al crear una copia, no
recibirá actualizaciones automáticamente si el creador de la
aplicación efectúa algún cambio en la versión publicada de la
aplicación. Si lo quiere, puede editar el panel, el informe e
incluso el conjunto de datos.
Actualización de
aplicaciones
Para editar una aplicación creada anteriormente y ver cómo
otras personas usan la aplicación, empiece en el servicio
2 Power BI, en Mi área de trabajo. Siempre que realice cambios
en el panel, recibirá un recordatorio de que ha cambiado algo
que ha compartido con otros usuarios en una aplicación.
Power BI le pedirá que actualice la versión compartida.
Vuelva al icono de configuración y seleccione Ver
aplicación para ver las aplicaciones que ya ha publicado. Al
seleccionar Editar, volverá a la pantalla donde puede editar el
título y la descripción. Esta vez, la pantalla incluye un
botón Actualizar.
Power BI procesa esos cambios y publica la aplicación
actualizada en la galería de aplicaciones. Todos los usuarios que
se hayan conectado a la aplicación recibirán un mensaje que
informa de que la aplicación ha cambiado, y tendrán la
posibilidad de aceptar los cambios o conservar la versión
anterior. Como propietario de la aplicación, puede administrar
las versiones que los compañeros utilizan.
Para obtener más información, vea Cambiar la aplicación
publicada.
3 INTEGRACIÓN DE ONEDRIVE
PARA LA EMPRESA CON
POWER BI
Puede usar sus grupos de Office 365 y Power BI para colaborar
y compartir con Microsoft OneDrive para la Empresa.
En el servicio Power BI, seleccione el informe que quiera
compartir para que se muestre en el lienzo. Luego, en el menú,
seleccione Archivo > Publicar en la web. Se abrirá un cuadro de
diálogo en el que se explica que recibirá un para insertar que le
permitirá incluir el informe en un sitio web o en un correo
electrónico.
Al seleccionar Crear código para insertar, Power BI abre otro
cuadro de diálogo que indica que está a punto de compartir los
datos con todos los usuarios de Internet. Compruebe que el uso
compartido público es aceptable antes de continuar.
Power BI abre un cuadro de diálogo con dos vínculos:
Un vínculo, que se puede compartir por correo
electrónico, que muestra el informe como una página
web.
Un código HTML (un vínculo dentro de un IFrame) para
que el informe se pueda insertar directamente en una
página web
En el vínculo HTML, puede elegir uno de los tamaños
predefinidos del informe insertado, o bien modificar el código
del IFrame y personalizar su tamaño.
Puede pegar el vínculo de correo electrónico en un explorador y
ver el informe como una página web. Puede interactuar con esa
página web tal y como lo haría si estuviera viendo el informe en
Power BI. En la siguiente imagen se muestra una página Publicar
en la web cuando su vínculo correspondiente se ha copiado
directamente desde ese cuadro de diálogo en un explorador.
También puede insertar el vínculo de IFrame en una entrada de
blog, en un sitio web o en Sway.
Si quiere eliminar un código insertado que ha creado, Power BI
puede ayudarle. En Power BI, seleccione el icono de engranaje en
la esquina superior derecha y, después, seleccione Administrar
códigos para insertar.
En el área de trabajo Power BI se muestran los códigos para
insertar que ha creado.
Para obtener más información, vea Publicar en la web de
Power BI .
3
RESUMEN
Se describirá el escenario de la empresa de logística para el transporte
de frutas y otros productos perecederos. Las distintas partes
interesadas (productores, minoristas, operadores de transporte y
clientes) quieren garantizar la calidad del producto en tiempo real.
En este escenario, IoT de Azure puede ayudar a crear una solución
segura para todas las partes interesadas. La solución aprovisiona,
conecta, supervisa y controla todos los recursos de IoT de un extremo
a otro a través de la nube. Sin la solución de IoT de Azure aprovisionada
1
a través de la nube, las partes interesadas no podrían garantizar la
calidad del producto en tiempo real.
Para proporcionar valor empresarial, la solución de IoT de Azure realiza
el seguimiento de la temperatura, la humedad, etc., durante el proceso
de transporte. La solución se extiende más allá de la telemetría al
proporcionar análisis y soluciones perimetrales para ofrecer el estado
en tiempo real a las partes interesadas.
Como empresa de logística que atiende a varias partes interesadas
(productores, minoristas, clientes finales), la implementación de IoT le
permite aplicar principios de ingeniería a todo el proceso. IoT funciona
como un mecanismo de captura de datos (por ejemplo, sensores
individuales en camiones) lo que lleva a entender el proceso de un
2
extremo a otro. Una vez entendido, el proceso se puede modelar y
mejorar mediante la implementación de análisis. A través de los datos
del sensor, se puede comprender la seguridad de la fruta (por ejemplo,
asegurándose de que el producto sigue siendo seguro para el
consumo).
3
1
Predicción de los costos y
optimización del gasto en
Azure
BIENVENIDA
Los costos son uno de los aspectos más importantes de la nube y
pueden tener un efecto considerable en la empresa. Azure dispone de
diversas herramientas para ayudarlo a entender mejor el gasto en la
nube y algunos procedimientos recomendados que puede aprovechar
para ahorrar dinero.
En este módulo, aprenderá a:
Distinguir las distintas opciones que tiene para adquirir
servicios de Azure
Estimar los costos con la calculadora de precios de Azure
Predecir y optimizar costos con Azure Cost Management y
2
Azure Advisor
Aplicar procedimientos recomendados para ahorrar en costos
de infraestructura
Aplicar procedimientos recomendados para ahorrar en costos
de licencias
Requisitos previos
Comprender las opciones de los componentes de
infraestructura de Azure
Introducción 2 min
Adquisición de productos y servicios de Azure 5 min
Factores que afectan al costo 5 min
Ejercicio: Estimación de los costos con la calculadora de precios
de Azure 15 min
Ejercicio: Predicción y optimización con Cost Management y
Azure Advisor 15 min
Ejercicio: Estimación del costo total de propiedad con la
calculadora de TCO de Azure 8 min
Ahorro en costos de infraestructura 10 min
Ahorro en costos de licencia 10 min
Resumen 4 min
3
INTRODUCCIÓN
Al planear una solución en la nube, siempre se presenta el reto de
equilibrar el costo frente al rendimiento. Puede parecer un juego de
adivinanzas saber si las opciones seleccionadas permanecerán dentro
del presupuesto, o bien si habrá una sorpresa en la próxima factura.
Debe poder responder con confianza a varias preguntas:
4 • ¿Cuánto va a costar esta solución durante este ejercicio?
• ¿Hay alguna configuración alternativa que se pueda usar para
ahorrar dinero?
• ¿Puede estimar cómo afectaría un cambio al costo y
rendimiento sin colocarla en un sistema de producción?
En este módulo, exploraremos las herramientas que puede usar para
responder a estas preguntas y más.
Objetivos de aprendizaje
En este módulo, aprenderá a:
• Distinguir las distintas opciones que tiene para adquirir
servicios de Azure
• Estimar los costos con la calculadora de precios de Azure
• Predecir y optimizar costos con Azure Cost Management y
Azure Advisor
• Aplicar procedimientos recomendados para ahorrar en costos
de infraestructura
• Aplicar procedimientos recomendados para ahorrar en costos
de licencias
5
ADQUISICIÓN DE
PRODUCTOS Y SERVICIOS
DE AZURE
Los productos y servicios de Azure se organizan por categoría, que
tiene varios recursos que se pueden aprovisionar. El usuario selecciona
los productos y servicios de Azure que se ajustan a sus requisitos y se
factura a la cuenta según el modelo de pago por uso de Azure.
Medidores de uso
Al aprovisionar un recurso de Azure, se crea una o varias instancias de
medidor para ese recurso. Los medidores realizan un seguimiento del
uso de los recursos y se generan un registro de uso, el cual se utiliza
para calcular la factura.
Por ejemplo, una sola máquina virtual aprovisionada en Azure puede
tener los siguientes medidores para realizar el seguimiento de su uso:
Horas de proceso
Horas de dirección IP
Transferencia de datos de entrada
Transferencia de datos de salida
Disco administrado Estándar
Operaciones de disco administrado estándar
E/S estándar: disco
E/S estándar: lectura de blobs en bloques
E/S estándar: escritura de blobs en bloques
E/S estándar: Eliminación de blob en bloques
Los medidores y los precios varían según el producto y, a menudo,
tienen diferentes niveles de precios según el tamaño o la capacidad del
recurso. Vea la documentación para obtener detalles concretos sobre
el precio de cada área de servicio.
Al final de cada ciclo de facturación mensual, los valores de uso se
7
cobran al método de pago y se restablecen los medidores. Puede
consultar la página de facturación de Azure Portal en cualquier
momento para obtener un rápido resumen del uso actual y ver facturas
de ciclos de facturación anteriores.
La conclusión principal es que los recursos siempre se cobran según el
uso. Por ejemplo, si desasigna una máquina virtual, no se factura por
las horas de proceso, las lecturas o escrituras de E/S ni la dirección IP
privada, ya que la máquina virtual no se está ejecutando ni tiene ningún
recurso de proceso asignado. Pero sí se incurre en costos de
almacenamiento por los discos.
Nota
Desasignar una máquina virtual no es lo mismo que eliminar una
máquina virtual. La desasignación significa que la máquina virtual no
está asignada a una CPU o red de un centro de datos. Pero los discos
persistentes permanecen y el recurso está presente en la suscripción. Es
similar a apagar el equipo físico.
8
FACTORES QUE AFECTAN
AL COSTO
Del mismo modo que los costos de equipamiento locales, hay varios
elementos que afectan a los costos mensuales al usar los servicios de
Azure. Echemos un vistazo a algunos de los factores principales, como
el tipo de recursos, los servicios, la ubicación del usuario y la zona de
facturación.
Tipo de recurso
Los costos son específicos de los recursos, por lo que el uso que realiza
un medidor y el número de medidores asociados a un recurso varía
9
según el tipo de recurso.
Nota
Cada medidor sigue un determinado tipo de uso. Por ejemplo, un
medidor podría realizar un seguimiento del uso de ancho de banda
(tráfico de red entrante o saliente en bits por segundo), el número de
operaciones, el tamaño (capacidad de almacenamiento en bytes) o
elementos similares.
El uso del que realiza el seguimiento un medidor se correlaciona con un
número de unidades facturables. Esas unidades se facturan a la cuenta
por cada período de facturación, y la tarifa por unidad facturable
depende del tipo de recurso que se use.
Servicios
Las tarifas de uso y los períodos de facturación de Azure pueden diferir
entre los clientes Enterprise, Web Direct y Proveedor de soluciones en
la nube (CSP). Algunos tipos de suscripciones también incluyen
provisiones de uso que afectan a los costos.
El equipo de Azure desarrolla y ofrece productos y servicios propios,
mientras que los productos y servicios de otros proveedores están
disponibles en Azure Marketplace . A cada una de estas categorías se
aplica una estructura de facturación diferente.
Ubicación
Azure tiene centros de datos por
todo el mundo. Los costos de uso
10
varían entre ubicaciones que ofrecen
determinados productos, servicios y
recursos de Azure en función de los costos de infraestructura local,
demanda y popularidad.
Por ejemplo, es posible que, para compilar la solución de Azure,
aprovisione recursos en ubicaciones que ofrezcan los precios más
bajos, pero este enfoque exigiría la transferencia de datos entre
ubicaciones si los recursos dependientes y sus usuarios se encuentran
en distintas partes del mundo. Si hay medidores que realizan el
seguimiento del volumen de datos que se mueve entre los recursos
que aprovisiona, los ahorros potenciales que conseguiría al elegir la
ubicación más económica se verían contrarrestados por el costo
adicional de transferir datos entre esos recursos.
Zonas de facturación de Azure
El ancho de banda hace referencia a los datos que entran y salen de los
centros de datos de Azure. La mayoría de las veces, las transferencias
de datos entrantes (datos que van al interior de los centros de datos)
son gratuitas. En cuanto a las transferencias de datos salientes (datos
que salen de los centros de datos de Azure), el precio de la
transferencia de datos se basa en zonas de facturación.
Una zona es una agrupación
geográfica de regiones de
Azure para fines de facturación.
Hay las siguientes zonas, que
incluyen los países indicados (regiones).
11 Zona Áreas
Zona 1 Estados Unidos, Gobierno de EE. UU., Europa,
Canadá, Reino Unido, Francia, Suiza
Zona 2 Asia Oriental, Asia Suroriental Japón, Australia,
India, Corea
Zona 3 Brasil, Sudáfrica, Emiratos Árabes Unidos
Zona 1 de Alemania Alemania
En la mayoría de las zonas, los primeros 5 GB salientes del mes son
gratuitos. Después de eso, se factura un precio fijo por GB.
Nota
Una zona de facturación no es igual que una zona de disponibilidad. En
Azure, el término zona es solo para fines de facturación, mientras que el
término completo zona de disponibilidad hace referencia a la protección
ante errores que proporciona Azure a los centros de datos.
12
EJERCICIO: ESTIMACIÓN
DE LOS COSTOS CON LA
CALCULADORA DE
PRECIOS DE AZURE
Imagine que se le ha pedido compilar un sistema en Azure y una
cotización de lo que podría costar su ejecución durante los próximos
12 meses. Ya sabe que los precios de Azure son completamente
transparentes y que se le factura mensualmente solo por los servicios
que usa. ¿Cómo puede obtener esa cotización sin implementar ni
ejecutar esos servicios o sin calcular manualmente los precios desde las
13
páginas de precios de los servicios de Azure?
Introducción a la calculadora de precios de Azure
Para que las estimaciones sean fáciles de crear para los clientes,
Microsoft desarrolló la calculadora de precios de Azure. La
calculadora de precios de Azure es una herramienta gratuita basada en
la web que le permite ingresar servicios de Azure y modificar las
propiedades y opciones de los servicios. Produce los costos por servicio
y el costo total para la estimación completa.
Las opciones que se pueden configurar en la calculadora de precios
varían entre productos, pero las opciones de configuración básicas
incluyen:
Opción Descripción
Región Indica las regiones desde las que se
puede aprovisionar un producto.
Sudeste Asiático, Centro de Canadá,
Oeste de EE. UU. y Norte de Europa se
encuentran entre las posibles regiones
disponibles para algunos recursos.
Nivel Establece el tipo de nivel que quiere
asignar a un recurso seleccionado, como
Gratis, Básico, etc.
Opciones de facturación Resalta las opciones de facturación
disponibles para diferentes tipos de
14
cliente y las suscripciones de un
producto elegido.
Opciones de soporte Permite elegir entre opciones de precios
técnico de soporte técnico incluido o de pago
para un producto seleccionado.
Programas y ofertas Permite elegir entre las ofertas de
precios disponibles según el tipo de
cliente o suscripción.
Precios de Indica los precios de desarrollo y
desarrollo/pruebas de pruebas disponibles para un producto.
Azure Los precios de desarrollo y pruebas se
aplican solo cuando se ejecutan recursos
en una suscripción de Azure basada en
una oferta de desarrollo y pruebas.
Pruebe la calculadora de precios de Azure
En otra ventana o pestaña del explorador, abra la calculadora de
precios de Azure. En la página de la calculadora de precios, verá varias
pestañas:
1. Products. (Productos) En esta pestaña llevará a cabo la mayor
parte de la actividad. En esta pestaña se muestran todos los
servicios de Azure y es donde agregará o quitará servicios para
formular la cotización.
2. Escenarios de ejemplo Esta pestaña contiene varios ejemplos
de infraestructura implicada en soluciones comunes basadas en
15
la nube. Puede agregar todos los componentes de todo el
escenario para calcular el costo.
3. Estimaciones guardadas. Esta pestaña tiene todas las
estimaciones que guardó anteriormente. Revisaremos este
proceso en un momento.
4. FAQ. (Preguntas más frecuentes) Tal como se indica, esta
pestaña contiene respuestas a algunas preguntas frecuentes.
Comencemos con la pestaña Products (Productos). En el lado
izquierdo podrá ver la lista completa de categorías de servicio. Al hacer
clic en cualquiera de las categorías se mostrarán los servicios de esa
categoría. También hay un cuadro de búsqueda en el que puede buscar
en todos los servicios el que necesita. Si hace clic en el servicio, lo
agregará a la cotización. Puede agregar un solo servicio o puede
agregar todos los que necesite, incluidos múltiplos del mismo servicio
(por ejemplo, varias máquinas virtuales).
Después de agregar los servicios, querrá conocer el precio. Desplácese
hacia la parte inferior de la página para ver los detalles personalizables
del servicio que se aplican a los precios. En las máquinas virtuales, por
ejemplo, puede seleccionar los detalles como la región, el sistema
operativo y el tamaño de instancia, y todos estos factores afectarán el
precio de la máquina virtual. Verá un subtotal correspondiente al
servicio. Y si se desplaza más abajo, verá el total de todos los servicios
que se incluyen en la cotización. Junto con el total, verá botones donde
puede exportar, guardar y compartir la cotización.
Cotización de una solución
16
En el escenario original, imaginemos que este sistema se va a ejecutar
en dos máquinas virtuales de Azure y se va a conectar a una instancia
de Azure SQL Database. También queremos un equilibrador de carga
de capa 7 para garantizar que disponemos de capacidades de
equilibrio de carga mejoradas. En la siguiente ilustración se muestra
una puerta de enlace de aplicaciones conectada a dos máquinas
virtuales que están conectadas a su vez a una sola instancia de Azure
SQL Database.
Podemos usar la calculadora de precios de Azure para saber cuánto
costará la solución y exportar la cotización para compartirla con el
equipo. En la pestaña Escenarios de ejemplo, puede agregar todos los
recursos implicados con una solución común al problema que está
tratando de resolver para calcular todos los costos potenciales.
También puede agregar productos individuales desde la
17 pestaña Productos para crear una cotización de la solución
personalizada.
Sugerencia
Asegúrese de que la calculadora esté limpia, es decir, que no se muestre
nada en la cotización. Si hay algo en la estimación, haga clic en el icono
de la papelera en cada elemento para restablecer la estimación.
En la pestaña Productos de la calculadora de precios de Azure, haga
clic en estos servicios para agregarlos a la estimación:
Máquinas virtuales en la categoría Proceso
Azure SQL Database en la categoría Bases de datos
Application Gateway en la categoría Redes
En la pestaña Estimaciones guardadas se pueden configurar los
detalles de cada uno de los servicios para obtener un cálculo concreto
de los costos. Use la región Oeste de EE. UU. para todos los recursos.
Virtual Machines. (Máquinas virtuales) Este proyecto es una
aplicación [Link], por lo que hay que usar una máquina
virtual con SO Windows. Esta aplicación no requiere una gran
cantidad de potencia de procesamiento, así que seleccione el
tamaño de instancia D2 v3. Se necesitan dos máquinas virtuales
que se ejecuten continuamente (730 horas al mes). Para estas
máquinas virtuales se va a usar almacenamiento SSD estándar
y un solo disco por máquina virtual de tamaño E10, para un
total de dos discos.
SQL Database. Para la base de datos, se va a aprovisionar
18 un solo tipo de base de datos mediante el modelo de
núcleos virtuales. Lo que queremos es una base de datos Gen
5 de uso general con ocho núcleos virtuales. Necesitaremos 32
GB de almacenamiento.
Application Gateway. Para Application Gateway, usaremos el
nivel Firewall de aplicaciones web, por lo que tenemos algo de
protección para el entorno. Y vamos a ir con solo dos instancias
y tamaño mediano, debido a que la carga no será alta.
Esperamos procesar 1 TB de datos al mes. No esperamos
procesar datos de Europa (Zona 1).
Si busca en la estimación, debería ver un coste resumido
correspondiente a cada servicio agregado y un total de la estimación
completa. Puede intentar jugar con algunas de las opciones,
especialmente la ubicación en la que coloca estos recursos para ver
cómo aumenta y disminuye la estimación.
Sugerencia
Si dispone de recursos indiferentes a la ubicación, puede ahorrar mucho
dinero si los coloca en regiones menos costosas. La comprobación de la
calculadora de precios puede ayudarle a determinar el lugar más
rentable para colocar estos servicios.
Compartir y guardar la estimación
Ahora tenemos una estimación para la solución. Podemos guardarla
para poder volver a ella más adelante y ajustarla si fuera preciso.
También podemos exportarla a Excel para un análisis más detallado o
compartirla mediante una dirección URL.
19
Para exportar la cotización, haga clic en Export en la parte inferior de
esta. La exportación descargará la cotización en formato de Excel (.xlsx)
e incluirá todos los servicios que agregó.
Es posible compartir la hoja de cálculo de Excel o hacer clic en el
botón Share de la calculadora. De este modo, tendrá una dirección URL
que podrá usar para compartir la cotización. Cualquier usuario con este
vínculo podrá tener acceso a ella, lo que facilita compartirla con el
equipo.
Si inició sesión con su cuenta de Azure, puede guardar la cotización y
volver a ella más adelante. Haga clic en el botón Guardar. Si inició
sesión, debería ver una notificación de que se guardó la cotización. Si
no inició sesión, verá un mensaje que le indicará que inicie sesión para
guardar la cotización. Después de guardarla, desplácese a la parte
superior de la página y seleccione la pestaña Cotizaciones guardadas.
Ahí verá la cotización. Puede seleccionarla para usarla o eliminarla si ya
no la necesita.
Pudimos llegar a una estimación de costos para un conjunto de
servicios de Azure sin gastar dinero. No tuvimos que crear nada y
tenemos una cotización que puede compartir completamente y en la
que podemos realizar un mayor análisis y modificaciones posteriores a
futuro. Puede usar esto no solo para crear cotizaciones para sistemas
en los que sabe cuáles son los servicios específicos que planea usar,
sino también para comparar cómo los distintos servicios pueden
afectar los costos totales. Un ejemplo es Microsoft SQL Server en una
máquina virtual frente a Azure SQL Database.
20
EJERCICIO: PREDICCIÓN Y
OPTIMIZACIÓN CON
COST MANAGEMENT Y
AZURE ADVISOR
Aprendimos cómo se calculan los costos antes de implementar
servicios en Azure, pero, ¿qué sucede si ya tiene los recursos
implementados? ¿Cómo puede tener visibilidad sobre los costos que
ya está acumulando? Si hubiéramos implementado la solución anterior
en Azure y ahora quisiéramos asegurarnos de que el tamaño de las
máquinas virtuales fuese el correcto y predecir de cuánto sería nuestra
21
factura, ¿cómo podríamos hacerlo? Echemos un vistazo a algunas
herramientas en Azure que puede usar para ayudar a solucionar este
problema.
¿Qué es Azure Advisor?
Azure Advisor es un servicio gratuito integrado en Azure que ofrece
recomendaciones sobre alta disponibilidad, seguridad, rendimiento y
costo. Advisor analiza los servicios implementados y busca maneras de
mejorar su entorno a través de esas cuatro áreas. Nos centraremos en
las recomendaciones de costo, pero le sugerimos que se dé unos
momentos para revisar también las otras recomendaciones.
Advisor hace recomendaciones de costo en las áreas siguientes:
1. Reducción de los costos mediante la eliminación de
circuitos de Azure ExpressRoute no
aprovisionados. Identifica los circuitos ExpressRoute que han
permanecido en el estado de proveedor de No
aprovisionado durante más de un mes y recomienda eliminar el
circuito si no piensa realizar el aprovisionamiento del circuito
con el proveedor de conectividad.
2. Compra de instancias reservadas para ahorrar dinero a
través de pago por uso. Esto revisará el uso de la máquina
virtual durante los últimos 30 días y determinará si podría
ahorrar dinero en el futuro mediante la adquisición de
instancias reservadas. Advisor le mostrará las regiones y los
tamaños en los que, potencialmente, puede ahorrar más, así
22 como el ahorro estimado que podría lograr al comprar
instancias reservadas.
3. Ajuste del tamaño o apagado de máquinas virtuales
infrautilizadas. Esto supervisa la utilización de las máquinas
virtuales durante 14 días e identifica las que están
infrautilizadas. Se considera que una máquina virtual está
infrautilizada si su uso promedio de CPU es del 5 % o menos y
el de la red es de 7 MB o menos durante cuatro o más días. El
umbral de uso de CPU promedio se puede ajustar hasta un 20
por ciento. Mediante la identificación de estas máquinas
virtuales, puede decidir cambiarles el tamaño a un tipo de
instancia más pequeño, lo que reduce los costos.
Nota
Si no tiene una suscripción de Azure, cree una cuenta gratuita antes
de empezar.
Veamos dónde puede encontrar Azure Advisor en el portal.
1. Inicie sesión en Azure Portal con la cuenta de Microsoft.
2. Expanda el panel de navegación izquierdo en el menú superior
izquierdo y haga clic en Todos los servicios.
3. Haga clic en la categoría Administración y gobernanza y
busque Advisor. También puede escribir Advisor en el cuadro
del filtro de servicios para filtrar solo ese nombre.
4. Haga clic en Advisor y se le dirigirá al panel de
23
recomendaciones de Advisor donde podrá ver todas las
recomendaciones para la suscripción. Verá un cuadro para cada
categoría de recomendaciones.
Nota
Es posible que no tenga ninguna recomendación relacionada con el costo
en Advisor. Esto se podría deber a que las valoraciones todavía no se
completaron o simplemente a que no hay ninguna recomendación de
Advisor.
24
Al hacer clic en el cuadro Costo, irá a las recomendaciones detalladas
donde puede ver las recomendaciones que tiene Advisor.
Si hace clic en cualquier recomendación, irá a los detalles de esa
recomendación específica. A continuación, podrá realizar una acción
específica, como ajustar el tamaño de las máquinas virtuales para
reducir el gasto.
25
Estas recomendaciones hacen referencia a áreas en las que podría estar
gastando dinero de manera ineficaz. Son un excelente lugar para
comenzar y seguir revisitando cuando busque lugares para reducir los
costos. En nuestro ejemplo, tenemos una oportunidad para ahorrar
aproximadamente USD 700 al mes si tomamos estas recomendaciones.
Estos ahorros se suman, así que asegúrese de revisar esto
periódicamente para obtener recomendaciones a través de las cuatro
áreas.
Azure Cost Management
Azure Cost Management es otra herramienta gratuita integrada de
Azure que se puede usar para obtener mayor información sobre dónde
va su inversión en la nube. Puede ver desgloses históricos de los
servicios en los que está gastando su dinero y cómo se está realizando
un seguimiento de los presupuestos que ha establecido. Puede
establecer presupuestos, programar informes y analizar las áreas de
costos.
26 Como puede ver, Azure ofrece herramientas sin ningún costo que
puede usar para realizar el seguimiento y predecir el gasto en la nube,
así como para identificar dónde es posible que el entorno sea ineficaz
desde una perspectiva del costo. Se recomienda adoptar como práctica
habitual la revisión de los informes y las recomendaciones que ponen
a su disposición estas herramientas para poder desbloquear ahorros
en la superficie de nube.
EJERCICIO: ESTIMACIÓN
DEL COSTO TOTAL DE
PROPIEDAD CON LA
CALCULADORA DE TCO
DE AZURE
La calculadora de precios y el asesor de administración de costos
pueden ayudar a predecir y analizar los gastos de los servicios nuevos
o existentes.
27 Si está comenzando a migrar a la nube, una herramienta útil para
predecir el ahorro de costos es la calculadora de costo total de
propiedad (TCO). Para usar la calculadora de TCO, es preciso realizar
cuatro pasos.
Paso 1: Abrir la calculadora de TCO
Comience por abrir el sitio web Calculadora de costo total de
propiedad .
Paso 2: Definir las cargas de trabajo
Comience por especificar detalles sobre la infraestructura local en la
calculadora de TCO conforme a cuatro grupos:
Grupo Descripción
Servidores Especifique detalles de la infraestructura de
servidores local actual.
Bases de datos Especifique detalles de la infraestructura de
bases de datos local en la sección Origen. En
la sección Destino, seleccione el servicio de
Azure correspondiente que le gustaría usar.
Almacenamiento Especifique los detalles de la infraestructura
de almacenamiento local.
Redes Especifique la cantidad de ancho de banda
de red que se usa actualmente en el entorno
28 local.
Paso 3: Ajustar supuestos
Ajuste los valores de supuestos que realiza la calculadora de TCO, que
pueden variar entre clientes. Para mejorar la precisión de la calculadora
de TCO, debe ajustar los valores para que coincidan con los costos de
la infraestructura local actual. Los supuestos que se pueden
personalizar incluyen:
Costos de almacenamiento
Costos de personal de TI
Costos de hardware
Costos de software
Costos de electricidad
Costos de virtualización
Costos de centro de datos
Costos de redes
Costos de bases de datos
Paso 4: Ver el informe
La calculadora de TCO genera un informe detallado basado en los
detalles especificados y los ajustes realizados. El informe permite
comparar los costos de la infraestructura local con los costos del uso
de servicios y productos de Azure para hospedar la infraestructura en
la nube.
29
AHORRO EN COSTOS DE
INFRAESTRUCTURA
Hemos aprendido a crear estimaciones de costos para los entornos
que se quieren crear, se han descrito algunas herramientas para
obtener detalles sobre en qué estamos invirtiendo dinero y se han
proyectado futuros gastos. El próximo desafío consiste en ver cómo
reducir esos costos de infraestructura.
Uso de crédito de Azure
30 Los suscriptores de Visual Studio pueden activar una ventaja de crédito
mensual que permite experimentar, desarrollar y probar nuevas
soluciones en Azure. Use créditos de Azure para probar nuevos
servicios, como App Service, máquinas virtuales de Windows 10, bases
de datos de Azure SQL Server, Containers, Cognitive Services,
Functions, Data Lake, etc., sin incurrir en ningún gasto monetario.
Al activar esta ventaja, dispone de una suscripción de Azure
independiente en su cuenta con un saldo de crédito mensual que se
renueva todos los meses mientras sigue siendo suscriptor activo de
Visual Studio.
El importe del crédito varía según el nivel del programa y debería ver
la documentación para obtener más detalles sobre cuánto crédito se
recibe por un nivel de suscripción determinado. Por ejemplo:
50 $ al mes para VS Professional
150 $ al mes para Enterprise
Importante
El crédito mensual de Azure para suscriptores de Visual Studio es
para desarrollo y pruebas únicamente y no conlleva ningún SLA con
respaldo financiero. Azure suspende cualquier instancia (servicio de
máquina virtual o en la nube) que se ejecuta sin interrupción durante
más de 120 horas o si se determina que la instancia se está usando para
producción. Esta ventaja está disponible para suscriptores de Visual
Studio siempre que sea posible; no hay ninguna garantía de
disponibilidad de la capacidad.
Usar límites de gasto
31
De forma predeterminada, las suscripciones de Azure que tienen
créditos mensuales asociados (lo que incluye las cuentas de prueba),
tienen un límite de gasto para garantizar que no se cobre una vez que
se ha agotado el crédito. Esta característica es útil para los equipos de
desarrollo que exploran nuevas arquitecturas de solución, ya que
garantiza que no tengan una factura inesperadamente grande al final
del mes.
Nota
Los límites de gasto de Azure no son lo mismo que las cuotas y los límites
de suscripción, servicio o grupo de recursos.
Azure proporciona la característica de límites de gasto para ayudar a
evitar que se agote el crédito de la cuenta en cada período de
facturación. Si el uso de Azure da lugar a cargos que agotan todo el
crédito mensual incluido, los servicios implementados se deshabilitan
y se desactivan durante el resto de ese período de facturación. Una vez
que se inicia un nuevo período de facturación, si hay créditos
disponibles, los recursos se vuelven a activar e implementar.
Cuando se alcanza el límite de gasto de la suscripción, se recibe una
notificación por correo electrónico. Además, Azure Portal incluye
notificaciones sobre el crédito gastado. Puede ajustar el límite de gasto
como quiera o incluso desactivarlo.
Importante
La característica de límite de gasto es específica de las suscripciones que
incluyen una cobertura de crédito mensual de Azure. No está disponible
32 en las suscripciones de solo pago.
Uso de instancias reservadas
Si tiene cargas de trabajo de máquina virtual que son estáticas y
predecibles, especialmente las que se ejecutan de forma permanente
todo el año, el uso de instancias reservadas es una manera fantástica
de ahorrar potencialmente hasta un 70-80 % del costo de pago por
uso, en función del tamaño de máquina virtual. En la siguiente
ilustración se muestra que el uso de instancias reservadas de Azure
ahorra hasta un 72 %, y el de instancias reservadas y la Ventaja híbrida
de Azure hasta un 80 % en costos.
Se compromete a las instancias reservadas en términos de uno o tres
años. El pago se puede realizar en su totalidad durante todo el período
de compromiso, o bien se puede facturar mensualmente. Después de
realizar la reserva, Microsoft la hace coincidir con las instancias en
ejecución y reduce las horas transcurridas desde la realización de la
33
reserva. Las reservas se pueden adquirir a través de Azure Portal.
Además, como las instancias reservadas son un descuento de proceso,
están disponibles tanto para máquinas virtuales Windows como Linux.
Elegir regiones y ubicaciones de bajo costo
El costo de los recursos, los servicios y los productos de Azure puede
variar entre regiones y ubicaciones, así que, si es posible, debe usarlos
en las ubicaciones y regiones donde cuesten menos.
Nota
Algunos recursos se miden y se facturan según la cantidad de ancho de
banda de red saliente que usan. Debe aprovisionar los recursos
conectados que se midan por ancho de banda en la misma región para
reducir el tráfico de salida entre ellos.
Investigación de las ofertas de ahorro de costos disponibles
Manténgase al día de las últimas ofertas de clientes y suscripciones de
Azure, y cambie a las que le proporcionen el mayor ahorro de costos.
Puede consultar la página de actualizaciones de Azure para obtener
información sobre las últimas actualizaciones de productos, servicios y
características de Azure, así como hojas de ruta y anuncios de
productos.
Ajustar el tamaño de las máquinas virtuales infrautilizadas
Recuerde de nuestro anterior debate que Azure Cost Management y
Azure Advisor pueden recomendar que se apaguen las máquinas
virtuales o se ajuste su tamaño. Ajustar el tamaño de una máquina
virtual es el proceso de cambiar su tamaño para que sea el correcto.
34
Imaginemos que tiene un servidor que se ejecuta como un controlador
de dominio con el tamaño Standard_D4sv3, pero su máquina virtual
presenta un 90 % de inactividad la mayor parte del tiempo. Al cambiar
el tamaño de esta máquina virtual a Standard_D2sv3, reduce su costo
de proceso un 50 %. Los costos son lineales y dobles por cada tamaño
mayor en la misma serie. En este caso, puede incluso beneficiarse del
cambio de serie de las instancias para ir a una serie de máquinas
virtuales menos costosa. La siguiente ilustración muestra un ahorro del
50 % logrado al reducir un tamaño en la misma serie.
Las máquinas virtuales de tamaño grande son un gasto innecesario
habitual en Azure y que tiene fácil solución. Puede cambiar el tamaño
de una máquina virtual a través de Azure Portal, Azure PowerShell o la
CLI de Azure.
Sugerencia
Al cambiarse el tamaño de una máquina virtual, esta se detiene y, una
35
vez cambia su tamaño, se reinicia. Esto puede tardar unos minutos en
función de la importancia del cambio de tamaño. Planee una
interrupción o cambie su tráfico a otra instancia mientras realiza esta
tarea.
Desasignar máquinas virtuales en las horas de inactividad
Si tiene cargas de trabajo de máquina virtual que solo se usan durante
determinados periodos, pero las ejecuta cada hora de cada día, está
perdiendo dinero. Estas máquinas virtuales son magníficas candidatas
para apagarse cuando no se usan y para que sus copias de seguridad
sean programadas, lo que ahorra costos de proceso mientras la
máquina virtual está desasignada.
Este enfoque es una excelente estrategia para los entornos de
desarrollo. Muchas veces el desarrollo puede producirse solo durante
las horas laborables, lo que ofrece la flexibilidad necesaria para
desasignar estos sistemas en las horas de inactividad y evita que se
acumulen los costos de proceso. Ahora Azure tiene una solución de
automatización totalmente disponible para que pueda aprovecharla en
su entorno.
También puede usar la característica de apagado automático en una
máquina virtual para programar apagados automatizados.
36
Eliminación de las máquinas virtuales sin usar
Tal vez suene obvio este consejo, pero si no usa un servicio, debe
apagarlo. No es raro encontrar sistemas de prueba de concepto o que
no son de producción que se han dejado para un proyecto que ya no
es necesario. Revise su entorno con regularidad y trabaje para
identificar estos sistemas. Apagar estos sistemas puede tener un
beneficio multifacético, permitiéndole ahorrar en costos de
infraestructura y suponiéndole, además, posibles ahorros en licencias y
operaciones.
Migrar a los servicios PaaS o SaaS
Por último, al mover cargas de trabajo a la nube, una evolución natural
es empezar con servicios de infraestructura como servicio (IaaS) y, a
continuación, moverlos a servicios de plataforma como servicio (PaaS)
según corresponda, en un proceso iterativo.
Los servicios PaaS suelen suponer ahorros sustanciales tanto en costos
de recursos como en costos operativos. El desafío consiste en que,
según el tipo de servicio, se requieren niveles de esfuerzo variables para
migrar a estos servicios desde una perspectiva de tiempo y de recursos.
Es posible que pueda migrar fácilmente una base de datos de SQL
37 Server a Azure SQL Database, pero puede suponer un esfuerzo
considerablemente mayor migrar la aplicación de varios niveles a un
contenedor o una arquitectura sin servidor. Es recomendable evaluar
de forma continua la arquitectura de las aplicaciones para determinar
si con los servicios PaaS se consigue más eficacia.
Con Azure es más fácil probar estos servicios sin demasiado riesgo. Le
ofrece la posibilidad de probar nuevos patrones de arquitectura de
forma relativamente fácil. Dicho esto, suele ser un proceso más largo y
puede que no sea útil de forma inmediata si busca resultados rápidos
desde una perspectiva de ahorro de costos. El Centro de arquitectura
de Azure es un lugar ideal para obtener ideas con las que transformar
la aplicación, así como procedimientos recomendados en una amplia
gama de arquitecturas y servicios de Azure.
Siguiente unidad: Ahorro en costos de licencia
AHORRO EN COSTOS DE
LICENCIA
Las licencias son otro aspecto que puede afectar considerablemente
al gasto en la nube. Veamos algunas maneras de reducir los costos de
licencia.
Linux frente a Windows
Muchos de los servicios de Azure que se implementan ofrecen la
opción de ejecutarse en Windows o Linux. En algunos casos, el costo
del producto puede variar según el sistema operativo que se elija. Si se
tiene elección y la aplicación no depende del sistema operativo
38
subyacente, es útil comparar los precios para determinar si se puede
ahorrar dinero.
Ventaja híbrida de Azure para Windows Server
Muchos clientes han invertido en licencias de Windows Server y les
gustaría reasignar esta inversión en Azure. La Ventaja híbrida de Azure
ofrece a los clientes el derecho a usar estas licencias para máquinas
virtuales en Azure.
Para poder optar a esta ventaja, las licencias de Windows deben estar
cubiertas por Software Assurance. También se aplicarán las directrices
siguientes:
Cada licencia de dos procesadores o cada conjunto de licencia
de 16 núcleos tiene derecho a dos instancias de hasta 8 núcleos
o a una instancia de hasta 16 núcleos.
Las licencias de Standard Edition solo se pueden usar una vez
en el entorno local o en Azure. Esto significa que no se puede
usar la misma licencia para una máquina virtual de Azure y un
equipo local.
Las ventajas de Datacenter Edition permiten el uso simultáneo
de forma local y en Azure, de modo que la licencia cubre dos
equipos con Windows.
Nota
La mayoría de los clientes normalmente cuentan con licencia por núcleo,
por lo que se usa ese modelo para el cálculo. Si tiene preguntas sobre
39
qué licencias tiene, póngase en contacto con su revendedor de licencias
o el equipo de cuentas de Microsoft.
La aplicación del beneficio es sencilla. Se puede activar y desactivar en
cualquier momento con las máquinas virtuales existentes, o bien
aplicarse durante la implementación de máquinas virtuales nuevas. La
Ventaja híbrida (especialmente cuando se combina con instancias
reservadas) puede proporcionar ahorros de licencia importantes.
Ventaja híbrida de Azure para SQL Server
La Ventaja híbrida de Azure para SQL Server ayuda a maximizar el valor
de las inversiones actuales en licencias y a acelerar el proceso de
migración a la nube. Se trata de una ventaja basada en Azure que
permite usar las licencias de SQL Server con Software Assurance para
pagar una tarifa reducida.
Puede usar esta ventaja aunque el recurso de Azure esté activo, pero la
tarifa reducida solo se aplica desde el momento en que se selecciona
en el portal. No se emite ningún crédito con carácter retroactivo.
Opciones basadas en núcleos virtuales de Azure SQL Database
Para Azure SQL Database, la Ventaja híbrida de Azure funciona del
siguiente modo:
Si tiene licencias Standard Edition por núcleo con Software
Assurance activo, puede obtener un núcleo virtual en el nivel de
servicio de uso general por cada núcleo de licencia que tenga
en el entorno local.
Si tiene licencias Enterprise Edition por núcleo con Software
Assurance activo, puede obtener un núcleo virtual en el nivel de
40 servicio Crítico para la empresa por cada núcleo de licencia que
tenga en el entorno local. Solo los clientes con licencias
Enterprise Edition pueden optar a la Ventaja híbrida de Azure
para SQL Server para el nivel de servicio Crítico para la empresa.
Si tiene licencias Enterprise Edition altamente virtualizadas por
núcleo con Software Assurance activo, puede obtener cuatro
núcleos virtuales en el nivel de servicio de uso general por cada
núcleo de licencia que tenga en el entorno local. Dicha ventaja
relativa a los núcleos virtuales es una ventaja de virtualización
única disponible solo en Azure SQL Database.
La ilustración siguiente muestra las opciones basadas en núcleos
virtuales disponibles en cada nivel de servicio con la Ventaja híbrida de
Azure para licencias de SQL Server.
Para SQL Server en Azure Virtual Machines, la Ventaja híbrida de Azure
funciona del siguiente modo:
Si tiene licencias Enterprise Edition por núcleo con Software
Assurance activo, puede obtener un núcleo de SQL Server
Enterprise Edition en Azure Virtual Machines por cada núcleo
41 de licencia que tenga en el entorno local.
Si tiene licencias Standard Edition por núcleo con Software
Assurance activo, puede obtener un núcleo de SQL Server
Standard Edition en Azure Virtual Machines por cada núcleo de
licencia que tenga en el entorno local.
Tal disposición de las licencias puede suponer un impacto significativo
en el gasto de Azure con cargas de trabajo de SQL Server.
Uso de ofertas de suscripción de Desarrollo/pruebas
Las ofertas Desarrollo/pruebas - Enterprise y Desarrollo/pruebas -
Pago por uso son una de las ventajas que se pueden aprovechar para
ahorrar costos en los entornos que no sean de producción. Esta ventaja
proporciona varios descuentos, especialmente para las cargas de
trabajo de Windows, lo que elimina los gastos de licencia y solo se
cobra la tarifa de Linux para las máquinas virtuales. Esto también
incluye SQL Server y cualquier otro software de Microsoft cubierto por
una suscripción de Visual Studio (anteriormente conocida como
MSDN).
Hay algunos requisitos para esta ventaja: uno es que solo es para las
cargas de trabajo que no sean de producción, y otro que los usuarios
de estos entornos (excepto los evaluadores) deben estar cubiertos por
una suscripción de Visual Studio. En resumen, para las cargas de
trabajo que no sean de producción, esta ventaja permite ahorrar en las
cargas de trabajo de Windows, SQL Server y otras máquinas virtuales
de Microsoft.
Para obtener detalles completos de cada oferta, consulte los vínculos
anteriores. Si es cliente con un Contrato Enterprise, podría aprovechar
42
la oferta Desarrollo/pruebas - Enterprise y, si es cliente sin un Contrato
Enterprise que usa cuentas de pago por uso, podría aprovechar la
oferta Desarrollo/pruebas - Pago por uso.
Traiga su propia licencia de SQL Server
Si es un cliente con un contrato Enterprise y ya ha invertido en licencias
de SQL Server y se han liberado como parte del traslado de los recursos
a Azure, puede aprovisionar imágenes del tipo Traiga su propia
licencia (BYOL) desde Azure Marketplace, lo que permite aprovechar
las ventajas de estas licencias sin usar y reducir el costo de la máquina
virtual de Azure. Siempre ha sido posible usar dichas licencias mediante
el aprovisionamiento de una máquina virtual de Windows y la
instalación manual de SQL Server, pero este proceso simplifica la
creación gracias al aprovechamiento de imágenes con certificación de
Microsoft. Busque BYOL en Marketplace para encontrar estas
imágenes.
43
Importante
Se necesita una suscripción al contrato Enterprise para usar estas
imágenes BYOL certificadas.
Uso de SQL Server Developer Edition
Muchos usuarios desconocen que SQL Server Developer Edition es un
producto gratuito para uso de no producción. Developer Edition tiene
las mismas características que Enterprise Edition, pero, para las cargas
de trabajo que no sean de producción, se puede ahorrar
considerablemente en los costos de licencia.
Busque imágenes de SQL Server Developer Edition en Azure
Marketplace y úselas con fines de desarrollo o pruebas para eliminar el
costo adicional de SQL Server en estos casos.
Sugerencia
Para obtener toda la información sobre las licencias, vea
la documentación de la guía de precios.
Uso de tamaños de instancia restringidos para las cargas de trabajo
de base de datos
Muchos clientes tienen elevados requisitos de memoria,
almacenamiento o ancho de banda de E/S, pero bajos recuentos de
núcleos de CPU. Debido a esta solicitud popular, Microsoft ha puesto
los tamaños de máquina virtual más populares (DS, ES, GS y MS) a
44
disposición como tamaños nuevos que restringen el número de vCPU
a la mitad o un cuarto del tamaño de la máquina virtual original,
manteniendo la misma memoria, almacenamiento y ancho de banda
de E/S.
Tamaño de vCP Memo Disc Rendimie Coste Costo
máquina U ria os nto de por año total
virtual máx. E/S máx. de la por
licencia año
de SQL (proce
Server so +
Enterpr licenci
ise as)
Standard_DS 16 112 32 51 200
14v2 GB IOPS o
768 MB/s
Standard_DS 4 112 32 51 200 75 % 57 %
14-4v2 GB IOPS o menos menos
768 MB/s
Standard_GS 32 448 64 80 000
5 IOPS o 2
GB/s
Standard_GS 8 448 64 80 000 75 % 42 %
5-8 IOPS o 2 menos inferio
GB/s r
45
Dado que los productos de base de datos como SQL Server y Oracle
cuentan con licencia por CPU, los clientes pueden reducir los costos de
licencia en un 75 % y seguir manteniendo el alto rendimiento que su
base de datos requiere.
RESUMEN
Se ha descrito la calculadora de precios de Azure y cómo se puede
usar para estimar los costos en Azure y comparar los precios entre las
distintas ofertas de servicio. Hemos examinado las opciones de ahorro,
cómo exportar las estimaciones de precios y las herramientas de Azure
disponibles para mantener el control del gasto en la nube.
• Azure Advisor proporciona recomendaciones en muchas áreas,
incluido el costo.
• Azure Cost Management permite generar informes y
proporciona información de facturación, para que pueda
visibilizar dónde gasta su dinero.
46 Después analizamos procedimientos recomendados para ayudarle a
ahorrar dinero en infraestructura y licencias.
RESUMEN Y RECURSOS
Aplicar las capacidades de IA a su negocio es esencial para acelerar su
transformación digital. La minería de conocimiento y el aprendizaje
automático lo ayudan a comprender mejor y utilizar sus datos. Los
servicios cognitivos y los bots pueden mejorar las aplicaciones con
modelos existentes o personalizados. A medida que Microsoft explora
posibilidades adicionales con la tecnología de inteligencia artificial,
también invertimos en abordar desafíos éticos y crear inteligencia
artificial para siempre.
1 Ahora que ha revisado este módulo, debería poder:
• Comprenda la visión de Microsoft para Azure AI.
• Identifique formas en que puede usar la IA de Azure.
• Defina qué es Azure AI, cómo funciona y cómo está construido.
Para llevar clave
Estas son las tres conclusiones principales de este módulo:
1. Azure Cognitive Search aplica las capacidades de IA a la minería
de conocimiento para descubrir información de grandes
cantidades de datos.
2. Las herramientas de Azure Machine Learning permiten a los
desarrolladores desarrollar e implementar rápidamente
modelos de inteligencia artificial que utilizan datos existentes,
sin ser reprogramados explícitamente, para pronosticar
comportamientos, resultados y tendencias futuros.
3. Microsoft usa Azure Cognitive Services (aplicaciones AI) y Azure
Bot Services (agentes AI) para infundir capacidades AI en
aplicaciones y servicios web y móviles.
Recursos
Usa estos recursos para descubrir más.
Sugerencia
2 Para abrir un hipervínculo, haga clic con el botón derecho y elija "Abrir
en una pestaña o ventana nueva". De esa manera, puede consultar el
recurso y volver fácilmente al módulo.
• Página del producto Azure AI
• Estudios de caso de Azure
• Blog de Microsoft Azure
• Canal 9 AI Show
• AI para bien
• Ver aplicación de IA
• El libro computado del futuro
• FATE: Justicia, responsabilidad, transparencia y ética en la IA
Historias de clientes de AI:
• Centro médico del hospital de niños de Cincinnati
• Elastacloud
• Royal Dutch Shell
• Busque más historias de clientes en [Link]
3
La seguridad es una responsabilidad compartida
El primer cambio que hará es pasar de centros de datos locales a
infraestructura como servicio (IaaS). Mediante IaaS está aprovechando
el servicio de nivel inferior y pidiéndole a Azure que cree máquinas
virtuales y redes virtuales. En este nivel, todavía es responsabilidad suya
aplicar revisiones y proteger los sistemas operativos y el software, así
como configurar la red para que sea segura. En Contoso Shipping, está
sacándole el máximo partido a IaaS cuando empieza a usar las
máquinas virtuales de Azure en lugar de los servidores físicos locales.
Además de las ventajas operativas, puede conseguir la ventaja de
seguridad que supone externalizar lo relacionado con la protección de
los elementos físicos de la red.
1 El cambio a la plataforma como servicio (PaaS) externaliza varios
problemas de seguridad. En este nivel, Azure se hace cargo del sistema
operativo y de la mayoría del software principal como, por ejemplo, los
sistemas de administración de bases de datos. Todo se actualiza con
las revisiones de seguridad más recientes y se puede integrar con Azure
Active Directory para los controles de acceso. PaaS también incluye
muchas ventajas operativas. En lugar de crear infraestructuras y
subredes completas para los entornos de forma manual, puede
"seleccionar y hacer clic" en Azure Portal o ejecutar scripts
automatizados para activar o desactivar sistemas protegidos y
complejos, y para escalarlos según sea necesario. Contoso Shipping usa
Azure Event Hubs para la ingesta de datos de telemetría de drones y
camionetas —, así como una aplicación web con un back-end de Azure
Cosmos DB con sus aplicaciones móviles —; estos son ejemplos de
PaaS.
Con el software como servicio (SaaS), puede externalizar prácticamente
todo. SaaS es un software que se ejecuta con una infraestructura de
Internet. El proveedor controla el código, pero está configurado para
que lo use el cliente. Al igual que muchas empresas, Contoso Shipping
usa Office 365, que es un buen ejemplo de SaaS.
Para todos los tipos de implementación de nube, es propietario de los
datos y las identidades. Es responsable de ayudar a proteger los datos
y las identidades, los recursos locales y los componentes en la nube
que controla (lo que varía según el tipo de servicio).
Independientemente del tipo de implementación, siempre conserva la
responsabilidad de los siguientes elementos:
Datos
Puntos de conexión
Cuentas
Administración de acceso
3
ENTRENAMIENTO DE
REDES NEURONALES CON
VELOCIDADES DE
APRENDIZAJE Y
VECTORES "ONE-HOT"
Cuando los datos se desplazan a través de los bordes, se multiplican
por un valor denominado peso. Cada borde tiene un peso diferente
que comienza como un valor aleatorio. El valor de los pesos puede ser
1 positivo o negativo. Los pesos se optimizan mediante descenso de
gradiente para proporcionar resultados precisos.
Recordatorio de las funciones de costos
El costo es la métrica de error y se quiere obtener un valor lo
más bajo posible.
El costo se determina con la función de costo.
Cada algoritmo tiene diferentes funciones de costo.
Recordatorio del descenso de gradiente
El descenso de gradiente optimiza los modelos de IA para
minimizar su costo mediante cálculo.
No es necesario que entienda el cálculo.
Velocidad de aprendizaje
Mediante el cálculo, el descenso de gradiente cambia repetidamente
las variables que usan los algoritmos para reducir la tasa de errores.
Cuánto cambian las variables cada vez se denomina velocidad de
aprendizaje.
2
Las velocidades de aprendizaje son especialmente importantes para los
modelos complejos: si una velocidad de aprendizaje es demasiado
reducida, el entrenamiento tardará mucho tiempo. Si es demasiado
grande, es improbable que el entrenamiento llegue a ser preciso.
En la práctica, es recomendable buscar una velocidad de aprendizaje
adecuada, en lugar de dedicar tiempo a intentar encontrar una
velocidad óptima. Una velocidad de aprendizaje adecuada es lo
suficientemente grande para que el modelo se entrene de forma eficaz,
pero no tan reducida que impida encontrar un valor mínimo. Es
absolutamente aceptable buscar una velocidad de aprendizaje
adecuada mediante prueba y error.
Uso de una categoría como característica: vectores "one-hot"
A menudo puede tener una categoría en el conjunto de datos que
quiera usar como
una característica,
como un país de
origen de productos.
3 Para usar una
categoría como una
característica,
represente la
categoría como
un vector one-
hot (de acceso frecuente).
Un vector "one-hot" es un vector (lista) en el que cada posición de la
lista representa una categoría distinta. El vector se rellena con varios 0
y un 1. En el ejemplo anterior, se representan cuatro animales, donde
un 1 en la primera posición representa un gato y un 1 en la cuarta
posición representa un conejo. Ahora la categoría la puede usar un
modelo de aprendizaje automático.
A continuación verá un ejercicio en el que codificará una red neuronal
simple.
4
CLASIFICACIÓN BINARIA
CON REGRESIÓN
LOGÍSTICA
En el aprendizaje automático, cuando se predice la categoría de un
ejemplo, se etiqueta el ejemplo con una categoría. Las etiquetas no
tienen que ser binarias: una etiqueta puede ser una raza de un perro o
la especie de un árbol. Los filtros de correo no deseado son otro
ejemplo de clasificación (correo no deseado o no).
Cómo predicen etiquetas los modelos de clasificación
1
Para crear un modelo de clasificación, es necesario usar ejemplos de
entrenamiento ya etiquetados. El modelo aprende de estos ejemplos
etiquetados y puede predecir etiquetas de nuevos ejemplos sin
etiquetar.
Por tanto, si se quieren predecir razas de perros, se podría crear un
conjunto de datos con las características de los perros (altura, peso,
color del pelo, forma de las orejas, etc.) y etiquetar los ejemplos. Si se
etiquetan suficientes ejemplos de un conjunto de datos de perros lo
suficientemente grande, se puede crear un modelo de Machine
Learning capaz de predecir la raza de cualquier perro nuevo que se
encuentre.
Entrenamiento
En los ejercicios, los modelos creados se "entrenan" automáticamente
para mejorar su precisión.
El diagrama anterior muestra un algoritmo que intenta encontrar la
línea que mejor separa los puntos azules de los verdes. Como puede
ver arriba, el algoritmo cambia sus variables (el punto inicial y el
gradiente de la línea) hasta que encuentra la línea que lo hace con más
precisión. Este proceso de ajuste de estas variables se
denomina entrenamiento. Una vez que el algoritmo ha completado el
entrenamiento y se puede usar para predecir nuevos ejemplos, se
denomina modelo.
El entrenamiento puede funcionar de muchas maneras diferentes. Un
método habitual es empezar con una estimación aleatoria (en este
caso, una línea aleatoria) y ver si los ajustes (por ejemplo, un gradiente
más o menos pronunciado) ofrecen un mejor resultado. Este proceso
se repite hasta que los ajustes no mejoran el modelo, hasta que las
mejoras de un cambio son pequeñas o hasta que se alcanza algún tipo
de límite de intentos.
Regresión logística
La regresión logística es un algoritmo de clasificación binaria, lo que
significa que predice dos categorías (por ejemplo, sí o no, ganar o
perder, etc.). No se deje engañar por que "regresión" aparezca en el
nombre, esto significa simplemente que predice la probabilidad de una
categoría.
En el gráfico siguiente se compara la satisfacción del cliente con
distintos porcentajes de cacao mediante la regresión logística.
3
La regresión logística puede trazar una curva que ayude a predecir la
probabilidad de que un cliente esté satisfecho según el porcentaje de
cacao de la tableta de chocolate. En segundo plano, la regresión
logística usa una eficaz ecuación que puede trazar curvas complejas
para separar de forma precisa los ejemplos en categorías.
La regresión logística es una excelente introducción sencilla a los
algoritmos de clasificación. Igual que las variaciones de la regresión
lineal de las que se ha hablado, las variaciones de la regresión logística
pueden modelar algunos datos bastante complicados e incluso
predecir varias categorías.
A continuación se propone un ejercicio de programación: se va a usar
la regresión logística para predecir qué equipo va a ganar un partido
de fútbol.
4
CLASIFICACIÓN BINARIA
CON REGRESIÓN
LOGÍSTICA
En el aprendizaje automático, cuando se predice la categoría de un
ejemplo, se etiqueta el ejemplo con una categoría. Las etiquetas no
tienen que ser binarias: una etiqueta puede ser una raza de un perro o
la especie de un árbol. Los filtros de correo no deseado son otro
ejemplo de clasificación (correo no deseado o no).
Cómo predicen etiquetas los modelos de clasificación
1
Para crear un modelo de clasificación, es necesario usar ejemplos de
entrenamiento ya etiquetados. El modelo aprende de estos ejemplos
etiquetados y puede predecir etiquetas de nuevos ejemplos sin
etiquetar.
Por tanto, si se quieren predecir razas de perros, se podría crear un
conjunto de datos con las características de los perros (altura, peso,
color del pelo, forma de las orejas, etc.) y etiquetar los ejemplos. Si se
etiquetan suficientes ejemplos de un conjunto de datos de perros lo
suficientemente grande, se puede crear un modelo de Machine
Learning capaz de predecir la raza de cualquier perro nuevo que se
encuentre.
Entrenamiento
En los ejercicios, los modelos creados se "entrenan" automáticamente
para mejorar su precisión.
El diagrama anterior muestra un algoritmo que intenta encontrar la
línea que mejor separa los puntos azules de los verdes. Como puede
ver arriba, el algoritmo cambia sus variables (el punto inicial y el
gradiente de la línea) hasta que encuentra la línea que lo hace con más
precisión. Este proceso de ajuste de estas variables se
denomina entrenamiento. Una vez que el algoritmo ha completado el
entrenamiento y se puede usar para predecir nuevos ejemplos, se
denomina modelo.
El entrenamiento puede funcionar de muchas maneras diferentes. Un
método habitual es empezar con una estimación aleatoria (en este
caso, una línea aleatoria) y ver si los ajustes (por ejemplo, un gradiente
más o menos pronunciado) ofrecen un mejor resultado. Este proceso
se repite hasta que los ajustes no mejoran el modelo, hasta que las
mejoras de un cambio son pequeñas o hasta que se alcanza algún tipo
de límite de intentos.
Regresión logística
La regresión logística es un algoritmo de clasificación binaria, lo que
significa que predice dos categorías (por ejemplo, sí o no, ganar o
perder, etc.). No se deje engañar por que "regresión" aparezca en el
nombre, esto significa simplemente que predice la probabilidad de una
categoría.
En el gráfico siguiente se compara la satisfacción del cliente con
distintos porcentajes de cacao mediante la regresión logística.
3
La regresión logística puede trazar una curva que ayude a predecir la
probabilidad de que un cliente esté satisfecho según el porcentaje de
cacao de la tableta de chocolate. En segundo plano, la regresión
logística usa una eficaz ecuación que puede trazar curvas complejas
para separar de forma precisa los ejemplos en categorías.
La regresión logística es una excelente introducción sencilla a los
algoritmos de clasificación. Igual que las variaciones de la regresión
lineal de las que se ha hablado, las variaciones de la regresión logística
pueden modelar algunos datos bastante complicados e incluso
predecir varias categorías.
A continuación se propone un ejercicio de programación: se va a usar
la regresión logística para predecir qué equipo va a ganar un partido
de fútbol.
4
INTRODUCCIÓN A LAS
CNN
Las redes neuronales convolucionales (CNN) son una clase de redes
neuronales profundas que se usan con más frecuencia en aplicaciones
de visión informática.
Convolucional hace referencia al procesamiento previo de los datos
que la red realiza de forma automática. Tradicionalmente esta tarea la
han programado los científicos de datos. La red neuronal puede
aprender a realizar el procesamiento previo y aplicar filtros para tareas
como la detección de bordes.
1
En la imagen anterior, las capas convolucionales preparan los datos de
la imagen antes de que la analice una red neuronal grande.
El procesamiento previo permite transformar los datos a un estado en
el que la red neuronal pueda analizarlos con más facilidad y
proporcionar resultados muy precisos.
You Only Look Once: YOLO
YOLO es un popular algoritmo de CNN escrito en Python que se usa
para la detección de objetos en tiempo real. YOLO usa una sola red
neuronal en una imagen, para predecir rectángulos delimitadores y
probabilidades de clase.
Al tener toda la canalización de detección en una sola red neuronal,
YOLO cuenta con importantes ventajas de rendimiento. YOLO puede
realizar un análisis preciso de más de 9000 categorías de objetos
diferentes en tiempo real.
YOLO puede analizar todos los fotogramas de la mayoría de las
cámaras. Puede lograr el equilibrio si aumenta la velocidad del análisis
y disminuye ligeramente la precisión. Pero el rendimiento de YOLO es
bastante correcto si el análisis es de entre 30 y 60 imágenes por
segundo.
Softmax
Softmax es una función de activación que se usa en redes neuronales.
Las CNN suele usar softmax en las capas finales de un modelo de
clasificación porque genera probabilidades para varias clases. Esto ha
demostrado ser correcto para las clasificaciones multiclase en las que
se usan CNN y otras redes neuronales profundas.
Como puede ver más arriba, Softmax genera varias probabilidades con
un máximo de 1. La probabilidad de que los datos que ha analizado
softmax representen un león se proporciona como 0,98, mientras que
el siguiente resultado más próximo es un lobo (0,008), por lo que se
predecirá que la imagen original es un león.
Conjuntos de validación
El uso de un conjunto de datos de aprendizaje de gran tamaño puede
llevar mucho tiempo y recursos, solo para averiguar al final del
entrenamiento que se ha producido un sobreajuste y que tiene poca
precisión en el conjunto de prueba. Los conjuntos de validación se usan
junto con el conjunto de entrenamiento durante el entrenamiento, en
lugar de los conjuntos de pruebas que se usan después del
entrenamiento.
El conjunto de validación proporciona un resultado no sesgado que el
algoritmo puede usar para detectar el sobreajuste mientras se produce.
Si el error de los conjuntos de validación comienza a aumentar en una
cantidad concreta, es posible que se deba al sobreajuste, y el
entrenamiento se puede detener. Este proceso se denomina detención
anticipada.
4
El tamaño del conjunto de validación varía en función de la aplicación.
Un buen punto de partida consiste en asignar el 60 % de los datos a
un conjunto de entrenamiento, un 20 % a un conjunto de validación y
un 20 % a un conjunto de prueba.
A continuación, creará la primera CNN en Azure Notebooks, con
conjuntos de validación y softmax.
INTRODUCCIÓN A LAS
RNN
Algunos problemas pueden requerir que se analicen los datos
recientes para facilitar el análisis actual, por ejemplo el de la escritura a
mano conectada.
Una red neuronal recurrente (RNN) es una clase de red neuronal que
destaca cuando los datos se pueden tratar como una secuencia, como
texto, música,
reconocimiento de voz,
escritura a mano conectada
1
o datos durante un período
de tiempo.
Una RNN puede analizar o
predecir una palabra en función de las palabras anteriores de una
oración, lo que permite una conexión entre la información anterior y la
actual. Las RNN son redes neuronales con bucles y permiten almacenar
temporalmente los datos para ayudar con el análisis posterior.
Las RNN contienen celdas, donde se almacena el estado adicional. Este
estado adicional es útil porque la RNN puede recordar información
importante que se usa para las predicciones, como el pasado. Si al
principio de una oración el usuario ha escrito "Nos "íbamos" a
marchar", una RNN puede recordar que el verbo "íbamos" está en
pasado dentro de una unidad, por lo que podría representar salida
"Íbamos a volar a Canadá" en lugar de "Íbamos a volado a Canadá".
Las RNN tienen problemas cuando hay una gran separación entre los
datos anteriores relevantes y los datos actuales. Para solucionar este
problema, los profesionales de la inteligencia artificial suelen usar dos
tipos similares de RNN: redes de memoria a corto y largo
plazo (LSTM) y redes de unidades recurrentes cerradas (GRU).
LSTM
2
Las LSTM son un tipo especial de RNN que mejora drásticamente la
capacidad del modelo para conectar los datos anteriores a los actuales
cuando hay una separación larga. Por ejemplo, una RNN estándar
podría tener problemas para predecir con precisión la frase "En cuanto
a la composición musical y un buen estilo general, mi artista favorito
tendría que ser Mozart", porque puede haber una gran separación
entre la información sobre el contexto de la palabra artista: es posible
que el contexto haya sido antes sobre un pintor.
Las LSTM son bastante complejas en segundo plano, de modo que por
ahora no se abordarán los detalles más profundos. Mientras que una
RNN normal contiene una sola capa por celda, las LSTM contienen
cuatro capas que interactúan entre ellas.
GRU
Con las GRU, lo que necesita saber por ahora es que tienen algunas
ventajas con respecto a las redes LSTM para los problemas de
secuencia porque son más sencillas. El tiempo de entrenamiento
disminuye con la simplificación, lo que permite mejores resultados en
algunas circunstancias porque el entrenamiento es más eficaz en
general.
Resumen
En esta sección, se ha descrito lo siguiente:
Red neuronal recurrente (RNN): una clase de red neuronal
que destaca en el análisis y la predicción de los datos de una
secuencia.
LSTM: una variación de las RNN muy adecuada para conectar
datos anteriores a datos actuales en los que hay una separación
larga.
GRU: una variación de LSTM más simple, lo que significa una
disminución en el tiempo de entrenamiento, lo que en
ocasiones puede ser bastante beneficioso.
A continuación se creará un modelo de RNN en Azure Notebooks.
4
EJERCICIO: MÁQUINAS DE
VECTORES DE SOPORTE
AVANZADAS
Vamos a ver lo fácil que es crear un modelo de SVM y cambiar su
kernel. Vamos a usar modelos de SVM para clasificar dos tipos de
proteínas en función de sus distintas características.
En los ejercicios de este módulo se usa Azure Notebooks. Es un recurso
de uso gratuito.
Si los vínculos siguientes no funcionan, tiene que configurar una cuenta
1
gratuita de Azure Notebooks y clonar el proyecto para este módulo.
Vea el repositorio de Python en GitHub o el repositorio de R en
GitHub para obtener instrucciones para comenzar.
1. Los usuarios de Python deben ir a la biblioteca.
2. Seleccione el ejercicio 07. Advanced SVMs - [Link].
3. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
4. Los usuarios de R deben ir a la biblioteca.
5. Seleccione el ejercicio 07. Advanced SVMs - [Link].
6. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
RESUMEN
Enhorabuena. Ha terminado la introducción al módulo de
clasificación. Dedique un momento a leer este resumen de lo tratado:
• Clasificación: asignación de etiquetas a datos nuevos. Por
ejemplo, predecir si un futuro partido de fútbol se va a ganar o
perder.
• Regresión logística: algoritmo de clasificación común que
genera una línea de mejor ajuste para datos de eventos
anteriores.
2
o Se puede usar para dar la probabilidad de que algo sea
cierto o de que se produzca un evento.
• La IA suele aprender de forma iterativa: a partir de una mala
aproximación y mediante el cambio de variables (como la
inclinación de la línea) hasta que un modelo se hace preciso.
o El mundo real es muy variable y, por tanto, no se puede
esperar que los modelos sean 100 % precisos.
• Máquinas de vectores de soporte: algoritmo de clasificación
que encuentra un hiperplano que separa puntos de datos de
clases diferentes entre sí.
o En 2D esto es como intentar dibujar una línea, mientras
que en 3D es como intentar colocar un plano 2D.
o Hay distintos métodos para ajustar hiperplanos.
Hemos aprendido que durante el entrenamiento, la IA sabe cómo de
bien lo está haciendo al comparar sus predicciones con la realidad
mediante una función de costo. Minimizar este costo significa
aumentar la precisión. Para ello, la IA suele usar el "descenso de
gradiente": un procedimiento en el que se realizan pequeños cambios
en los parámetros de un modelo cada vez que se ejecuta. Cada vez los
cambios realizados dan lugar a un rendimiento ligeramente mejor, y el
proceso se repite hasta que no se esperan más mejoras.
También hemos aprendido todo sobre las pruebas de los modelos.
Recuerde que un conjunto de datos grande normalmente se divide en
datos para entrenar el modelo y datos para probarlo una vez
entrenado. Hemos aprendido que es posible que los modelos tengan
3
un "ajuste deficiente" (que tengan un rendimiento deficiente en todos
los conjuntos de datos) o que tengan un "sobreajuste" (que tengan un
buen rendimiento en los datos de entrenamiento, pero uno malo en
los datos de prueba). Recuerde, a veces puede ser mejor aceptar un
pequeño error que ser muy estricto y sobreajustar los datos de
entrenamiento.
Ahora que ha revisado este módulo, debe ser capaz de:
• Definir una clasificación.
• Crear modelos de máquinas de vectores de soporte y regresión
logística.
• Describir en qué consisten el entrenamiento, el error irreducible
y el error de Bayes.
En la siguiente sección se habla de una de las áreas más interesantes
de la tecnología en este momento: las redes neuronales.
4
1
Explore lo que Power BI
puede hacer por usted
BIENVENIDA
Como consumidor, trabajará en el servicio Power BI para revisar e
interactuar con el contenido que se ha compartido con usted. En este
módulo se proporciona la información básica que necesita para
trabajar de manera eficiente en el servicio Power BI.
Estos son los objetivos de aprendizaje de este módulo:
Comprender la terminología y los conceptos básicos del
servicio Power BI.
2 Buscar contenido en los paneles, informes y aplicaciones.
Ver y exportar datos de informes y paneles.
Ver los filtros que se usan en un informe.
Explicar la relación entre los paneles y los informes,
visualizaciones e iconos.
Mostrar los menús de acción para los iconos y los detalles de
las visualizaciones de informes.
Contraer y expandir el panel de navegación y los paneles de
filtros y marcadores.
Suscribirse a un panel y a un informe.
Establecer una alerta de datos.
Colaborar mediante los comentarios de los paneles.
Requisitos previos
Acceder al servicio Power BI
¿Qué puedo hacer con el servicio Power BI como consumidor?
12 min
Ver el contenido en el servicio Power BI 10 min
Explorar con paneles, informes y aplicaciones en Power BI 15
min
Colaborar y compartir en Power BI 15 min
Buscar y ver paneles e informes 7 min
Comprobación de conocimientos 5 min
Resumen 5 min
3
¿Qué puedo hacer con el
servicio Power BI como
consumidor?
Todos vivimos en una cultura de datos donde las decisiones
empresariales se basan en hechos, no en opiniones. Necesitamos datos
que nos ayuden a tomar estas decisiones.
4
1
Obtención de datos con
Power BI Desktop
BIENVENIDA
¿Cómo puede buscar, recopilar y limpiar datos de distintos orígenes?
Power BI es una herramienta que permite extraer conclusiones de los
datos. Aprenderá trucos para facilitar la recopilación de datos.
En este módulo, aprenderá a:
• Explorar las herramientas y características centradas en los
datos de Power BI.
• Explorar maneras de encontrar datos.
2
Requisitos previos
Acceso a Power BI Desktop
Información general de Power BI Desktop 5 min
Exploración de Power BI Desktop 10 min
Conexión a orígenes de datos 10 min
Obtención de datos de Excel 5 min
Transformación de los datos para incluirlos en un informe 10
min
Combinación de datos de varios orígenes 10 min
Limpieza de los datos para incluirlos en un informe 10 min
Comprobación de conocimientos 10 min
Resumen 5 min
3
Información general de
Power BI Desktop
Power BI Desktop es una aplicación gratuita para PC que le permite
recopilar, transformar y visualizar sus datos. En este módulo, aprenderá
a buscar y recopilar datos de distintos orígenes y a limpiar o
transformar esos datos. También aprenderá trucos para facilitar la
recopilación de datos.
Power BI Desktop y el servicio Power BI trabajan en conjunto. Puede
crear informes y paneles en Power BI Desktop y después publicarlos en
el servicio Power BI para que otros usuarios los utilicen.
4
Estas son las tareas que completará en este módulo:
Nota
Para seguir los ejemplos de los vídeos y en esta página, descargue la base
de datos de Access de ejemplo aquí e impórtelo en Power BI Desktop
(Obtener datos > Base de datos > Base de datos de Access).
Puede conectar Power BI Desktop a muchos tipos de orígenes de
datos, como bases de datos locales, libros de Microsoft Excel y servicios
en la nube. Actualmente, hay aproximadamente 60 conectores
específicos para Power BI para servicios en la nube como GitHub y
Marketo. También se puede conectar a orígenes genéricos a través de
XML, CSV, texto y ODBC. Power BI incluso extraerá datos tabulares
directamente desde la dirección URL de un sitio web.
Establecer conexión con los datos
1
Cuando inicia Power BI Desktop, puede elegir Obtener datos en la
cinta de opciones de la pestaña Inicio.
En Power BI Desktop, hay disponibles varios tipos de orígenes de
datos. Seleccione un origen para establecer una conexión. En función
de la selección, se le pedirá que busque el origen en su equipo o en la
red. Es posible que se le pida iniciar sesión en un servicio para
autenticar su solicitud.
Elegir datos para importar
Una vez que se conecte, la primera ventana que verá será la del
Navegador. La ventana Navegador muestra las tablas o entidades
del origen de datos y, si selecciona una tabla o una entidad, tendrá
una vista previa del contenido. Luego puede importar de inmediato
las tablas o entidades seleccionadas mediante la selección de Cargar
o puede seleccionar Transformar datos para transformar los datos y
limpiarlos antes de la importación.
Una vez que seleccione las tablas que quiere incluir en
Power BI Desktop, seleccione el botón Cargar. Es posible que quiera
realizar cambios en esas tablas antes de poder cargarlas. Por ejemplo,
si solo quiere un subconjunto de clientes o un país o una región
específicos, seleccione el botón Editar y filtre los datos antes de
cargarlos.
Independientemente del tipo de datos que necesite, es probable que
encuentre una manera de importarlos en Power BI Desktop.
Obtención de datos de
Excel
Es probable que haya usado Microsoft Excel para crear o ver informes
o para crear gráficos circulares u otros objetos visuales. Obtener datos
de Excel y llevarlos a Power BI es un proceso sencillo.
En esta unidad, llevará libros de Excel a Power BI.
4
Nota
Para seguir los ejemplos de los vídeos y en esta página, descargue la
base de datos de Access de ejemplo aquí e impórtelo en Power BI
Desktop (Obtener datos > Base de datos > Base de datos de Access). La
carpeta FactData1 está aquí.
Adición de más orígenes
de datos
Para agregar más orígenes en un informe existente, en la cinta de
opciones Inicio, seleccione Editar consultas y, luego, seleccione
Nuevo origen. Puede usar muchos orígenes de datos
potenciales en Power BI Desktop, incluidas carpetas. Al
conectarse a una carpeta, puede importar datos de varios
1
archivos Excel o CSV a la vez.
El Editor de Power Query le permite aplicar filtros a los datos. Por
ejemplo, al seleccionar la flecha desplegable junto a una
columna, se abre una lista de comprobación de los filtros de
texto. Borrar un filtro permite quitar los valores del modelo antes
de cargar los datos en Power BI.
Importante
2 El filtrado en el Editor de Power Query cambia los datos que se van
a cargar en Power BI. Más adelante, cuando aplique los filtros en
la vista Datos o en la vista Informe, esos filtros solo se aplicarán a
lo que se ve en los objetos visuales, pero no cambiarán el conjunto
de datos subyacente.
Combinar y anexar consultas
También es posible combinar y anexar consultas. En otras
palabras, Power BI extrae los datos que selecciona de varias
tablas o archivos a una tabla única. Use la herramienta Anexar
consultas para agregar los datos de una tabla nueva a una
consulta existente. Power BI Desktop intenta coincidir con las
columnas de sus consultas, lo que luego puede ajustar según sea
necesario en el Editor de Power Query.
3
Escribir consultas personalizadas
Puede usar la herramienta Agregar columna personalizada para
escribir expresiones de consulta personalizadas nuevas con el
poderoso lenguaje M.
Para más información, consulte Tutorial: Dar forma a los datos y
combinarlos en Power BI Desktop .
Limpieza de los datos para
incluirlos en un informe
Si bien Power BI puede importar sus datos desde prácticamente
cualquier origen, sus herramientas de visualización y modelado
funcionan mejor con los datos en columna. En algunas ocasiones, los
datos no tendrán el formato de columna simple, que es lo que suele
pasar con las hojas de cálculo de Excel.
En esta unidad, limpiará los datos en columnas con el Editor de
Power Query.
4
1
Modelado de datos en
Power BI
BIENVENIDA
Conecte Power BI a varios orígenes de datos para crear informes.
Defina la relación entre los orígenes de datos.
En este módulo, aprenderá a:
Crear relaciones entre orígenes de datos
Crear un campo con columnas calculadas
Optimizar datos ocultando campos y ordenando datos de
visualización
2 Crear una medida para realizar cálculos de los datos
Usar una tabla calculada para crear una relación entre dos
tablas
Dar formato a los datos basados en tiempo para poder explorar
en profundidad para obtener más detalles
Requisitos previos
Acceso a Power BI Desktop
Introducción al modelado de datos 5 min
Administración de las relaciones de datos 8 min
Creación de columnas calculadas 7 min
Optimización de los modelos de datos 8 min
Creación de medidas calculadas 15 min
Creación de tablas calculadas 4 min
Exploración de datos basados en tiempo 5 min
Comprobación de conocimientos 10 min
Resumen 5 min
3
Introducción al modelado
de datos
A menudo, se conectará a varios orígenes de datos para crear informes.
Todos esos datos deben funcionar de manera conjunta para crear un
informe coherente. Por modelado se entiende preparar los datos
conectados para usarlos.
Tareas de este módulo:
Crear relaciones entre orígenes de datos
Crear un campo con columnas calculadas
4 Optimizar datos ocultando campos y ordenando datos de
visualización
Crear una medida para realizar cálculos de los datos
Usar una tabla calculada para crear una relación entre dos
tablas
Dar formato a los datos basados en tiempo para poder explorar
en profundidad para obtener más detalles
Nota
Para seguir los ejemplos de los vídeos y en esta página, descargue
la base de datos de Access de ejemplo aquí e impórtelo en
Power BI Desktop (Obtener datos > Excel).
Ocultación de campos
Para ocultar un campo en el panel Campos de Power BI Desktop,
haga clic con el botón derecho en la columna y seleccione
Ocultar. Los campos ocultos no se eliminan. Si ha usado un
campo oculto en algún objeto visual existente, los datos seguirán
estando allí; lo único que sucede es que el campo oculto no
aparece en el panel Campos.
1
Si ve tablas en la vista Modelo, los campos ocultos aparecen
atenuados. Los datos de esas tablas seguirán estando disponibles
y siendo parte del modelo. Para volver a mostrar cualquier campo
que haya ocultado, haga clic con el botón derecho en el campo
y seleccione Mostrar.
Ordenación de los datos de visualización por otro
campo
La herramienta Ordenar por columna, disponible en la pestaña
Modelado, resulta útil para garantizar que los datos van a
mostrarse en el orden previsto.
Como ejemplo común, los datos que incluyen el nombre del mes
se ordenan alfabéticamente de forma predeterminada; así, por
ejemplo, agosto aparecería antes de febrero.
En este caso, el problema se puede solucionar si selecciona el
campo en la lista Campos, selecciona Ordenar por columna en
la pestaña Modelado y, luego, elige un campo por el que
ordenar. La opción de ordenación por categoría NroMes
ordenará los meses del modo previsto.
Establecer el tipo de datos de un campo es otra forma de
optimizar la información para poder tratarla correctamente. Para
cambiar un tipo de datos desde el lienzo del informe, seleccione
la columna en el panel Campos y, después, use el menú
desplegable Formato para seleccionar una de las opciones de
formato. Los objetos visuales que haya creado y que muestren
ese campo se actualizarán automáticamente.
Para obtener más información, vea Ordenar por columnas en
Power BI Desktop .
Creación de medidas
calculadas
En Power BI, las medidas son cálculos definidos en los datos que
se realizan en el momento de la consulta. Las medidas se calculan
al interactuar con los informes, y no se almacenan en la base de
datos.
4
Estas son las tareas de esta unidad:
Nota
Para seguir los ejemplos de los vídeos y en esta página, descargue
la base de datos de Access de ejemplo aquí e impórtelo en
Power BI Desktop (Obtener datos > Excel).
Creación de una medida
Para crear una medida, en la vista Informe, seleccione Nueva
medida en la pestaña Modelado.
En la barra de fórmulas, puede escribir la expresión DAX que
define la medida. A medida que escriba el cálculo, Power BI irá
sugiriendo funciones DAX y campos de datos relevantes.
También verá una información sobre herramientas que explica
algunos de los parámetros de sintaxis y de función.
Si el cálculo es prolongado, puede insertar saltos de línea extra
en el editor de expresiones; para ello, presione Alt+Entrar.
Aplicación de una medida
Después de crear una medida, aparecerá en una de las tablas del
panel Campos, que se encuentra en el lado derecho de la
pantalla. Power BI inserta la nueva medida en la tabla que esté
seleccionada actualmente. Si bien no importa dónde se
encuentre exactamente la medida en los datos, puede moverla
fácilmente si la selecciona y usa el menú desplegable Tabla
principal.
Puede usar una medida como cualquier otra columna de a tabla:
solo tiene que arrastrarla y colocarla en el lienzo del informe o en
3
los campos de visualización. Las medidas también se integran sin
problemas con las segmentaciones de datos para segmentar
datos sobre la marcha, lo que significa que puede definir una
medida una vez y usarla en muchas visualizaciones diferentes.
Para obtener más información, vea Tutorial: Creación de medidas
propias en Power BI Desktop .
Creación de tablas
calculadas
Las tablas calculadas son una función de DAX. La mayoría de las
veces, los datos se pueden importar al modelo desde un origen
de datos externo. Sin embargo, las tablas calculadas
proporcionan los datos y cálculos intermedios que quiere que se
almacenen como parte del modelo en lugar de como parte de
una consulta. Puede usar tablas calculadas para combinar dos
tablas, por ejemplo.
Estas son las tareas de esta unidad:
4
1
Uso de objetos visuales en
Power BI
BIENVENIDA
Cree y personalice objetos visuales para mostrar datos de forma
atractiva e interesante.
En este módulo, aprenderá a:
Explorar objetos visuales de Power BI
Crear objetos visuales
Requisitos previos
2 Acceso a Power BI Desktop
Introducción a los objetos visuales en Power BI 3 min
Creación y personalización de visualizaciones sencillas 9 min
Creación de segmentaciones de datos 9 min
Asignación de visualizaciones 5 min
Matrices y tablas 8 min
Creación de gráficos de dispersión, cascada y embudo 9 min
Modificación de colores en gráficos y objetos visuales 6 min
Diseño y formato de páginas 12 min
Comprobación de conocimientos 10 min
Resumen 5 min
3
Introducción a los objetos
visuales en Power BI
Los objetos visuales permiten presentar los datos de una manera
atractiva e interesante y ayudan a mostrar los componentes
importantes. Power BI tiene un gran número de objetos visuales
atractivos y muchos más que se publican con frecuencia.
Estas son las tareas que completará en este módulo:
Explorar objetos visuales de Power BI
Crear objetos visuales
4
Existen dos maneras de crear una visualización en Power BI Desktop:
• Arrastrar nombres de campos desde el panel Campos y
colocarlos en el lienzo del informe. La visualización se muestra
de forma predeterminada como una tabla de datos.
• En el panel Visualizaciones, seleccione el tipo de visualización
que quiere crear. Con este método, el objeto visual
1 predeterminado es un marcador de posición en blanco similar
al tipo de objeto visual que ha seleccionado.
Una vez creado el gráfico o el mapa, puede empezar a arrastrar
campos de datos a la parte inferior del panel Visualizaciones para
crear y organizar el objeto visual. Los campos disponibles cambiarán
en función del tipo de visualización que haya seleccionado. A medida
que vaya arrastrando y colocando campos de datos, la visualización
se actualizará automáticamente para reflejar los cambios.
2
Para cambiar el tamaño del objeto visual, selecciónelo y arrastre los
controladores correspondientes hacia dentro o hacia fuera. También
puede mover la visualización a cualquier parte del lienzo; para ello,
selecciónela y arrástrela donde quiera. Si quiere convertir un tipo de
objeto visual en otro, seleccione el objeto visual que quiera cambiar y,
después, seleccione otro objeto visual en el panel Visualizaciones.
Power BI intenta convertir los campos seleccionados en el nuevo tipo
de objeto visual de la forma más precisa posible.
Al mantener el mouse sobre diversas partes de los objetos visuales,
aparecerá una información sobre herramientas con detalles sobre ese
segmento, como las etiquetas y el valor total.
Seleccione el icono de pincel en el panel Visualizaciones para realizar
cambios cosméticos en el objeto visual. Algunos ejemplos de cambios
cosméticos son la alineación del fondo, el texto del título y los colores
de los datos.
Las opciones disponibles para realizar cambios cosméticos en el
objeto visual variarán en función del tipo de objeto visual
seleccionado.
Nota
En general, los objetos visuales se usan para comparar dos o más valores
distintos, pero hay veces en que, al crear informes, puede que quiera
llevar un seguimiento de una sola métrica a lo largo del tiempo. Para
obtener más información, vea Gráficos de medidor radial en Power BI
.
Creación de gráficos
combinados
Los gráficos combinados son una forma eficaz de ver varias medidas
que tienen distintas escalas en una misma visualización.
4
Importante
Al trabajar con países o regiones, use la abreviatura de tres letras
para garantizar que la geocodificación funciona correctamente.
No use abreviaturas de dos letras, ya que es posible que algunos
países o regiones no se reconozcan correctamente.
Si solo tiene abreviaturas de dos letras, vaya a esta entrada de
blog externa para aprender a asociar abreviaturas de país o
1
región de dos letras con abreviaturas de país o región de tres
letras.
Creación de mapas de
burbujas
Para crear un mapa de burbujas, seleccione la opción Mapa en
el panel Visualizaciones. En las opciones de Visualizaciones,
agregue un valor al cubo Ubicación para usar un objeto visual de
mapa.
Power BI acepta muchos tipos de valores de ubicación. Así,
reconoce nombres de ciudades, códigos de aeropuertos o datos
específicos de latitud y longitud. Agregue un campo al cubo
Tamaño para cambiar el tamaño de la burbuja de cada ubicación
2 del mapa.
Creación de mapas de
formas
Para crear un mapa de formas, seleccione la opción Mapa
coroplético en el panel Visualizaciones. Al igual que en los
mapas de burbujas, deberá agregar un valor al cubo Ubicación
para usar este objeto visual. Agregue un campo al cubo Tamaño
para cambiar la intensidad del color de relleno.
Un icono de advertencia en la esquina superior izquierda del
objeto visual indica que el mapa necesita más datos de ubicación
para trazar los valores de forma precisa. Se trata de un problema
común cuando los datos del campo Ubicación son ambiguos,
como cuando se usa un nombre de área como Washington, que
puede hacer referencia a un estado o a un distrito.
Una manera de resolver el problema de los datos de ubicación es
cambiar el nombre de la columna para que sea más específico,
como Estado. Otra forma consiste en restablecer manualmente la
categoría de datos, seleccionando para ello Categoría de datos
en la pestaña Modelado. En la lista Categoría de datos, puede
asignar una categoría a los datos, como "Estado" o "Ciudad".
Matrices y tablas
Power BI Desktop se puede usar para crear objetos visuales
gráficos y tabulares.
4
1
Exploración de datos en
Power BI
BIENVENIDA
Convierta sus datos de inteligencia empresarial en conclusiones de
datos mediante la creación y la configuración de paneles de Power BI.
En este módulo, aprenderá a:
Cargar informes
Crear paneles
Formular preguntas sobre los datos
Requisitos previos
2 Acceso a Power BI Desktop
Introducción al servicio Power BI 6 min
Conclusiones rápidas en Power BI 7 min
Creación y configuración de un panel 5 min
Formulación de preguntas sobre los datos con lenguaje natural
5 min
Creación de sugerencias de Preguntas y respuestas
personalizadas 4 min
Uso compartido de paneles con su organización 5 min
Visualización de objetos visuales e iconos en pantalla completa
3 min
Edición de los detalles del icono y adición de widgets 5 min
Obtención de más espacio en el panel 3 min
Comprobación de conocimientos 5 min
Resumen 5 min
3
Introducción al servicio
Power BI
En la unidad se explora el servicio Power BI y se muestra cómo
convertir los datos de inteligencia empresarial en conclusiones de
datos.
Estas son las tareas que completará en este módulo:
Cargar informes
Crear paneles
Formular preguntas sobre los datos
4
Anclar un objeto visual a un panel es muy parecido a anclar una
imagen a un tablero de corcho en la pared: el objeto visual se fija
en un punto concreto para que los demás puedan verlo. Para
anclar un objeto visual, abra su informe en el servicio Power BI.
Mantenga el puntero sobre el objeto visual que quiere anclar y
seleccione el icono de chincheta.
Puede seleccionar un panel de destino para el objeto visual en el
menú desplegable o crear un panel nuevo. Es posible anclar
visualizaciones de varios informes y páginas en un solo panel, lo
1 que le permite combinar distintos orígenes y conjuntos de datos
en una única página de información.
En los paneles se puede anclar cualquier tipo de visualización,
como grafos, mapas, imágenes y formas. Una vez que el objeto
visual se ha anclado a un panel, se denomina icono.
Los paneles aparecen en la sección Paneles en el lado izquierdo
del servicio Power BI. Para ver un panel, selecciónelo en la lista.
2 El diseño de los objetos visuales puede cambiarse como se
quiera. Para cambiar el tamaño de un icono, arrastre los
controladores hacia dentro o hacia fuera. Para mover un icono,
simplemente selecciónelo y arrástrelo hasta otra ubicación del
panel. Mantenga el puntero sobre un icono y seleccione el icono
de lápiz para abrir el formulario Detalles del icono. En este
formulario podrá cambiar la información de los campos Título o
Subtítulo.
Seleccione un icono del panel para ver el informe a partir del cual
se ha originado. También puede cambiar ese vínculo en el campo
Establecer vínculo personalizado del formulario Detalles del
icono.
3
Los iconos de un panel se pueden anclar en otro. Esto es útil, por
ejemplo, si tiene una colección de paneles y quiere crear un panel
de resumen. El proceso es el mismo: mantenga el puntero sobre
el icono y seleccione el icono de chincheta. Es muy fácil crear y
modificar los paneles. El panel de una página puede
personalizarse para mostrar de manera exacta la información
deseada.
Para obtener más información, consulte Introducción a los
paneles para los diseñadores de Power BI .
Formulación de preguntas
sobre los datos con
lenguaje natural
A veces, la manera más rápida de obtener respuestas acerca de los
datos es formular preguntas en la característica Preguntas y
respuestas de Power BI.
4
En el servicio Power BI, seleccione Exportar en el lado superior
izquierdo del servicio y, después, seleccione Imprimir esta
página para abrir el cuadro de diálogo Imprimir.
Exportación datos desde
un objeto visual
También se pueden exportar datos desde cualquier objeto visual
en el servicio Power BI. Seleccione los puntos suspensivos de un
objeto visual y, después, seleccione Exportar datos. Puede
1 guardar en un archivo de Microsoft Excel o en un archivo .csv.
Puede imprimir o exportar también directamente desde un
informe. Cuando ve un informe en el servicio Power BI, seleccione
Exportar > Imprimir para abrir el cuadro de diálogo Imprimir.
Actualización y
publicación de nuevo de
los datos manualmente
Para actualizar los informes y conjuntos de datos que ya se han
2 publicado desde Power BI Desktop en el servicio Power BI,
seleccione Publicar en la pestaña Inicio.
_______Cuando haya terminado de redactar el informe, seleccione
el botón Publicar en la pestaña Inicio.
Power BI empaqueta el informe y los datos (incluidas las
visualizaciones, las consultas y las medidas personalizadas) y los
carga en el servicio Power BI.
Nota
3
Los informes de Power BI Desktop se suelen conocer como
archivos .pbix, que es la extensión que se les confiere en
Microsoft Windows.
Una vez completada la carga, aparece un cuadro de diálogo que
informa de que el proceso de publicación se realizó
correctamente y donde, asimismo, se proporciona un vínculo al
informe en el servicio Power BI.
Impresión y exportación
de paneles e informes
En ocasiones, es posible que quiera imprimir un informe o un
panel para una reunión o para compartirlos con otros usuarios.
Power BI proporciona varias maneras de conseguir estas copias
impresas.
4
Las áreas de trabajo son lugares donde colaborar con
compañeros para crear y refinar colecciones de paneles, informes
e informes paginados. En Power BI Hay dos tipos de grupos:
• Áreas de trabajo clásicas: los grupos se basan en grupos de
Office 365. Si ha estado usando grupos de Office 365 para
administrar el correo electrónico, el calendario y los
documentos del grupo, verá que Power BI ofrece las mismas
características. Al crear un grupo en Power BI, en realidad está
creando un grupo de Office 365.
• Áreas de trabajo nuevas: ahora son el área de trabajo
predeterminada en Power BI. Asigne roles de área de trabajo a
grupos de usuarios, sean grupos de seguridad, listas de
distribución, grupos de Office 365 o usuarios individuales.
o Cree un área de trabajo en Power BI sin crear un grupo de
1
Office 365.
o Use roles de áreas de trabajo más granulares para
administrar los permisos en un área de trabajo de forma más
flexible.
o El administrador de Power BI controla quién puede crear
áreas de trabajo en Power BI.
Configuración de un área
de trabajo nueva
En Configuración del área de trabajo en el portal de
administración, los administradores pueden usar la opción
Creación de áreas de trabajo (versión preliminar de la nueva
experiencia de áreas de trabajo) para permitir que todos o nadie
en una organización creen áreas de trabajo. También se puede
limitar la creación a miembros de grupos de seguridad concretos.
Configuración de un área
de trabajo clásica
Imagine que configura un nuevo grupo financiero. Comience en
Mi área de trabajo con los paneles, informes y conjuntos de
datos que haya creado o que alguien haya compartido con usted.
Expanda Mi área de trabajo y seleccione Crear un grupo.
Dé un nombre al grupo, por ejemplo, "Finance". Power BI se
asegura de que el nombre no exista en el dominio.
3
Establezca el nivel de privacidad; para ello, decida si cualquier
usuario de la organización o solo los miembros del grupo pueden
ver el contenido de dicho grupo.
En el cuadro de diálogo Crear un grupo, escriba las direcciones
de correo electrónico, grupos de seguridad y listas de
distribución que correspondan. Seleccione Agregar para
convertir el conjunto de usuarios en miembros del grupo y,
después, seleccione Guardar para guardar el grupo.
Para obtener más información, vea Crear áreas de trabajo clásicas
en Power BI y Organización del trabajo en las nuevas áreas de
trabajo en Power BI .
4
Compilación de
aplicaciones
En esta lección, creará una aplicación con los artefactos que ya
existen en Power BI y, después, la compartirá con sus
compañeros.
1
Uso del aprendizaje no
supervisado para analizar
datos sin etiquetar
BIENVENIDA
Use métodos de aprendizaje no supervisado para predecir
agrupaciones en los datos. Use variaciones de la agrupación en
clústeres k-means y la agrupación en clústeres espectrales para analizar
y visualizar conjuntos de datos difíciles.
Objetivos de este módulo:
Definir el aprendizaje no supervisado
Aplicar la agrupación en clústeres k-means para predecir
agrupaciones en los datos
Requisitos previos
2
Ninguno
Introducción 4 min
Uso de la agrupación en clústeres k-means para agrupar datos
5 min
Ejercicio: Agrupación en clústeres k-means 15 min
Resumen 8 min
INTRODUCCIÓN
Es posible que haya usado anteriormente algoritmos de aprendizaje
supervisados en los que tenemos etiquetas para nuestros ejemplos.
Cuando un conjunto de datos no tiene etiquetas, podemos usar el
aprendizaje no supervisado para encontrar algún tipo de estructura en
los datos para descubrir patrones o agrupaciones.
El aprendizaje supervisado es mucho más común que el aprendizaje no
3
supervisado, pero el primero puede ayudarnos a analizar rápidamente
un conjunto de datos con poco esfuerzo.
En el ejemplo anterior, el algoritmo encuentra cuatro grupos en los
datos sin etiquetar, que normalmente se denominan clústeres.
El aprendizaje no supervisado se usa normalmente en la ciencia y en la
industria para el análisis de clústeres y la detección de anomalías.
Análisis de clústeres
El análisis de clústeres es un método de búsqueda de agrupaciones —
conocidas como clústeres— en conjuntos de datos. Como los
conjuntos de datos no tienen etiqueta, el análisis de clústeres intenta
agrupar ejemplos similares con las características del ejemplo.
En la práctica, la agrupación en clústeres suele usarse para el análisis
de redes sociales, la agrupación en clústeres de equipos, el análisis
científico en biología y astronomía, y el análisis de clientes.
Hay muchos tipos de análisis de clústeres, pero los profesionales de
inteligencia artificial tienden a usar la agrupación en clústeres k-means
para un análisis rápido. Para un aprendizaje no supervisado exhaustivo,
pueden usarse muchas herramientas: máquinas de vectores de soporte
(clústeres de vectores de soporte), redes neuronales, etc. A
continuación, veremos la agrupación en clústeres k-means.
Trataremos los aspectos básicos del aprendizaje no supervisado y
4 presentaremos algunos algoritmos de aprendizaje no supervisados
nuevos.
En este módulo, aprenderá a:
• Definir el aprendizaje no supervisado
• Aplicar la agrupación en clústeres k-means para predecir
agrupaciones en los datos.
1
Estrategia y soluciones de
inteligencia artificial (IA) de
Microsoft Azure
BIENVENIDA
Este módulo proporciona una descripción general de la IA de Azure y
demuestra cómo las herramientas, los servicios y la infraestructura de
Microsoft pueden ayudar a hacer que la IA sea real para su
organización, ya sea que desee desbloquear información de sus datos
latentes con minería de conocimiento, desarrollar sus propios modelos
de IA con aprendizaje automático, o crear aplicaciones inmersivas con
IA.
En este módulo, usted:
Comprenda la visión de Microsoft para Azure AI.
Identifique formas en que puede usar la IA de Azure.
2
Defina qué es Azure AI, cómo funciona y cómo está construido.
Requisitos previos
Ninguno
Introducción a la inteligencia artificial de Azure 10 min
Minería de conocimiento 12 min
Aprendizaje automático 10 min
Aplicaciones y agentes 15 min
Impacto AI y ética 6 min
Verificación de conocimiento 4 min
Resumen y recursos 2 min
3
INTRODUCCIÓN A LA
INTELIGENCIA ARTIFICIAL DE
AZURE
¿Qué es la inteligencia artificial?
• La inteligencia artificial (IA) es la capacidad de una máquina
4 para imitar el comportamiento humano inteligente: desde el
análisis, el aprendizaje, el razonamiento y la resolución de
problemas, y más. A través de la inteligencia artificial, las
máquinas pueden analizar datos, textos e imágenes,
comprender el habla, interactuar de manera natural y hacer
predicciones utilizando datos, como cuándo una máquina
necesita mantenimiento o qué tipo de producto podría querer
comprar un cliente.
• En este módulo, usted:
• Comprenda la visión de Microsoft para Azure AI.
• Identifique formas en que puede usar la IA de Azure.
• Defina qué es Azure AI, cómo funciona y cómo está construido.
Antes de seguir avanzando, vamos a definir brevemente la informática
en la nube.
¿Qué es la informática en la nube?
La informática en la nube es la prestación de servicios informáticos a
través de Internet mediante un modelo de precios de pago por uso.
Dicho de otro modo, es una manera de alquilar potencia de proceso y
almacenamiento del centro de datos de otra persona.
En lugar de mantener las CPU y el almacenamiento en un centro de
datos, se alquilan durante el tiempo que sea necesario. El proveedor de
nube se encarga de mantener la infraestructura subyacente por usted.
Los recursos de la nube se pueden tratar igual que los recursos de un
1 centro de datos propio. Cuando haya terminado con ellos, solo hay que
devolverlos. Únicamente se le cobrará por lo que use.
Aunque todo esto es estupendo, el verdadero valor de la nube es que
permite resolver rápidamente los desafíos empresariales más difíciles y
proporcionar soluciones de vanguardia a los usuarios.
¿Por qué debería migrar a la nube?
La nube ayuda a moverse con más rapidez y a innovar de maneras que
antes eran prácticamente imposibles.
En este mundo digital cambiante, surgen dos tendencias:
Los equipos están proporcionando nuevas características a los
usuarios a velocidades récord.
Los usuarios finales esperan una experiencia cada vez más
amplia y envolvente con sus dispositivos y con el software.
Las versiones de software antes se programaban en plazos de meses o
incluso años. Hoy en día, los equipos lanzan características en lotes más
pequeños. Las versiones se suelen programar ahora en plazos de días
o semanas. Algunos equipos incluso entregan actualizaciones de
software de forma continua (a veces con varias versiones el mismo día).
Piense en todas las formas en que interactúa con los dispositivos y que
no eran posibles hace unos años. Muchos dispositivos pueden
reconocer su cara y responder a comandos de voz. La realidad
aumentada cambia la manera en que interactúa con el mundo físico.
Incluso los electrodomésticos están empezando a actuar de manera
inteligente. Estos son solo algunos ejemplos, muchos de los cuales se
2
desarrollan en la nube.
Para desarrollar sus servicios y ofrecer experiencias de usuario
innovadoras y novedosas más rápidamente, la nube proporciona
acceso a petición para:
Un grupo casi ilimitado de componentes de proceso,
almacenamiento y redes sin procesar.
Reconocimiento de voz y otros servicios cognitivos que ayudan
a hacer que su aplicación destaque entre la multitud.
Servicios de análisis que le permiten dar sentido a los datos de
telemetría que devuelven el software y los dispositivos.
Veamos cómo se integra Azure con la informática en la nube.
¿Qué puedo hacer en Azure?
Azure proporciona más de 100 servicios que permiten hacer todo tipo
de cosas: desde ejecutar aplicaciones en máquinas virtuales hasta
explorar nuevos paradigmas de software, como bots inteligentes y
realidad mixta.
Muchos equipos comienzan a explorar la nube mediante la migración
de sus aplicaciones existentes a máquinas virtuales que se ejecutan en
Azure. Si bien este es un buen comienzo, la nube es algo más que "un
lugar diferente donde ejecutar las máquinas virtuales".
Por ejemplo, Azure proporciona servicios de inteligencia artificial y
aprendizaje automático que pueden comunicarse naturalmente con los
usuarios mediante la vista, el oído y la voz. También facilita soluciones
3 de almacenamiento que crecen dinámicamente para dar cabida a
grandes cantidades de datos. Los servicios de Azure permiten
soluciones que no serían factibles sin la potencia de la nube.
PASEO POR LOS
SERVICIOS DE AZURE
Azure puede ayudarle a afrontar complicados retos empresariales.
Usted pone los requisitos, la creatividad y sus herramientas de
desarrollo de software favoritas. Azure le ofrece una gran
infraestructura global que siempre está disponible para compilar
aplicaciones.
Realizaremos un recorrido rápido por los servicios generales que ofrece
Azure.
4
EJERCICIO:
INTRODUCCIÓN A LAS
REDES NEURONALES
A continuación se realizará otro ejercicio de programación: la creación
de una red neuronal básica con Keras.
En los ejercicios de este módulo se usa Azure Notebooks. Es un recurso
de uso gratuito.
Si los vínculos siguientes no funcionan, tiene que configurar una cuenta
gratuita de Azure Notebooks y clonar el proyecto para este módulo.
1
Vea el repositorio de Python en GitHub o el repositorio de R en
GitHub para obtener instrucciones para comenzar.
1. Los usuarios de Python deben ir a la biblioteca.
2. Seleccione el ejercicio 08. Neural Networks Introduction -
[Link].
3. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
4. Los usuarios de R deben ir a la biblioteca.
5. Seleccione el ejercicio 08. Neural Networks Introduction -
[Link].
6. Después, seleccione "Run on Free Compute" (Ejecutar en un
proceso gratuito).
2
MEJORA DE LAS REDES
NEURONALES CON
FUNCIONES DE
ACTIVACIÓN Y
OPTIMIZADORES
Los bordes no siempre están activos: los nodos se pueden "desactivar"
a ellos mismos si todos los valores de los datos que han llegado al nodo
son demasiado bajos. Los nodos se activan y desactivan mediante una
función de activación, elegida por el usuario.
3
En la práctica, las funciones de activación son similares al uso de varios
kernels en máquinas de vectores de soporte. No es necesario conocer
los detalles de su funcionamiento, solo que tendrá que probar varias
funciones de activación y ver cuál ofrece el mejor resultado.
Si tiene una red neuronal grande, es posible que parezca que muchos
datos van a viajar a través de ella. Pero en muchas ocasiones no pasa
ningún dato por un nodo: está desactivado. Esto se debe a que las
funciones de activación regulan el resultado de los nodos. Los usuarios
eligen las funciones de activación para diferentes capas.
Elección de una función de activación
Hay muchas funciones de activación que se pueden aplicar a una red
neuronal. ReLu y tanh son dos de las funciones de activación más
populares que se usan actualmente con las redes neuronales.
Optimizadores
Como puede imaginar, el descenso de gradiente puede ser muy
costoso a nivel computacional en una red neuronal grande, ya que lo
que se intenta es optimizar muchos pesos. Incluso con el aumento
actual de la capacidad de procesamiento, el descenso de gradiente
normal no suele ser práctico con las redes neuronales.
Para que esto sea más rápido, se puede usar una variación del descenso
de gradiente llamada descenso de gradiente estocástico (SGD).
4
SGD
SGD solo usa un ejemplo aleatorio del conjunto de entrenamiento para
calcular el costo (el descenso de gradiente normal usa todos los
ejemplos del conjunto de entrenamiento). A nivel computacional, esto
es mucho más rápido y puede proporcionar mejores resultados que el
descenso de gradiente normal en la misma cantidad de tiempo.
Hay diferentes variaciones de SGD que puede probar,
como Adam y RMSProp. De nuevo, no es necesario saber cómo
funcionan, solo tiene que saber que existen y que puede probar
distintos tipos de SGD para mejorar los modelos.
Si una red neuronal tarda mucho tiempo en entrenarse, puede probar
SGD en su lugar. El uso de SGD en lugar del descenso de gradiente
normal es similar al cambio del kernel en una SVM: una opción
integrada que debe seleccionar.
Propagación directa e inversa
La propagación directa y la inversa son la forma que tienen las redes
neuronales de optimizar sus pesos y generar resultados precisos. No
se preocupe por los detalles: este es un buen diagrama en el que se
muestra cómo funcionan.
Eso es todo. A continuación, se realizará un ejercicio de programación
en Azure Notebooks: redes neuronales avanzadas (no se preocupe, se
le guiará a través del proceso).
5
EJERCICIO: CNN
A continuación se probará la creación de una CNN simple en Azure
Notebooks. Se usará una CNN para reconocer dígitos manuscritos.
En los ejercicios de este módulo se usa Azure Notebooks. Es un recurso
de uso gratuito.
Si los vínculos siguientes no funcionan, tiene que configurar una cuenta
gratuita de Azure Notebooks y clonar el proyecto para este módulo.
Vea el repositorio de Python en GitHub o el repositorio de R en
GitHub para obtener instrucciones para comenzar.
1. Los usuarios de Python deben ir a la biblioteca.
1
2. Seleccione el ejercicio 10. Convolutional Neural Networks -
[Link].
3. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
4. Los usuarios de R deben ir a la biblioteca.
5. Seleccione el ejercicio 10. Convolutional Neural Networks -
[Link].
6. Después, seleccione "Run on Free Compute" (Ejecutar en un
proceso gratuito).
REVISIÓN DE LAS
HERRAMIENTAS
POPULARES QUE SE USAN
PARA EL APRENDIZAJE
PROFUNDO
Hay muchas herramientas modernas para el aprendizaje profundo.
Servicios como el análisis de texto, la visión personalizada y el
moderador de contenido permiten aplicaciones personalizadas del
aprendizaje profundo con facilidad. Las herramientas de ingeniería
2
como TensorFlow, Keras y PyTorch también son bibliotecas de código
abierto muy conocidas.
TensorFlow
TensorFlow es una biblioteca de Python que se puede extender a varios
lenguajes. TensorFlow se puede ejecutar en diferentes tipos de
procesadores, desde GPU y CPU en la nube y de escritorio, hasta
pequeños dispositivos de IoT y el explorador. TensorFlow tiene muchas
funcionalidades diferentes, pero destaca principalmente en redes
neuronales y aprendizaje profundo.
A veces se considera una biblioteca de "bajo nivel" porque en otras
(como Keras) se usa TensorFlow en segundo plano para crear modelos
y analizar datos.
Keras
Keras es una biblioteca de Python general para redes neuronales. Keras
usa TensorFlow y algunas otras bibliotecas para facilitar la creación de
redes neuronales profundas, lo que reduce el número de acciones que
tiene que llevar a cabo un usuario para crear un modelo correcto.
Es habitual que los profesionales de la inteligencia artificial usen Keras
para probar si un determinado tipo de modelo se podría aplicar
correctamente a un problema. Si el modelo de Keras muestra potencial,
es posible que merezca la pena invertir tiempo en crear y ajustar un
modelo con TensorFlow.
PyTorch
PyTorch es una plataforma de investigación de aprendizaje profundo
que ofrece flexibilidad y rendimiento. PyTorch todavía se encuentra en
una fase de desarrollo inicial: la versión 1.0 no se ha publicado aún.
A pesar de esto, PyTorch es muy popular y se conoce especialmente
por su facilidad de uso y sus modelos de CNN personalizables. También
contiene muchas herramientas para el procesamiento previo de datos,
4 lo que reemplaza a NumPy, que normalmente se usa en el resto de
casos.
NumPy
NumPy es una biblioteca de Python de código abierto que proporciona
un amplio kit de herramientas de funciones matemáticas y
compatibilidad para estructuras de datos de gran tamaño. De forma
similar a como se ha usado en este curso, NumPy es extremadamente
popular para el procesamiento previo de los datos antes de crear
modelos de inteligencia artificial sofisticados.
5
PREDICCIÓN DE
CATEGORÍAS CON
MÁQUINAS DE VECTORES
DE SOPORTE
Las máquinas de vectores de soporte (SVM) son una de las soluciones
más elegantes del aprendizaje automático, además de ser herramientas
vitales para la biología y muchas otras áreas de la ciencia y la industria.
Se pueden usar para problemas de clasificación y regresión, y se
pueden codificar fácilmente en Python y R. En este módulo se usan
1 para la clasificación.
Hiperplanos
Un hiperplano es un límite que divide puntos de datos: las SVM
intentan encontrar un hiperplano que separe los distintos tipos de
puntos de datos con la mayor precisión posible. En el ejemplo siguiente
se han separado los puntos de la parte inferior izquierda (azules) de los
de la parte superior derecha (verdes) mediante la línea negra
(hiperplano). Los puntos de datos se clasifican en función del lado de
la línea negra en el que se encuentren.
2
Es como el ejercicio de programación de regresión logística, aunque la
SVM intenta hacer que el margen entre las dos líneas sea lo más grande
posible. Esto se conoce como SVM de margen máximo. Se hace para
que la SVM sea lo más precisa posible cuando se especifiquen nuevos
datos.
Vectores de soporte y márgenes
La SVM calcula los hiperplanos y los márgenes mediante los puntos de
datos de las distintas categorías más cercanas.
Estos puntos de datos se denominan vectores de soporte: de ahí es de
donde viene el nombre de las SVM.
3
Los puntos de datos del margen se denominan vectores de soporte (de
ahí que el modelo se denomine máquina de vectores de soporte). Las
SVM también pueden funcionar bien con grandes conjuntos de datos
complejos no lineales.
4
Los nuevos ejemplos especificados en un modelo de SVM se etiquetan
con una categoría en función del lado del margen en el que se
encuentren. Si se quiere, es posible aumentar el número de
hiperplanos, lo que permite varios tipos distintos de etiquetas. Esto
resulta útil en la clasificación de texto e imágenes. Las SVM se han
aplicado extensamente en biología en áreas como la clasificación
precisa de proteínas y secuencias de ADN.
Error
Es importante entender que todos los datos tienen variabilidad, lo que
significa que la precisión de un modelo normalmente no puede
alcanzar el 100 %.
5
Observe los puntos de datos atípicos (indicados por los guiones rojos
que los rodean). Estos valores atípicos son ejemplos de datos que el
modelo no puede predecir con precisión. Este error se conoce como
"error irreducible" o "error de Bayes".
MEJORA DE LAS
PREDICCIONES DE
CATEGORIZACIÓN CON
MÁQUINAS DE VECTORES
DE SOPORTE
En un ejercicio de programación anterior se hizo una SVM lineal
porque se ajusta bien al conjunto de datos simple. Las SVM también
funcionan bien con conjuntos de datos complejos y sin etiquetar, ya
1 que los vectores de soporte ayudan a optimizar los márgenes a fin de
minimizar las clasificaciones incorrectas.
Anteriormente se ha hablado de tener un margen inflexible (un área
alrededor del hiperplano donde no pasan puntos de datos). La SVM
anterior ha movido el hiperplano (línea) para intentar maximizar el
ancho de este margen.
El problema de este enfoque es que los datos del mundo real tienen
ruido, lo que significa que es normal que algún que otro punto de
datos se encuentre cerca del "mejor" hiperplano. Si se usa un margen
inflexible, se mueve el hiperplano para evitar estos puntos de datos
ruidosos. Esto es similar al sobreajuste.
Se puede usar una SVM de margen flexible en su lugar para aumentar
la precisión. El margen flexible usa una función de costo diferente al
método de margen máximo que ya se ha usado. Esta función de costo
da una penalización menor para los puntos de datos sueltos.
El gráfico anterior es un ejemplo de SVM de margen inflexible. El
hiperplano (línea negra) está realizando un buen trabajo a la hora de
2
separar puntos azules y verdes. Sin embargo, si se hubiera especificado
el punto verde con la etiqueta "infracción" y se hubiera vuelto a
entrenar la SVM, esta línea tendría que moverse considerablemente, ya
que se encuentra dentro del margen. Si se acercara aún más a los
puntos rojos, la SVM podría no separar los puntos correctamente y
notificar que se ha producido un error, aunque una tasa de precisión
del 100 % es improbable en la mayoría de los conjuntos de datos. Una
SVM de margen flexible permite cierto grado de etiquetado incorrecto,
por lo que puede resultar más útil en este caso.
El gráfico anterior es una SVM de margen flexible, donde el algoritmo
se penaliza menos para los puntos de datos que se encuentran dentro
del margen. Como tal, un práctico hiperplano se adapta a los datos, en
lugar de resultar distorsionado por unos cuantos puntos de datos.
3
En la práctica, se recomienda experimentar con varios tipos diferentes
de modelos para probar y lograr una mayor precisión. Las SVM
avanzadas son fáciles de usar en conjuntos de datos complejos. No es
necesario conocer los detalles en profundidad, pero es bueno tener
una idea de lo que pueden hacer las distintas herramientas si se da con
un conjunto de datos difícil. Una de las herramientas más conocidas
son los kernels.
Kernels
Las SVM pueden optimizar las predicciones mediante métodos de
kernel: un tipo de algoritmo que analiza patrones. El truco del kernel es
el método de kernel más usado. Emplea el cálculo para separar los
datos y calcular una línea de mejor ajuste que puede ser no lineal.
Hay varios tipos de kernels que se pueden usar para el truco del kernel,
incluidos kernels lineales, polinómicos, gaussianos y sigmoideos (con
forma de S). Tienen propiedades diferentes que proporcionan distintos
márgenes para separar los ejemplos. Aunque los profesionales tienden
a probar los kernels polinómicos y gaussianos en primer lugar, no
existe una mejor elección general de kernel.
Los parámetros, como los kernels, que se pueden establecer antes de
entrenar un modelo se conocen como hiperparámetros. Cambian la
manera en que un algoritmo entrena y actúa, por lo que los
profesionales suelen modificarlos para ajustar un modelo para que
tenga un mejor rendimiento. Aunque los profesionales tienden a
probar primero ciertos hiperparámetros, como los kernels polinómicos
y gaussianos, no hay una mejor elección general de hiperparámetros.
4
Kernel lineal
Kernel polinómico
Kernel RBF
Solo necesita saber los distintos kernels que existen y debería probar
varios de ellos para tratar de mejorar la precisión de los modelos.
Afortunadamente, es muy fácil probar diferentes hiperparámetros, así
que vamos a intentarlo.
1
Ingeniero de inteligencia
artificial en dispositivos
perimetrales
BIENVENIDA
La interacción entre la inteligencia artificial, la nube y los dispositivos
perimetrales es un campo que evoluciona rápidamente. Actualmente,
muchas soluciones de Internet de las cosas se basan en la telemetría
básica. La función de telemetría captura los datos de los dispositivos
perimetrales y los almacena en un almacén de datos. Nuestro enfoque
va más allá de la telemetría básica. Queremos modelar los problemas
del mundo real a través de algoritmos de aprendizaje automático y
aprendizaje profundo, e implementar el modelo obtenido en
2 dispositivos perimetrales mediante la inteligencia artificial y la nube. El
modelo se entrena en la nube y se implementa en un dispositivo
perimetral. La implementación en el dispositivo perimetral proporciona
un bucle de comentarios que permite mejorar el proceso empresarial
(transformación digital).
En esta ruta de aprendizaje, adoptamos un enfoque de ingeniería
interdisciplinaria. Queremos crear una plantilla estándar para varias
áreas complejas de la implementación de la inteligencia artificial en
dispositivos perimetrales como drones, vehículos autónomos, etc. En la
ruta de aprendizaje se presentan estrategias de implementación para
un panorama de aplicaciones de inteligencia artificial complejas en
constante cambio. Los contenedores son fundamentales para este
enfoque. Cuando se implementan en dispositivos perimetrales, los
contenedores pueden encapsular entornos de implementación para
una gran variedad de hardware. CICD (integración continua:
implementación continua) es una extensión lógica para la
implementación de contenedores en dispositivos perimetrales. En
módulos futuros de esta ruta de aprendizaje, puede que incluyamos
otras técnicas, como la informática sin servidor o la implementación en
unidades de microcontrolador.
El enfoque orientado a la ingeniería se basa en temas y pedagogías de
la formación en ingeniería como los siguientes:
Diseño de sistemas
Experimentación y solución de problemas
Mejora mediante la experimentación
Implementación y análisis a través de pruebas
Impacto en otros campos de la ingeniería
3
Previsión del comportamiento de un componente o sistema
Consideraciones de diseño
Trabajo con restricciones y tolerancias, así como condiciones de
funcionamiento específicas, como las restricciones de
dispositivos
Consideraciones de seguridad
Creación de herramientas que ayudan a crear soluciones
Mejora de los procesos: uso de dispositivos perimetrales
(Internet de la cosas) para proporcionar un bucle de
comentarios de análisis del proceso empresarial con el objetivo
de impulsar los procesos
Impacto social de la ingeniería
Impacto estético del diseño y la ingeniería
Implementaciones a escala
Solución de problemas empresariales complejos mediante una
implementación de un extremo a otro de inteligencia artificial,
dispositivos perimetrales y la nube.
En última instancia, las tecnologías de inteligencia artificial, la nube y
dispositivos perimetrales implementadas como contenedores en modo
CICD son capaces de transformar sectores enteros mediante la creación
de ecosistemas de autoaprendizaje y adaptados a un sector que
abarcan toda la cadena de valor. Queremos diseñar un conjunto de
plantillas o metodologías para la implementación de la inteligencia
artificial en dispositivos perimetrales en el ámbito de la nube. En esta
ruta de aprendizaje se ofrece lo siguiente:
Más información sobre la creación de soluciones con el Internet
de las cosas y la nube
4
Descripción del proceso de implementación de soluciones
basadas en el Internet de las cosas en dispositivos perimetrales
Aprendizaje del proceso de implementación de modelos en
dispositivos perimetrales mediante contenedores
Exploración del uso de DevOps para dispositivos perimetrales
Contenido producido en colaboración con la Universidad de Oxford
– Ajit Jaokar Artificial Intelligence:Cloud and Edge
Implementations course (Inteligencia artificial: curso de
implementaciones de la nube y dispositivos perimetrales).
Requisitos previos
Ninguno
Introducción a IoT de Azure 31 min
Introducción a Azure IoT Hub 28 min
Introducción a Azure IoT Edge 29 min
Implementación de un módulo precompilado en el dispositivo
perimetral 56 min
Entrenamiento y empaquetado de un módulo de Azure
Machine Learning para la implementación en un dispositivo IoT
Edge 1 h 26 min
5
1
Cloud Services básico:
opciones de redes de Azure
BIENVENIDA
La ejecución de aplicaciones o servicios en la nube requiere una red
rápida y segura. Obtenga información sobre algunos de los conceptos
básicos de redes de Azure y sobre cómo ayudan a mejorar la resistencia
y a reducir la latencia.
En este módulo:
• Obtendrá información sobre cómo las redes virtuales ayudan a
aislar los recursos de red y de proceso
• Aprenda cómo Azure Load Balancer ayuda a mejorar la
resistencia o la capacidad para recuperarse tras una caída del
2 servicio
• Obtendrá información sobre cómo Traffic Manager puede
enrutar el tráfico a diferentes puntos de conexión, incluido el
punto de conexión con la menor latencia para el usuario
Requisitos previos
Ninguno
Introducción 1 min
Implementación del sitio en Azure 12 min
Escalado con Azure Load Balancer 7 min
Reducción de la latencia con Azure Traffic Manager 7 min
Resumen 1 min
INTRODUCCIÓN
Acaba de empezar a trabajar en una startup que está cambiando el
sector de las vitaminas gracias a personalizaciones sencillas y
suscripciones mensuales asequibles. Mientras que el negocio florece
en el sitio de comercio electrónico, el centro de datos empieza a luchar
por satisfacer la demanda de los usuarios. Se producen errores en el
servicio cuando demasiados usuarios inician sesión al mismo tiempo, y
3 tiene que hacer frente a más ventanas de mantenimiento programadas
y sin programar de lo que le gustaría.
El sitio se encuentra en Silicon Valley, así que el retraso de red es
especialmente grave para los usuarios que se encuentran en otras
regiones, como Europa y Asia.
Por lo tanto, convence al equipo para migrar el sitio a la nube a fin de
ahorrar costos. Pero, ¿cómo puede ayudar concretamente Azure a que
el sitio se ejecute mejor?
Resulta que la administración de redes en Azure no difiere mucho de
la administración de redes locales. Vamos a ver por qué.
Objetivos de aprendizaje
En este módulo, aprenderá lo siguiente:
• Cómo una red virtual de Azure proporciona comunicación de
red segura entre recursos como máquinas virtuales y otras
redes
• Qué significan alta disponibilidad y resistencia y cómo Azure
Load Balancer puede aumentar la resistencia en una única
región geográfica
• Qué es la latencia y cómo Traffic Manager ayuda a reducir la
latencia de red y proporciona resistencia entre ubicaciones
geográficas
4
IMPLEMENTACIÓN DEL
SITIO EN AZURE
Probablemente, el primer paso sea volver a crear la configuración
local en la nube.
Esta configuración básica le dará una idea de cómo se configuran las
redes y cómo se mueve el tráfico de red de entrada y salida de Azure.
El sitio de comercio electrónico de un solo vistazo
Los sistemas empresariales de mayor tamaño suelen constar de varias
aplicaciones y servicios interconectados que funcionan de forma
5 conjunta. Es posible que tenga un sistema web front-end en el que se
muestre el inventario y permita a los clientes crear un pedido. Este se
podría comunicar con varios servicios web para proporcionar los datos
de inventario, administrar los perfiles de usuario, procesar las tarjetas
de crédito y solicitar que se completen las solicitudes de los pedidos
procesados.
Existen varias estrategias y patrones que los diseñadores y arquitectos
de software usan para facilitar el diseño, la compilación, la
administración y el mantenimiento de estos sistemas complejos.
Veamos algunos de ellos, empezando por las arquitecturas de
acoplamiento flexible.
Acabas de ver cómo Telefónica pudo modernizar su negocio y utilizar
la inteligencia artificial para transformar la forma en que interactúan
con sus clientes.
1
IMPACTO Y ÉTICA DE LA
IA
Las tecnologías de IA plantean cuestiones éticas y sociales
complejas. Por ejemplo:
¿Cómo podemos usar mejor la inteligencia artificial para ayudar
a los usuarios y ofrecerles a las personas conocimientos
mejorados, evitando al mismo tiempo exponerlos a diferentes
tipos de discriminación en salud, vivienda, aplicación de la ley y
empleo?
¿Cómo podemos equilibrar la necesidad de eficiencia y
2 exploración con justicia y sensibilidad para los usuarios? A
medida que avanzamos hacia depender de agentes inteligentes
en nuestra vida cotidiana, ¿cómo nos aseguramos de que las
personas y las comunidades puedan confiar en estos sistemas?
Debemos abordar estos desafíos éticos a medida que exploramos
oportunidades futuras impulsadas por una asociación entre
computadoras y humanos. En última instancia, la pregunta no es solo
qué pueden hacer las computadoras, sino qué deben hacer las
computadoras.
En Microsoft, seis principios éticos guían el desarrollo y uso de la
inteligencia artificial con las personas en el centro de todo lo que
hacemos.
Justicia : los sistemas de IA deben tratar a todas las personas
de manera justa.
Confiabilidad y seguridad : los sistemas de inteligencia
artificial deben funcionar de manera confiable y segura.
Inclusividad : los sistemas de inteligencia artificial deberían
empoderar a todos y comprometer a las personas.
Privacidad y seguridad : los sistemas de inteligencia artificial
deben ser seguros y respetar la privacidad.
Transparencia : los sistemas de IA deben ser entendibles.
Rendición de cuentas : los sistemas de IA deben tener
rendición de cuentas algorítmica.
La ética de la inteligencia artificial en Microsoft
El grupo de investigación FATE (equidad, responsabilidad,
3
transparencia y ética) en Microsoft estudia las complejas implicaciones
sociales de la inteligencia artificial, el aprendizaje automático, la ciencia
de datos, la experimentación a gran escala y la creciente
automatización. Su objetivo es desarrollar técnicas computacionales
que sean innovadoras y éticas a la vez que se basan en el contexto más
profundo que rodea estos temas desde la sociología, la historia y los
estudios de ciencia y tecnología.
Actualmente, FATE está trabajando en proyectos de investigación
colaborativa que abordan la necesidad de transparencia,
responsabilidad y equidad en los sistemas de inteligencia artificial y
aprendizaje automático. FATE publica en una variedad de disciplinas,
incluyendo aprendizaje automático, recuperación de información,
sistemas, sociología, ciencias políticas y estudios de ciencia y
tecnología.
AI para bien
Microsoft AI for Good invierte en programas que aumentan el acceso
a las tecnologías de nube e IA a través de subvenciones, educación,
investigación y asociaciones estratégicas.
Accesibilidad
AI for Accessibility promueve la inclusión a través de tecnología
inteligente y permite a las personas obtener independencia y lograr
más. Por ejemplo, Seeing AI utiliza tecnología de IA para ayudar a la
comunidad de baja visión a ver mejor el mundo a su alrededor.
4
Humanitario
AI for Humanitarian Action, un nuevo programa de $ 40 millones y 5
años, tiene como objetivo aprovechar el poder de AI para recuperarse
de los desastres, abordar las necesidades de los niños, proteger a los
refugiados y las personas desplazadas y promover el respeto de los
derechos humanos. Por ejemplo, Operation Smile, un socio sin fines de
lucro, utiliza un algoritmo de modelado facial y Microsoft Pix para
mejorar sus resultados quirúrgicos y ayudar a más niños que necesitan
cirugías faciales.
Tierra
AI for Earth permite a las personas y organizaciones innovar en las
formas en que monitoreamos, modelamos y, en última instancia,
gestionamos los sistemas naturales de la Tierra. El programa se centra
en cuatro áreas vitales para un futuro sostenible: agricultura, agua,
biodiversidad y cambio climático. Por ejemplo, Project Premonition
comenzó como un esfuerzo para rastrear enfermedades emergentes
mediante el uso de IA, drones y software en la nube de Microsoft. Al
necesitar datos rápidos y confiables, los científicos comenzaron a
analizar la sangre de los mosquitos para adelantarse a las
enfermedades infecciosas y ahora están volcando sus esfuerzos hacia
la biodiversidad.
5
Ver IA
Ver IA es un proyecto de investigación de Microsoft que combina el
poder de la nube y la IA para ofrecer una aplicación inteligente
diseñada para ayudarlo a navegar su día.
Buscar y ver paneles e
informes
Escenario
¡Enhorabuena! Le acaban de nombrar director de ventas de una
empresa de fabricación de ropa llamada Van Arsdel. Su primera
tarea es ver los paneles e informes de marketing y ventas.
Procedimiento
Adición de la aplicación de ejemplo de marketing y ventas
1 Nota
Para agregar una aplicación, necesitará Power BI Pro. Puede
probar Power BI Pro gratis durante 60 días
en [Link]
1. Inicie sesión en [Link]
2. Seleccione la pestaña Aplicaciones situada a la izquierda.
3. Seleccione el botón Obtener aplicaciones.
4. Seleccione el vínculo "Buscar más aplicaciones y servicios de
consultoría en AppSource" en la parte inferior del menú.
5. Busque Ejemplo de marketing y ventas.
2
6. Seleccione el vínculo "Obtener ahora" y espere a que la
aplicación se instale.
7. En la pantalla Empezar a trabajar con la nueva aplicación,
seleccione el botón Explorar aplicación. Se abre el panel de la
aplicación.
Abrir y ver el panel y el informe
1. Vea el panel de la aplicación Marketing y ventas.
2. Seleccione el gráfico de columnas o los iconos del gráfico
de líneas para abrir el informe detallado asociado.
3. Para volver al panel, seleccione la flecha atrás en el
explorador.
Crear una alerta
1. En el panel de la aplicación Marketing y ventas, pase el
puntero sobre el icono de volumen total de la categoría
(esquina superior izquierda del lienzo) y seleccione los puntos
suspensivos "...".
2. Seleccione Administrar alertas.
3. Seleccione + Agregar regla de alertas.
4. Desplácese hacia abajo hasta el campo Umbral y escriba 49000.
5. Active la casilla de verificación Cada 24 horas como máximo.
6. Active la casilla de verificación Enviarme también un correo
electrónico.
7. Seleccione Guardar y cerrar.
Nota
3
Puesto que el volumen total de categoría ya está por encima de
49 000, recibirá un correo electrónico en 24 horas.
Agregar un comentario en el panel
1. Mueva el puntero sobre el icono Total de unidades (esquina
superior derecha), seleccione los puntos suspensivos "..." y, a
continuación, seleccione Agregar un comentario.
2. Agregue un comentario al icono del objeto visual, del tipo
"¿Incluiremos aquí el segmento de invierno?".
3. Seleccione Publicar y, a continuación, Cerrar.
4. Junto al título Total de unidades, seleccione el icono de
conversación que se acaba de aparecer para ver el comentario.
Opciones de visualización de informe y accesibilidad
Los informes se ven en muchos dispositivos diferentes, con
diferentes tamaños y aspectos de pantalla. El menú Ver tiene
muchas opciones que controlan cómo se muestra la página del
informe. Seleccione la opción más adecuada para el tamaño de
la pantalla, la audiencia o sus preferencias personales. Pruebe lo
siguiente:
1. Seleccione el icono Total de unidades para abrir el
informe asociado.
2. En la barra de menús superior, seleccione Ver.
3. Las tres primeras opciones controlan la presentación del
4
informe. Seleccione cada una de las tres opciones para
obtener información sobre cómo funcionan.
o Para mostrar la página del informe en el mayor tamaño
posible sin tener que recurrir a las barras de
desplazamiento, seleccione Ajustar a la página.
o Para ocupar todo el ancho del espacio disponible,
seleccione Ajustar al ancho.
o Para ver el informe en la mejor resolución (y si no le
importa la posibilidad de que haya barras de
desplazamiento dobles), seleccione Tamaño real.
4. Hay varias opciones de accesibilidad disponibles en el
menú Ver. Esta configuración hace que los informes sean
más fáciles de utilizar por personas con daltonismo u otros
problemas visuales. Desde el menú Ver,
seleccione Colores de alto contraste y elija una de las
opciones. En el ejemplo siguiente, hemos elegido Alto
contraste 2.
5
Nota
Para seguir el ejemplo de este vídeo, descargue el libro de Excel de
ejemplo aquí.
En esta unidad se explica cómo puede importar un archivo de libro de
Excel que contiene una tabla sencilla de una unidad local a Power BI.
Luego sabrá cómo empezar a explorar los datos de esa tabla en
Power BI mediante la creación de un informe.
Nota
Hasta ahora, hemos importado datos mediante Power BI
Desktop. Esta página de la unidad se realiza desde el servicio
Power BI.
Comprobación de que los
datos estén en formato de
tabla
Para que Power BI importe datos desde el libro, tienen que estar
en formato de tabla. En Excel, puede resaltar un rango de celdas
y, en la pestaña Insertar de la cinta de opciones de Excel,
seleccione Tabla.
Asegúrese de que cada columna tenga un nombre adecuado, lo
que le permitirá encontrar más fácilmente los datos que quiere
al crear los informes en Power BI.
2 Importar desde una
unidad local
No importa dónde conserve los archivos, Power BI simplificará su
importación. En Power BI, puede ir a Obtener datos > Archivos
> Archivo local para seleccionar el archivo de Excel que quiere.
Una vez que el archivo se importa a Power BI, puede empezar a
crear informes.
No es necesario que los archivos esté en una unidad local. Si
guarda los archivos en OneDrive o en el sitio del equipo de
SharePoint, mucho mejor.
Crear informes
Una vez que se importan los datos del libro, se crea un conjunto
de datos en Power BI, el que aparecerá en Conjuntos de datos.
Ahora puede empezar a explorar los datos mediante la creación
de informes y paneles. Seleccione el icono Abrir menú junto al
conjunto de datos y, luego, seleccione Explorar. Aparece un
lienzo de informe en blanco nuevo. A la derecha, en Campos,
están sus tablas y columnas. Seleccione los campos para el
usuario para el que quiere crear una visualización en el lienzo.
4 Puede cambiar el tipo de visualización y aplicar filtros y otras
propiedades en Visualizaciones.
Si usa cualquiera de las características de inteligencia empresarial
avanzadas de Excel, como Power Query, Power Pivot o
Power View, también puede importar esos datos en Power BI.
Para más información, consulte Obtención de datos de archivos
de libro de Excel.
Transformación de los
datos para incluirlos en un
informe
A veces, es posible que los datos tengan datos adicionales o
datos con formato incorrecto. Power BI Desktop incluye la
herramienta Editor de Power Query, que puede ayudarlo a darle
forma a los datos y a transformarlos, para que estén listos para
los modelos y las visualizaciones.
En esta unidad, transformará los datos con el Editor de
Power Query.
5
Nota
Para seguir los ejemplos de los vídeos y en esta página, descargue la
base de datos de Access de ejemplo aquí e impórtelo en Power BI
Desktop (Obtener datos > Base de datos > Base de datos de Access).
Inicio del Editor de Power
Query
Para empezar, seleccione Editar en la ventana Navegador para iniciar
el Editor de Power Query. También puede iniciar el Editor de
Power Query directamente desde Power BI Desktop con el botón
Editar consultas de la cinta de opciones Inicio.
Después de cargar los datos en el Editor de Power Query, verá la
pantalla siguiente.
1. En la cinta de opciones, los botones activos le permiten
interactuar con los datos de la consulta.
2. En el panel de la izquierda, se muestran las consultas (una
para cada tabla o entidad) y están disponibles para
seleccionarlas, verlas y darles forma.
3. En el panel del control, se muestran los datos de la consulta
seleccionada que ya están disponibles para darles forma.
4. La ventana Configuración de la consulta muestra las
propiedades de la consulta y los pasos aplicados.
Transformar datos
En el panel central, si se hace clic con el botón secundario en una
2
columna, se muestran las transformaciones disponibles. Entre los
ejemplos de las transformaciones disponibles se incluyen la
eliminación de una columna de la tabla, la duplicación de la columna
con un nombre nuevo o el reemplazo de los valores. En este menú,
también puede dividir las columnas de texto en múltiplos por
delimitadores comunes.
3 La cinta de opciones del Editor de Power Query contiene
herramientas adicionales que pueden ayudarlo a cambiar el tipo de
datos de las columnas, agregar una notación científica o extraer
elementos de las fechas, como puede ser un día de semana.
Sugerencia
Si comete un error, puede deshacer cualquier paso en la lista Pasos
aplicados.
A medida que aplica las transformaciones, cada paso aparece en la
lista Pasos aplicados del panel de configuración de consulta. Puede
usar esta lista para deshacer o revisar cambios específicos o, incluso,
cambiar el nombre de un paso. Para guardar las transformaciones,
seleccione Cerrar y aplicar en la pestaña Inicio.
Después de seleccionar Cerrar y aplicar, el Editor de Power Query
aplica los cambios de consulta y los aplica en Power BI Desktop.
Para más información, consulte Inicio rápido: Uso de Power Query en
4 Power BI Desktop .
Combinación de datos de
varios orígenes
Con Power BI Desktop, puede usar la herramienta Editor de
Power Query para combinar datos de varios orígenes en un único
informe.
En esta unidad, combinará datos de distintos orígenes mediante
el Editor de consultas.
5
Nota
Para seguir los ejemplos de los vídeos y en esta página, descargue la base
de datos de Access de ejemplo aquí e impórtelo en Power BI Desktop
(Obtener datos > Excel).
En la vista Modelo, fíjese en que un bloque representa cada tabla
y sus columnas, y que las líneas entre ellas representan
relaciones.
Agregar y quitar relaciones no tiene misterio. Para quitar una
relación, haga clic con el botón derecho en la relación y
seleccione Eliminar. Para crear una relación, arrastre y coloque
los campos que quiera vincular entre las tablas.
Para ocultar una tabla o una columna concreta del informe, haga
clic con el botón derecho en la tabla o columna en cuestión en la
vista de modelo y seleccione Ocultar en la vista de informes.
Para obtener una vista más detallada de las relaciones entre
datos, en la pestaña Inicio, seleccione Administrar relaciones.
En el cuadro de diálogo Administrar relaciones, las relaciones
aparecen como una lista en lugar de como un diagrama visual.
En este cuadro de diálogo, puede seleccionar Detección
automática para buscar relaciones en los datos nuevos o
actualizados. Seleccione Editar para editar las relaciones
manualmente. Encontrará opciones avanzadas en la sección
Editar para establecer la Cardinalidad y la Dirección de filtro
cruzado de las relaciones.
En la siguiente tabla se explican las opciones de cardinalidad.
Opciones de
cardinalidad Ejemplo
Varios a uno Relación predeterminada más habitual. La columna de
una tabla puede tener más de una instancia de un
valor. La tabla relacionada (o tabla de búsqueda) solo
tiene una instancia de un valor.
Opciones de
cardinalidad Ejemplo
Uno a uno La columna de una tabla solo tiene una instancia de
un valor determinado y la otra tabla relacionada, solo
una instancia de un valor determinado.
De forma predeterminada, estableceremos relaciones de filtro
cruzado en ambas direcciones. El filtrado cruzado en una sola
dirección limita algunas de las funcionalidades de modelado de
una relación.
Establecer unas relaciones precisas entre los datos permite crear
cálculos complejos en varios elementos de datos.
4
Para obtener más información, vea: Crear y administrar relaciones
en Power BI Desktop .
Creación de columnas
calculadas
A veces, los datos que está analizando no contienen un campo
que necesita. La respuesta puede estar en las columnas
calculadas. Para crear una columna calculada, puede transformar
dos o más elementos de datos existentes. Así, puede crear una
columna combinando dos columnas en una. Estas son las tareas
de esta unidad:
5
Nota
Para seguir los ejemplos de los vídeos y en esta página, descargue
la base de datos de Access de ejemplo aquí e impórtelo en
Power BI Desktop (Obtener datos > Excel).
Una razón para crear una columna calculada es establecer una
relación entre las tablas cuando no existe ningún campo único.
La falta de una relación es obvia cuando se crea un objeto visual
de tabla simple en Power BI Desktop y se obtiene el mismo valor
en todas las entradas.
Por ejemplo, para crear una relación con campos únicos en los
datos, puede crear una columna calculada denominada
"CountryZip", combinando para ello los valores de las columnas
País y Código postal.
Para crear una columna calculada, seleccione Vista de datos en
Power BI Desktop en el lado izquierdo del lienzo del informe.
2
Seleccione Nueva columna en la pestaña Modelado para
habilitar la barra de fórmulas. Puede especificar cálculos
mediante DAX (Lenguaje de expresiones de análisis de datos).
DAX es un lenguaje de fórmulas eficaz, que también se encuentra
en Excel, que permite crear cálculos en firme. A medida que
escriba una fórmula, Power BI Desktop mostrará fórmulas o
elementos de datos coincidentes a modo de ayuda para crear la
fórmula más rápidamente.
En la barra de fórmulas de Power BI se sugieren funciones DAX
específicas y columnas de datos relacionadas a medida que
escriba la expresión.
Una vez creadas las columnas calculadas en cada tabla, se
pueden usar como clave única para establecer una relación entre
ellas. Si va a la vista Relaciones, puede arrastrar el campo de una
tabla a la otra para crear la relación.
Cuando vuelva a la vista Informe, observe que aparece un valor
distinto en cada distrito.
4
Para obtener más información sobre las columnas calculadas,
incluido el uso de instrucciones IF, vea Tutorial: Creación de
columnas calculadas en Power BI Desktop .
Optimización de los
modelos de datos
Los datos importados suelen contener campos que no son
necesarios en las tareas de informes y visualización. Tales datos
pueden contener información innecesaria o estar disponibles en
otra columna. Power BI Desktop tiene herramientas para
optimizar los datos y hacer que sean más fáciles de usar a la hora
de crear informes y objetos visuales. Tareas de este módulo:
5
Nota
Actualmente, Preguntas y respuestas de Power BI solo puede
responder a consultas formuladas en inglés; sin embargo, existe
una versión preliminar para español que su administrador de
Power BI puede habilitar.
Exploración de Preguntas
y respuestas
Puede usar Preguntas y respuestas para explorar los datos
mediante funciones de lenguaje intuitivas y naturales de Power
BI y recibir respuestas en forma de gráficos.
1
Formular una pregunta
Formule una pregunta sobre sus datos en Preguntas y respuestas
con un lenguaje natural. Por lenguaje natural nos referimos al
lenguaje normal que los seres humanos usan para comunicarse
entre sí cada día. Por ejemplo: "¿Cuál es el total de unidades por
región?"
2 Preguntas y respuestas está disponible en paneles e informes de
Power BI. Para abrir la pantalla de Preguntas y respuestas, vaya al
panel y coloque el cursor en el cuadro de pregunta.
Si las etiquetas del eje y los valores de los objetos visuales
incluyen las palabras ventas, cuenta, mes y oportunidades, puede
formular preguntas con seguridad. Por ejemplo, "¿Qué cuenta
tiene la mayor oportunidad?" o "Mostrar las ventas por mes
como un gráfico de barras".
En el lateral de la pantalla se proporcionan otros elementos útiles.
Para cada conjunto de datos, Preguntas y respuestas muestra las
palabras clave y en ocasiones algunas sugerencias o ejemplos de
preguntas. Seleccione cualquiera de estos para agregarlos al
cuadro de pregunta.
Otra forma en que Preguntas y Respuestas le ayuda a formular
preguntas es mediante indicaciones, el completado automático
3
y pistas visuales.
Objetos visuales de
Preguntas y respuestas
Preguntas y respuestas escoge el mejor objeto visual en función
de los datos que se muestran. Por ejemplo, los números podrían
mostrarse como un gráfico de líneas, mientras que las ciudades
es más probable que se muestren como un mapa.
También puede indicar a Preguntas y respuestas qué objeto
visual debe utilizar agregándolo a su pregunta. Preguntas y
respuestas le facilitará una lista de tipos de objetos visuales
factibles. En el ejemplo anterior, podría preguntar, "¿Cuál es el
4 total de unidades por región en un gráfico circular?".
Para obtener más información, vea Creación de un objeto visual
con Preguntas y respuestas de Power BI .
Creación de sugerencias
de Preguntas y respuestas
personalizadas
Con Power BI, puede agregar sus propias sugerencias de preguntas
para otras personas que usen el cuadro de consulta de lenguaje
natural.
5
1
Uso de modelos de
aprendizaje profundo para
realizar predicciones sobre
datos especializados
BIENVENIDA
Use redes neuronales convolucionales y redes neuronales recurrentes
para analizar y predecir imágenes y texto con TensorFlow y Keras.
En este módulo, aprenderá a:
Aplicar redes neuronales convolucionales a datos de imagen.
Realizar predicciones de texto mediante redes neuronales
recurrentes.
Requisitos previos
Ninguno
2
Introducción 4 min
Aplicaciones comunes de aprendizaje profundo 3 min
Introducción a las CNN 5 min
Ejercicio: CNN 10 min
Revisión de las herramientas populares que se usan para el
aprendizaje profundo 3 min
Introducción a las RNN 5 min
Ejercicio: RNN 12 min
Resumen 2 min
INTRODUCCIÓN
El aprendizaje profundo ha experimentado un avance significativo en
los últimos años y se ha convertido en el área de última generación en
el campo de la inteligencia artificial. El aprendizaje profundo toma lo
que se ha hecho con las redes neuronales, lo amplía y lo mejora.
Es una familia de algoritmos de aprendizaje automático basados en
representaciones de datos de aprendizaje, en lugar de algoritmos que
resuelven específicamente una tarea. Por ejemplo, un modelo de visión
informática de aprendizaje profundo puede predecir objetos en una
3
imagen.
Del aprendizaje profundo procede todo el furor reciente sobre la
inteligencia artificial. Los últimos avances con el filtrado de redes
sociales, la visión informática, el reconocimiento de voz y el
procesamiento de lenguaje natural han generado aplicaciones fáciles
de usar que muchas usuarios utilizan en su vida diaria, puede que sin
ni siquiera saberlo.
El aprendizaje profundo usa variaciones de redes neuronales con varias
capas ocultas y en cada una transforma ligeramente los datos; en
última instancia, las distintas capas pueden reconocer características
diferentes, como un ojo en una imagen. Este proceso es la red neuronal
que aprende lo que representan los datos de entrada. Permite al
aprendizaje profundo obtener información sobre límites de clase
sofisticados y tendencias de datos que incluso los expertos humanos
podrían no ser capaces de aprender.
Los algoritmos de aprendizaje profundo pueden aprender por sí
mismos qué características se deben representar en cada capa de la
red. Pero la entrada del usuario determina el tamaño y el número de
capas ocultas y las funciones de activación que usan las capas.
Tipos de aprendizaje profundo
Las redes neuronales recurrentes (RNN) y las redes neuronales
profundas componen la mayoría de las aplicaciones de aprendizaje
profundo. Hay muchas variaciones de redes neuronales profundas para
adaptarse a distintas aplicaciones, pero en su núcleo son muy similares
a las redes neuronales que ya se han descrito.
4
Las RNN son una clase de red neuronal, que también se conoce como
modelos de secuencia. Son útiles para analizar y predecir datos que
están en una secuencia, como texto o música. Los avances en la
aplicación de RNN han ampliado correctamente su uso a videojuegos
complejos, como DotA 2.
Las redes neuronales profundas son redes neuronales con varias capas
ocultas; en ocasiones, las RNN se pueden considerar una red neuronal
profunda. Las redes neuronales convolucionales (CNN) son la otra
variante principal de las redes neuronales profundas que se usan en la
actualidad, principalmente para aplicaciones de visión informática,
pero también para reconocimiento de voz.
Las redes neuronales profundas son especialmente propensas al
sobreajuste y los tiempos de entrenamiento largos. Por este motivo, es
mejor dedicar una buena proporción del tiempo a preparar los datos,
para evitar entrenar un modelo durante dos días y después comprobar
que el conjunto de datos necesita más trabajo.
En este módulo, se realizará una introducción general de lo que existe
en el aprendizaje profundo y los tipos de problemas a los que se
podrían aplicar distintos tipos de modelos de aprendizaje profundo.
En este módulo, aprenderá a:
• Aplicar redes neuronales convolucionales a datos de imagen.
• Realizar predicciones de texto mediante redes neuronales
recurrentes.
5
1
Predicción de categorías con
la clasificación de aprendizaje
automático
BIENVENIDA
Use modelos de Machine Learning para clasificar datos. Cree un
modelo de regresión logística y modelos de máquinas de vectores de
soporte para predecir categorías como ganar o perder y especies de
árboles.
En este módulo, aprenderá a:
Definir una clasificación.
Crear modelos de máquinas de vectores de soporte y regresión
logística.
Describir en qué consisten el entrenamiento, el error irreducible
y el error de Bayes.
2
Requisitos previos
Ninguno
Introducción 4 min
Clasificación binaria con regresión logística 7 min
Ejercicio: regresión logística 8 min
Revisión de la función de costos y el descenso de gradiente 3
min
Predicción de categorías con máquinas de vectores de soporte
6 min
Ejercicio: máquinas de vectores de soporte 8 min
Análisis de la precisión del modelo con datos de prueba 5 min
Mejora de las predicciones de categorización con máquinas de
vectores de soporte 5 min
Ejercicio: máquinas de vectores de soporte avanzadas 12 min
Resumen 2 min
3
INTRODUCCIÓN
La clasificación se puede considerar como la organización de
ejemplos en categorías. En el gráfico siguiente se muestra una
regresión logística, un ejemplo de un algoritmo de clasificación, donde
los valores se clasifican en dos categorías: clientes satisfechos y clientes
insatisfechos.
A diferencia de la regresión, la línea no es la predicción. Por el contrario,
4
la línea divide los puntos de datos para predecir categorías. Por
ejemplo, un punto de datos a la izquierda de la línea se prediría como
la categoría de cliente insatisfecho, en azul. A la derecha de la línea
estaría la categoría de cliente satisfecho, en verde.
Si ha realizado alguna ciencia de datos antes, es posible que esté
acostumbrado a ver la regresión logística con una sola característica,
con la etiqueta en el eje Y.
La clasificación es diferente a la regresión, donde se intenta predecir
un número en lugar de una categoría. Si se quiere predecir la velocidad
a la que puede volar un pájaro o el precio de una vivienda, se trataría
de un problema de regresión. Predecir si un cliente está satisfecho o
insatisfecho es un problema de clasificación.
En este módulo, aprenderá a:
• Definir una clasificación.
• Crear modelos de máquinas de vectores de soporte y regresión
logística.
• Describir en qué consisten el entrenamiento, el error irreducible
y el error de Bayes.
Hay muchos modelos de clasificación diferentes que se pueden usar. A
continuación vamos a usar un algoritmo de clasificación sencillo pero
eficaz: la regresión logística.
5
1
Principales Cloud Services:
Opciones de
almacenamiento de datos de
Azure
BIENVENIDA
En este módulo se analizan las ventajas del almacenamiento de datos
de Azure frente al almacenamiento local.
En este módulo, aprenderá a:
• Inspeccionar las opciones de almacenamiento de datos de
Azure
• Examinar la forma en que Azure puede satisfacer las demandas
empresariales de almacenaje y análisis de datos
• Comparar las opciones de datos de Azure con el
almacenamiento local
2
Requisitos previos
Ninguno
Introducción 1 min
Ventajas del uso de Azure para almacenar datos 6 min
Cómo puede el almacenamiento de datos de Azure satisfacer
las necesidades empresariales de almacenamiento 8 min
Comparación entre el almacenamiento de datos de Azure y el
almacenamiento local 4 min
Prueba de conocimientos 5 min
Resumen 1 min
INTRODUCCIÓN
Imagine que administra un portal de aprendizaje de ventas en línea
para la organización. La mayor parte del equipo de ventas suele estar
repartido entre diferentes áreas geográficas, por lo que el portal de
aprendizaje en línea es un requisito esencial. Es incluso más importante
a medida que la organización continúa aumentando el entrenamiento
de mejora de las aptitudes y el conocimiento para el personal de
3 ventas.
Los datos de aprendizaje incluyen vídeo de alta calidad, simulaciones
de ventas detalladas y repositorios de gran tamaño para mantener los
datos y el progreso de los alumnos. En la actualidad, todo el contenido
de aprendizaje se almacena en una ubicación local. Tiene un plan
dinámico para agregar nuevos cursos y le gustaría evitar la necesidad
de aumentar constantemente la capacidad de almacenamiento local.
Busca una solución de almacenamiento que sea segura, duradera,
escalable y fácilmente accesible desde cualquier parte del mundo.
Azure proporciona características de almacenamiento que satisfarán
todas sus necesidades empresariales.
Objetivos de aprendizaje
En este módulo, aprenderá a:
• Inspeccionar las opciones de almacenamiento de datos en
Azure
• Descubrir cómo el almacenamiento de datos de Azure puede
satisfacer sus demandas empresariales
• Comparar Azure Storage con el almacenamiento local
4
VENTAJAS DEL USO DE
AZURE PARA
ALMACENAR DATOS
Para solucionar los problemas de almacenamiento del portal de
aprendizaje en línea, se está planteando la posibilidad de almacenar los
datos en la nube. Pero le preocupa la seguridad, las copias de
seguridad y la recuperación ante desastres. Además, le preocupa lo
complicado que puede resultar administrar los datos hospedados en la
nube. Esto es lo que debe saber.
Las opciones de almacenamiento de datos de Azure se basan en la
5
nube, son seguras y escalables. Sus características encaran los
principales desafíos que plantea el almacenamiento en la nube y
proporcionan una solución de almacenamiento confiable y duradera.
1
Servicios principales Cloud
Services: Introducción a
Azure
BIENVENIDA
Comience a usar Azure creando y configurando su primer sitio web en
la nube.
Objetivos de este módulo:
• Aprender qué es Microsoft Azure y cómo se relaciona con la
informática en la nube.
• Implementar un sitio web con Azure App Service.
• Aprender a escalar verticalmente el sitio web para ofrecer más
capacidad de proceso.
• Usar Azure Cloud Shell para interactuar con el sitio web
Introducción 1 min
¿Qué es Azure? 5 min
Paseo por los servicios de Azure 10 min
Ejercicio: Creación de un sitio web hospedado en Azure 7 min
Ejercicio: Configuración de una instancia de App Service 5 min
Ejercicio: Acceso a una instancia de App Service mediante
Azure Cloud Shell 4 min
Prueba de conocimientos 3 min
Resumen 1 min
INTRODUCCIÓN
Ha oído tecnicismos sobre la nube: escala, elasticidad, microservicios.
Quizás haya observado que otras empresas han tenido éxito con la
nube y se ha preguntado cómo podría ayudarle a cumplir sus retos
empresariales o, incluso, a avanzar en su profesión. ¿Sabía que más del
90 % de las empresas de Fortune 500 cuentan con Microsoft Cloud?
3
La nube le ayuda en su vida diaria y a menudo está presente de un
modo del que ni siquiera es consciente. En este nuevo mundo
conectado, creemos que la tecnología crea oportunidades. Para seguir
el ritmo del mundo digital en constante cambio, comprender la
tecnología de nube puede ayudar a alinear su carrera profesional con
esta emocionante revolución.
En menos tiempo del que se tarda en almorzar, creará y configurará su
primer sitio web en Azure, un bloque de creación esencial para todo,
desde la transformación digital hasta la siguiente gran startup.
Objetivos de este módulo:
• Aprender qué es Microsoft Azure y cómo se relaciona con la
informática en la nube.
• Implementar y configurar un servidor web.
• Aprender a escalar verticalmente el servidor para ofrecer
más capacidad de proceso.
• Usar Azure Cloud Shell para interactuar con el servidor web
4
¿QUÉ ES AZURE?
Azure es la plataforma de informática en la nube de Microsoft. Azure
es un conjunto de servicios en la nube en expansión constante que
ayudan a la organización a cumplir los desafíos empresariales actuales
y futuros. Azure le ofrece la libertad de compilar, administrar e
implementar aplicaciones en una red global masiva mediante sus
herramientas y plataformas favoritas.
5
EJERCICIO: REGRESIÓN
LINEAL SIMPLE
Se probará la regresión lineal simple en Azure Notebooks, mediante la
predicción de la satisfacción del cliente con distintas recetas de
chocolatinas.
En los ejercicios de este módulo se usa Azure Notebooks. Es un recurso
de uso gratuito.
Si los vínculos siguientes no funcionan, tiene que configurar una cuenta
gratuita de Azure Notebooks y clonar el proyecto para este módulo.
1 Vea el repositorio de Python en GitHub o el repositorio de R en
GitHub para obtener instrucciones para comenzar.
1. Los usuarios de Python deben ir a la biblioteca.
2. Seleccione el ejercicio 02. Linear Regression - [Link].
3. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
4. Los usuarios de R deben ir a la biblioteca.
5. Seleccione el ejercicio 02. Linear Regression - [Link].
6. Después, seleccione "Run on Free Compute" (Ejecutar en un
proceso gratuito).
PREDICCIÓN DE VALORES
CON LA REGRESIÓN
LINEAL MÚLTIPLE
La regresión lineal en la que se usan varias características se
denomina regresión lineal múltiple. La regresión lineal múltiple es
similar a la regresión lineal simple, pero en lugar de usar una
característica para predecir una etiqueta, usa varias.
Considere un escenario en el que trabaja para una agencia reguladora
pública. Es el responsable de identificar los vehículos diésel con
emisiones muy tóxicas. Quiere crear un modelo para predecir qué
2
vehículos son los que van a producir más emisiones. Estos vehículos
estarán sujetos a costosas pruebas de emisiones.
En una versión básica de este modelo predictivo se podrían usar dos
características para realizar la predicción: el peso y la potencia. En el
gráfico siguiente se muestra que, cuando se trabaja con dos
características de entrada, el ajuste se realiza a un plano en lugar de
una línea. Un plano se puede considerar una extrusión bidimensional
de una línea, por lo que esto se puede seguir considerando una
regresión "lineal".
Es habitual usar cientos o miles de características, pero es
prácticamente imposible visualizarlas en forma de gráfico si hay más
de tres dimensiones.
Elección de características para la regresión lineal múltiple
Puede seleccionar las características que se van a usar para entrenar los
modelos. Usar las características adecuadas permitirá que los modelos
sean más precisos. Normalmente, las características correctas son
aspectos relacionados con
lo que se quiere medir o
predecir. Por ejemplo, si
va a usar un modelo de
aprendizaje automático
3
para tratar de identificar la
raza de un perro, es
posible que características
como la cola, el peso, la
altura y la forma de las
orejas sean bastante útiles, mientras que la edad del perro
seguramente no lo sea.
En la mayoría de los tipos de aprendizaje automático, la selección
personal de las características es importante para crear modelos
precisos.
Las características deben aparecer repetidamente en el conjunto de
datos, ya que los modelos necesitan muchos ejemplos para poder
aprender. Si ha recopilado datos sobre tres especies de flores para
predecir la longitud de sus pétalos, no se recomienda agregar un solo
ejemplo de una nueva especie.
4
EJERCICIO: REGRESIÓN
LINEAL MÚLTIPLE
La regresión lineal múltiple se usa normalmente en la ciencia, se
ejecuta con rapidez y muchas herramientas modernas pueden
encargarse de forma automática de las partes más difíciles.
En los ejercicios de este módulo se usa Azure Notebooks. Es un recurso
de uso gratuito.
Si los vínculos siguientes no funcionan, tiene que configurar una cuenta
gratuita de Azure Notebooks y clonar el proyecto para este módulo.
Vea el repositorio de Python en GitHub o el repositorio de R en
5
GitHub para obtener instrucciones para comenzar.
1. Los usuarios de Python deben ir a la biblioteca.
2. Seleccione el ejercicio 03. Multiple Linear Regression -
[Link].
3. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
4. Los usuarios de R deben ir a la biblioteca.
5. Seleccione el ejercicio 03. Multiple Linear Regression - [Link].
6. Después, seleccione "Run on Free Compute" (Ejecutar en un
proceso gratuito).
PREDICCIONES EN DATOS
NO LINEALES MEDIANTE
LA REGRESIÓN
POLINÓMICA
La regresión lineal es fácil de usar, pero los conjuntos de datos más
complejos pueden
requerir algoritmos más
sofisticados. Muchos
conjuntos de datos de la
vida real requieren un
6
modelo no lineal. Por
ejemplo, en el gráfico
siguiente puede ver que
una línea recta no prevé
con precisión las ventas
de café.
Para obtener un análisis de regresión en el trazado anterior, la línea
recta no produciría predicciones muy precisas. Se puede usar un
algoritmo de regresión no lineal para modelar estos datos: regresión
polinómica.
En realidad, la regresión polinómica es una simple modificación de
varias regresiones lineales, lo que permite que la regresión lineal
coincida con conjuntos de datos no lineales.
Como la regresión polinómica y la regresión lineal múltiple son fáciles
y rápidas de usar, es habitual abordar los problemas de regresión
mediante el uso de los dos algoritmos para hacerse una idea del
rendimiento de diferentes algoritmos en el conjunto de datos.
Uso de modelos
complejos
Un polinomio es un tipo
de expresión
7 matemática que puede
ser costosa de calcular,
pero que se puede
ajustar a tendencias muy
complejas. Aunque el
uso de la regresión polinómica es muy similar a la regresión lineal
múltiple, en segundo plano el modelo es más elaborado. A medida que
aumenta el tiempo de entrenamiento cuando los modelos son más
complejos, es fundamental asegurarse de que los datos están en un
formato adecuado.
Para aumentar la posibilidad de tener un proyecto de inteligencia
artificial correcto, se debe asignar una gran parte del tiempo a la
recopilación y preparación iniciales de datos de calidad. Después de
asegurarse de que los datos son correctos, puede experimentar con
diferentes algoritmos para aumentar la precisión del modelo.
Los conjuntos de datos de calidad no contienen duplicados, y las
características correctas no contienen valores que faltan o puntos de
datos incorrectos. A menudo no faltan datos pero son incorrectos,
como tener un 0 para la altura de un niño. Puede ahorrar mucho tiempo
si comprueba los puntos de datos inexactos o incorrectos al principio,
como tener un valor negativo en una columna de valores que solo
deberían ser positivos.
A continuación se creará un modelo de regresión polinómica en Azure
Notebooks.
8
EJERCICIO: REGRESIÓN
POLINÓMICA
En los ejercicios de este módulo se usa Azure Notebooks. Es un
recurso de uso gratuito.
Si los vínculos siguientes no funcionan, tiene que configurar una cuenta
gratuita de Azure Notebooks y clonar el proyecto para este módulo.
Vea el repositorio de Python en GitHub o el repositorio de R en
GitHub para obtener instrucciones para comenzar.
1. Los usuarios de Python deben ir a la biblioteca.
9 2. Seleccione el ejercicio 04. Polynomial Regression -
[Link].
3. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
4. Los usuarios de R deben ir a la biblioteca.
5. Seleccione el ejercicio 04. Polynomial Regression - [Link].
6. Después, seleccione "Run on Free Compute" (Ejecutar en un
proceso gratuito).
RESUMEN
En este módulo, se han presentado la regresión y el modelado de
conjuntos de datos mediante modelos de regresión. Ha visto los
conceptos fundamentales de regresión, regresión lineal simple,
regresión lineal múltiple y regresión polinómica.
10 Ahora que ha revisado este módulo, debe ser capaz de:
• Definir la regresión.
• Crear modelos predictivos con variaciones de regresión lineal.
• Realizar predicciones en datos no lineales con regresión.
Enhorabuena, este es el final del módulo. En el siguiente, se realizará
una introducción a la clasificación.
EJERCICIO: MÁQUINAS DE
VECTORES DE SOPORTE
En los ejercicios de este módulo se usa Azure Notebooks. Es un
recurso de uso gratuito.
Si los vínculos siguientes no funcionan, tiene que configurar una cuenta
gratuita de Azure Notebooks y clonar el proyecto para este módulo.
Vea el repositorio de Python en GitHub o el repositorio de R en
GitHub para obtener instrucciones para comenzar.
1. Los usuarios de Python deben ir a la biblioteca.
1
2. Seleccione el ejercicio 06. Support Vector Machines -
[Link].
3. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
4. Los usuarios de R deben ir a la biblioteca.
5. Seleccione el ejercicio 06. Support Vector Machines - [Link].
6. Luego seleccione Run on Free Compute (Ejecutar en un
proceso gratuito).
ANÁLISIS DE LA
PRECISIÓN DEL MODELO
CON DATOS DE PRUEBA
Se necesitan datos de entrenamiento para entrenar un modelo. Una
vez entrenado, es necesario comprobar cómo funciona el modelo con
otros conjuntos de datos similares. Para probar esto en un modelo, se
necesitan datos de prueba independientes.
Es posible evaluar las predicciones de modelos entrenados con datos
de prueba. Como se dispone de etiquetas reales de los datos de
prueba, se puede comparar la etiqueta que predice un modelo con la
2
etiqueta real. Esto da la precisión del modelo en los datos en los que
no se ha entrenado e indica si es tan bueno en los datos nuevos como
lo era en los datos de entrenamiento.
Cuanto mayor sea el conjunto de entrenamiento, más preciso puede
ser el modelo en general. Cuanto mayor sea el conjunto de prueba,
más confianza se puede tener en la precisión del modelo con nuevos
datos. Así, cuantos más datos haya, mejor.
Normalmente se empieza con un conjunto de datos grande y se divide
en datos de entrenamiento y de prueba. La cantidad de datos que se
destina a pruebas y entrenamiento es diferente para cada aplicación,
aunque es normal empezar por asignar aproximadamente el 80 % de
los datos a entrenamiento y el 20 % a pruebas.
Sobreajuste
La mayoría de los conjuntos de datos tienen ruido: fluctuaciones
irregulares que no interesan y pueden ocultar lo que se intenta medir
o visualizar. Si se recopilan dos conjuntos de datos del mismo tema
(por ejemplo, tamaño de las hojas frente a circunferencia del tronco),
estos conjuntos de datos deben tener aproximadamente la misma
relación entre variables, aunque ruido diferente. El sobreajuste se
produce cuando se entrena un modelo de forma tan intensiva en los
3
datos de entrenamiento que no solo aprende el patrón que interesa,
sino también el ruido de ese conjunto de datos concreto. Dado que el
ruido es completamente diferente entre conjuntos de datos, eso
significa que el modelo no funciona bien en otros conjuntos de
datos. En la práctica, un modelo muestra sobreajuste cuando tiene
una alta precisión en un conjunto de entrenamiento y una baja
precisión en el conjunto de prueba.
La línea negra del gráfico siguiente es un ejemplo de sobreajuste. La
línea roja es más generalizada. Aunque la línea roja puede ser menos
precisa que la línea verde en el conjunto de entrenamiento, en el
conjunto de prueba y en futuros conjuntos de datos proporciona un
resultado mucho mejor.
4
El sobreajuste tiende a verse favorecido por dos factores principales.
En primer lugar, puede ser más probable cuando los conjuntos de
datos de entrenamiento son demasiado pequeños o no tienen
suficiente varianza como para ser plenamente representativos de datos
del mundo real. En segundo lugar, es más probable que se produzca
sobreajuste en modelos que son complejos que en aquellos que son
sencillos. En términos generales, cuanto más complejo es un modelo,
más datos de entrenamiento se necesitan para evitar el sobreajuste.
Pero se debe encontrar un equilibrio, porque si un modelo se vuelve
demasiado simple, tampoco se va a ajustar bien a los datos de
entrenamiento o de prueba.
Ajuste deficiente
Los modelos que son demasiado sencillos o no tienen el suficiente
entrenamiento no pueden encontrar verdaderas relaciones en los
datos. Esto se denomina ajuste deficiente y se refleja en una mala
precisión tanto en los datos de entrenamiento como en los de prueba.
El ajuste deficiente suele producirse cuando no hay suficientes datos
de entrenamiento, cuando no se usan características útiles o cuando el
tipo de modelo no es adecuado para los datos disponibles. Por
ejemplo, el gráfico siguiente muestra un ajuste deficiente en un modelo
lineal que intenta predecir un problema no lineal. Aunque la línea
separa un poco los puntos verdes y azules, es probable que una línea
no lineal funcione mejor.
Para solucionar problemas de ajuste deficiente, puede pasar a un
algoritmo más complejo (como una SVM), obtener más datos de
entrenamiento o agregar más características al conjunto de datos.
Calidad de los datos
La mayor parte del trabajo de creación de un sistema de IA es pensar
qué datos se necesitan, cómo obtenerlos y, de vital importancia,
evaluar la calidad de los datos. La detección de valores que faltan o son
incorrectos y la eliminación o la corrección de los datos se
denominan limpieza de datos.
En el aprendizaje automático y en las estadísticas es habitual tener
conjuntos de datos a los que les faltan valores. Pero es importante
tener cuidado a la hora de tratar estos valores que faltan. Por ejemplo,
imagine que estamos trabajando con resultados de pruebas médicas.
No se realizan todas las pruebas médicas posibles en cada persona, lo
que deja espacios en blanco en el conjunto de datos. Es importante ser
cuidadoso con estas entradas vacías. Si se usa un 0, por ejemplo, si no
6
se ha realizado ninguna prueba de presión sanguínea, y se alimenta un
modelo de IA con estos datos, ese modelo asume que algunas
personas tienen mediciones de presión sanguínea de 0 mm/Hg. Es
probable que esto signifique que el modelo de Machine Learning no
funcione bien
Uso de una arquitectura de n niveles
Un patrón de arquitectura que se puede usar para compilar sistemas
de acoplamiento flexible es de n niveles.
Una arquitectura de n niveles divide una aplicación en dos o más
niveles lógicos. Desde el punto de vista de la arquitectura, un nivel
superior puede acceder a los servicios de un nivel inferior, pero este
último no podrá acceder nunca a un nivel superior.
Los niveles ayudan a separar los problemas y están diseñados
específicamente para reutilizarse. El uso de una arquitectura con niveles
también simplifica el mantenimiento. Los niveles se pueden actualizar
o reemplazar de forma independiente, y se pueden insertar nuevos
niveles si es necesario.
1
Tres niveles hace referencia a una aplicación de n niveles que consta de
tres niveles. La aplicación web de comercio electrónico sigue esta
arquitectura de tres niveles:
El nivel web proporciona la interfaz web a los usuarios a través
de un navegador.
El nivel de aplicación ejecuta la lógica de negocios.
El nivel de datos incluye las bases de datos y cualquier otro
tipo de almacenamiento que contenga pedidos del cliente e
información de los productos.
En la ilustración siguiente se muestra el flujo de una solicitud desde el
usuario al nivel de datos.
2
Cuando el usuario hace clic en el botón para realizar el pedido, la
solicitud se envía al nivel web junto con la dirección del usuario y la
información de pago. El nivel web pasa esta información al nivel de
aplicación, en el que se validará la información de pagos y se
comprobará el inventario. El nivel de aplicación puede almacenar el
pedido en el nivel de datos para su posterior captura y procesamiento.
El sitio de comercio electrónico que se ejecuta en Azure
Azure proporciona muchas formas diferentes de hospedar aplicaciones
web, desde entornos completamente preconfigurados que hospedan
el código a máquinas virtuales que se pueden configurar, personalizar
y administrar.
Supongamos que decide ejecutar el sitio de comercio electrónico en
máquinas virtuales. Este podría ser su aspecto en el entorno de prueba
que se ejecuta en Azure. En la ilustración siguiente se muestra una
arquitectura de tres niveles que se ejecuta en máquinas virtuales con
características de seguridad habilitadas para restringir las solicitudes
entrantes.
3
4
Vamos a analizar esto más detalladamente.
¿Qué es una región de Azure?
Una región es uno o varios centros de datos de Azure dentro de una
ubicación geográfica específica. Este de EE. UU., Oeste de EE. UU. y
5
Europa del Norte son ejemplos de regiones. En esta instancia, ve que
la aplicación se está ejecutando en la región Este de EE. UU.
¿Qué es una red virtual?
Una red virtual es una red aislada lógicamente en Azure. Las redes
virtuales de Azure le resultarán familiares si ya ha configurado redes en
Hyper-V, VMware o incluso en otras nubes públicas. Una red virtual
permite que los recursos de Azure se comuniquen de forma segura
entre ellos, con Internet y con las redes locales. El ámbito de una red
virtual es una sola región; pero se pueden conectar entre sí varias redes
virtuales de otras regiones mediante el emparejamiento de red virtual.
Las redes virtuales se pueden segmentar en una o más subredes. Las
subredes ayudan a organizar y proteger los recursos en secciones
discretas. Los niveles web, de aplicación y de datos incluyen una sola
máquina virtual cada uno. Las tres máquinas virtuales están en la misma
red virtual, pero en subredes independientes.
6
Los usuarios interactúan con el nivel web directamente, por lo que la
máquina virtual tiene una dirección IP pública junto a una privada. Los
usuarios no interactúan con los niveles de aplicación ni de datos, por
lo que estas máquinas virtuales solo tienen una dirección IP privada
cada una.
También puede mantener los niveles de servicio o datos en la red local,
colocando su nivel web en la nube, pero manteniendo un control
estricto sobre otros aspectos de la aplicación. Una puerta de enlace
VPN (o puerta de enlace de red virtual) habilita este escenario. Puede
proporcionar una conexión segura entre una instancia de Azure Virtual
Network y una ubicación local a través de Internet.
Azure administra el hardware físico de forma automática. Puede
configurar las redes virtuales y las puertas de enlace mediante software,
lo que permite tratar una red virtual como si fuera una red propia. Se
elige a qué otras redes puede llegar la red virtual, ya sea Internet u
otras redes del espacio de direcciones IP privado.
7
¿Qué es un grupo de seguridad de red?
Un grupo de seguridad de red, o NSG, permite o deniega el tráfico de
red entrante a los recursos de Azure. Puede considerar un grupo de
seguridad de red como un firewall en el nivel de nube de la red.
Por ejemplo, observe que la máquina virtual de la capa web permite el
tráfico entrante en los puertos 22 (SSH) y 80 (HTTP). Este grupo de
seguridad de red de la máquina virtual permite el tráfico entrante a
través de estos puertos de todos los orígenes. Puede configurar un
grupo de seguridad de red para que acepte tráfico únicamente de
orígenes conocidos, como direcciones IP en las que confíe.
Nota
El puerto 22 le permite conectarse directamente a los sistemas Linux a
través de SSH. Aquí se muestra el puerto 22 abierto con fines de
aprendizaje. En la práctica, puede configurar el acceso VPN a la red
virtual para aumentar la seguridad.
8
RESUMEN
Ahora, la aplicación de tres niveles se ejecuta en Azure en la región Este
de EE. UU. Una región es uno o varios centros de datos de Azure dentro
de una ubicación geográfica específica.
Cada nivel solo puede acceder a los servicios de un nivel inferior. La
máquina virtual que se ejecuta en el nivel web tiene una dirección IP
pública porque recibe tráfico de Internet. Las máquinas virtuales de los
niveles inferiores (de aplicación y de datos), tienen direcciones IP
privadas porque no se comunican directamente a través de Internet.
Las redes virtuales permiten agrupar y aislar sistemas relacionados.
Puede definir grupos de seguridad de red para controlar qué tráfico
puede pasar a través de una red virtual.
9
La configuración que ha visto aquí es un buen punto de partida. Pero
cuando implemente el sitio de comercio electrónico en producción en
la nube, es probable que experimente los mismos problemas que
experimentó en la implementación local.
ESCALADO CON AZURE
LOAD BALANCER
Ahora ya tiene el sitio en funcionamiento en Azure. Pero, ¿cómo puede
asegurarse de que el sitio funcione 24 horas al día los 7 días de la
semana?
Por ejemplo, ¿qué ocurre cuando se necesita realizar el mantenimiento
semanal? El servicio no estará disponible durante el período de
mantenimiento. Y dado que usuarios de todo el mundo utilizan el sitio,
no hay ninguna hora buena para efectuar el mantenimiento de los
sistemas. También se pueden producir problemas de rendimiento si se
1
conectan demasiados usuarios al mismo tiempo.
¿Qué son la disponibilidad y la alta disponibilidad?
Disponibilidad se refiere a cuánto tiempo está el servicio en
funcionamiento sin interrupciones. Alta disponibilidad, o altamente
disponible, hace referencia a un servicio que está en funcionamiento
durante un largo período de tiempo.
Sabe lo frustrante que es no poder acceder a la información que
necesita. Piense en las redes sociales o los sitios de noticias que visita
a diario. ¿Puede acceder siempre al sitio o recibe a menudo mensajes
de error del tipo "503 Servicio no disponible"?
Quizás ha escuchado hablar de términos como "cinco nueves de
disponibilidad". "Cinco nueves de disponibilidad" significa que se
garantiza que el servicio estará operativo un 99,999 por ciento del
tiempo. Aunque es difícil lograr una disponibilidad del 100 por cien,
muchos equipos procuran alcanzar al menos los cinco nueves.
2
¿Qué es la resistencia?
Resistencia hace referencia a la capacidad de un sistema de permanecer
operativo en situaciones irregulares.
Entre estas condiciones se incluyen:
• Desastres naturales
• Mantenimiento del sistema, planeado o no, incluidas las
actualizaciones de software y las revisiones de seguridad.
• Picos de tráfico hacia el sitio
• Amenazas efectuadas por usuarios malintencionados como,
por ejemplo, ataques por denegación de servicio distribuido o
DDoS
Imagine que el equipo de marketing quiere hacer una oferta especial
para promocionar una nueva línea de suplementos vitamínicos. Es
probable que se produzca un gran pico de tráfico durante este tiempo.
3 Este pico podría saturar el sistema de procesamiento y hacer que se
haga más lento o que se detenga, lo cual podría provocar la decepción
de los usuarios. Es posible que haya experimentado esta decepción
usted mismo. ¿Ha intentado alguna vez acceder a una venta en línea y
se ha encontrado con que el sitio web no responde?
¿Qué es un equilibrador de carga?
Un equilibrador de carga distribuye el tráfico uniformemente entre
todos los sistemas de un grupo. Un equilibrador de carga le puede
4
ayudar a lograr alta disponibilidad y resistencia.
Supongamos que empieza por agregar máquinas virtuales adicionales,
cada una de ellas configurada de forma idéntica, a todos los niveles. La
idea es tener sistemas adicionales listos en caso de que uno deje de
funcionar o esté atendiendo a demasiados usuarios al mismo tiempo.
El problema es que cada máquina virtual tendría su propia dirección IP.
Además, no tiene forma de distribuir el tráfico en caso de que un
sistema deje de funcionar o esté ocupado. ¿Cómo puede conectar las
máquinas virtuales para que parezcan un solo sistema al usuario?
La respuesta es usar un equilibrador de carga para distribuir el tráfico.
Este se convierte en el punto de entrada para el usuario. El usuario no
sabe (ni es necesario que lo haga) qué sistema elige el equilibrador de
carga para recibir la solicitud.
En la ilustración siguiente se muestra el rol del equilibrador de carga.
El equilibrador de carga recibe la solicitud del usuario y la dirige a una
de las máquinas virtuales del nivel web. Si una máquina virtual no está
disponible o no responde, el equilibrador de carga dejará de enviarle
5
tráfico. En ese caso, el equilibrador de carga dirigirá el tráfico a uno de
los servidores con capacidad de respuesta.
El equilibrio de carga le permite ejecutar tareas de mantenimiento sin
interrumpir el servicio. Por ejemplo, puede alternar el período de
mantenimiento de cada máquina virtual. Durante el período de
mantenimiento, el equilibrador de carga detecta que la máquina virtual
no responde y dirige el tráfico a otras máquinas virtuales del grupo.
Para el sitio de comercio electrónico, los niveles de aplicación y de
datos también pueden tener un equilibrador de carga. Todo depende
de lo que requiera el servicio.
¿Qué es Azure Load Balancer?
Azure Load Balancer es un servicio de equilibrador de carga
proporcionado por Microsoft que se ocupa del mantenimiento
automáticamente. Load Balancer admite escenarios de entrada y de
salida, proporciona baja latencia y alto rendimiento, y puede escalar
hasta millones de flujos para todas las aplicaciones de Protocolo de
control de transmisión (TCP) y Protocolo de datagramas de usuario
(UDP). Puede usar Load Balancer con el tráfico entrante de Internet, el
tráfico interno a través de los servicios de Azure, enrutamiento de
puerto para tráfico específico o conectividad de salida para las
máquinas virtuales de la red virtual.
La configuración manual de un software de equilibrador de carga típico
en una máquina virtual tiene una desventaja: ahora tiene un sistema
6
adicional que necesita mantener. Si el equilibrador de carga deja de
funcionar o necesita un mantenimiento rutinario, volverá a tener el
problema original.
Pero si usa Azure Load Balancer en su lugar, no hay ninguna
infraestructura ni software que mantener. Las reglas de reenvío se
definen en función del puerto y la dirección IP de origen a un conjunto
de puertos y direcciones IP de destino.
En la ilustración siguiente se muestra el rol de los equilibradores de
carga de Azure en una arquitectura de varios niveles.
7
Azure Application Gateway
Si todo el tráfico es HTTP, una mejor opción consiste en usar Azure
Application Gateway. Application Gateway es un equilibrador de carga
diseñado para las aplicaciones web. Usa Azure Load Balancer en el nivel
de transporte (TCP) y aplica sofisticadas reglas de enrutamiento
basadas en direcciones URL para admitir varios escenarios avanzados.
8 Este tipo de enrutamiento se conoce como equilibrio de carga de la
capa de aplicación (capa OSI 7), ya que entiende la estructura del
mensaje HTTP.
Estas son algunas de las ventajas del uso de Azure Application Gateway
a través de un equilibrador de carga simple:
Afinidad de cookies. Resulta útil cuando se quiere mantener
una sesión de usuario en el mismo servidor back-end.
Terminación de SSL. Application Gateway puede administrar
los certificados SSL y pasar tráfico sin cifrar a los servidores
back-end para evitar la sobrecarga del cifrado y el descifrado.
También admite el cifrado de un extremo a otro para las
aplicaciones que lo requieran.
Firewall de aplicaciones web. Application Gateway admite un
firewall de aplicaciones web (WAF) sofisticado con supervisión
y registro detallados para detectar ataques malintencionados
contra la infraestructura de red.
Rutas basadas en reglas de dirección URL. Application
Gateway permite enrutar el tráfico en función de patrones de
URL, dirección IP y puerto de origen a la dirección IP y puerto
de destino. Esto resulta útil cuando se configura una red de
entrega de contenido.
Reescritura de encabezados HTTP. Puede agregar o quitar
información de los encabezados HTTP de entrada y salida de
cada solicitud para habilitar escenarios de seguridad
importantes, o bien eliminar información confidencial como los
9
nombres de servidor.
¿Qué es una red de entrega de contenido?
Una red de entrega de contenido (CDN) es una red distribuida de
servidores que puede proporcionar contenido web a los usuarios de
manera eficaz. Es una forma de proporcionar contenido a los usuarios
en su región local para minimizar la latencia. La CDN se puede
hospedar en Azure o en cualquier otra ubicación. El contenido se puede
almacenar en caché en nodos físicos estratégicamente ubicados en
todo el mundo y así proporcionar un mejor rendimiento para los
usuarios finales. Entre los escenarios de uso típicos se incluyen
aplicaciones web que contengan contenido multimedia, un evento de
lanzamiento de un producto en una región determinada o cualquier
evento en el que se espera un requisito de mayor ancho de banda en
una región determinada.
¿Qué sucede con DNS?
10
DNS o Sistema de nombres de dominio, es una forma de asignar
nombres descriptivos a sus direcciones IP. DNS se puede considerar
como la agenda de teléfonos de Internet.
Por ejemplo, su nombre de dominio, [Link], se podría asignar a
la dirección IP del equilibrador de carga en el nivel web, [Link].
Puede aportar su propio servidor DNS o usar Azure DNS, un servicio
de hospedaje para dominios DNS que se ejecuta en la infraestructura
de Azure.
En la ilustración siguiente se muestra Azure DNS. Cuando el usuario
navega a [Link], Azure DNS enruta el tráfico al equilibrador de
carga.
11
RESUMEN
Con el equilibrio de carga en funcionamiento, el sitio de comercio
electrónico tiene ahora una alta disponibilidad y resistencia. Si realiza
tareas de mantenimiento o recibe un repunte del tráfico, el equilibrador
de carga puede distribuir el tráfico a otro sistema disponible.
Aunque puede configurar su propio equilibrador de carga en una
máquina virtual, Azure Load Balancer reduce el mantenimiento ya que
12 no hay ninguna infraestructura o software que mantener.
DNS asigna nombres descriptivos a las direcciones IP, de forma
parecida a como una agenda de teléfonos asigna nombres de personas
o empresas a números de teléfono. Puede aportar su propio servidor
DNS o usar Azure DNS.
REDUCCIÓN DE LA
LATENCIA CON AZURE
TRAFFIC MANAGER
Anteriormente ha visto cómo Azure Load Balancer ayuda a lograr
una alta disponibilidad y a minimizar los tiempos de inactividad.
Aunque el sitio de comercio electrónico tiene una alta disponibilidad,
esto no soluciona el problema de la latencia o de la aparición de
resistencia entre diferentes regiones geográficas.
1
¿Cómo puede hacer que su sitio, que se encuentra en Estados Unidos,
se cargue más rápido para los usuarios que se encuentran en Europa o
en Asia?
¿Qué es la latencia de red?
La Latencia hace referencia al tiempo que tardan los datos en viajar a
través de la red. La latencia normalmente se mide en milisegundos.
Compare la latencia con el ancho de banda. El ancho de banda hace
referencia a la cantidad de datos que caben en la conexión. La latencia
se refiere al tiempo que tardan esos datos en llegar a su destino.
Factores como el tipo de conexión que usa y cómo está diseñada la
aplicación pueden afectar la latencia. Pero quizás el factor más
importante es la distancia.
Piense que su sitio de comercio electrónico en Azure se encuentra en
la región Este de EE. UU. Normalmente se debería tardar menos tiempo
en transferir datos a Atlanta (a una distancia aproximada de 650
kilómetros) que en transferirlos a Londres (a una distancia aproximada
2 de 6500 kilómetros).
El sitio de comercio electrónico incluye HTML estándar, CSS, JavaScript
e imágenes. En caso de que el sitio tenga muchos archivos la latencia
de red puede aumentar. ¿Cómo se puede reducir la latencia para los
usuarios que se encuentran lejos geográficamente?
Escalado horizontal en diferentes regiones
Recuerde que Azure ofrece centros de datos en regiones de todo el
mundo.
Piense en el costo de crear un centro de datos. Los costos de
equipamiento no son el único factor. Debe proporcionar energía,
refrigeración y personal para mantener los sistemas en funcionamiento
3 en cada ubicación. Puede ser prohibitivo replicar su centro de datos
por completo. Pero si lo hace con Azure puede costar mucho menos
porque Azure ya dispone del equipamiento y del personal.
Una manera de reducir la latencia es proporcionar copias exactas de su
servicio en más de una región. En la siguiente ilustración se muestra un
ejemplo de una implementación global.
En el diagrama se muestra el sitio de comercio electrónico en ejecución
en tres regiones de Azure: Este de EE. UU., Europa del Norte y Asia
Pacífico. Observe el nombre de DNS para cada uno. ¿Cómo puede
conectar los usuarios al servicio más cercano desde el punto de vista
geográfico, pero en el dominio [Link]?
Uso de Traffic Manager para enrutar a los usuarios al punto de
conexión más cercano
Una respuesta es Azure Traffic Manager. Traffic Manager usa el
servidor DNS que está más próximo al usuario para dirigir el tráfico de
usuario a un punto de conexión distribuido globalmente.
En la ilustración siguiente se muestra el rol de Traffic Manager.
Traffic Manager no ve el tráfico que circula entre el cliente y el servidor.
En su lugar, dirige al explorador web del cliente a un punto de conexión
preferido. Traffic Manager puede enrutar tráfico de varias formas
diferentes como, por ejemplo, al punto de conexión con la latencia más
baja.
Aunque no aparece aquí, esta configuración también puede incluir la
5
implementación local en ejecución en California. Puede conectar Traffic
Manager a sus propias redes locales, lo cual le permite mantener la
inversión ya existente en el centro de datos. O bien, puede mover la
aplicación por completo a la nube. La elección es suya.
Comparación entre Azure Load Balancer y Traffic Manager
Azure Load Balancer distribuye el tráfico dentro de la misma región
para hacer que los servicios tengan alta disponibilidad y resistencia.
Traffic Manager funciona en el nivel de DNS y dirige al cliente a un
punto de conexión preferido. Este punto de conexión puede estar en
la región más cercana al usuario.
Ambos, Load Balancer y Traffic Manager, le ayudan a que los servicios
sean más resistentes, pero de forma ligeramente distintas. Cuando
Load Balancer detecta una máquina virtual que no responde, dirige el
tráfico a otra máquina virtual del grupo. Traffic Manager supervisa el
estado de los puntos de conexión. Cuando Traffic Manager encuentra
un punto de conexión que no responde, dirige el tráfico al siguiente
punto de conexión más cercano que responda.
Resumen de reducción de la latencia con Azure Traffic Manager
6
La distancia geográfica es uno de los factores más importantes que
contribuye a la latencia. Con Traffic Manager en funcionamiento, puede
hospedar copias exactas de su servicio en varias regiones geográficas.
De este modo, los usuarios de Estados Unidos, Europa y Asia tienen
todos una buena experiencia al usar el sitio de comercio electrónico.
RESUMEN
Ha aprendido tan solo algunas de las formas en que los servicios de
red de Azure pueden ayudar a reducir la latencia y a hacer que las
aplicaciones y los servicios tengan una mayor disponibilidad.
Con el equilibrio de carga y la distribución global en marcha, el sitio de
comercio electrónico está listo para presentarse al mundo. Los usuarios
acceden al dominio que está más cercano geográficamente. Cada
7 dominio tiene conmutación por error integrada, lo cual ayuda a que
todos los usuarios tengan una gran experiencia. Las cifras ya muestran
un aumento del tráfico y el negocio está en alza.
Ahora echemos un vistazo más de cerca a los servicios en aplicaciones
y agentes inteligentes. Algunos de estos servicios están integrados en
los modelos de IA existentes, pero también puede usar sus datos para
construir y entrenar automáticamente algoritmos que se ajusten a sus
necesidades.
Servicios cognitivos de azure
Los servicios cognitivos son una colección de modelos de IA pre-
entrenados específicos de dominio que se pueden personalizar con sus
datos. Se clasifican en términos generales en visión, habla, lenguaje y
búsqueda. Para obtener más información sobre cada servicio, consulte
los enlaces en la sección de recursos.
1
Servicio de bot de Azure
Un bot, o agente de IA, es un programa de computadora diseñado para
imitar las acciones de una persona. Es un software que puede ejecutar
comandos, responder mensajes o realizar tareas rutinarias como
búsquedas en línea, ya sea automáticamente o con mínima
intervención humana, y a menudo se usa en combinación.
Azure Bot Service , que habilita agentes de IA, es un marco poderoso
para acelerar el desarrollo de bots utilizando un entorno integrado y
plantillas preconstruidas. Proporciona herramientas para construir,
probar, implementar y administrar bots inteligentes, todo en un solo
lugar. A través del marco modular y extensible proporcionado por el
Kit de desarrollo de software (SDK), los desarrolladores pueden
Vision hace posible que las aplicaciones y los
servicios identifiquen y analicen con precisión
el contenido de las imágenes y los videos.
Visión
Los servicios de voz pueden convertir el
lenguaje hablado en texto, o producir una
voz con sonido natural a partir del texto
usando fuentes de voz estándar (o
Habla
personalizables).
Los servicios de idiomas pueden comprender
el significado del texto no estructurado o
2 reconocer la intención del hablante.
Idioma
Los servicios de conocimiento crean ricos
recursos de conocimiento que se integran en
aplicaciones y servicios.
Conocimiento
Habilite las aplicaciones y los servicios para
aprovechar el poder de un motor de
búsqueda sin anuncios a escala web. Use los
servicios de búsqueda para encontrar
Buscar
información en miles de millones de páginas
web, imágenes, videos y resultados de
búsqueda de noticias.
aprovechar las plantillas para crear bots que brinden comprensión del
habla, lenguaje, preguntas y respuestas, y más.
Puede combinar las capacidades de Azure Cognitive Services con
nuestro servicio Azure Bot y atraer a su audiencia fácilmente a través
de múltiples canales.
Exploremos algunos escenarios clave relacionados con el Servicio de
bot de Azure: agentes de comercio, bots de información y bots de
productividad. Con cada escenario, revise el diagrama para ver cómo
los componentes y servicios subyacentes trabajan juntos para habilitar
3
las capacidades de IA.
Explore los escenarios de aplicaciones y agentes de Azure
Agente de comercio
Juntos, los servicios Azure Bot Service y Language Understanding
permiten a los desarrolladores crear interfaces de conversación para
diversos escenarios en la banca, los viajes, el entretenimiento y otras
industrias. Por ejemplo, el conserje de un hotel puede usar un bot para
mejorar el correo electrónico tradicional y las interacciones telefónicas
al validar a un cliente a través de Azure Active Directory y luego usar
Azure Cognitive Services para procesar mejor las solicitudes de los
clientes de manera contextual mediante texto y voz. El servicio de
reconocimiento de voz se puede agregar para admitir comandos de
voz.
Fluya a través de lo anterior:
1. Un cliente inicia sesión en su aplicación móvil.
2. Azure Active Directory B2C autentica al usuario.
4
3. Usando el Bot de aplicaciones personalizado, el usuario solicita
información sobre una reserva.
4. Cognitive Services ayuda a procesar la solicitud del lenguaje
natural.
5. La respuesta es revisada por el cliente, quien puede refinar la
pregunta utilizando una conversación natural. Supongamos
que el cliente desea actualizar el horario de salida. Pueden
seguir adelante y solicitar el cambio.
6. Una vez que el usuario está satisfecho con los resultados, el
Application Bot actualiza la reserva del cliente.
7. Application insights reúne telemetría de tiempo de ejecución
para ayudar al desarrollo con el rendimiento y uso de Bot.
Información bot
Este bot puede responder preguntas definidas en un conjunto de
conocimientos o preguntas frecuentes (FAQ) con Azure Cognitive
Services QnA Maker y responder más preguntas abiertas con Azure
Search.
Fluya a través de lo anterior:
5
1. Se inicia la aplicación Bot.
2. Azure Active Directory valida la identidad del usuario.
3. El bot verifica qué tipo de consultas son compatibles.
4. Cognitive Services devuelve un FAQ creado con QnA Maker.
5. Se define una consulta válida.
6. El bot envía la consulta a Azure Search, que devuelve
información sobre los datos de la aplicación.
7. Application insights reúne telemetría de tiempo de ejecución
para ayudar al desarrollo con el rendimiento y uso de Bot.
Bot de productividad empresarial
Puede combinar Azure Bot Service con Language Understanding para
crear potentes bots de productividad empresarial. Estos le permiten
optimizar las actividades de trabajo comunes mediante la integración
de sistemas externos, como el calendario de Office 365, los casos de
clientes almacenados en Dynamics CRM y mucho más.
6 Fluya a través de lo anterior:
1. Un usuario accede al bot de productividad empresarial.
2. Azure Active Directory valida la identidad del usuario.
3. El bot consulta el calendario de Office 365 del empleado a
través de Azure Graph.
4. Usando datos del calendario, el bot accede a la información del
caso en Dynamics CRM.
5. La información se devuelve al empleado que puede filtrar los
datos sin abandonar el Bot.
6. Application insights reúne telemetría de tiempo de ejecución
para ayudar a los desarrolladores a mejorar el rendimiento y el
uso del bot.
Sugerencia
Puede encontrar más detalles sobre los productos y servicios de Azure
para la minería del conocimiento, el aprendizaje automático y las
aplicaciones y agentes de IA mediante la pestaña de productos en
[Link] en la unidad "Resumen y recursos" al final del módulo.
Familiarícese con los elementos que permiten estas capacidades. Aunque cada
capacidad es diferente, las arquitecturas comparten elementos comunes. Suponga
que desea que una aplicación comience a responder las preguntas más
frecuentes. ¿Qué herramientas, API y servicios podrías integrar? Para un desafío,
escríbalos y cree su propio diagrama.
Colaboración
Todos los días, los compañeros de trabajo le envían todo tipo
de datos, desde informes a hojas de cálculo, correos electrónicos
con gráficos e incluso documentos impresos. A medida que se
acumulan los datos, la tarea de encontrar lo que necesita cuando
lo necesita se vuelve más difícil. Si dispone de demasiados datos,
el riesgo de no usar la información más reciente es mayor.
Power BI puede ayudarle a conseguir que su trabajo más fácil y eficaz
al mismo tiempo mediante la conversión de todos esos datos en tablas
y gráficos que le ayudarán a visualizar los datos de manera significativa.
1
Puede ver información en objetos visuales llamativos y coloridos
en vez de en listas y tablas.
Usted y sus compañeros pueden trabajar desde los mismos
paneles e informes de confianza desde un explorador o
dispositivo móvil. Dado que los datos se actualizan
automáticamente, trabajará siempre con los contenidos más
actualizados.
Además, debido a que el contenido no es estático, puede
explorar sus datos más a fondo buscando tendencias,
perspectivas y otros tipos de inteligencia empresarial. Las
características intuitivas de Power BI permiten segmentar el
contenido e incluso formular preguntas con sus propias palabras.
Deje que Power BI supervise los datos por usted y le envíe alertas
cuando cambien los datos por encima o debajo de un umbral
establecido. Todos los datos están disponibles en cualquier
momento, ya sea en la nube o de forma local, desde cualquier
dispositivo.
Cómo saber si es usted consumidor de Power BI
La manera en que interactúa con Power BI depende de su rol de
trabajo. Como usuario, o consumidor, es la persona que recibe
los paneles, informes y aplicaciones de los diseñadores que los
crean. Además, trabaja en la versión en línea de Power BI
(llamado servicio Power BI) revisando estos datos e
interactuando con ellos para tomar decisiones empresariales.
No es necesario ser un científico de datos para realizar análisis de
datos complejos. Power BI se encarga del trabajo complejo con
3
controles sencillos e intuitivos.
Todo lo que necesita para empezar a trabajar es un explorador o
dispositivo móvil y una conexión a internet.
Interactuar con el contenido de forma segura
Puede explorar e interactuar con el contenido, filtrar, segmentar,
suscribir y exportar, sin afectar el conjunto de datos subyacente
o los paneles, informes o aplicaciones originales.
Nota
Recuerde que no es posible dañar los datos. Power BI es un
excelente lugar para explorar y experimentar sin preocuparse por
"estropear" algo.
Eso no significa que no pueda guardar los cambios; puede
4
hacerlo, pero esos cambios solo afectan a su vista del contenido.
Además, revertir a la vista predeterminada original es tan sencillo
como seleccionar el botón Restablecer valores
predeterminados.
Mostrar los detalles en un objeto visual
Los objetos visuales están formados por puntos de datos; al
mantener el puntero sobre uno de ellos podrá ver sus detalles.
Mostrar los datos que se usan para crear un objeto visual
Use la característica para mostrar los datos si desea ver los datos
que usa Power BI para crear un objeto visual. El objeto visual
5 seleccionado se expande para rellenar el lienzo, y los datos se
muestran debajo o al lado.
6
Exportar datos
Además de mostrar los datos que se usan para crear un objeto
visual, también puede exportar datos y verlos en Microsoft Excel.
Al exportar a Excel, está creando un documento independiente,
una hoja de cálculo que no forma parte de Power BI. Los cambios
realizados en el archivo de Excel no afectarán a los datos en
Power BI. Si desea una visión más detallada de los datos, o desea usar
los datos en otra aplicación o para otra finalidad, Power BI ofrece esa
flexibilidad.
La exportación no se limita a objetos visuales individuales; puede
exportar informes completos a PowerPoint o PDF para
compartirlos con sus compañeros.
8 Resaltado y filtrado cruzado del contenido de un informe
Todos los objetos visuales de un informe guardan relación entre
sí. Resalte o seleccione un valor de un objeto visual y verá al
instante su repercusión en los demás objetos visuales.
Colaborar con compañeros de trabajo
Prescinda del correo electrónico. Con la característica de
comentarios de Power BI, puede agregar un comentario personal
o iniciar una conversación con sus compañeros sobre un panel,
justamente en ese panel. La característica de comentario es solo
una de las formas en que puede colaborar con otros usuarios.
Deje que Power BI trabaje para usted
Con las suscripciones y alertas, Power BI le envía información por
correo electrónico, según una programación que establezca.
Suscríbase a informes y paneles
Para mantenerse al día respecto de su contenido más importante,
puede suscribirse a las páginas de informes y los paneles que más
le interesen. Power BI le enviará una instantánea a la bandeja de
entrada del correo electrónico.
Obtenga alertas cuando los datos alcanzan un umbral
10
Los datos cambian constantemente, y los objetos visuales se
actualizarán automáticamente. Si desea recibir una notificación
cuando cambien los datos por encima o por debajo del umbral
que haya establecido, utilice las alertas de datos.
Power BI envía un correo electrónico cuando el valor pasa
cualquier límite superior o inferior que se establezca.
Power BI permite que cualquier usuario, no solo los especialistas
en datos, obtenga una visión real de lo que está sucediendo. Le
permite, en tanto que consumidor, tomar decisiones mejores
más fundamentadas.
En Power BI, tiene las herramientas para explorar e interactuar
con los datos para encontrar respuestas a preguntas y descubrir
nuevas perspectivas. Además, puede:
formular preguntas con lenguaje natural
colaborar con su equipo
compartir lo que ha descubierto y
tomar medidas desde el escritorio o cuando se desplace.
11 Power BI es sencillo y ofrece una inteligencia empresarial basada
en datos de gran eficacia para ayudarle a responder preguntas,
tomar decisiones, realizar un seguimiento del progreso, hacer
predicciones, mantenerse al día con una cadencia periódica y
mucho más.
Ahora ya sabe qué es Power BI y por qué se utiliza. En la siguiente
unidad, aprenderá a desplazarse por la interfaz de usuario de
Power BI.
1
Ver el contenido en el
servicio Power BI
En Power BI, el término contenido hace referencia a las
aplicaciones, los paneles y los informes. El contenido se crea por
diseñadores de Power BI, que lo comparten con compañeros
como usted. Su contenido es accesible y puede verse en Power
BI, y el mejor lugar para comenzar es el Inicio de Power BI.
Explore el Inicio de Power BI
Al iniciar sesión, Power BI abre y muestra el lienzo Inicio, como se
muestra en la ilustración siguiente.
2
Inicio de Power BI ofrece tres maneras de buscar y ver su
contenido. Aunque los tres acceden al mismo conjunto de
contenido, son simplemente formas diferentes de acceder a ese
contenido. En ocasiones, la manera más fácil y rápida de
encontrar algo es buscarlo. En otras ocasiones, la mejor opción
puede consistir en seleccionar un icono en el lienzo Inicio.
El lienzo Inicio muestra y organiza su contenido favorito y más
reciente, junto con el contenido recomendado y los recursos de
aprendizaje. Cada parte del contenido se muestra como un
icono, con su título correspondiente. Al seleccionar un icono se
abre ese contenido.
En la esquina superior derecha, el cuadro de búsqueda global
le permite buscar contenido por título, nombre o palabra clave.
3
En un lado está el panel de navegación. En este panel, su mismo
contenido está organizado de forma un poco diferente, por
Favoritos, Recientes, Aplicaciones y Compartido conmigo.
Desde aquí, puede ver listas de contenido y seleccionar una
para que se abra.
En las secciones siguientes se revisan cada una de estas opciones
para buscar y consultar el contenido.
Lienzo Inicio
En el lienzo Inicio puede ver todo el contenido que tiene permiso
para usar. Al principio, es posible que no tenga mucho contenido,
pero eso cambiará a medida que comience a usar Power BI con
sus compañeros.
El lienzo Inicio también se actualiza con el contenido
recomendado y los recursos de aprendizaje.
A medida que trabaje en Power BI, recibirá paneles, informes y
aplicaciones de sus compañeros, y su lienzo Inicio se completará.
Con el tiempo, puede parecerse al siguiente lienzo Inicio.
En las secciones siguientes nos fijamos más de cerca en el lienzo
Inicio, de arriba abajo.
Métricas principales de un vistazo
Como se mencionó anteriormente, en el lienzo Inicio puede ver
todo el contenido que tiene permiso para usar. Cada parte del
contenido es un icono, y la selección de un icono le lleva a ese
fragmento de contenido. Por ejemplo, al seleccionar un icono de
un panel se abre el panel.
El contenido más importante a su alcance
Favoritos y frecuentes
En esta sección superior se incluyen vínculos al contenido que
visita con mayor frecuencia o que ha etiquetado como favoritos.
Observe que los tres iconos tienen estrellas amarillas, lo que
significa que se han etiquetado como favoritos.
Recientes y mis aplicaciones
La sección siguiente muestra el contenido que ha visitado más
recientemente. Observe la marca de tiempo de cada icono. En la
sección Mis aplicaciones figuran las aplicaciones que se han
compartido con usted; las aplicaciones más recientes aparecen
aquí. Puede seleccionar Ver todo para mostrar una lista de todas
6 las aplicaciones que se comparten con usted.
Compartido conmigo
Los compañeros comparten aplicaciones con usted, así como
paneles e informes individuales. En la sección Compartido
conmigo, tenga en cuenta que hay cinco paneles y un informe
que sus compañeros han compartido con usted.
Aplicaciones recomendadas
En función de su actividad y la configuración de la cuenta, Power
BI muestra un conjunto de aplicaciones recomendadas. Al
seleccionar un icono de aplicación, se abre la aplicación.
Recursos de aprendizaje
En la parte inferior del lienzo Inicio figura un conjunto de recursos de
aprendizaje. Los recursos exactos que aparecen dependen de la
configuración y la actividad.
7
Explore el panel de navegación
Utilice el panel de navegación para localizar los paneles, informes
y aplicaciones y moverse entre ellos. En ocasiones, el panel de
navegación será la forma más rápida de llegar al contenido.
El panel de navegación estará ahí cuando abra Inicio, y
permanece estático mientras abre otras áreas de Power BI.
El panel de navegación organiza el contenido por categorías que
son similares a lo que ya ha visto en el lienzo
Inicio: Favoritos, Recientes, Aplicaciones y Compartido
conmigo. Sin embargo, para ver el contenido más reciente de
cada una de estas secciones, seleccione la flecha situada a la
8 derecha del encabezado.
Para abrir una de estas secciones de contenido y mostrar una lista
de todos los elementos, seleccione el encabezado.
9 El panel de navegación es otra manera de encontrar el contenido
que desea rápidamente. El contenido se organiza de forma
similar al lienzo Inicio, pero se muestra en listas en lugar de en
iconos.
Busque en todo el contenido
A veces, la forma más rápida de encontrar su contenido es
buscarlo. Quizá haya detectado que un panel que no ha usado
en mucho tiempo no aparece en el lienzo Inicio. Recuerda que su
compañero Aaron lo ha compartido con usted, pero no recuerda
cómo lo llamó o si era un panel o un informe.
Puede escribir el nombre completo o parcial de ese panel y
buscarlo. Además, puede escribir el nombre de su compañero y
buscar el contenido que ha compartido con usted. La búsqueda
se limita para buscar coincidencias en todo el contenido de su
propiedad o al que tiene acceso.
10
Explorar con paneles,
informes y aplicaciones en
Power BI
Tiene un conocimiento básico del rol que desempeñan los paneles,
informes y aplicaciones en Power BI. Es el momento de examinar las
diferentes formas en que los utilizará para elegir el contenido que
necesita para tomar las mejores decisiones empresariales.
Comencemos con los paneles.
Paneles
Un panel de Power BI se compone de iconos que, juntos, cuentan
una historia. Dado que se limita a una página, un panel bien
diseñado contiene únicamente los elementos más importantes
de esa historia. No es posible editar el panel, pero hay varias
maneras de utilizar los datos para supervisar su negocio y tomar
decisiones para la seguridad de los datos.
Supongamos que es el director de marketing de una empresa de
fabricación de ropa llamada Van Arsdel. El siguiente panel
de marketing y ventas de ejemplo proporciona una instantánea
detallada de su negocio. Al ver este panel, puede supervisar cómo le
está yendo a su empresa en comparación con la competencia.
Pase el puntero por encima para ver los detalles.
Los iconos de un panel son algo más que imágenes. Mantenga
el puntero sobre un icono para ver los detalles de los datos que
subyacen en el objeto visual en paneles e informes.
Abrir un informe desde un panel
Los iconos del panel son visualizaciones de informes. Abrir un informe
3 es tan sencillo como seleccionar un icono. El informe se abre en una
página que muestra el contenido seleccionado.
Ahora que está abierto un informe, puede explorarlo.
Informes
Contraer el panel de navegación
Lo primero que notará es que el panel de navegación sigue
estando disponible para moverse en Power BI. Como ahora va a
centrarse en el lienzo de informe, contraiga el panel de
navegación seleccionando el icono de "hamburguesa" .
Visita de las páginas del informe
Cuando reciba un nuevo informe, le resultará útil familiarizarse
con los datos y la información que contiene. Una buena forma de
4 empezar es visitar cada una de las páginas del informe. Los
nombres de las páginas del informe se encuentran ahora en una
lista en un panel vertical. Seleccione un nombre para mostrar esa
página.
Cada página tiene un conjunto diferente de visualizaciones que
cuentan una historia. En este ejemplo, la página
de opiniones compara las sensaciones de los clientes hacia la
compañía Van Arsdel y el sector, por mes y geografía. Después
de una caída a mediados de año, el sentimiento positivo de la
compañía está en su punto más alto.
Cambiar las opciones de vista del informe
Los informes pueden verse en muchos dispositivos diferentes,
con tamaños de pantalla y aspectos distintos. De forma
5 predeterminada, Power BI establece los informes en Ajustar a la
página, lo que significa que no tiene que desplazarse, pero el
tipo podría ser pequeño. En el menú Ver, seleccione Tamaño
real para ver la información en el informe en tamaño completo, pero
tenga en cuenta que es posible que deba desplazarse.
El menú Ver tiene muchas opciones que controlan cómo se
muestra la página del informe. Seleccione la opción más
adecuada para el tamaño de la pantalla, la audiencia ante la que
va a realizar la presentación y sus preferencias personales.
Para satisfacer sus necesidades de accesibilidad, use la
opción Colores de alto contraste.
Ver marcadores en el informe
Un diseñador de informes podría proporcionar vistas alternativas
de los mismos datos. Por ejemplo, mientras que una vista
muestra los datos de la región central, otra vista muestra datos
de la región sur y una tercera para la región norte. Al seleccionar
un marcador, puede cambiar entre las tres vistas diferentes de la
misma página del informe.
No todos los informes tienen marcadores. Para determinar si el
informe los tiene, abra el menú Marcadores.
Explicación de la forma en que se filtra el informe
Cuando algún compañero comparta un informe con usted, no olvide
fijarse en el panel de filtros. Los filtros permiten a sus compañeros
7
resaltar datos específicos, generalmente al no mostrar toda la
información disponible.
Recuerde que cada página del informe cuenta una historia. Para
comprender la historia por completo, deberá saber si se están
aplicando filtros y cuáles son esos filtros.
El panel de filtros muestra los filtros que se aplican al informe
actual, la página del informe y el objeto visual (si hay alguno
seleccionado). En el ejemplo siguiente, está seleccionado el
gráfico de columnas. Observe que hay tres filtros de página
(segmento, año y región), un filtro aplicado a todas las páginas
del informe (fecha) y tres filtros visuales (fabricante, mes y % de
variación de total de unidades del año hasta la fecha).
8
Si el filtro tiene la palabra Todos al lado, significa que todos los
valores del campo están inclu
idos en el filtro. En esta página se incluyen todos los segmentos,
y en el gráfico de columnas se incluyen todos los meses. Los
filtros de esta página relativos al año 2014 nos indican que esta
página del informe solo se incluyen los datos para el año 2014.
Ampliar un icono de panel u objeto visual de informe
En ocasiones, tendrá un panel o un informe que está un poco
lleno. Puede usar el modo de enfoque para acercar un objeto
visual. Mantenga el puntero sobre el objeto visual para mostrar
el menú de acción y, a continuación, seleccione Abrir en modo
9
de enfoque o el icono de enfoque .
El objeto visual ocupa todo el lienzo, y aún puede mantener el
puntero sobre él para ver los detalles y obtener acceso al panel
de filtros.
Si la vista no es lo suficientemente grande, abra ese mismo objeto
visual en el modo de pantalla completa para que ocupe toda la
pantalla. Observe que todas las barras de menús desaparecen, excepto
el panel de filtros.
10
Este modo se usa a menudo para presentaciones porque puede incluso
mostrar las páginas de informes y los paneles completos en modo de
pantalla completa.
Colaborar y compartir en
Power BI
Las dificultades del control de versiones son comunes. Por ejemplo,
trabajar en un proyecto con compañeros de trabajo y terminar con diez
versiones del mismo informe. Con frecuencia, en estas situaciones, a
medida que usted y sus compañeros editan y actualizan un informe,
pierden el rastro de cuál, si existe, es la versión más actualizada.
Power BI simplifica la colaboración y mejora el resultado al permitir que
usted y sus compañeros trabajen simultáneamente en los mismos
paneles e informes. Y, mientras que usted y sus colegas exploran los
datos y realizan cambios en los informes y paneles, la información
subyacente no resulta afectada.
En Power BI, puede colaborar con sus compañeros de muchas maneras.
Esta unidad se centra en tres de las siguientes maneras: uso
compartido, comentarios e impresión.
Sugerencia
Si no puede compartir con un compañero, podría deberse al tipo
de licencia de Power BI que tiene usted o su compañero. Póngase
en contacto con su administrador de Power BI para obtener ayuda.
Uso compartido
Esta sección explora cómo los diseñadores comparten contenido
con los consumidores y cómo los consumidores comparten
contenido con otros usuarios. Imagine que es un director de
ventas regional y está trabajando con otros directores para
preparar una presentación para la dirección ejecutiva. Usted y sus
compañeros trabajarán en Power BI de principio a fin para
2
recopilar, organizar, analizar y presentar sus hallazgos basados
en datos. Todos usarán el mismo contenido compartido y se
comunicarán entre sí en el marco de Power BI.
Paso 1: Los diseñadores de Power BI comparten contenido
con consumidores de Power BI
Antes de empezar a trabajar en la presentación, necesita el
contenido de sus compañeros de trabajo diseñadores. Puede
encontrar este contenido en aplicaciones, paneles e informes. Los
diseñadores pueden compartir este contenido con usted y otros
administradores de varias maneras diferentes:
Compartir vínculos a paneles individuales o informes
individuales
Enviar vínculo a contenido
Instalar contenido en su Power BI
Publicar una aplicación de Power BI
El diseñador comparte un vínculo a un informe o panel
individual
El diseñador puede enviarle a usted y a otros administradores un
vínculo por correo electrónico. Cuando selecciona el vínculo y lo instala,
ese panel o informe le mostrará como compartir el contenido. Como
se explicó en unidades anteriores de este módulo, el contenido
compartido se puede ver desde el panel de navegación > Compartido
3 conmigo y desde la página Inicio.
El diseñador comparte una aplicación
A veces, resulta más fácil para un diseñador empaquetar los
paneles e informes en una aplicación y después compartirlos.
Con una aplicación, todo el contenido relacionado es fácil de
encontrar porque forma parte de esa aplicación única. Los
diseñadores pueden compartir aplicaciones mediante el envío de
un vínculo de instalación, la instalación automática de la
aplicación en el área de trabajo de Power BI o el registro de la
aplicación en un sitio web donde se puede obtener.
Independientemente de cómo se comparte la aplicación, se mostrará
en Power BI, en la sección Aplicaciones del panel de navegación y en la
página Inicio.
4
Ahora que los diseñadores han compartido contenido con usted y
otros administradores, es el momento de iniciar el proyecto. Debido a
que los diseñadores concedieron acceso al contenido a todos los
administradores, todos pueden comenzar a trabajar juntos para
prepararse para la gran reunión.
Sin embargo, puede plantearse otra dificultad: desea que otros
compañeros le ayuden, pero el diseñador no les ha concedido
permiso al contenido.
Paso 2: Los consumidores comparten contenido con compañeros
de trabajo internos y externos
Como consumidor de Power BI, también puede compartir el
contenido, siempre que el diseñador le haya dado permiso para
volver a compartir.
5 Si decide volver a compartir este contenido, vaya a la
pestaña Compartido conmigo del panel de navegación. Si la
columna Compartido contiene el icono "compartir", puede hacer
clic en el icono para compartir.
En la ilustración siguiente, tenga en cuenta que dos compañeros son
internos y los otros dos no. Los colegas externos nunca pueden volver
a compartir, incluso si la casilla Permitir que los destinatarios
compartan su informe está activada.
6
Sugerencia
Puede compartir un panel o informe a partir de cualquiera
de las aplicaciones móviles de Power BI.
Agregar comentarios a un panel
Cuando se comparte un panel, todos los usuarios con acceso a
ese panel pueden enviarse mensajes entre sí, directamente en el
panel, mediante comentarios. En el escenario siguiente se explica
el proceso necesario para agregar comentarios y luego se
muestra un vídeo, al final de la sección, para ilustrarlo.
En este escenario, Cassandra ha creado y compartido un panel con su
7 equipo. En lugar de enviar un gráfico y un mensaje de correo
electrónico, comparte un panel y agrega un comentario.
En preparación para la reunión del lunes, todo su equipo ve el panel,
revisa la versión actualizada del informe y continúa la conversación en
el lienzo del panel.
Hay dos tipos de comentarios: acerca del panel en general y acerca de
un objeto visual específico. El icono de gráfico le permite saber que
este comentario está asociado a un objeto visual específico. Al
seleccionar el icono se resalta el objeto visual relacionado en el panel.
Captar la atención de sus compañeros de trabajo
Si está comentando algo en el panel o en un objeto visual
determinado, capte la atención de sus compañeros de trabajo
mediante el uso de la arroba (@). Cuando escribe @, Power BI
abre una lista desplegable donde puede buscar y seleccionar
personas de su organización. Cualquier nombre comprobado
precedido por @ aparecerá en la fuente de color azul.
Impresión desde Power BI
Una tercera forma de colaborar y compartir es imprimir. En
ocasiones, es posible que deba distribuir copias impresas de los
paneles e informes de Power BI; por ejemplo, si va a impartir una
conferencia, tiene que enviar documentación normativa o va a
realizar una presentación en algún sitio sin conexión de red. Para
prepararse, le viene bien imprimir copias de los paneles e
informes, además de algunos iconos específicos y visualizaciones
de informes.
Impresión de un panel
Para imprimir un panel, seleccione Exportar en la esquina superior
9
derecha del menú de acción y seleccione Imprimir esta página.
Imprimir un informe
Es posible imprimir las páginas de los informes de una o en una,
o bien imprimir todas las páginas a la vez si primero exporta a
PDF.
Imprimir iconos y objetos visuales
Los iconos y objetos visuales se encuentran en los paneles e informes.
Para imprimir un solo icono o un solo objeto visual, primero deberá
abrirlo por sí mismo. Puede usar el modo de enfoque y el modo de
pantalla completa para abrir un icono de panel o un objeto visual de
un informe por sí mismo para que pueda imprimirlo
10 con Exportar, Imprimir esta página.
Nota
El cuadro de diálogo de impresión que ve depende de qué
explorador esté utilizando.
Exportar un informe de Power BI a PowerPoint
Otra manera de compartir un informe con su equipo es exportar
a PowerPoint. Cada página del informe será una diapositiva que
incluye vínculos a los informes activos en Power BI.
En Power BI, seleccione un informe para mostrar en el lienzo. También
puede seleccionar un informe desde su página Inicio, Aplicaciones o
cualquier otra sección en el panel de navegación. Seleccione Exportar
> PowerPoint desde la barra de menús de Power BI.
11
Aparecerá una ventana emergente donde tiene la opción de
seleccionar los valores actuales o los valores predeterminados. La
mayoría de los usuarios seleccionan la opción de valores actuales, que
exporta el informe en el estado actual e incluye los cambios activos
realizados en los valores de filtro o segmentación. La opción de valores
predeterminados exporta el informe original sin los cambios
realizados.
Cuando haya terminado la exportación, puede descargar el archivo,
abrirlo con PowerPoint y, a continuación, modificarlo o mejorarlo, tal
como lo haría en cualquier otra presentación de PowerPoint.
Nota
Para seguir los ejemplos de los vídeos y de esta página, descargue el libro
de Excel de ejemplo aquí e impórtelo en Power BI Desktop (Obtener
datos > Excel) si no lo ha hecho ya.
Inicio de Power BI Desktop
Cuando inicie Power BI Desktop, aparecerá el cuadro de diálogo
Introducción, el que proporcionará vínculos útiles a foros, blogs y
vídeos de introducción. Cierre este cuadro de diálogo por ahora, pero
mantenga seleccionada la opción Mostrar esta pantalla en el inicio
para que pueda explorarla más adelante.
1
Explorar el entorno de creación de informes
En Power BI Desktop, empezará a crear informes en la vista Informe.
Trabajará en cinco áreas principales:
1. Cinta de opciones: muestra las tareas comunes asociadas con
los informes y las visualizaciones.
2. Vista Informe o lienzo: donde se crean y se organizan las
visualizaciones. Para cambiar entre las vistas Informe, Datos y
Modelo, seleccione los iconos de la columna izquierda.
3. Pestaña Páginas: ubicada en la parte inferior de la página, en
esta área se seleccionaría o agregaría una página de informe.
4. Panel de visualizaciones: donde puede cambiar las
visualizaciones, personalizar los colores o ejes, aplicar filtros,
arrastrar campos, etc.
5. Panel Campos: donde los filtros y los elementos de consulta se
pueden arrastrar a la vista Informe o al área Filtros del panel
2
Visualizaciones.
Sugerencia
Puede contraer los paneles Visualización y Campos para proporcionar
más espacio en la vista Informe seleccionando la flecha pequeña, tal
como se muestra en la captura de pantalla siguiente.
Crear un objeto visual
Para crear un objeto visual, arrastre un campo de la lista Campos a la
vista Informe.
Power BI Desktop creó automáticamente una visualización de mapa
porque reconoció que el campo Estado contenía datos de
geolocalización.
Publicar un informe
Después de crear un informe con algunos objetos visuales, ya está listo
para publicar en el servicio Power BI. En la cinta de opciones Inicio de
Power BI Desktop, seleccione Publicar.
Es posible que se le pida que inicie sesión en Power BI. Cuando haya
iniciado sesión y se complete el proceso de publicación, aparecerá el
cuadro de diálogo siguiente. Puede seleccionar el vínculo que aparece
4 debajo de Success! (Correcto) para ir al servicio Power BI, donde podrá
ver el informe que ha publicado.
Anclaje de un objeto visual en un panel
Cuando ve un informe publicado en el servicio Power BI, puede elegir
el icono Anclar para anclar ese objeto visual a un panel.
Puede elegir entre anclar el objeto visual a un panel existente y crear
un panel nuevo.
5 Para más información, consulte el artículo sobre la vista Informe en
Power BI Desktop .
Conexión a orígenes de
datos
Power BI Desktop se conecta a muchos tipos de orígenes de datos,
incluidas bases de datos locales, hojas de cálculo y datos en servicios
en la nube. A veces, cuando se recopilan los datos, no siempre son tan
estructurados ni limpios como se quisiera. Para estructurar los datos,
puede transformarlos, lo que significa que puede dividir columnas y
cambiarles el nombre, cambiar los tipos de datos y crear relaciones
entre las columnas.
En esta unidad, aprenderá a:
6
Establecer conexión con los datos.
Importar los datos en Power BI Desktop.
1
Power BI proporciona muchas opciones para cambiar los colores
del objeto visual o dar formato a este. Para cambiar el color de
todas las barras de un objeto visual, seleccione el selector de
colores junto a Color predeterminado y, después, seleccione el
color que quiera.
Para cambiar el color de cada barra (u otro elemento, según cuál
2
sea el tipo de objeto visual seleccionado), establezca el control
deslizante Mostrar todo en Activo. Aparecerá un selector de
colores para cada elemento.
Formato condicional
Puede cambiar el color en función de un valor o de una medida.
Para ello, seleccione los puntos suspensivos verticales junto a
Color predeterminado.
Los objetos visuales resultantes se colorearán según el
3 degradado que haya seleccionado.
4 Puede usar esos valores para crear reglas; por ejemplo, para
establecer que los valores por encima de cero sean de un color
determinado y los valores por debajo de cero, de otro.
En el panel Análisis, puede crear muchas otras líneas de un objeto
visual, como Línea mínima, Línea máxima, Línea de promedio,
Línea de mediana y Línea de percentil.
5
Puede crear un borde alrededor de una visualización individual y,
al igual que otros controles, también puede especificar el color
del borde.
Para obtener más información, vea Sugerencias y trucos para el
formato de color en Power BI .
Diseño y formato de
páginas
Power BI Desktop ofrece la posibilidad de controlar el diseño y el
formato de las páginas del informe, como el tamaño y la orientación.
6
1
Creación de una cuenta de
Azure Machine Learning
Studio
BIENVENIDA
Obtenga información general de alto nivel sobre Machine Learning y
Microsoft Azure Machine Learning Studio.
En este módulo aprenderá a:
Conocer mejor de qué trata Machine Learning
Configurar y usar Microsoft Azure Machine Learning Studio
Requisitos previos
Ninguno
Introducción 1 min
2
¿Qué es Machine Learning? 4 min
Ejercicio: preparación para crear una cuenta de Azure Machine
Learning Studio 8 min
Ejercicio: uso de una cuenta de Azure para crear un área de
trabajo de Machine Learning Studio 10 min
Prueba de conocimientos 3 min
Resumen 8 min
INTRODUCCIÓN
Probablemente ya haya oído el término Machine Learning en el
ámbito de la inteligencia artificial (IA). Tal vez ya sepa en qué consiste
o le interese ampliar sus conocimientos. Machine Learning tiene
numerosos usos en aplicaciones o soluciones de inteligencia artificial.
Puede aplicarlo en sus propias soluciones mediante el uso de un
conjunto de herramientas y servicios de Microsoft.
3
Objetivos de aprendizaje
En este módulo aprenderá a:
• Conocer mejor de qué trata Machine Learning.
• Configurar y usar Azure Machine Learning Studio.
¿QUÉ ES MACHINE
LEARNING?
Machine Learning es el proceso de usar los datos disponibles para
entrenar un modelo de software. El entrenamiento ayuda al modelo a
"aprender" de los casos de entrenamiento. El resultado de este
aprendizaje puede usarse después para predecir nuevos casos a partir
de datos similares. Dicho de otra manera, Machine Learning es una
técnica de ciencia de datos que permite a los equipos usar datos
existentes para prever tendencias, resultados y comportamientos
futuros. Mediante Machine Learning, los equipos aprenden si
necesidad de programarlos explícitamente.
4
La previsión puede ser fundamental para, por ejemplo, detectar fraudes
con tarjetas de crédito. Al comparar las transacciones de las tarjetas de
la base de datos con las nuevas transacciones, Machine Learning puede
ayudar a detectar el fraude cuando se constatan ciertos patrones.
Los distribuidores en línea pueden usar técnicas de Machine Learning
para evaluar el historial de visualización y de compras de muchos
usuarios. El servicio de Machine Learning compara dicho historial con
las transacciones de compra registradas para ofrecer recomendaciones
sobre productos cuando un cliente está viendo un artículo o va a
realizar una compra. A menudo esto se traduce en una recomendación
semejante a "Los clientes que compraron este producto también
compraron…".
Para ayudarle a compilar, probar e implementar soluciones de análisis
predictivo que usen los datos, Microsoft proporciona Azure Machine
Learning Studio. Se trata de una herramienta colaborativa de arrastrar
y colocar. Después de entrenar y probar los modelos, use Machine
Learning Studio para publicarlos como un conjunto de servicios web.
5
EJERCICIO: PREPARACIÓN
PARA CREAR UNA
CUENTA DE AZURE
MACHINE LEARNING
STUDIO
Necesita un área de trabajo de Machine Learning Studio para acceder
a las herramientas que permiten crear, publicar y administrar
experimentos. Aquí encontrará información sobre las opciones
gratuitas y de pago:
6
Área de trabajo de invitado
Versión de prueba de 8 horas
Sin necesidad de iniciar sesión
Puede compilar modelos de Machine Learning en cuestión de
minutos
Amplia gama de algoritmos de Machine Learning disponibles
Área de trabajo gratuita
Inicio de sesión con una cuenta de Microsoft
Acceso gratuito sin expiración
10 GB de almacenamiento libre
Compatibilidad con scripts de Python y R
Servicios web predictivos
Área de trabajo estándar
Suscripción a Azure obligatoria
9,99 USD al mes
Soporte técnico completo según el Acuerdo de Nivel de
Servicio (SLA)
Traiga su propio Azure Storage
Ejecución de gráficos en paralelo
Puntos de conexión de servicio web elásticos
Ideal para el uso de nivel empresarial
Creación de un área de trabajo de Machine Learning Studio
1. En un explorador web, vaya a Machine Learning Studio .
2. Bajo el botón Iniciar sesión, haga clic en el vínculo Regístrese
7
aquí si no es un usuario actual de Machine Learning Studio.
3. Seleccione una de las opciones gratuitas. Si tiene una cuenta de
Microsoft, se recomienda usar la opción Área de trabajo
gratuita. La necesitará para completar las partes prácticas de
las unidades siguientes.
Ya tiene una cuenta y un área de trabajo de Machine Learning Studio.
8
EJERCICIO: USO DE UNA
CUENTA DE AZURE PARA
CREAR UN ÁREA DE
TRABAJO DE MACHINE
LEARNING STUDIO
Si ya tiene una cuenta de Azure, puede
usarla para crear y administrar un área de
trabajo de Machine Learning Studio. Este es
el procedimiento:
9
1. Inicie sesión en Azure Portal .
2. En el panel, seleccione Crear un recurso.
3. En la barra de búsqueda, escriba Área de
trabajo de Machine Learning Studio.
Importante
Asegúrese de que elige el área de trabajo
de Machine Learning Studio, y no la de
Learning Service.
4. En la parte inferior de la ventana, haga clic en Crear.
5. Escriba la información de su área de trabajo. Veamos un
ejemplo:
10
11
Si va a implementar servicios web desde esta área de trabajo, use su
plan de servicio web y el plan de tarifa asociado.
6. Haga clic en Crear y espere a que se cree y se implemente el
recurso.
Ahora ya puede tener acceso a la nueva área de trabajo de Machine
Learning Studio de dos maneras:
Vaya al recurso en Azure Portal. En la página de Información
general, seleccione Ejecutar Machine Learning Studio para
abrir el área de trabajo en Machine Learning Studio.
Inicie sesión en el portal de Machine Learning Studio .
En la esquina superior derecha, seleccione su área de trabajo.
Seleccione my experiments (Mis experimentos).
12
1
Realización de predicciones a
partir de datos complejos
con redes neuronales
BIENVENIDA
Use modelos de red neuronal para crear predicciones. Cambie las
estructuras de red neuronal para refinar predicciones mediante
TensorFlow y Keras.
En este módulo, aprenderá a:
• Obtener información sobre estructuras de red neuronal, capas,
bordes y pesos.
• Visualizar predicciones y refinar los modelos de red neuronal.
• Aplicar distintos tipos de funciones de activación y
optimizadores.
2
Requisitos previos
Ninguno
Introducción 5 min
Entrenamiento de redes neuronales con velocidades de
aprendizaje y vectores "one-hot" 3 min
Ejercicio: Introducción a las redes neuronales 10 min
Mejora de las redes neuronales con funciones de activación y
optimizadores 5 min
Ejercicio: Redes neuronales avanzadas 12 min
Resumen 8 min
3
INTRODUCCIÓN
Originalmente una hipótesis en la década de los 40, ahora las redes
neuronales son una de las herramientas principales que se usan en el
aprendizaje automático moderno. Las redes neuronales se pueden usar
para aplicaciones de regresión y categorización. Los últimos avances
con el almacenamiento, la capacidad de procesamiento y las
herramientas de código abierto han permitido muchas aplicaciones
4 correctas de las redes neuronales en el diagnóstico médico, el filtrado
de contenido explícito, el reconocimiento de voz y la traducción
automática.
Nodos
Las redes neuronales se componen de nodos conectados, por los que
pasan los datos. Un nodo combina los datos que recibe desde otros
nodos y, después, envía los datos combinados a los nodos situados
más abajo en la red neuronal. (Son similares a las rutas cerebrales
formadas por neuronas conectadas entre sí mediante sinapsis).
Los nodos se incluyen en capas. Como sucede con otros modelos de
inteligencia artificial que se han usado en este curso, las redes
neuronales tienen una capa de entrada (las características) y una capa
de salida (las etiquetas). La diferencia en las redes neuronales es lo que
se encuentra entre las capas de entrada y salida: capa ocultas.
Estas capas se consideran "ocultas" porque no se ven en el conjunto de
entrenamiento. Como en los ejemplos anteriores de este curso, los
conjuntos de entrenamiento para las redes neuronales solo contienen
la entrada (características) y la salida (etiquetas).
Observe todas las líneas de interconexión: cada nodo pasa su salida a
los nodos de la capa siguiente. Toda esta combinación de datos es lo
que permite a las redes neuronales interpretar datos muy complejos.
El aprendizaje profundo y otras variantes de las redes neuronales son
5
muy similares. La diferencia radica en cómo se organizan los nodos y
qué nodos se conectan a otros nodos. Por ejemplo, la visión
informática examina los píxeles cercanos a un punto de datos.
Por tanto, para predecir que lo que se encuentra en este cuadrado de
color rojo forma parte de la oreja de un elefante, la red neuronal tendría
que examinar de cerca alrededor del cuadrado rojo, no la hierba de la
parte inferior de la imagen.
Capas
Las capas son el componente clave de las redes neuronales. Se elige el
número de nodos que contiene cada capa y el número de capas que
hay para maximizar la precisión de la salida.
Puede haber capas de gran tamaño, con muchos nodos
y muchas capas, en ocasiones más de 100.
Con cada capa, la red neuronal transforma los datos que se especifican.
Bordes
Las conexiones entre los nodos de una capa a la siguiente se
denominan bordes. Los bordes transforman los datos cuando viajan a
través de ellos mediante multiplicaciones sencillas.
A continuación verá un ejercicio en el que codificará una red neuronal
6
simple.
En este módulo, se examinarán los aspectos básicos de las redes
neuronales y se entrenarán dos modelos simples de red neuronal en
Azure Notebooks.
En este módulo, aprenderá a:
• Obtener información sobre estructuras de red neuronal, capas,
bordes y pesos.
• Visualizar predicciones y refinar los modelos de red neuronal.
• Aplicar distintos tipos de funciones de activación y
optimizadores.
Se presentarán los conceptos clave de las redes neuronales, para que
cree las primeras redes neuronales en Azure Notebooks.
A continuación se describirán los aspectos básicos de las redes
neuronales.
7
1
Predicción de valores
numéricos mediante
regresión
BIENVENIDA
Use los modelos de regresión de aprendizaje automático para predecir
valores numéricos. Cree múltiples variaciones de los modelos de
regresión lineal para estimar aspectos como el tráfico de Internet.
En este módulo, aprenderá a:
• Definir la regresión.
• Crear modelos predictivos con variaciones de regresión lineal.
• Realizar predicciones en datos no lineales con regresión.
2
Requisitos previos
Ninguno
Introducción 5 min
Predicción de valores con la regresión lineal simple 6 min
Ejercicio: Regresión lineal simple 8 min
Predicción de valores con la regresión lineal múltiple 5 min
Ejercicio: Regresión lineal múltiple 10 min
Predicciones en datos no lineales mediante la regresión
polinómica 6 min
Ejercicio: Regresión polinómica 12 min
Resumen 4 min
3
INTRODUCCIÓN
La regresión se puede considerar como la búsqueda de una línea de
tendencia en los datos. Cuando se usa en el aprendizaje automático,
esa línea permite predecir un valor numérico en función de
características. La regresión se podría usar para predecir aspectos
como:
• Cuánto costará algo
4
• Cuál es la temperatura esperada para mañana
• Cuántos días quedan hasta que haya que cambiar la batería del
coche
Por ejemplo, si tuviera un conjunto de datos con solo dos
características, año y temperatura, se podrían trazar en un gráfico y
crear una línea de tendencia que facilitara la predicción de la
temperatura en el futuro.
La regresión ajusta una línea a través de los datos. Aquí, se usan las
características de altura y talla de calzado de los usuarios, que permiten
responder si la gente alta tiene el pie más grande.
Como estos algoritmos de regresión permiten comprender relaciones
como la talla de calzado en relación con la altura, se pueden usar para
predecir una etiqueta (la talla de calzado de un usuario) si se cuenta
con una característica relevante (su altura). Si hay ejemplos suficientes,
la línea de tendencia puede ser muy precisa.
Ver estas líneas de tendencia es relativamente fácil cuando solo se usa
una característica para predecir otra. La precisión de las predicciones
aumenta cuando hay características más pertinentes, pero es mucho
más difícil ver las tendencias de forma visual. A continuación se
muestran tres características en un gráfico: peso del
automóvil, caballos de potencia y eficiencia del combustible.
Incluso con tres características, en el gráfico anterior es mucho más
difícil detectar la tendencia. Los algoritmos de regresión no tienen la
misma limitación que tenemos visualmente. Las tendencias se pueden
identificar y usar para las predicciones con cientos o incluso miles de
características.
De los tres ejemplos anteriores, si hubiera suficientes puntos de datos
para trazar, se podría predecir con precisión:
• La temperatura media del próximo año
• La talla de calzado de una persona en función de su altura
• La eficiencia de combustible de un automóvil en función de su
peso y potencia
En este módulo, aprenderá a:
• Definir la regresión.
• Crear modelos predictivos con variaciones de regresión lineal.
• Realizar predicciones en datos no lineales con regresión.
6
PREDICCIÓN DE VALORES
CON LA REGRESIÓN
LINEAL SIMPLE
El tipo de regresión más fundamental es la regresión lineal. La
regresión lineal intenta dibujar una línea recta lo más cerca posible de
los puntos de datos.
Definición de
regresión lineal simple
La regresión lineal
simple se produce
7
cuando se usa una
característica (x) para
predecir y. A
continuación se muestra
un conjunto de datos con la altura (x) y la talla de calzado (y) para
hombres:
Estos serán los datos de aprendizaje, que permiten que la regresión
lineal identifique la línea de tendencia. En este caso, una línea recta se
ajusta perfectamente a los datos y, por tanto, la regresión lineal es
adecuada.
Realización de predicciones con
la regresión lineal simple
Los datos de entrenamiento
permiten crear un modelo de
regresión lineal que conoce la
tendencia de los datos. Una vez que
se han usado los datos existentes
(tanto las características como la
etiqueta) para determinar a dónde
pertenece la línea, se puede usar este modelo para hacer predicciones
en etiquetas futuras dada una característica.
Con el ejemplo anterior, se podría predecir la talla de calzado de una
persona cuando solo se sabe su altura. Si se le pide que adivine la talla
de calzado de una persona de 180 centímetros de altura, puede usar
8
esa línea para adivinar que será algo superior a 14.
Cómo sabe dónde colocar la línea
Todos los datos contienen variabilidad. Esto significa que una
predicción de línea recta casi nunca pasará a través de todos los puntos
de datos. En el gráfico siguiente, las líneas discontinuas de color rojo
muestran dónde el modelo no se ajusta exactamente a los datos: el
error. Por ejemplo, en x = 1, el modelo predice que y = 5. Pero hay un
punto de datos en x = 1 y se puede ver que el valor es en realidad 6.
Esto significa que el error de predicción para este punto de datos es 1.
El error es una parte natural de la creación de un modelo. En IA, se trata
de una herramienta en lugar de algo que se debe evitar.
La regresión lineal funciona buscando la línea entre los datos de
entrenamiento, lo que minimiza el error total de todos los ejemplos de
entrenamiento.
9
1
Seguridad, responsabilidad y
confianza en Azure
BIENVENIDA
Se describen los conceptos básicos para proteger la infraestructura y
los datos cuando se trabaja en la nube. Comprenda cuáles son sus
responsabilidades y de qué se encarga Azure en su nombre.
En este módulo, aprenderá lo siguiente:
• Cómo compartir la responsabilidad de seguridad con Azure
• Cómo la administración de identidades proporciona protección
incluso fuera de la red
• Cómo pueden las funcionalidades de cifrado integradas en
Azure proteger los datos
2
• Cómo proteger la red y las redes virtuales
• Características y servicios avanzados que Azure proporciona
para mantener los datos y los servicios seguros y protegidos
Requisitos previos
Ninguno
Introducción 3 min
La seguridad en la nube es una responsabilidad compartida 11
min
Obtener sugerencias de Azure Security Center 10 min
Identidad y acceso 10 min
Cifrado 8 min
Información general de los certificados de Azure 5 min
Protección de la red 8 min
Proteger los documentos compartidos 3 min
Azure Advanced Threat Protection 5 min
Comprensión de las consideraciones sobre seguridad para las
soluciones de administración del ciclo de vida de las
aplicaciones 8 min
Resumen 5 min
3
INTRODUCCIÓN
Cada sistema, arquitectura y aplicación se debe diseñar teniendo en
cuenta la seguridad. Hay demasiado que perder. Por ejemplo, un
ataque por denegación de servicio podría evitar que el cliente llegara
al sitio o los servicios web, y podría impedirle hacer negocios. La
deformación del sitio web daña la reputación. Y una vulneración de
datos podría ser incluso peor, ya que puede arruinar la confianza que
4 ha costado conseguir y provoca daños personales y financieros
considerables. Como administradores, desarrolladores y personal de
administración de TI, todos debemos colaborar para garantizar la
seguridad de los sistemas.
Imagine que trabaja en una empresa llamada Contoso Shipping y lidera
el desarrollo de las entregas mediante drones en zonas rurales. Al
mismo tiempo, los camioneros aprovechan las aplicaciones móviles
para las entregas en áreas urbanas. Está en proceso de transferir gran
parte de la infraestructura de Contoso Shipping a la nube para
maximizar la eficacia y, además, va a mover varios servidores físicos del
centro de datos de la empresa a máquinas virtuales de Azure. Su
equipo ha planeado crear una solución híbrida manteniendo en el
entorno local algunos de los servidores, por lo que necesitará una
conexión segura y de alta calidad entre las nuevas máquinas virtuales
y la red ya existente.
Además, Contoso Shipping cuenta con algunos dispositivos fuera de la
red que forman parte de sus operaciones. En sus drones usa sensores
habilitados para red que envían datos a Azure Event Hubs, mientras
que los repartidores utilizan aplicaciones móviles para obtener los
mapas de ruta y registrar las firmas de recepción de los envíos. Estos
dispositivos y aplicaciones deben estar autenticados de forma segura
antes de poder enviar o recibir datos desde ellos.
¿Cómo mantiene los datos seguros?
Objetivos de aprendizaje
En este módulo, aprenderá cómo:
5
• La responsabilidad de seguridad se comparte con Azure
• La administración de identidades proporciona protección
incluso fuera de la red
• Las funcionalidades de cifrado integradas en Azure pueden
proteger los datos
• Proteger su red y las redes virtuales
LA SEGURIDAD EN LA
NUBE ES UNA
RESPONSABILIDAD
COMPARTIDA
Las organizaciones se enfrentan a muchos retos con la protección de
sus centros de datos, incluida la contratación y la retención de expertos
en seguridad, utilizando muchas herramientas de seguridad y
adaptándose al volumen y la complejidad de las amenazas.
A medida que los entornos informáticos se trasladan de centros de
6 datos controlados por el cliente a la nube, también cambia la
responsabilidad de la seguridad. La seguridad del entorno operativo
ahora es una preocupación compartida por los proveedores de
servicios en la nube y los clientes. Al cambiar estas responsabilidades a
un servicio en la nube como Azure, las organizaciones pueden reducir
el foco de interés de las actividades que no son competencias
empresariales principales. En función de las opciones de tecnología
concretas, algunas protecciones de seguridad se integrarán en el
servicio determinado, mientras que las otras seguirán siendo
responsabilidad del cliente. Para garantizar que se proporcionan los
controles de seguridad adecuados, es necesario realizar una evaluación
cuidadosa de los servicios y las opciones de tecnología.
7
Imagine que el back-end del sitio web ha alcanzado el límite de su
capacidad, pero el front-end y el almacenamiento no están
sobrecargados. Puede escalar el back-end por separado para mejorar
el rendimiento, o podría decidir usar un servicio de almacenamiento
diferente. O también podría reemplazar el contenedor de
almacenamiento sin que ello afecte al resto de la aplicación.
Migración de aplicaciones a contenedores
Puede mover las aplicaciones existentes a contenedores y ejecutarlas
en AKS. Además, puede controlar el acceso a través de la integración
con Azure Active Directory (Azure AD) y acceder a los servicios de
Azure respaldados por acuerdos de nivel de servicio, como
Azure Database for MySQL para cualquier necesidad de datos,
1 mediante Open Service Broker para Azure (OSBA).
En la ilustración anterior se muestra el proceso, tal y como se indica a
continuación:
1. Se convierte una aplicación existente en uno o varios
contenedores y, después, se publican una o varias imágenes de
contenedor en Azure Container Registry.
2. Se implementan los contenedores en un clúster de AKS
mediante Azure Portal o la línea de comandos.
3. Azure AD controla el acceso a los recursos de AKS.
4. Se accede a los servicios de Azure con respaldo de acuerdos de
nivel de servicio, como Azure Database for MySQL, a través de
OSBA.
5. Opcionalmente, AKS se implementa con una red virtual.
2
EXPLORAR AZURE APP
SERVICE
Azure App Service le permite crear y hospedar aplicaciones web,
trabajos en segundo plano, back-ends móviles y API RESTful en el
lenguaje de programación que prefiera sin tener que administrar la
infraestructura. Ofrece escalado automático y alta disponibilidad.
App Service es compatible con Windows y Linux y permite
implementaciones automatizadas desde GitHub, Azure DevOps o
cualquier repositorio Git para admitir un modelo de implementación
continua.
3 Esta plataforma como servicio (PaaS) le permite centrarse en el sitio
web y la lógica de la API, mientras que Azure se encarga de la
infraestructura para ejecutar y escalar las aplicaciones web.
Costos de App Service
Se paga por los recursos de proceso de Azure que la aplicación usa
mientras procesa las solicitudes según el plan de App Service que elija.
El plan de App Service determina cuánto hardware se dedica a su host
(por ejemplo, si se ha dedicado o compartido hardware) y cuánta
memoria se reserva para él. Incluso hay un nivel libre que puede usar
para hospedar sitios pequeños y con poco tráfico.
Tipos de aplicaciones web
Con Azure App Service, puede hospedar los estilos de aplicación web
más comunes, incluidos los siguientes:
Web Apps
API Apps
Trabajos web
Mobile Apps
Azure App Service controla la mayoría de las decisiones de
infraestructura con las que se enfrenta al hospedar aplicaciones web: la
implementación y administración están integradas en la plataforma, los
puntos de conexión se pueden proteger, se pueden escalar
rápidamente sitios para controlar grandes cargas de tráfico y el
equilibrio de carga incorporado y el administrador de tráfico
proporcionan alta disponibilidad. Todos estos estilos de aplicación se
hospedan en la misma infraestructura y compartan estas ventajas. Esto
4
convierte a App Service en la elección ideal para hospedar aplicaciones
orientadas a la web.
Aplicaciones web
App Service incluye compatibilidad completa para hospedar
aplicaciones web con [Link], [Link] Core, Java, Ruby, [Link], PHP
o Python. Puede elegir Windows o Linux como sistema operativo del
host.
Aplicaciones de API
Al igual que al hospedar un sitio web, puede crear API web basadas en
REST mediante el lenguaje y el marco que prefiera. Obtenga
compatibilidad completa con Swagger y la posibilidad de empaquetar
y publicar la API en Azure Marketplace. Las aplicaciones producidas se
pueden consumir desde cualquier cliente basado en HTTP(s).
Trabajos web
Los trabajos web permiten ejecutar un programa (.exe, Java, PHP,
Python o [Link]) o un script (.cmd, .bat, PowerShell o Bash) en el
mismo contexto que una aplicación web, aplicación de API o aplicación
móvil. Pueden estar programados o ejecutarse mediante un
desencadenador. Los trabajos web suelen usarse para ejecutar tareas
en segundo plano como parte de la lógica de aplicación.
Back-end de aplicación móvil
Use la característica Mobile Apps de Azure App Service para crear
rápidamente un back-end para aplicaciones iOS y Android. Con unos
5
pocos clics en Azure Portal, puede:
Almacenar los datos de aplicaciones móviles en una base de
datos SQL en la nube.
Autenticar a clientes con proveedores sociales comunes como
MSA, Google, Twitter y Facebook.
Enviar notificaciones de inserción.
Ejecutar lógica de back-end personalizada en C# o [Link].
En el lado de la aplicación móvil, hay compatibilidad con el SDK para
aplicaciones nativas de iOS y Android, Xamarin y React.
EXPLORAR INFORMÁTICA
SIN SERVIDOR EN AZURE
La informática sin servidor es la abstracción de los servidores, la
infraestructura y los sistemas operativos. Con la informática sin
servidor, Azure se encarga de administrar la infraestructura de servidor
y la asignación o desasignación de recursos según la demanda. La
infraestructura no es responsabilidad del usuario. El ajuste de escala y
el rendimiento se controlan automáticamente y se facturan solo los
recursos exactos que se usan. Tampoco hay ninguna necesidad de
reservar capacidad.
6 La informática sin servidor engloba tres ideas: la abstracción de
servidores, un escalado controlado por eventos y la microfacturación:
1. Abstracción de servidores: la informática sin servidor abstrae
los servidores en los que se ejecuta. Nunca se reservan
explícitamente instancias de servidor, la plataforma lo hace
automáticamente. Cada una de las ejecuciones de funciones
puede ejecutarse en una instancia de proceso diferente, y este
contexto de ejecución es transparente para el código. Con la
arquitectura sin servidor, solo es necesario implementar el
código, el cual se ejecuta con alta disponibilidad.
2. Escalado controlado por eventos: la informática sin servidor
es una opción excelente para las cargas de trabajo que
responden a eventos entrantes. Los eventos incluyen
desencadenados por temporizadores (por ejemplo, si una
función tiene que ejecutarse cada día a las 10:00 UTC),
protocolos HTTP (escenarios de API y webhook), colas (por
ejemplo, con procesamiento de pedidos) y muchos más. En
lugar de escribir una aplicación completa, el desarrollador crea
una función, la cual contiene código y metadatos sobre sus
desencadenadores y enlaces. La plataforma programa
automáticamente la función para que se ejecute y escala el
número de instancias de proceso según la tasa de eventos de
entrada. Los desencadenadores definen cómo se invoca una
función y los enlaces proporcionan una manera declarativa de
conectarse a los servicios desde el código.
3. Microfacturación: la informática tradicional se basa en el
concepto de facturación por segundo, pero a menudo no es tan
7 útil como parece. Incluso si el sitio web de un cliente solo recibe
una visita al día, este sigue pagando por tenerlo disponible
durante todo el día. Con la informática sin servidor, solo se paga
por el tiempo durante el que se ejecuta el código. Si no se
produce ninguna ejecución de función activa, no se cobra al
cliente. Por ejemplo, si el código se ejecuta una vez al día
durante dos minutos, se le cobrará por una ejecución y por dos
minutos de tiempo de proceso.
Azure tiene dos implementaciones de proceso sin servidor:
• Azure Functions, que puede ejecutar código en prácticamente
cualquier lenguaje moderno.
• Azure Logic Apps, cuyo diseño está basado en web y puede
ejecutar lógica desencadenada por servicios de Azure sin
escribir ningún código.
Azure Functions
Azure Functions es una buena opción si le preocupa solo el código que
ejecuta el servicio, pero no la infraestructura o la plataforma
subyacentes. Se usan normalmente cuando se debe realizar un trabajo
en respuesta a un evento, a menudo a través de una solicitud REST, un
1 temporizador o un mensaje de otro servicio de Azure, y cuando ese
trabajo puede completarse rápidamente, en segundos o en menos
tiempo.
Azure Functions escala automáticamente según la demanda para que
sea una opción sólida cuando la demanda es variable. Por ejemplo,
podría recibir mensajes de una solución de IoT que se usa para
supervisar una flota de vehículos de entrega. Probablemente llegarán
más datos durante el horario comercial.
Con un enfoque basado en máquina virtual, se podrían generar costos
aunque la máquina virtual estuviera inactiva. Con Functions, Azure
ejecuta el código cuando se desencadena y desasigna recursos
automáticamente cuando la función finaliza. En este modelo, solo se le
cobrará por el tiempo de CPU utilizado mientras se ejecuta la función.
Además, Azure Functions pueden estar sin estado (la opción
predeterminada), donde se comportan como si se reiniciaran cada vez
que responden a un evento, o con estado (denominadas "Durable
Functions"), donde se pasa un contexto a través de la función para
realizar un seguimiento de la actividad anterior.
Las funciones son un componente clave de la informática sin servidor,
pero también son una plataforma de proceso general para ejecutar
cualquier tipo de código. Si cambian las necesidades de la aplicación
del desarrollador, puede implementar el proyecto en un entorno que
no sea sin servidor, lo que le proporciona la flexibilidad para
administrar el escalado, realizar ejecuciones en redes virtuales e incluso
aislar las funciones por completo.
Azure Logic Apps
2
Azure Logic Apps son similares a Functions: ambas permiten
desencadenar la lógica en función de un evento. Cuando Functions
ejecuta el código, Logic Apps ejecuta flujos de trabajo diseñados para
automatizar escenarios empresariales y creados a partir de bloques
lógicos predefinidos. Todos los flujos de trabajo de Logic Apps
comienzan con un desencadenador, que se activa cuando sucede un
evento específico o cuando hay nuevos datos disponibles que cumplen
determinados criterios. Muchos desencadenadores incluyen
funcionalidades de programación básicas que permiten a los
desarrolladores especificar con qué frecuencia se ejecutarán sus cargas
de trabajo. Cada vez que el desencadenador se activa, el motor de
Logic Apps crea una instancia de aplicación lógica que ejecuta las
acciones del flujo de trabajo. Estas acciones también pueden incluir
conversiones de datos y controles de flujo, como instrucciones
condicionales, instrucciones "switch", bucles y bifurcaciones.
Los flujos de trabajo de Logic Apps se crean mediante un diseñador
visual en Azure Portal o en Visual Studio. Los flujos de trabajo se
conservan como un archivo JSON con un esquema de flujo de trabajo
conocido.
Azure proporciona más de 200 conectores y bloques de procesamiento
diferentes para interactuar con numerosos servicios, que incluyen las
aplicaciones empresariales más populares. También puede crear
conectores personalizados y los pasos de flujo de trabajo si el servicio
con el que necesita interactuar no está cubierto. Luego, se usa el
diseñador visual para vincular los conectores y bloques entre sí,
pasando datos a través del flujo de trabajo para realizar un
3
procesamiento personalizado (a menudo sin escribir ningún código).
Por ejemplo, supongamos que llega un vale a ZenDesk. Podría:
1. Detectar la intención del mensaje con Cognitive Services.
2. Crear un elemento en SharePoint para realizar un seguimiento
del problema.
3. Si el cliente no se encuentra en la base de datos, agregarlo al
sistema Dynamics 365 CRM.
4. Enviar un correo electrónico de seguimiento para confirmar su
solicitud.
Todo eso se podría estructurar en un diseñador visual, lo que facilitaría
la visualización del flujo lógico, que es perfecto para un rol de analista
de negocios.
Comparación entre Functions y Logic Apps
Functions y Logic Apps pueden crear orquestaciones complejas. Una
orquestación es una colección de funciones o pasos que se ejecutan
para realizar una tarea compleja. Con Azure Functions, se escribe
código para completar cada paso; con Logic Apps, se usa una interfaz
gráfica de usuario para definir las acciones y cómo se relacionan entre
sí.
Puede mezclar y combinar servicios cuando crea una orquestación,
llamando a las funciones desde las aplicaciones lógicas y viceversa.
4 Aquí se indican algunas diferencias comunes entre las dos.
Functions Logic Apps
Estado Normalmente sin Con estado
estado, pero Durable
Functions
proporciona el
estado
Desarrollo Orientado al código Orientado al
(imperativo) diseñador
(declarativo)
Conectividad Con una docena de Gran colección de
tipos de enlaces conectores,
integrados, puede Enterprise
escribir código para Integration Pack para
los enlaces escenarios B2B,
personalizados creación de
conectores
personalizados
Acciones Cada actividad es Gran colección de
una función de acciones listas para
Azure; puede escribir usar
código para las
funciones de
actividad
Supervisión Azure Application Azure Portal, Log
5
Insights Analytics
Administración REST API, Visual Azure Portal, API
Studio REST, PowerShell,
Visual Studio
Contexto de Se puede ejecutar Solo se ejecuta en la
ejecución localmente o en la nube
nube
RESUMEN
Azure proporciona varios servicios para llevar a cabo el proceso en la
nube, pero la elección del servicio correcto depende de sus
necesidades empresariales. Tenga en cuenta que algunas
funcionalidades pueden utilizarse para lo mismo. Por ejemplo, puede
usar contenedores de Azure o Azure Functions como parte de una
arquitectura sin servidor. Sin embargo, en última instancia, tomar la
decisión adecuada depende de la funcionalidad del servicio y las
habilidades de su equipo de desarrollo.
Más información
Para obtener más información sobre los servicios de proceso
disponibles en Azure, consulte algunas de las páginas siguientes.
6
• Introducción a las opciones de proceso de Azure
• Escenarios típicos para ejecutar máquinas virtuales de Azure
1
Prepárese para una
implementación de Microsoft
Teams con
Microsoft 365
BIENVENIDA
Revise la experiencia de usuario de Microsoft Teams y obtenga
información sobre los requisitos y las consideraciones importantes para
implementar los equipos como parte de una instalación de Microsoft
365. También aprenderá acerca de las directivas de gobierno, como la
expiración, la retención y el archivado.
Al final de este módulo, usted debe ser capaz de:
Describir las capacidades de los equipos y la experiencia del
2 usuario.
Explicar las tecnologías principales de Teams.
Comprender las herramientas de administración de Teams.
Explicar las licencias de Teams.
Planificar el gobierno de Teams.
Planifique la gestión del ciclo de vida.
Describir los requisitos de red de Teams.
Requisitos previos
Ninguno
Introducción 2 min
Explore la experiencia de usuario de Teams 4 min
Descubra la arquitectura de Teams 2 min
Comprender las herramientas de administración de Teams 4
min
Administrar licencias de Teams4 min
Plan de gobernanza en Teams 2 min
Planificar la gestión del ciclo de vida 2 min
Revisar los requisitos de red de los equipos 4 min
3
INTRODUCCIÓN
Microsoft Teams es su centro de trabajo en equipo en Microsoft 365.
Teams es un área de trabajo basada en chat que reúne chat, reuniones,
llamadas y Office 365, todo en uno. Y se basa en la confianza de la
seguridad y el cumplimiento de Microsoft que es crucial para las
empresas de hoy en día.
Teams ofrece cuatro áreas principales con el fin de crear un área de
trabajo digital para equipos de alto rendimiento: Comunicación,
Colaboración, Personalización y Trabajo con confianza.
Comunicación
Teams satisface las necesidades de comunicación de una fuerza de
trabajo diversa al proporcionar una solución completa de reuniones y
llamadas, incluido el chat, la voz y el vídeo. Puede usar los equipos para
los chats informales 1:1 o de grupo mediante el escritorio de los
equipos o el cliente web o directamente en el teléfono si está en
movimiento. También puede tener una conversación abierta en un
canal para que las personas puedan compartir información de una
manera transparente para acelerar la toma de decisiones. Es fácil pasar
de un chat a una reunión cara a cara, ayudándote a salvar barreras
5 geográficas.
Colaboración
Cuando se trata de colaboración, la integración profunda de los
equipos con Office 365 permite a la fuerza de trabajo
multigeneracional de hoy en día usar las aplicaciones de Office con las
que están familiarizados (Word, Excel, PowerPoint, OneNote,
SharePoint, Planner, incluso Power BI), en el contexto de los equipos.
Teams reúne todos los servicios de Office 365 para que pueda
colaborar y compartir fácilmente archivos.
Personalizar
Con Teams, ya no es necesario saltar entre las aplicaciones y los
servicios de Office 365. Dado que Teams es el centro de todos los
servicios y herramientas que usan los equipos en el día a día, puede
personalizar los equipos con pestañas, conectores y bots para incluir
las aplicaciones y los servicios que necesita, incluidas las aplicaciones
comunes de terceros. Teams es una plataforma extensible que le
permite crear aplicaciones e integrarse con procesos empresariales.
Trabajar con confianza
Microsoft Teams incluye la seguridad, el cumplimiento y la capacidad
de administración de nivel empresarial que espera de Office 365.
Explore la experiencia de
usuario de Teams
Microsoft Teams le permite reunir rápidamente un equipo con
personas dentro y fuera de su organización, chatear con otros para
impulsar conversaciones rápidas e inclusivas, compartir y coautorizar
documentos de forma segura e iterar en proyectos. Veamos algunos
de los elementos clave de la experiencia del usuario de Teams.
7
¿Qué son los equipos?
Un equipo es una colección de personas, contenido y herramientas que
rodean diferentes proyectos y resultados dentro de una organización.
Los equipos se pueden crear para ser privados solo para los usuarios
invitados. Los equipos también se pueden crear para ser públicos y
abiertos y cualquier persona dentro de la organización puede unirse
(hasta 5.000 miembros). A continuación, puede designar uno o varios
de estos miembros para que sean propietarios de equipos con
privilegios administrativos.
Microsoft Teams puede ser dinámico para el trabajo basado en
proyectos (por ejemplo, el lanzamiento de un producto), así como en
curso, para reflejar la estructura interna de su organización (por
ejemplo, departamentos y ubicaciones de oficina). Las conversaciones,
los archivos y las notas en todos los canales del equipo solo son visibles
para los miembros del equipo.
¿Qué son los canales?
Los canales son secciones dedicadas dentro de un equipo que
mantienen las conversaciones organizadas por temas, proyectos o
disciplinas específicas. Los archivos que comparte en un canal (en la
pestaña Archivos) se almacenan en SharePoint.
Los canales de equipo son lugares donde todos los miembros del
equipo pueden tener conversaciones abiertamente. Los canales son
más valiosos cuando se amplían con aplicaciones que incluyen
pestañas, conectores y bots que aumentan su valor para los miembros
8
del equipo, como se describe en el módulo Administrar aplicaciones,
bots y conectores.
¿Qué es el chat?
Aunque las conversaciones de canal son públicas, los chats son solo
entre tú y otra persona (o un grupo de personas). Piense en ellos como
mensajes instantáneos en otras aplicaciones de mensajería. Los chats
privados solo son visibles para los participantes del chat.
Se inician los chats uno a uno y en grupo de la misma manera:
seleccionando Nuevo chat en la parte superior de los equipos. Una vez
en un chat, podrás enviar mensajes que incluyan archivos, enlaces,
emojis, stickers y gifs. Hay muchas opciones de formato para los
mensajes de chat, incluidas las opciones de resaltado, tamaño de
fuente, listas y mucho más.
Teams guarda todo tu historial de chat, todo el camino de vuelta al
primer mensaje que enviaste, esto se conoce como chat persistente. Si
alguien deja tu organización, las respuestas de chat de esa persona
permanecerán en tu historial de chat.
Descrubre la arquitectura
de Teams
Teams es fundamental para la arquitectura lógica de los servicios de
productividad en Microsoft 365, incluidas las capacidades de gobierno
de datos, seguridad y cumplimiento. Teams se basa en grupos de Office
365, Microsoft Graph y la misma seguridad, cumplimiento y capacidad
de administración de nivel empresarial que el resto de Office 365.
¿Cómo interactúa Teams con las tecnologías subyacentes?
Las capacidades de la aplicación Microsoft Teams dependen de las
tecnologías de comunicación y colaboración subyacentes. Cuando
10 creas un equipo, esto es lo que se crea:
Un nuevo grupo de Office 365
Un sitio de SharePoint Online y una biblioteca de documentos
para almacenar archivos de equipo
Un calendario y un buzón compartidos de Exchange Online
Un cuaderno de OneNote
Al crear un equipo a partir de un grupo de Office 365 existente, la
pertenencia a ese grupo, el sitio, el buzón y el bloc de notas a partir de
Teams. Para personalizar y ampliar Teams, puede agregar otras
aplicaciones de Office 365, como Planner y Power BI, a través de
aplicaciones, bots y conectores mediante pestañas personalizadas.
11
Integración de Teams con grupos de Office 365
Al crear un equipo en Microsoft Teams, en el back-end, está creando
un grupo de Office 365 y la biblioteca de documentos de SharePoint
asociada y el bloc de notas de OneNote, junto con vínculos con otras
aplicaciones en la nube de Office 365. Puede agregar o quitar
miembros del grupo del igual que lo haría con cualquier otro objeto
de seguridad basado en grupo en Active Directory.
¿Cómo administra Teams las identidades?
Teams admite todos los modelos de identidad que están disponibles
con Office 365. Teams aprovecha las identidades almacenadas en
Azure Active Directory (Azure AD), que combina servicios de directorio
principales, administración de acceso a aplicaciones y protección de
identidades en una única solución.
Teams utiliza tres modelos de identidad:
Con el modelo de Cloud Identity, un usuario se crea y
administra en Office 365 y se almacena en Azure AD, y Azure
12 AD comprueba la contraseña.
Con La identidad sincronizada, la identidad de usuario se
administra en un servidor local y las cuentas y los hashes de
contraseña se sincronizan con la nube.
El modelo de identidad federada requiere una identidad
sincronizada en la que el proveedor de identidades local (como
Servicios de federación de Active Directory (ADFS) comprueba
la contraseña de usuario.
¿Dónde almacena Teams los datos?
Los datos de Microsoft Teams residen en la región geográfica asociada
con el inquilino de Office 365. Actualmente, Teams es compatible con
las regiones de Australia, Canadá, Francia, India, Japón, Sudáfrica, Corea
del Sur, Reino Unido, América, APAC y EMEA.
Los tipos de datos clave se almacenan en varias ubicaciones cuando los
datos no están en uso activo.
¿Qué son las dependencias de servicio de Teams?
Para obtener la experiencia completa de Microsoft Teams, cada usuario
debe estar habilitado para la creación de grupos de Exchange Online,
SharePoint Online, OneDrive para la Empresa y Office 365. Los
administradores deben considerar si podrán implementar las
características de Microsoft Teams que su organización requiere con
sus implementaciones actuales de Exchange y SharePoint.
13
Importante
SharePoint Online es un requisito previo para usar OneDrive para la
Empresa. Sin SharePoint Online o OneDrive para la Empresa, no puede
almacenar y compartir archivos en canales, compartir archivos privados
ni tener acceso al sitio de SharePoint de equipo.
Comprender las
herramientas de
administración de Teams
Microsoft Teams proporciona a los administradores herramientas
eficaces para administrar equipos y conectar usuarios. Se emplean dos
tipos generales de herramientas de gestión: interfaces gráficas de
usuario (GUI) y herramientas de línea de comandos y automatización.
Tenga en cuenta que, para aprovechar las capacidades de
administración completas con estos dos conjuntos de herramientas,
debe tener asignado el rol de administrador de servicio global o de
equipos.
14
Las principales herramientas de GUI para la administración de Teams
son:
Microsoft Teams admin center
Azure Active Directory admin center
Microsoft 365 admin center
Office 365 Security & Compliance Center
Las herramientas de línea de comandos y automatización incluyen:
PowerShell, para la configuración y la administración limitada
del ciclo de vida
Graph API, para la gestión del ciclo de vida
Centro de administración de Microsoft Teams
Se puede tener acceso a las herramientas de administración de
Microsoft Teams en el Centro de administración de Microsoft Teams
en Equipos > Administrar equipos. Cada equipo está respaldado por
un grupo de Office 365 y este nodo proporciona una vista de los
grupos que se han habilitado para Microsoft Teams en su organización.
Los administradores pueden editar la configuración específica del
grupo y del equipo aquí.
15
Centro de administración de Microsoft 365
Puede desactivar o activar las aplicaciones para Teams en la
configuración de todo el inquilino en el Centro de administración de
Microsoft 365. Debe tener permisos administrativos de Office 365 para
tener acceso a esta configuración. En Aplicaciones, puede activar y
desactivar las aplicaciones predeterminadas y configurar la
configuración para controlar las aplicaciones externas.
Microsoft Teams proporciona aplicaciones predeterminadas, como
Planner, Praise y Weather. Para activar una aplicación, active la casilla
de verificación de esa aplicación. Para desactivar una aplicación,
desactive la casilla de verificación.
Las aplicaciones externas son proporcionadas por terceros. Puede
configurar los siguientes ajustes para aplicaciones externas:
Permitir aplicaciones externas en Microsoft Teams
Permitir la carga lateral de aplicaciones externas
Habilitar nuevas aplicaciones externas de forma
predeterminada
16
También puede controlar la configuración de usuario de toda la
organización en el centro de administración de Microsoft Teams en
Configuración de toda la organización.
Centro de seguridad y cumplimiento de Office 365
El Centro de cumplimiento y seguridad de Office 365 está diseñado
para ayudarle a administrar las características de cumplimiento en
Office 365 para su organización, incluidos Teams. Los vínculos a las
características de cumplimiento de SharePoint y Exchange existentes
reúnen las capacidades de cumplimiento en Office 365. Para usar el
Centro de seguridad y cumplimiento, debe tener asignado el rol de
administrador global de Office 365 o un administrador global le haya
asignado a uno o varios grupos de roles del Centro de seguridad y
cumplimiento.
PowerShell
17
PowerShell es un lenguaje de shell y scripting que ayuda a los
administradores del sistema y a los usuarios avanzados a automatizar
rápidamente las tareas de administración desde una línea de
comandos. Los administradores pueden usar PowerShell para
administrar, la configuración y la directiva en Teams.
Los controles de PowerShell para administrar los equipos se
encuentran en dos módulos de PowerShell diferentes: el módulo de
PowerShell de Microsoft Teams y el skype para el módulo de
PowerShell empresarial. El módulo de PowerShell de Teams contiene
todos los cmdlets que necesita para crear y administrar equipos. El
Skype para el módulo de PowerShell empresarial contiene los cmdlets
para administrar directivas, configuraciones y otras herramientas de
Teams.
Estos cmdlets solo funcionan en los equipos para los que es propietario
o miembro. Los administradores globales o los administradores de
servicios de Microsoft Teams pueden actuar en todos los equipos de
su organización.
Microsoft Graph API
Microsoft Graph es la puerta de enlace a los datos y la inteligencia en
Microsoft 365. Graph proporciona un modelo de programación
unificado que puede usar para tener acceso a la enorme cantidad de
datos en Office 365, Windows 10 y Enterprise Mobility + Security.
Graph se basa en una API basada en REST que permite el acceso a los
equipos y otros servicios de Microsoft 365.
18
En Graph, Microsoft Teams está representado por un recurso de grupo,
ya que Teams y Grupos de Office 365 trabajan juntos para facilitar la
colaboración en grupo. La mayoría de las mismas características
basadas en grupos se aplican a los grupos de Teams y Office 365, la
principal diferencia es la forma en que los miembros se comunican
entre sí. Los miembros de Team se comunican mediante chat
persistente en el contexto de un equipo específico. Los miembros del
grupo de Office 365 se comunican por conversaciones de grupo, que
son conversaciones de correo electrónico que se producen en el
contexto de un grupo en Outlook. Microsoft Graph es una herramienta
muy eficaz para administrar equipos reales.
19
Administrar licencias de
Teams
Las suscripciones de Office 365, incluidos Microsoft Teams, están
disponibles en los siguientes tipos de planes:
Pequeñas empresas
Empresa
Educación
Desarrollador
En términos de funcionalidades principales de Teams, no hay
diferencias entre las suscripciones de Office 365. La disponibilidad de
las capacidades de cumplimiento se basa en el nivel de suscripción
20
correcto.
Las licencias de Microsoft Teams están diseñadas para ofrecer la
máxima flexibilidad. Después de usar las características básicas de
Teams, puede comprar licencias de complementos para más
características, como conferencias de audio, sistema telefónico, planes
de llamadas y salas de Teams.
Para las conferencias de audio, su organización tendrá que comprar y
asignar una licencia de conferencia de audio a cada usuario que
configurará reuniones de acceso telefónico local. Para los planes de
llamadas, cada usuario necesitará un sistema telefónico más un plan de
llamadas nacionales o nacionales e internacionales.
Use directivas de mensajería, administradas desde el Centro de
administración de Microsoft Teams, para controlar qué características
de chat y mensajería de canal están disponibles para los usuarios de
Teams. Puede usar la directiva predeterminada o crear una o varias
directivas de mensajería personalizadas para las personas de su
organización.
Todos los planes de suscripción admitidos son aptos para el acceso al
cliente web de Teams, los clientes de escritorio y las aplicaciones
móviles.
Administrar licencias de usuario de Teams a través del Centro de
administración de Microsoft 365
Las licencias de nivel de usuario de Teams se administran directamente
21
a través de la interfaz de administración de usuario del del centro de
administración de Microsoft 365. Un administrador puede asignar
licencias a nuevos usuarios cuando se crean nuevas cuentas de usuario
o a usuarios existentes. El administrador debe tener privilegios de
administrador global de Office 365 o administrador de administración
de usuarios para administrar licencias de Microsoft Teams.
Cuando se asigna una SKU de licencia a un usuario, se asigna
automáticamente una licencia de Microsoft Teams y el usuario está
habilitado para Microsoft Teams. Los administradores pueden tener
control granular sobre todos los servicios y licencias de Office 365, y la
licencia de Microsoft Teams para un usuario específico o un grupo de
usuarios se puede habilitar o deshabilitar.
Plan de gobernanza en
Teams
Teams ofrece un amplio conjunto de herramientas para implementar
los requisitos de gobierno de su organización. Los administradores
pueden controlar la mensajería, las reuniones, las llamadas, las
características de eventos en vivo y mucho más para su organización
mediante directivas de mensajería. Microsoft Teams está respaldado
por las capacidades avanzadas de seguridad y cumplimiento de Office
365 y admite auditorías e informes, búsqueda de contenido de
cumplimiento, detección de documentos electrónicos, retención legal
y directivas de retención. Se pueden aplicar directivas diferentes a
todos los usuarios de forma predeterminada o por usuario según lo
22
requiera su organización.
Creación de grupos y equipos, nomenclatura, clasificación y acceso
de invitados
Es posible que su organización requiera que implemente controles
estrictos sobre cómo se nombran y clasifican los equipos, si los
invitados se pueden agregar como miembros del equipo y quién puede
crear equipos. Tenga en cuenta los siguientes puntos de decisión y
pasos al planificar la gobernanza.
Puntos de decisión
¿Su organización requiere una convención de nomenclatura
específica para los equipos?
¿Necesitan los creadores de equipos la capacidad de asignar
clasificaciones específicas de la organización a los equipos?
¿Necesita restringir la capacidad de agregar invitados a los
equipos por equipo?
¿Su organización requiere limitar quién puede crear equipos?
Próximos pasos
Documente los requisitos de su organización para la creación
de equipos, la nomenclatura, la clasificación y el acceso de
invitado.
23
Planee implementar estos requisitos como parte de la
implementación de Teams.
Comunique y publique las directivas para informar a los
usuarios de Teams del comportamiento que pueden esperar.
Caducidad, retención y archivado de grupos y equipos
Su organización puede tener requisitos adicionales para establecer
directivas para la expiración, retención y archiving de equipos y datos
de Microsoft Teams (mensajes de canal y archivos de canal). Puede
configurar fácilmente las directivas de expiración del grupo para
administrar automáticamente el ciclo de vida del grupo y las directivas
de retención para conservar o eliminar la información según sea
necesario. También puede archivar equipos para conservar una vista
puntual de un equipo que ya no está activo.
Puntos de decisión
¿Su organización requiere especificar una fecha de caducidad
para los equipos?
¿Su organización requiere que se apliquen directivas de
retención de datos específicas a los equipos?
¿Espera su organización la capacidad de archivar equipos
inactivos para conservar el contenido en un estado de solo
lectura?
Próximos pasos
24
Documente los requisitos de su organización para la expiración
del equipo, la retención de datos y el archivado.
Planee implementar estos requisitos como parte de la
implementación de Teams.
Comunique y publique las directivas para informar a los
usuarios de Teams del comportamiento que pueden esperar.
Administración de características de Teams
Teams también ofrece a las organizaciones la capacidad de controlar a
qué características pueden acceder los usuarios. Puede administrar las
características de mensajería, reunión y llamada, ya sea en el nivel de
inquilino de Office 365 o por usuario.
Puntos de decisión
¿Su organización requiere limitar las características de Teams
para todo el inquilino?
¿Su organización requiere limitar las características de Teams
para usuarios específicos?
Próximos pasos
Documente los requisitos de su organización para limitar las
características de Teams en el nivel de inquilino y usuario.
Planee implementar sus requisitos específicos como parte de la
implementación de los equipos.
Comunique y publique las directivas para informar a los
usuarios de Teams del comportamiento que pueden esperar.
25
Planificar la gestión del
ciclo de vida
La planificación de la administración del ciclo de vida es esencial para
que su organización obtenga el máximo beneficio de Teams. Al igual
que la mayoría de los proyectos, la creación y gestión de equipos pasa
por etapas inicial, media y final. Sin embargo, Teams tiene una variedad
de usos que no siempre puede ser obvio en qué etapa se encuentra un
proyecto. Tener un plan para la administración del ciclo de vida le
ayudará a realizar un seguimiento de los proyectos de su organización
a medida que pasan por estas etapas.
Ciclo de vida de Teams
26
En Teams, cada equipo individual tiene su propio ciclo de vida con la
siguiente secuencia:
Iniciar
Activo
Atardecer
En términos generales, el ciclo de vida de un equipo de Teams abarca
tanto la configuración (configuraciónestática y directivas) como la
administración, que es dinámica por equipo durante el ciclo de vida.
El propietario del equipo configura el ciclo de vida de Teams. La
configuración del ciclo de vida difiere de la configuración de Microsoft
Teams porque esta última se refiere a la configuración global y las
configuraciones específicas del usuario que rara vez cambian una vez
que se han definido.
27 Las actividades de administrador proactivo incluyen iniciar la creación
de equipos (incluidos propietarios, miembros, canales, etc.) y la puesta
de sol de los equipos según lo requiera la empresa. Las actividades de
administrador reactiva incluyen cambiar la configuración del equipo en
nombre del propietario y agregar propietarios de equipo para equipos
huérfanos.
Etapas del ciclo de vida de Teams
Normalmente, las etapas del ciclo de vida de cada equipo incluyen un
comienzo, un medio y un final, cuando el equipo ha completado su
propósito y ha alcanzado el final de su vida útil.
La etapa inicial implica definir el objetivo y la membresía del equipo;
crear el equipo y sus canales; invitar a los miembros del equipo; y
establecer permisos para los miembros individuales. Los puntos clave
de decisión a tener en cuenta en la etapa inicial incluyen:
¿Cuál es el propósito del equipo?
¿Quién pertenece al equipo?
¿El equipo será privado o público?
¿Pueden los nuevos miembros agregarse a sí mismos o los
propietarios del equipo agregarlos?
¿Quién tendrá permisos para crear canales o agregar pestañas,
bots y conectores?
¿Qué canales iniciales se añadirán al equipo?
En la etapa intermedia, la colaboración se lleva a cabo de acuerdo con
un flujo de trabajo establecido, con los miembros del equipo
interactuando hacia objetivos comunes dentro de los canales del
28
equipo. Los puntos de decisión que debe tener en cuenta en esta etapa
incluyen:
¿Quién supervisará el uso para identificar problemas?
¿Qué métricas se utilizarán para determinar el estado del
equipo?
Identificar a los equipos que hayan llegado al final de su vida
útil.
Identificar equipos insalubres que todavía sirven para un
propósito, pero necesitan revitalizarse.
La fase final se produce cuando un equipo ha concluido su ciclo de
vida útil, normalmente para un proyecto finito. En esta etapa, reconoce
formalmente el cierre del equipo y elimina los equipos que ya no
necesita; tenga en cuenta que se trata de una eliminación temporal que
TI puede revertir durante un máximo de 21 días (30 días para los grupos
de Office 365). La eliminación de equipos no afecta a los chats ni al
contenido que se hayan retenido de acuerdo con las directivas de
cumplimiento. Entre los puntos de decisión importantes relacionados
con la fase final se incluyen:
Definir cómo es el final de la vida de un equipo.
Decidir si mantener el contenido almacenado de un equipo
disponible y durante cuánto tiempo.
Documentar las mejores prácticas y lecciones aprendidas.
Archivar datos, si es necesario.
Automatización a lo largo del ciclo de vida
Este diagrama visualiza un ciclo de vida del equipo mediante las
29
herramientas de automatización de PowerShell y Graph API.
Revisar los requisitos de
red de Teams
Para prepararse para implementar Teams, debe revisar los requisitos
de red. Asegúrese de que tiene el ancho de banda necesario, acceso a
todas las direcciones IP necesarias, los puertos correctos abiertos y que
cumple los requisitos de rendimiento para los medios en tiempo real.
Teams combina tres tipos de tráfico de red:
Tráfico de datos entre el entorno en línea de Office 365 y el
cliente de Teams (señalización, presencia, chat, carga y
descarga de archivos, sincronización de OneNote)
Tráfico de comunicaciones punto a punto en tiempo real
30
(audio, vídeo, uso compartido de escritorio)
Tráfico de comunicaciones en tiempo real de conferencias
(audio, vídeo, uso compartido de escritorio)
Esto afecta a la red en dos niveles: flujos de tráfico entre los clientes de
Teams directamente en situaciones punto a punto y entre el entorno
de Office 365 y los clientes de Microsoft Teams para reuniones. Para
asegurarse de que el flujo de tráfico es óptimo, debe permitir que los
datos fluyan entre los segmentos de red internos (por ejemplo, entre
sitios a través de la red de área extensa (WAN)), así como entre los
sitios de red y Office 365. No abrir los puertos correctos o bloquear
activamente puertos específicos dará lugar a una experiencia
degradada.
Para obtener una experiencia óptima con medios en tiempo real dentro
de Teams, la red debe cumplir los requisitos de red para Office 365.
Considere sus capacidades de red
Al planear una implementación de Teams, tenga en cuenta estas
preguntas relacionadas con la red antes de empezar:
Conectividad a la red de Office 365
o ¿Se puede acceder a todas las direcciones IP y puertos
necesarios?
o ¿Cómo se enruta el tráfico a la red de Office 365?
Calidad de la red: ¿Cuáles son las tasas de latencia, fluctuación
y pérdida de paquetes de la red?
Ancho de banda disponible: ¿Hay suficiente ancho de banda
31
para los usuarios y las tecnologías subyacentes?
Otros factores que pueden influir potencialmente en la calidad de los
medios en Teams son el ruido acústico y visual en el entorno y los
dispositivos que se usan para capturar y reproducir audio y vídeo.
También tenga en cuenta que la mayoría de las redes inalámbricas no
están diseñadas para la comunicación en tiempo real, siempre que sea
posible una red cableada.
Utilice el planificador de red
En unos pocos pasos, el planificador de red puede ayudarle a
determinar y organizar los requisitos de red para conectar a los
usuarios de Teams en toda la organización. Cuando se proporcionan
los detalles de red y el uso de Teams, el Planificador de red calcula los
requisitos de red para implementar Teams y voz en la nube en las
ubicaciones físicas de la organización.
32 Network Planner le permite:
Cree representaciones de su organización mediante sitios y
personas recomendadas por Microsoft (trabajadores de oficina,
trabajadores remotos y sistema de salas de equipos).
Generar informes y calcular los requisitos de ancho de banda
para el uso de Teams.
Para usar Network Planner, debe ser administrador global,
administrador de servicios de Teams o administrador de
comunicaciones de Microsoft Teams.
Usar Skype para la herramienta de evaluación de red empresarial
Una vez que haya completado la planificación y la preparación de la
red, incluida la actualización del ancho de banda y la apertura de
puertos en el firewall, debe probar el rendimiento de la red. Los
resultados de esta prueba le darán una imagen más clara de cualquier
optimización de red o corrección necesaria para el éxito de la
implementación de Teams.
Puede descargar la herramienta de evaluación de red de Skype
Empresarial a través de este enlace a continuación. Utilice la
herramienta para probar si la red está lista para los equipos. La
herramienta ofrece doble funcionalidad: puede probar si se han abierto
todos los puertos correctos y puede probar si hay deficiencias en la red.
Después de descargar e instalar la herramienta, se puede encontrar en
C:\Program Files (x86)\Microsoft Skype for Business Network
Assessment Tool. En ese directorio se incluye una guía detallada sobre
cómo utilizar la herramienta [Link].
33
Utilice su ancho de banda
Teams le ofrece la mejor experiencia de uso compartido de audio,
vídeo y contenido, independientemente de las condiciones de red.
Teams siempre es conservador en la utilización del ancho de banda y
puede ofrecer una calidad de vídeo de alta definición en menos de 1,2
Mbps. El consumo real de ancho de banda en cada llamada o reunión
de audio/vídeo variará en función de varios factores, como el diseño
de vídeo, la resolución de vídeo y los fotogramas de vídeo por
segundo. La calidad de la llamada aumenta cada vez que hay más
ancho de banda disponible.
Con los códecs variables, los medios se pueden negociar en entornos
de ancho de banda limitado con un impacto mínimo. Pero donde el
ancho de banda no es una preocupación, las experiencias de los
usuarios se pueden optimizar para la calidad, incluida la resolución de
vídeo de hasta 1080p, hasta 30 fps para vídeo y 15 fps para contenido
y audio de alta fidelidad.
34
RESUMEN
En este módulo, ha revisado la experiencia de usuario de Microsoft
Teams y ha aprendido acerca de los requisitos y consideraciones
importantes para implementar Teams como parte de una instalación
de Microsoft 365.
Ahora que ha completado este módulo, debería poder:
35
Describir las capacidades de Teams y la experiencia del usuario.
Explicar las tecnologías principales de Teams.
Comprender las herramientas de administración de Teams.
Explicar la relación entre los grupos de Office 365 y Teams.
Explicar las licencias de Teams.
Planificar el gobierno de Teams.
Planifique la gestión del ciclo de vida.
Describir los requisitos de red de Teams.
1
Procesamiento de imágenes
con el servicio Computer
Vision
BIENVENIDA
Use Computer Vision API para analizar imágenes para las conclusiones
cognitivas, extraer texto de imágenes y generar miniaturas de alta
calidad.
En este módulo, aprenderá a:
• Crear una cuenta de Cognitive Services
• Obtener información sobre el contenido visual que se
encuentra en una imagen
• Generar una miniatura de una imagen
2
• Detectar y extraer el texto impreso de una imagen
• Detectar y extraer texto escrito a mano de una imagen.
Requisitos previos
Ninguno
Introducción 2 min
Creación de una cuenta de Cognitive Services 5 min
Obtener información sobre el contenido visual que se
encuentra en una imagen 5 min
Generación de miniaturas 5 min
Detección y extracción de texto impreso de una imagen 5 min
Detección y extracción de texto escrito a mano de una imagen
5 min
Resumen y comprobación de conocimientos 5 min
3
INTRODUCCIÓN
Como desarrollador en jefe de distribución de bebidas de Contoso, es
responsable de la creación y el mantenimiento de una aplicación de
línea de negocio que permite a los distribuidores en primera línea
digitalizar y cargar imágenes de las estanterías de la tienda que están
reabasteciendo.
Quiere validar que las imágenes publicadas por los usuarios respetan
4
las reglas de contenido establecidas por su empresa. La empresa no
quiere contenido inadecuado publicado en los sitios de la empresa.
Deberá decidir si desea crear o adquirir una solución. Crear un motor
sofisticado de procesamiento y análisis de imágenes es costoso. Una
alternativa es usar Computer Vision API de Microsoft. En este módulo,
exploraremos las características que ofrece esta API y la llamaremos
para procesar algunas imágenes.
Objetivos de aprendizaje
En este módulo, aprenderá a:
• Crear una cuenta de Cognitive Services
• Obtener información sobre el contenido visual que se
encuentra
• Detectar y extraer el texto impreso de una imagen
• Detecte y extraiga texto escrito a mano de
5
CREACIÓN DE UNA
CUENTA DE COGNITIVE
SERVICES
Microsoft Cognitive Services es un conjunto de algoritmos de
aprendizaje automático disponibles como servicio que puede usar
cualquier persona. En lugar de crear desde cero esta inteligencia para
nuestras aplicaciones, podemos usar estos servicios para objetivos
relacionados con la visión, la voz, el lenguaje, el conocimiento y la
búsqueda. Puede probar cada servicio de forma gratuita. Si decide
integrar un servicio en su aplicación, deberá suscribirse a una
6 suscripción de pago. En este modelo centraremos nuestra atención en
Computer Vision API.
Sugerencia
Para ver una lista de todos los servicios de Cognitive Services, consulte
el directorio de Cognitive Services.
¿Qué es Computer Vision API?
Computer Vision API ofrece algoritmos para procesar imágenes y
devolver información. Por ejemplo, puede averiguar si una imagen
tiene contenido para adultos o puede usarlo para buscar todos los
rostros de una imagen. También cuenta con otras características, como
la estimación de los colores dominantes y de los colores de énfasis, la
clasificación del contenido de las imágenes o la descripción de una
imagen con oraciones completas en inglés. Además, también puede
generar de forma inteligente miniaturas de imágenes para mostrar
imágenes grandes de forma eficaz.
Sugerencia
Computer Vision API está disponible en muchas regiones de todo el
mundo. Para buscar la región más cercana, consulte Productos
disponibles por región.
Puede usar Computer Vision API para:
Analizar imágenes para obtener información
Extraer texto impreso de las imágenes mediante el
reconocimiento óptico de caracteres (OCR).
Reconocer texto impreso y manuscrito de las imágenes
7
Reconocer personajes famosos y sitios emblemáticos
Analizar vídeos
Generar una miniatura de una imagen
Cómo llamar a Computer Vision API
En su aplicación puede llamar a Computer Vision usando directamente
bibliotecas de cliente o la API de REST. En este módulo llamaremos a la
API de REST. Para realizar una llamada:
1. Obtención de una clave de acceso de API
Al suscribirse a una cuenta de servicio de Computer Vision, se le
asignan unas claves de acceso. Se debe pasar una clave en el
encabezado de cada solicitud.
2. Realizar una llamada POST a la API
Dé formato a la dirección URL del siguiente
modo: regió[Link]/vision/v2.0/recurso/[pará
metros]
región: región en la que ha creado la cuenta (por
ejemplo, westus).
recurso: recurso de Computer Vision al que está llamando (por
ejemplo, analyze, describe, generateThumbnail, ocr, models, re
cognizeText o tag).
Puede proporcionar la imagen que se va a procesar como archivo
binario de imagen sin formato o como dirección URL de imagen.
El encabezado de la solicitud debe contener la clave de suscripción,
8
que proporciona acceso a esta API.
3. Análisis de la respuesta
La respuesta contiene la información que Computer Vision API tiene
sobre la imagen en forma de carga JSON.
En este módulo, todos los ejercicios de la CLI de Azure se realizarán
con Cloud Shell integrado. Descubramos más cosas sobre esta
configuración.
¿Qué es la CLI de Azure?
La CLI de Azure es la herramienta de línea de comandos
multiplataforma de Microsoft para administrar los recursos de Azure.
Está disponible para macOS, Linux y Windows, o en el explorador
con Azure Cloud Shell.
Importante
Hay dos versiones de la herramienta CLI de Azure disponibles
actualmente: CLI de Azure 1.0 y CLI de Azure 2.0. Se va a usar CLI de
Azure 2.0, que es la versión más reciente y la que se recomienda a
menos que se ejecuten scripts heredados. La CLI de Azure 1.0 se inicia
con el comando azure y la CLI de Azure 2.0 con el comando az.
Comandos de Azure Cognitive Services
La CLI de Azure incluye el comando cognitiveservices para administrar
cuentas de Cognitive Services en Azure. Podemos proporcionar varios
subcomandos para realizar tareas específicas. Los más comunes
9
incluyen:
TABLA 1
Subcomando Descripción
list Enumera cuentas de Azure Cognitive Services disponibles.
account show Obtiene los detalles de una cuenta de Azure Cognitive Services.
account create Crea una cuenta de Azure Cognitive Services.
account delete Elimina una cuenta de Azure Cognitive Services.
keys list Enumera las claves de una cuenta de Azure Cognitive Services.
Vamos a crear una cuenta de Cognitive Services con la CLI de Azure.
Creación de una cuenta de Cognitive Services
Necesitaremos una clave de acceso de API para realizar llamadas a
Computer Vision API. Para obtener las claves de acceso, necesitamos
una cuenta de Cognitive Services para Computer Vision API.
Usaremos az cognitiveservices create para crear la cuenta en nuestra
suscripción.
El comando az cognitiveservices create sirve para crear una cuenta de
Cognitive Services en un grupo de recursos. Los siguientes cinco
parámetros se deben proporcionar al llamar a este comando.
Sugerencia
La mayoría de las marcas de los parámetros de la CLI de Azure se
pueden abreviar con un único carácter. Por ejemplo, podríamos
10
indicar -l en vez de --location. La forma completa se usa para mayor
claridad.
TABLA 2
Parámetro Descripción
resource- Grupo de recursos que será propietario de la cuenta de Cognitive S
group sesión interactiva de espacio aislado, usará [nombre del grupo de recu
aislado]
kind Nombre de la API de la cuenta de Cognitive Services. Para este ejerc
Vision, pero se puede basar en Content Moderator, Face API, etc.
name Nombre de la cuenta de Cognitive Services.
TABLA 2
Parámetro Descripción
sku SKU (referencia de almacén) de la cuenta de Cognitive Services. Para e
pero puede ser F0 (nivel Gratis), S1, S2, S3 o S4.
location Ubicación (o región) desde la que quiere realizar llamadas a esta API.
de las ubicaciones de la siguiente lista.
El espacio aislado gratuito permite crear recursos en un subconjunto
de las regiones globales de Azure. Seleccione una región de la lista al
crear los recursos:
westus2
11 southcentralus
centralus
eastus
westeurope
southeastasia
japaneast
brazilsouth
australiasoutheast
centralindia
Ejecute el siguiente comando en Azure Cloud Shell. No olvide
reemplazar [location] por una ubicación cercana a usted.
CLI de AzureCopiar
az cognitiveservices account create \
--kind ComputerVision \
--name ComputerVisionService \
--sku S1 \
--resource-group [sandbox resource group name] \
--location [location]
Nota
Recuerde la ubicación que ha seleccionado. Deberá realizar todas las
llamadas a la API desde esa región.
Hemos creado una cuenta de Cognitive Services para Computer
Vision API. Se ha seleccionado la SKU S1 y se ha asignado el
12 nombre ComputerVisionService a la cuenta. La cuenta es propiedad
del grupo de recursos [nombre del grupo de recursos del espacio
aislado] y se llamará a la API desde la ubicación que se ha establecido
en el parámetro --location.
Una vez que el comando haya acabado de crear la cuenta de Cognitive
Services, obtendrá una respuesta JSON, que incluirá la
propiedad provisioningState establecida en Correcto.
Obtención de una clave de acceso
Una vez que hayamos creado correctamente la cuenta, podremos
recuperar las claves de suscripción (o de acceso) de esta cuenta.
1. Ejecute el comando siguiente en Azure Cloud Shell:
CLI de AzureCopiar
az cognitiveservices account keys list \
--name ComputerVisionService \
--resource-group [sandbox resource group name]
El comando anterior devuelve las claves asociadas a la cuenta de
Cognitive Services denominada ComputerVisionService, cuyo
propietario es el grupo de recursos indicado. Devuelve dos claves (una
de ellas es una clave de reserva). Las claves son difíciles de recordar, así
que almacenaremos la primera en una variable que usaremos para
todas las llamadas a la API.
2. Ejecute el comando siguiente en Azure Cloud Shell:
13
CLI de AzureCopiar
key=$(az cognitiveservices account keys list \
--name ComputerVisionService \
--resource-group [sandbox resource group name] \
--query key1 -o tsv)
La CLI de Azure 2.0 usa el argumento --query para ejecutar una
consulta JMESPath en los resultados de los comandos. JMESPath es un
lenguaje de consulta para JSON que ofrece la posibilidad de
seleccionar y presentar datos de la salida de la CLI. Estas consultas se
ejecutan en la salida JSON antes de realizar cualquier otro formato de
presentación. El argumento --query es compatible con todos los
comandos de la CLI de Azure.
En nuestro ejemplo, consultamos la lista de claves en busca de una
entrada denominada "key1" y se genera el resultado en formato tsv.
Este formato quita las comillas del valor de la cadena. Asignamos el
resultado a una clave de variable.
Importante
La usaremos en todo el módulo, por lo que es buena idea guardarla en
una variable. Si pierde el valor o la variable queda anulada, vuelva a
ejecutar el comando para establecerla.
3. Para ver el valor de la clave, ejecute el siguiente comando en
Azure Cloud Shell:
14
CLI de AzureCopiar
echo $key
Ahora que tenemos una cuenta y una clave, es el momento de realizar
algunas llamadas a la API.
OBTENER INFORMACIÓN
SOBRE EL CONTENIDO
VISUAL QUE SE
ENCUENTRA EN UNA
IMAGEN
Como desarrollador en jefe de distribución de bebidas de Contoso, es
responsable de la creación y mantenimiento de una aplicación de línea
de negocio que permite a los distribuidores en primera línea digitalizar
y cargar imágenes de las estanterías de la tienda que están
15
reabasteciendo.
Quiere validar que las imágenes publicadas por los usuarios respetan
las reglas de contenido establecidas por su empresa. La empresa no
quiere contenido inadecuado publicado en los sitios de la empresa.
Dados los avances en inteligencia artificial, opta por usar Computer
Vision API en la aplicación.
Para empezar a trabajar, debe crear una cuenta de Computer Vision en
su suscripción de Azure y comenzar a probar la característica
de análisis.
Llamar a Computer Vision API para analizar imágenes
La operación analyze extrae un amplio conjunto de características
visuales en función del contenido de la imagen. La dirección URL de
solicitud tiene el formato siguiente:
[Link]
alFeatures=<...>&details=<...>&language=<...>
Los parámetros que se envían al servicio
son visualFeatures, details y languages. Establezca el
parámetro details en Landmarks o Celebrities para ayudarle a
identificar puntos de referencia o famosos. visualFeatures identifica
qué tipo de información quiere que el servicio devuelva. La
opción Categories clasificará el contenido de las imágenes como
16 árboles, construcciones y mucho más. Faces identificará las caras de las
personas y le proporcionará su sexo y edad.
Todas las operaciones de Computer Vision API tienen las siguientes
restricciones en cuanto a las imágenes que le pide que procese:
• Formatos de imagen admitidos: JPEG, PNG, GIF y BMP.
• El tamaño de los archivos de imagen debe ser inferior a 4 MB.
• Las dimensiones de las imágenes deben ser al menos de 50 x
50.
Obtención de una clave de acceso
Si aún no lo ha hecho, ejecute el siguiente comando en Azure Cloud
Shell para almacenar la clave de acceso de API en una variable
denominada key. Esta variable se usará en las llamadas siguientes.
CLI de AzureCopiar
key=$(az cognitiveservices account keys list \
--name ComputerVisionService \
--resource-group [sandbox resource group name] \
--query key1 -o tsv)
Identificación de puntos de referencia en una imagen
17
Comencemos con una llamada para buscar puntos de referencia en una
imagen. En este ejemplo usaremos la siguiente imagen, pero puede
probar el mismo comando con direcciones URL para otras imágenes.
Ejecute el siguiente comando en Azure Cloud Shell.
18 Reemplace <region> en el comando por la región de su cuenta de
servicios cognitivos.
CLI de AzureCopiar
curl
"[Link]
ualFeatures=Categories,Description&details=Landmarks" \
-H "Ocp-Apim-Subscription-Key: $key" \
-H "Content-Type: application/json" \
-d "{'url' : '[Link]
process-images-with-the-computer-vision-
service/master/images/[Link]'}" \
| jq '.'
• Esta llamada busca puntos de referencia en la imagen
especificada por la dirección URL de la imagen. En este ejercicio,
la imagen que estamos analizando está almacenada en un
repositorio de GitHub.
• La llamada también le pide al servicio que devuelva información
de la categoría y una descripción de la imagen. Se devuelve la
descripción en forma de una oración completa en inglés.
• Como sabrá, todas las llamadas a la API necesitan una clave de
acceso. Puede establecerla en el encabezado Ocp-Apim-
Subscription-Key de la solicitud.
Sugerencia
19
El resultado de la solicitud es el archivo JSON sin formato que describe
la imagen en url. Hemos agregado | jq '.' al final del comando para
mejorar el aspecto de la salida JSON.
La respuesta JSON de esta llamada devuelve lo siguiente:
• Una matriz categories que enumera todas las categorías de
imagen que se han detectado, junto con una puntuación
comprendida entre 0 y 1 sobre el grado de fiabilidad del
servicio de que la imagen pertenece a la categoría especificada.
• Una entrada description que contiene una matriz de etiquetas
o palabras relacionadas con la imagen.
• Una entrada captions con un campo de texto que describe (en
inglés) lo que aparece en la imagen. Observe que el texto
también tiene una puntuación de certeza. Esta puntuación le
puede ayudar a decidir qué debe hacer posteriormente con
este análisis.
Buscar contenido inapropiado en una imagen
En este ejemplo analizaremos una imagen en busca de contenido para
adultos. La puntuación de confianza califica la probabilidad de que en
la imagen haya contenido para adultos o subido de tono.
En este ejemplo usaremos la siguiente imagen, pero puede probar el
mismo comando con direcciones URL para otras imágenes.
20
1. Ejecute el siguiente comando en Azure Cloud Shell,
reemplazando <region> en la dirección URL.
CLI de AzureCopiar
curl
"[Link]
ualFeatures=Adult,Description" \
-H "Ocp-Apim-Subscription-Key: $key" \
-H "Content-Type: application/json" \
-d "{'url' : '[Link]
process-images-with-the-computer-vision-
service/master/images/[Link]'}" \
| jq '.'
En este ejemplo hemos
21
establecido visualFeatures en Adult,Description.
La respuesta nos da dos puntuaciones de confianza, una para el
contenido subido de tono y otra para el contenido para adultos. Con
estas puntuaciones, la descripción de la imagen y otras características
visuales, puede empezar a marcar las imágenes publicadas en su
servidor.
Los ejemplos que hemos probado en este ejercicio le dan una pista del
tipo de análisis que puede hacer con la operación analyze. Pruebe el
análisis con distintas imágenes y pruebe varias combinaciones de
características visuales, detalles y parámetros de idiomas.
Para obtener más información sobre la operación analyze, vea la
documentación de referencia de Analyze Image (Análisis de imágenes).
GENERACIÓN DE
MINIATURAS
Los distribuidores de los productos digitalizarán y cargarán imágenes
de las estanterías que están reponiendo. Como desarrollador jefe en su
empresa, es responsable de la creación de miniaturas de las imágenes.
Las miniaturas se usan en los informes en línea que crea para el equipo
de ventas. Recientemente, la directora de ventas dijo que las imágenes
en el informe son borrosas y a menudo no muestran la parte frontal y
central del producto, lo que dificulta examinar el informe de gran
tamaño. Depende de usted mejorar la situación.
22 Decide probar la característica de generación de miniaturas de
Computer Vision API. Quizás pueda hacer un mejor trabajo que la
función de cambio de tamaño que escribió.
Computer Vision genera en primer lugar una miniatura de alta calidad
y después analiza los objetos de la imagen para determinar la región
de interés (ROI). Luego, recorta la imagen para ajustarla a los requisitos
de la región de interés. La miniatura generada se puede presentar con
una relación de aspecto diferente de la imagen original en función de
sus necesidades. Vamos a verlo en acción.
Una llamada a Computer Vision API para generar una miniatura
La operación generateThumbnail crea una imagen en miniatura con el
ancho y el alto especificados por el usuario. De forma predeterminada,
el servicio analiza la imagen, identifica la región de interés (ROI) y
genera las coordenadas de recorte inteligentes según el ROI. El recorte
inteligente le ayuda a especificar una relación de aspecto que difiera
de la relación de aspecto de la imagen de entrada. La dirección URL de
solicitud tiene el formato siguiente:
[Link]
mbnail?width=<...>&height=<...>&smartCropping=<...>
Se pueden proporcionar otros parámetros a la API para generar la
miniatura adecuada para sus necesidades. Los
parámetros width y height son obligatorios. Le indicarán a la API qué
tamaño necesita para una imagen específica. El
parámetro smartCropping genera un recorte más inteligente
analizando la región de interés en la imagen para así mantenerla dentro
de las miniaturas. Como ejemplo, con la opción de recorte inteligente
23
habilitada, una imagen de perfil recortada mantiene la cara de alguien
dentro del marco, aunque la imagen tenga una proporción distinta.
Obtención de una clave de acceso
Si aún no lo ha hecho, ejecute el siguiente comando en Azure Cloud
Shell para almacenar la clave de acceso de API en una variable
denominada key. Esta variable se usará en las llamadas siguientes.
CLI de AzureCopiar
key=$(az cognitiveservices account keys list \
--name ComputerVisionService \
--resource-group [sandbox resource group name] \
--query key1 -o tsv)
Generación de miniaturas
En este ejemplo usaremos la siguiente imagen, pero puede probar el
mismo comando con direcciones URL para otras imágenes.
24
1. Ejecute los comandos siguientes en Azure Cloud Shell.
Reemplace <region> en el comando por la región de su cuenta
de servicios cognitivos.
CLI de AzureCopiar
curl
"[Link]
umbnail?width=100&height=100&smartCropping=true" \
-H "Ocp-Apim-Subscription-Key: $key" \
-H "Content-Type: application/json" \
-d "{'url' : '[Link]
process-images-with-the-computer-vision-
service/master/images/[Link]'}" \
-o [Link]
En este ejemplo, le pedimos al servicio que cree una miniatura de 100
x 100. El recorte inteligente está habilitado. Una respuesta correcta
contiene la imagen en miniatura binaria, que se escribe en un archivo
denominado [Link].
Precaución
El parámetro -o redirige la salida a un archivo. El archivo siempre se
sobrescribe, así que si desea mantener más de una vista en miniatura
al probar este comando, cambie el nombre de archivo.
25
Visualización de las miniaturas generadas
Puede encontrar la miniatura generada en su cuenta de
almacenamiento de Azure Cloud Shell. Hemos llamado al
archivo [Link].
El Cloud Shell en Microsoft Learn no tiene la capacidad de descargar
archivos, pero puede seguir estas instrucciones para descargar la
miniatura mediante Azure Portal.
1. Ejecute los comandos siguientes en Azure Cloud Shell para
confirmar que el archivo [Link] existe en la carpeta
principal.
CLI de AzureCopiar
cd ~
ls -l
2. Ejecute el siguiente comando para mover [Link] en la
carpeta clouddrive.
CLI de AzureCopiar
mv ~/[Link] ~/clouddrive
3. Inicie sesión en Azure Portal con la misma cuenta con la que
ha activado el espacio aislado.
4. En el menú de Azure Portal o la página Inicio, seleccione Todos
los recursos y luego la cuenta de almacenamiento cuyo
nombre comienza por cloudshell.
26
5. En el panel de la cuenta de almacenamiento,
seleccione Explorador de Storage, RECURSOS
COMPARTIDOS DE ARCHIVOS y luego el recurso compartido
de archivos de esa colección cuyo nombre comienza
por cloudshellfiles.
6. Seleccione el archivo [Link] y después Descargar en el
menú superior para ver la imagen.
La operación generateThumbnail es un generador de miniaturas eficaz
que es capaz de mantener la región de interés (ROI) de una imagen en
la miniatura.
Para obtener más información sobre la operación generateThumbnails,
vea la documentación de referencia de Get Thumbnail (Obtener
miniatura).
27
DETECCIÓN Y
EXTRACCIÓN DE TEXTO
IMPRESO DE UNA
IMAGEN
Supongamos que ahora quiere leer el texto de las imágenes en
existencia que los distribuidores en primera línea publican en el
servidor. En concreto, quiere examinar el producto en busca de
adhesivos promocionales que contengan los precios de venta. Es el
momento de probar la característica de reconocimiento óptico de
caracteres (OCR) de Computer Vision API.
28
Llamar a Computer Vision API para extraer texto impreso
La operación ocr detecta texto en una imagen y extrae los caracteres
reconocidos en una secuencia de caracteres que pueda usar una
máquina. La dirección URL de solicitud tiene el formato siguiente:
[Link]
e=<...>&detectOrientation=<...>
Como de costumbre, se deben realizar todas las llamadas a la región
donde se creó la cuenta. La llamada acepta dos parámetros opcionales:
language: Código de idioma del texto que se va a detectar en
la imagen. El valor predeterminado es unk o desconocido. Esto
permite que el servicio detecte automáticamente el idioma del
texto de la imagen.
detectOrientation: Cuando es true, el servicio intenta detectar
la orientación de la imagen y corregirla antes de continuar
procesando, por ejemplo, si la imagen está al revés.
Obtención de una clave de acceso
Si aún no lo ha hecho, ejecute el siguiente comando en Azure Cloud
Shell para almacenar la clave de acceso de API en una variable
denominada key. Esta variable se usará en las llamadas siguientes.
CLI de AzureCopiar
29
key=$(az cognitiveservices account keys list \
--name ComputerVisionService \
--resource-group [sandbox resource group name] \
--query key1 -o tsv)
Extraer el texto impreso de una imagen mediante OCR
La imagen que se va a usar para el reconocimiento óptico de caracteres
(OCR) es la portada del libro Microservicios de .NET: Arquitectura para
aplicaciones .NET en contenedor.
30
1. En Cloud Shell, ejecute el comando siguiente.
Reemplace <region> en el comando por la región de su cuenta
de servicios cognitivos.
CLI de AzureCopiar
curl "[Link] \
-H "Ocp-Apim-Subscription-Key: $key" \
-H "Content-Type: application/json" \
-d "{'url' : '[Link]
process-images-with-the-computer-vision-
service/master/images/[Link]'}" \
| jq '.'
El documento JSON siguiente es un ejemplo de la respuesta que
obtenemos de esta llamada. Se han quitado algunas líneas del
documento JSON para que el fragmento de código se ajuste mejor a
la página.
JSONCopiar
31
{
"language": "en",
"orientation": "Up",
"textAngle": 0,
"regions" : [
/*... snipped*/
"boundingBox": "766,1419,302,33",
"words": [
{
"boundingBox": "766,1419,126,25",
"text": "Microsoft"
},
"boundingBox": "903,1420,165,32",
"text": "Corporation"
32 }]
Vamos a examinar esta respuesta con más detalle.
• El servicio ha identificado el texto como inglés. El valor del
campo language contiene el código de idioma BCP-47 del
texto detectado en la imagen. En este ejemplo es en o inglés.
• La orientation se ha detectado como hacia arriba. Esta
propiedad es la dirección en que se orienta la parte superior del
texto reconocido después de que la imagen se haya girado en
torno a su centro de acuerdo con el ángulo del texto detectado.
• textAngle es el ángulo por el que se debe girar el texto para
que sea horizontal o vertical. En este ejemplo, el texto es
perfectamente horizontal, por lo que el valor devuelto es 0.
• La propiedad regions contiene una lista de valores que se usan
para mostrar dónde está el texto, su posición en la imagen y las
palabras que contiene esa parte de la imagen.
• Los cuatro enteros del valor boundingBox son:
o la coordenada x del borde izquierdo
o la coordenada y del borde superior
o la anchura del rectángulo de selección
o la altura del rectángulo de selección
33
Puede utilizar estos valores para dibujar cuadros alrededor de cada
fragmento de texto que se encuentra en la imagen.
Como puede ver en este ejercicio, el servicio ocr proporciona
información detallada sobre el texto impreso de una imagen.
Para obtener más información sobre la operación ocr, vea la
documentación de referencia de OCR.
DETECCIÓN Y
EXTRACCIÓN DE TEXTO
ESCRITO A MANO DE
UNA IMAGEN
Hemos visto cómo Computer Vision API puede extraer texto impreso
de las imágenes. En este ejercicio, usaremos el servicio para detectar el
texto escrito a mano.
Llamar a Computer Vision API para extraer texto manuscrito
La operación recognizeText detecta y extrae texto manuscrito de notas,
34
cartas, ensayos, pizarras, formularios y otras fuentes. La dirección URL
de solicitud tiene el formato siguiente:
[Link]
xt?mode=<...>
Se deben realizar todas las llamadas a la región donde se creó la
cuenta.
Si está presente, el parámetro mode debe establecerse
en Handwritten o Printed, y distingue mayúsculas de minúsculas. Si el
parámetro se establece en Handwritten o no se especifica, se realiza el
reconocimiento de escritura a mano. Si el parámetro se establece
en Printed, entonces se realiza el reconocimiento de texto impreso. El
tiempo necesario para obtener un resultado de esta llamada depende
de la cantidad de escritura en la imagen.
En este ejemplo, haremos lo siguiente:
• Imprimir los encabezados de respuesta en la consola mediante
la opción -D de direcciones URL.
• Copiar el valor del encabezado Operation-Location de los
encabezados recibidos en la respuesta.
• Después de unos segundos, comprobar la dirección URL
especificada por Operation-Location para los resultados.
Obtención de una clave de acceso
Si aún no lo ha hecho, ejecute el siguiente comando en Azure Cloud
35
Shell para almacenar la clave de acceso de API en una variable
denominada key. Esta variable se usará en las llamadas siguientes.
CLI de AzureCopiar
key=$(az cognitiveservices account keys list \
--name ComputerVisionService \
--resource-group [sandbox resource group name] \
--query key1 -o tsv)
Detectar y extraer texto escrito a mano de una imagen.
En este ejemplo usaremos la siguiente imagen, pero puede probar el
mismo comando con direcciones URL para otras imágenes.
36
1. Ejecute los comandos siguientes en Azure Cloud Shell.
Reemplace <region> en el comando por la región de su cuenta
de servicios cognitivos.
CLI de AzureCopiar
curl
"[Link]
ext?mode=Handwritten" \
-H "Ocp-Apim-Subscription-Key: $key" \
-H "Content-Type: application/json" \
-d "{'url' : '[Link]
process-images-with-the-computer-vision-
service/master/images/[Link]'}" \
-D -
Los pasos anteriores vuelcan los encabezados de esta operación en la
consola. Veamos un ejemplo:
CLI de AzureCopiar
HTTP/1.1 202 Accepted
Cache-Control: no-cache
Pragma: no-cache
37 Content-Length: 0
Expires: -1
Operation-Location:
[Link]
s/d0e9b397-4072-471c-ae61-7490bec8f077
X-AspNet-Version: 4.0.30319
X-Powered-By: [Link]
apim-request-id: f5663487-03c6-4760-9be7-c9157fac10a1
Strict-Transport-Security: max-age=31536000; includeSubDomains;
preload
x-content-type-options: nosniff
Date: Wed, 12 Sep 2018 [Link] GMT
El encabezado Operation-Location es donde se registrarán los
resultados una vez completado.
2. Copie el valor de encabezado Operation-Location.
3. Ejecute el siguiente comando en Azure Cloud Shell
reemplazando "<Operation-Location>" con el valor del
encabezado Operation-Location que copió en el paso
anterior.
CLI de AzureCopiar
curl -H "Ocp-Apim-Subscription-Key: $key" "<Operation-Location>" |
jq '.'
38
Si se completó la operación, recibirá un archivo JSON que contiene el
resultado de la solicitud de reconocimiento de escritura a mano.
Para obtener más información sobre la operación recognizeText, vea la
documentación de referencia Recognize Handwritten
Text (Reconocimiento de texto manuscrito).
RESUMEN Y
COMPROBACIÓN DE
CONOCIMIENTOS
39
Computer Vision API es una herramienta eficaz para el procesamiento
de imágenes. El uso de este servicio, en lugar de crear el suyo propio,
tiene la ventaja de ahorrarle costos de desarrollo y de mantenimiento
considerables. Debe concentrarse en escribir la lógica de negocios para
tomar una decisión relevante para su negocio y dejar que Computer
Vision API extraiga información enriquecida de las imágenes para
categorizar y procesar los datos visuales.
En este módulo hemos analizado imágenes, extraído texto y generado
miniaturas. Para llamar a Computer Vision API, hemos creado una
cuenta de Cognitive Services en nuestra suscripción de Azure. Esta
cuenta nos ha proporcionado las claves de acceso que necesitábamos
para realizar llamadas.
En el siguiente paso, tómese tiempo para realizar las mismas llamadas
con sus propias imágenes. Luego, ajuste los parámetros en cada
llamada para ver el efecto que tienen en los resultados. Puede ir más
allá y probar las otras operaciones en la API, como, por
ejemplo, describe y tag.
Limpieza
El espacio aislado limpia los recursos automáticamente cuando haya
terminado con este módulo.
Al trabajar en una suscripción propia, se recomienda identificar al final
de un proyecto si aún necesita los recursos creados. Dejar recursos en
funcionamiento puede costarle dinero. Puede eliminar los recursos de
forma individual o eliminar el grupo de recursos para eliminar todo el
40 conjunto de recursos.
Lecturas adicionales
• Información general sobre la CLI de Azure
• Referencia de comandos de la CLI de Azure
• Documentación de referencia de Computer Vision API
1
Reconocimiento de voces
específicas con las API de
Speaker Recognition en
Azure Cognitive Services
BIENVENIDA
Obtener información sobre cómo usar Speaker Recognition API para
identificar usuarios específicos a través de sus voces.
Objetivos de este módulo:
• Conocer el concepto de reconocimiento del hablante.
• Obtener información sobre los conceptos relacionados con el
reconocimiento del hablante.
• Explorar las Speaker Recognition API.
2
Requisitos previos
Ninguno
Introducción 1 min
Introducción al reconocimiento del hablante 7 min
Ejercicio: Creación de una suscripción de Speaker Recognition
API 10 min
Introducción a los conceptos de verificación del hablante 3 min
Administración de perfiles de verificación del hablante 7 min
Introducción a la identificación del hablante 5 min
Administración de perfiles de identificación del hablante 7 min
Implementación del reconocimiento del hablante 7 min
Comprobación de conocimientos: reconocimiento del hablante
3 min
Resumen 2 min
3
INTRODUCCIÓN
Las Speaker Recognition API de Azure Cognitive Services
proporcionan algoritmos avanzados para la verificación e identificación
del hablante. Estas API permiten incorporar autorización de voz en las
aplicaciones e identificar voces específicas.
Nota
4 Este módulo requiere una suscripción de Azure. Los servicios que cree
y use son gratuitos, pero necesitará una suscripción activa o una
versión de prueba para completar los ejercicios. Si no tiene una
suscripción a Azure, cree una cuenta gratuita antes de empezar.
Objetivos de este módulo:
• Conocer el concepto de reconocimiento del hablante.
• Obtener información sobre los conceptos relacionados con el
reconocimiento del hablante.
• Explorar las Speaker Recognition API.
Supervisar los recursos
INTRODUCCIÓN AL
RECONOCIMIENTO DEL
HABLANTE
Las Speaker Recognition API de Azure Cognitive Services usan
aprendizaje automático e inteligencia artificial para proporcionar
servicios que:
identifican a hablantes individuales;
usan la voz para la autenticación.
Estos servicios se pueden integrar en aplicaciones y servicios mediante
5 cualquier lenguaje de programación o sistema operativo.
El reconocimiento del hablante se divide en dos categorías:
Verificación del hablante: los usuarios se verifican y
autentican de forma automática a través de su voz.
Identificación del hablante: la voz se compara con un grupo
de posibles hablantes para identificar automáticamente a la
persona que habla en un archivo de audio.
Speaker Recognition API
Todas las formas de vida parecen tener métodos de comunicación
integrados y biológicamente adaptados. Con independencia de que
sea una ballena azul, un abejorro, una cigarra o un ser humano, cada
"voz" es única. En nuestro planeta hay más 7,5 mil millones de voces
humanas, cada una de ellas única y diferente al resto.
A través de simples llamadas de servicio basadas en REST, las Speaker
Recognition API proporcionan algoritmos que le permiten:
Verificar e identificar la voz humana.
Organizar las voces en perfiles fáciles de administrar.
Los métodos proporcionados por las Speaker Recognition API se
dividen en tres categorías:
1. Verificación: se comprueba la probabilidad de que dos voces
6
pertenezcan a la misma persona.
2. Identificación y reconocimiento: se determina si una voz
coincide con otra voz conocida.
3. Inscripción: se registran voces para verificarlas o identificarlas.
Las Speaker Recognition API permiten aprovechar la eficacia de la
inteligencia artificial para:
autenticar a los usuarios antes de permitirles acceder a
aplicaciones y servicios;
identificar hablantes en secuencias de vídeo;
identificar hablantes en escenarios de chat en tiempo real;
mejorar la seguridad de recursos confidenciales;
• reemplazar los complejos sistemas de autenticación heredados.
El reconocimiento del hablante a menudo se conoce como
"reconocimiento de voz". El reconocimiento del hablante es el proceso
de identificación de una persona en base a las características de voz de
esa persona.
Nota
Hay una diferencia entre el reconocimiento del hablante y
el reconocimiento de voz. El reconocimiento de voz intenta determinar
el contenido de las palabras habladas, y el reconocimiento del hablante
intenta identificar al hablante del contenido.
Acústica excelente
7 En el reconocimiento del hablante se evalúan las características
acústicas vitales de voz que difieren entre individuos. Estos patrones
acústicos vienen determinados por aspectos como el tamaño y la forma
de la garganta y la boca. Cada individuo también tiene unos
determinados patrones de voz, como el estilo de habla y el tono de
voz.
Como resultado del progreso científico en el campo de verificación del
hablante, ahora el reconocimiento del hablante se clasifica como una
"biométrica del comportamiento". Como sucede con la diferencia entre
el reconocimiento de voz y el del hablante, hay una diferencia entre el
acto de verificación del hablante y el de identificación:
• Verificación del hablante: un intento por determinar si un
hablante tiene una identidad "afirmada" concreta.
• Identificación del hablante: un intento por determinar
la identidad de un hablante desconocido.
En ambos casos, es necesario disponer de voces o muestras de voces
para poder realizar la comparación. El proceso de creación de muestras
de voz se conoce como inscripción.
Inscripción
En el reconocimiento del hablante, la inscripción es el proceso de
grabación previa de la voz del hablante para extraer los patrones
acústicos y de voz que forman una huella de voz. La huella de voz a
menudo se conoce como plantilla de voz o modelo de voz. En
8
escenarios típicos de verificación del hablante, se graban previamente
"expresiones" de voz de muestra que después se usan al comparar las
huellas de voz.
El proceso de identificación del hablante es más difícil porque muchas
veces una expresión se acaba de introducir por primera vez en el
sistema. Por ejemplo, un sistema de reconocimiento del hablante
podría entrenarse para identificar a un famoso presidente de Estados
Unidos a partir de las muestras de los discursos de inauguración. Pero
identificar a un presidente a partir de contenido nuevo, como un
discurso sobre el estado de la nación, requiere la comparación del
contenido hablado con varias huellas de voz a fin de determinar la
mejor coincidencia.
Dado que los algoritmos en los que se basan la verificación y la
identificación son diferentes, los procesos de inscripción para estos
servicios también son independientes. En segundo plano, hay dos tipos
de sistemas de reconocimiento del hablante: dependiente de
texto e independiente de texto.
Dependiente de texto: se usa para la inscripción en la
verificación del hablante, donde los mensajes son conocidos y
comunes entre todos los hablantes.
Independiente de texto: se usa para la inscripción en la
identificación del hablante, donde no hay ninguna cooperación
(necesaria) por parte del hablante.
Nota
9 Para escenarios independientes de texto, la inscripción suele
producirse sin conocimiento del usuario, ya que los sistemas de
identificación del hablante no necesitan comparar lo que se dice en la
inscripción.
El sistema dependiente de texto, el más controlado de todos, es
fundamental para la verificación del hablante.
EJERCICIO: CREACIÓN DE
UNA SUSCRIPCIÓN DE
SPEAKER RECOGNITION
API
Para poder usar Speaker Recognition API, tendrá que suscribirse al
servicio y obtener una clave de suscripción.
Importante
Speaker Recognition API aún está en versión preliminar. Antes de que
se finalice, espere cambios en algunas de las funciones.
10
1. Inicie sesión en Azure Portal .
2. En el panel izquierdo, seleccione + Crear un recurso.
3. En el cuadro Buscar en Marketplace, escriba speaker
recognition (reconocimiento del hablante) y presione Entrar.
4. En los resultados de la búsqueda, seleccione Speaker
Recognition.
5. Haga clic en Crear.
6. Escriba un nombre para la suscripción de Speaker Recognition
API, como SpeakerRecognition.
7. Como Ubicación, elija la que le quede más cerca.
8. Como Plan de tarifa, seleccione un plan de tarifa.
9. Cree un grupo de recursos denominado mslearn-
speakerapi para almacenar los recursos.
10. Revise y acepte el aviso de servicio y después haga clic
en Crear para crear una suscripción a Speaker Recognition API.
Tras una breve pausa, la nueva suscripción a las Speaker Recognition
API estará disponible y se generarán nuevas claves de suscripción para
su uso en programación.
Nota
Los términos clave de suscripción y clave de API a menudo se usan
como sinónimos en la documentación de Cognitive Services.
11
Para ver su nueva suscripción de Speaker Recognition, haga clic
en Grupos de recursos en el panel izquierdo y, después, seleccione el
grupo de recursos mslearn speakerapi.
Para acceder a la suscripción de Speaker Recognition, necesita dos
datos que puede obtener en Azure Portal:
• Una clave de suscripción que le permite acceder a su
suscripción. Esta clave se debe pasar con cada llamada de
servicio web que se realice a la API.
• El punto de conexión que expone el servicio en la red.
Copia de la clave de suscripción
Empecemos por obtener la clave de suscripción en Azure Portal:
1. En el panel izquierdo, haga clic en Grupos de recursos y,
después, haga clic en el grupo de recursos que ha creado para
Speaker Recognition API.
2. Escriba un nombre para la suscripción de Speaker Recognition
(por ejemplo, SpeakerRecognition).
3. En ADMINISTRACIÓN DE RECURSOS, haga clic
en Claves para ver las nuevas claves de suscripción.
4. Copie el valor de CLAVE 1 en el portapapeles.
12
Sugerencia
Puede pegar este valor en un archivo de texto para usarlo más adelante
en el curso.
Copia del punto de conexión de la suscripción
A continuación se obtendrá el punto de conexión de Azure Portal:
1. En el panel izquierdo, haga clic en Introducción.
2. Vaya a Punto de conexión y copie su valor en el portapapeles.
13
INTRODUCCIÓN A LOS
CONCEPTOS DE
VERIFICACIÓN DEL
HABLANTE
Si es un veterano en viajes al extranjero, estará acostumbrado a
presentar documentos emitidos por entidades gubernamentales
cuando visita un país nuevo. La verificación del hablante es un proceso
muy similar a entrar en un país nuevo con un pasaporte.
14
Cuando muestra su pasaporte al responsable de la oficina de
inmigración, usted afirma ser la persona que aparece en la foto del
pasaporte. Al igual que existen normativas de cómo se debe hacer esta
foto, el proceso de verificación de voz normalmente tiene unas
directrices sobre cuál es la "apariencia" de su huella de voz. En otras
palabras, lo que dice para generar su huella de voz está regulado. La
mayoría de los sistemas usan el concepto de frases de verificación.
Frases de verificación
El servicio Speaker Recognition usa frases de verificación predefinidas
para determinar las características y los patrones acústicos y de voz
pertinentes del hablante. En la actualidad, el servicio Speaker
Recognition admite las 10 frases de verificación siguientes, para la
configuración regional de inglés (Estados Unidos):
• "I am going to make them an offer they cannot refuse." (Voy a
hacerles una oferta que no podrán rechazar)
• "Houston, we have a problem." (Houston, tenemos un
problema)
• "My voice is my passport. Verify me." (Mi voz es mi pasaporte.
Compruébeme)
15
• "Apple juice tastes funny after toothpaste." (El zumo de
manzana sabe raro después de lavarse los dientes)
• "You can get in without your password." (Puede entrar sin su
contraseña)
• "You can activate the security system now." (Ya puede activar el
sistema de seguridad)
• "My voice is stronger than passwords." (Mi voz es más segura
que las contraseñas)
• "My password is not your business." (Mi contraseña no es
asunto suyo)
• "My name is unknown to you." (No sabe mi nombre)
• "Be yourself. Everyone else is already taken." (Sea usted mismo,
todos los demás ya están en uso)
Nota
Speaker Recognition API no admite actualmente frases de verificación
personalizadas.
La inscripción de verificación del hablante requiere la grabación y el
envío de tres ejemplos de una frase idéntica. Por ejemplo, se le pide
que repita la frase "Houston, tenemos un problema" tres veces y,
después, que envíe esos ejemplos al sistema.
Después de enviar las frases de ejemplo idénticas, la inscripción se
considera completada y ya puede verificar su identidad con esa frase.
16 Quizás se pregunte por qué se necesita una frase de verificación
idéntica. ¿Por qué no puede el sistema analizar y evaluar los patrones
acústicos y de voz del hablante para determinar si existe una
coincidencia de voz? En realidad, el sistema puede identificar una
coincidencia de voz sin necesidad de una frase de verificación idéntica.
Pero si se permitiese cualquier muestra de voz, el sistema ya no sería
seguro. Alguien podría grabar su voz y usar esa grabación en el sistema.
Pedirle que recuerde y use un ejemplo exacto de frase es muy similar a
tener que recordar una contraseña, el nombre de soltera de su madre,
el nombre de su primera mascota o la ciudad donde nació, pero mejor.
Una vez completada la inscripción, el sistema Speaker Recognition
contiene el perfil de verificación.
Perfiles de verificación
TABLA 1
Propiedad Valor
verificationProfileId Un identificador de perfil único
locale La región o la configuración regional de referencia
cultural, como "en-US"
enrollmentsCount El número total de inscripciones creadas
17
remainingEnrollmentsCount El número restante de inscripciones necesarias para la
finalización
createdDateTime La fecha y la hora en que se ha creado el perfil
lastActionDateTime La fecha y hora de la última acción que se ha realizado
enrollmentStatus El estado de la inscripción
Un perfil de verificación es una agrupación de inscripciones
dependientes de texto que se usa para la verificación del hablante.
Dado que un hablante debe elegir una frase específica para la
inscripción y la verificación, el perfil resultante contiene todo lo
necesario para la verificación futura del hablante.
Sugerencia
TABLA 2
Valor Estado de verificación
enrolling Se está inscribiendo un perfil que aún no está listo para realizar la verificación.
training Se está entrenando un perfil que aún no está listo para realizar la verificación.
enrolled Se ha inscrito un perfil y está listo para realizar la verificación.
Aunque no sea absolutamente necesario, se recomienda usar el mismo
micrófono para la inscripción y la verificación.
Las propiedades de un perfil de comprobación
18 En Speaker Recognition API, un perfil de verificación incluye las
propiedades siguientes:
Propiedad de estado de inscripción
Aparte de verificationProfileId, la propiedad más importante de un
perfil de verificación es enrollmentStatus. Este valor muestra el estado
actual de la inscripción y la preparación para la verificación del
hablante:
ADMINISTRACIÓN DE
PERFILES DE
VERIFICACIÓN DEL
HABLANTE
La creación de perfiles de verificación es un proceso sencillo que utiliza
los métodos de administración de verificación de Speaker Verification
API.
Uso de Speaker Verification API para administrar perfiles de
19
verificación
La administración de perfiles de verificación del hablante con Speaker
Verification API es un proceso de dos fases:
Enviar una solicitud web autorizada al punto de conexión de la
suscripción.
Observar la información que se devuelve tras la llamada.
Al igual que la mayoría de los servicios del conjunto de aplicaciones de
Azure Cognitive Services, Speaker Verification API devuelve
información en formato JSON estándar.
Los métodos principales que se usan para crear y administrar perfiles
de verificación son los métodos Create Profile y Create Enrollment de
Speaker Verification API. El método Create Profile acepta un parámetro
de región o configuración regional para crear un perfil basado en una
configuración regional específica, y devuelve un identificador único
para el perfil. Pero el método Create Enrollment es donde se produce
un trabajo considerable.
El método Create Enrollment acepta un archivo de audio (como una
carga de archivo binario) que debe cumplir los criterios siguientes:
Contenedor: WAV
Codificación: PCM
Velocidad: 16 K
Formato de muestreo: 16 bits
Canales: Mono
El método Create Enrollment requiere pasar un parámetro único al
20 servicio. Este parámetro verificationProfileId, que se devuelve desde el
método Create Profile, identifica a qué perfil debe aplicarse el envío de
la inscripción.
Normalmente, en la cadena de consulta se envía un parámetro pasado
al método Create Enrollment, como parte de la dirección URL del punto
de conexión:
textCopiar
[Link]
es/{verificationProfileId}/enroll
Sugerencia
Cuando se proporciona el audio de inscripción a través de una solicitud
basada en REST, el archivo de audio debe tener al menos 1 segundo
de duración y no más de 15 segundos.
Envío de una carga de audio
Para enviar una carga de audio al método Create Enrollment, la
solicitud web debe incluir un archivo binario, como una secuencia o
matriz de bytes. Después debe enviarse la solicitud a través de un
método HTTP POST estándar.
Carga del archivo binario
Para crear y enviar una carga de archivo binario al método Create
Enrollment, se usan métodos estándar específicos del lenguaje para
crear y enviar contenido binario. Por ejemplo, en C#, una carga binaria
21
podría proceder de un archivo de audio (que contenga una grabación
de voz de la frase de verificación) ubicado en un equipo local:
C#Copiar
string uri =
"[Link]
es/{verificationProfileId}/enroll";
FileStream fileStream = new FileStream(@"c:\\Sample
Audio\enrollment_01.wav", [Link], [Link]);
BinaryReader binaryReader = new BinaryReader(fileStream);
var bytes = [Link]((int)[Link]);
using (ByteArrayContent content = new ByteArrayContent(bytes))
[Link] = new
MediaTypeHeaderValue("application/octet-stream");
//POST the binary content to the endpoint
response = await [Link](uri, content);
string contentString = await [Link]();
El tipo de contenido application/octet-stream debe estar incluido en el
22
encabezado de solicitud para que el método sepa qué tipo de
contenido se va a suministrar.
No es necesario usar un parámetro para proporcionar la frase de
verificación seleccionada. Speaker Verification API extrae la frase del
archivo de audio y presenta este valor como un modo de proteger la
verificación.
Valores devueltos
Los resultados devueltos por Speaker Verification API se incluyen en
cargas de JSON. Este es un ejemplo de la información devuelta por el
método Create Enrollment:
JSONCopiar
{
"enrollmentStatus" : "Enrolled",
"enrollmentsCount":3,
"remainingEnrollments" : 0,
"phrase" : "<Recognized verification phrase>"
Nota
El valor "<Recognized verification phrase>" se rellena con la frase de
verificación extraída.
La administración de perfiles de verificación a través de Speaker
23
Verification API es sencilla, tanto como la administración de perfiles de
identificación.
INTRODUCCIÓN A LA
IDENTIFICACIÓN DEL
HABLANTE
Si el uso de la verificación del hablante es similar al proceso de mostrar
un pasaporte, la identificación del hablante es como la comparación de
huellas dactilares, que pregunta lo siguiente: "De todas las huellas
digitales conocidas por nuestro sistema, ¿cuál coincide con esta huella
digital?"
24
La identificación del hablante es la capacidad para determinar la
persona que habla en un audio según los patrones acústicos y de voz,
como el estilo de habla y el tono de voz.
En un contexto de orden público, un sistema de identificación del
hablante puede emplear una huella de voz independiente de texto, de
forma similar a como se utilizan las huellas digitales. De este modo, la
identificación del hablante es básicamente "abierta". En el ejemplo de
las huellas, tomar la huella dactilar en cualquier momento introduce
esa huella en la "inscripción".
La identificación del hablante tiene muchas otras aplicaciones fuera del
ámbito de la aplicación de la ley y el análisis forense. Como sucede en
escenarios de verificación del hablante, cuando se completa la
inscripción, el servicio Speaker Identification contiene el perfil de
identificación del hablante.
Perfiles de identificación
Un perfil de verificación es una agrupación de inscripciones
independientes de texto que se usan para la identificación del hablante.
Al contrario de lo que sucede en la verificación del hablante, un
hablante no tiene que elegir una frase concreta para usarla en la
25 inscripción o la identificación.
Nota
A diferencia de la verificación del hablante, no es razonable crear el
audio de identificación del hablante con el mismo micrófono (o incluso
crearlo en la misma década), por lo que no hay requisitos ni
recomendaciones sobre las especificaciones de grabación o el
dispositivo de entrada. Pero el archivo real enviado debe cumplir los
requisitos en cuanto a formato y velocidad de bits.
El perfil
En Speaker Identification API, un perfil de identificación incluye las
propiedades siguientes:
TABLA 1
Propiedad Valor
identificationProfileId Un identificador de perfil único
locale La región o la configuración regional de
referencia cultural, como "en-US"
enrollmentSpeechTime El número total de segundos de voz "útil"
detectados en todos los archivos de audio de
inscripción proporcionados
remainingEnrollmentSpeechTime El número restante de segundos de voz
necesarios para una inscripción correcta
26
createdDateTime La fecha y la hora en que se ha creado el perfil
lastActionDateTime La fecha y hora de la última acción que se ha
realizado
enrollmentStatus El estado de la inscripción
Estado de inscripción
Aparte de identificationProfileId, la propiedad más importante de un
perfil de identificación es enrollmentStatus. Este valor muestra el
estado actual de la inscripción y la preparación para la identificación
del hablante:
TABLA 2
Valor Estado de inscripción
enrolling Un perfil se está inscribiendo actualmente y no está preparado para la
identificación.
training Un perfil se está entrenando actualmente y no está preparado para la
identificación.
enrolled El perfil está inscrito y preparado para la identificación.
27
ADMINISTRACIÓN DE
PERFILES DE
IDENTIFICACIÓN DEL
HABLANTE
La creación de perfiles de identificación es un proceso sencillo que
utiliza los métodos de administración de identificación de Speaker
Identification API.
Uso de Speaker Identification API para administrar perfiles de
identificación
28
Al igual que con los perfiles de verificación, para administrar perfiles de
identificación del hablante con Speaker Identification API hay que
hacer lo siguiente:
• Enviar una solicitud web autorizada al punto de conexión de la
suscripción.
• Observar la información que se devuelve tras la llamada.
Los métodos principales que se usan para crear y administrar perfiles
de identificación son los métodos Create Profile y Create
Enrollment de Speaker Identification API. Como en la verificación del
hablante, el método Create Profile acepta un parámetro de región o
configuración regional para crear un perfil basado en una
configuración regional específica, y devuelve un identificador único
para el perfil. Pero el método Create Enrollment es donde se produce
un trabajo considerable.
El método Create Enrollment acepta un archivo de audio (como una
carga de archivo binario) que debe cumplir los mismos criterios que los
archivos usados para la verificación del hablante:
TABLA 1
Propiedad Valor requerido
Contenedor WAV
Codificación PCM
Velocidad 16 K
29
Formato de muestreo 16 bits
Canales Mono
El método Create Enrollment requiere pasar un parámetro único al
servicio. Este parámetro identificationProfileId, devuelto por el
método Create Profile, identifica a qué perfil debe aplicarse el envío de
la inscripción.
También se puede pasar un parámetro opcional shortAudio para
indicar al servicio que omita los requisitos de duración del audio. Este
parámetro es un valor de "sí" o "no" (booleano) que indica al servicio
que renuncie al límite de audio mínimo recomendado necesario para
la inscripción.
Normalmente, en la cadena de consulta se envía un parámetro pasado
al método Create Enrollment de Speaker Identification API, como parte
de la dirección URL del punto de conexión. En este ejemplo se incluye
el parámetro opcional shortAudio:
textCopiar
[Link]
iles/{identificationProfileId}/enroll?shortAudio=true
Nota
Si se inscribe un hablante para su identificación sin usar el
parámetro shortAudio, los archivos de audio deben tener una duración
mínima de 5 segundos y máxima de 5 minutos. La
cantidad mínima recomendada de voz acumulada para la inscripción,
30
después de quitar los silencios, es de 30 segundos. Después de
acumular 30 segundos de voz, el estado de inscripción del perfil cambia
de enrolling a enrolled para indicar que está listo para la identificación.
Si se usa el parámetro shortAudio, los archivos de audio pueden tener
hasta 1 segundo de duración, pero la precisión de la identificación del
hablante puede verse afectada.
Envío de una carga de audio
Para enviar una carga de audio al método Create Enrollment de
Speaker Identification, es necesario incluir en la solicitud web un
archivo binario (como una secuencia o matriz de bytes) y, después,
enviar la solicitud a través de un método HTTP POST estándar.
Carga del archivo binario
Para crear y enviar una carga de archivo binario al método Create
Enrollment, se usan métodos estándar específicos del lenguaje para
crear y enviar contenido binario. Por ejemplo, en C#, una carga binaria
podría proceder de un archivo de audio (que contenga una grabación
de voz de la persona que habla) ubicado en un equipo local:
C#Copiar
string uri =
"[Link]
ofiles/{identificationProfileId}/enroll?shortAudio=true";
FileStream fileStream = new FileStream(@"c:\\Sample
Audio\enrollment_01.wav", [Link], [Link]);
31
BinaryReader binaryReader = new BinaryReader(fileStream);
var bytes = [Link]((int)[Link]);
using (ByteArrayContent content = new ByteArrayContent(bytes))
[Link] = new
MediaTypeHeaderValue("application/octet-stream");
//POST the binary content to the endpoint
response = await [Link](uri, content);
string contentString = await [Link]();
En el ejemplo anterior, el parámetro opcional shortAudio indica al
método que renuncie al límite recomendado de audio mínimo
necesario para la inscripción y que permita que los archivos de audio
duren tan solo un segundo.
Valores devueltos
Si tiene archivos de audio de larga duración, crear las inscripciones de
identificación del hablante puede ser un proceso lento. Dado que la
inscripción es un proceso potencialmente lento, el método Create
Enrollment es un método de resultado y ubicación de la operación.
32 Para obtener el estado de una operación de inscripción, es preciso:
• Enviar una solicitud inicial, con la carga especificada.
• Obtener el valor de ubicación de la operación de la solicitud
inicial.
• Sondear el valor de ubicación de la operación que se
devuelve, hasta que el valor de resultado de la
operación indique que la operación se ha realizado
correctamente.
• Llamar al método Get Profile en la Speaker Identification API.
Cuando el proceso de inscripción se realiza correctamente, los
resultados devueltos por el método Get Profile están en un objeto
JSON con formato correcto o en una matriz que tiene el aspecto del
ejemplo siguiente:
JSONCopiar
"identificationProfileId": "e30148ba-9078-4b88-a53c-
d47888ba64ce",
"locale": "en-us",
"enrollmentSpeechTime": 3.38,
"remainingEnrollmentSpeechTime": 0.0,
"createdDateTime": "2018-02-18T[Link].567Z",
33
"lastActionDateTime": "2018-02-18T[Link].614Z",
"enrollmentStatus": "Enrolled"
Una vez aplicado un perfil de verificación o identificación del hablante,
ya se puede usar Azure Cognitive Services para reconocer al hablante.
Para facilitar las pruebas de esta característica, compruebe que sigue
las instrucciones para crear la cuenta de Cognitive Services y, después,
use la clave de servicio y visite la página de Speaker Recognition API,
donde encontrará más información y podrá seleccionar el botón Abrir
consola de pruebas de API cuando haya preparado la carga de su
propia muestra de audio y la prueba de las características de
identificación. La aplicación de pruebas de API permite realizar pruebas
sin tener que disponer de una aplicación de un extremo a otro
completa.
34
IMPLEMENTACIÓN DEL
RECONOCIMIENTO DEL
HABLANTE
El proceso de verificación del hablante consta de tres pasos
principales:
1. Crear un perfil de verificación
2. Crear tres inscripciones con una frase de verificación
3. Intentar verificar a un hablante
35
Para verificar un hablante, se debe enviar una solicitud web autorizada
al punto de conexión de la suscripción y observar la información
devuelta por la llamada a través del método Verify de Speaker
Verification API.
TABLA 1
Propiedad Valor requerido
Contenedor WAV
Codificación PCM
Velocidad 16 K
Formato de muestreo 16 bits
Canales Mono
El método Verify acepta un archivo de audio (como una carga de
archivo binario) que debe cumplir los mismos criterios que los archivos
usados para la inscripción de la verificación y la identificación del
hablante. Repasemos estos requisitos de archivo de audio:
El método Verify no acepta ningún parámetro adicional. Solo requiere
un clip de audio (como un archivo binario) para la verificación. En C#,
una carga binaria puede proceder de un archivo de audio (que
36 contenga una grabación de voz "nueva" de la frase de verificación),
ubicado en un equipo local:
C#Copiar
string uri =
"[Link]
nProfileId={verificationProfileId}";
FileStream fileStream = new FileStream(@"c:\\Sample
Audio\verification_01.wav", [Link], [Link]);
BinaryReader binaryReader = new BinaryReader(fileStream);
var bytes = [Link]((int)[Link]);
using (ByteArrayContent content = new ByteArrayContent(bytes))
[Link] = new
MediaTypeHeaderValue("application/octet-stream");
//POST the binary content to the endpoint
response = await [Link](uri, content);
string contentString = await [Link]();
Valores devueltos
La información devuelta desde una llamada al
37
método Verify proporciona toda la información necesaria para verificar
a un hablante:
• Result: un valor de Accept o Reject.
• Confidence: un valor de Low, Normal o High.
• Phrase: la frase de verificación reconocida del archivo de audio
Una vez realizada la verificación, se devuelve una matriz o un objeto
JSON con el formato correcto:
JSONCopiar
"result" : "Accept",
"confidence" : "Normal",
"phrase": "<Recognized phrase>"
Nota
El valor <Recognized phrase> se rellena con la frase extraída que se
reconoció en el audio.
Según el escenario, la información devuelta podría requerir lógica
adicional en su aplicación o servicio. Por ejemplo, en entornos
altamente confidenciales, un nivel de confianza Normal podría indicar
la necesidad de una nueva verificación hasta que se notifique un nivel
de confianza High. En caso contrario, un valor Accept podría ser
38 suficiente por sí mismo.
Una vez que esté familiarizado con el proceso de verificación del
hablante, verá que el proceso de identificación del hablante es similar.
Identificación del hablante
Al igual que en la verificación del hablante, el proceso de identificación
del hablante consta de tres pasos principales:
1. Crear un perfil de identificación
2. Crear una inscripción de identificación
3. Intentar identificar a un hablante
Al igual que en la verificación del hablante, para identificar un hablante
se debe enviar una solicitud web autorizada al punto de conexión de
la suscripción y observar la información devuelta por la llamada a través
del método Identify de Speaker Identification API. El archivo de audio
que envíe en su solicitud debe cumplir los mismos criterios que todos
los demás archivos de audio del sistema.
El método Identify tampoco toma parámetros adicionales, solo un clip
de audio (como un archivo binario) que contiene cualquier forma de
contenido hablado. En C#, una carga binaria podría proceder de un
archivo de audio (que contenga una grabación de voz "nueva"),
ubicado en un equipo local:
C#Copiar
string uri =
"[Link]
39 cationProfileId={identificationProfileId}";
FileStream fileStream = new FileStream(@"c:\\Sample
Audio\identification_01.wav", [Link], [Link]);
BinaryReader binaryReader = new BinaryReader(fileStream);
var bytes = [Link]((int)[Link]);
using (ByteArrayContent content = new ByteArrayContent(bytes))
[Link] = new
MediaTypeHeaderValue("application/octet-stream");
//POST the binary content to the endpoint.
response = await [Link](uri, content);
string contentString = await [Link]();
Valores devueltos de identificación
La información devuelta por una llamada al
método Identify proporciona toda la información necesaria para
identificar a un hablante:
• identifiedProfileId: el valor de identificationProfileId del perfil
del hablante identificado.
40 • Confidence: un valor de Low, Normal o High.
Cuando ha finalizado la identificación, se devuelve un objeto JSON:
JSONCopiar
"identifiedProfileId" : "00000000-0000-0000-0000-000000000000",
"confidence" : "Normal"
}
Importante
Si la propiedad identifiedProfileId devuelve un valor de 00000000-
0000-0000-0000-000000000000, significa que no se ha identificado
ningún perfil de identificación del hablante. En otras palabras, el
archivo de audio que debe identificarse no coincide con ninguno de
los perfiles proporcionados para la identificación del hablante.
41
1
Entrenamiento y
empaquetado de un módulo
de Azure Machine Learning
para la implementación en
un dispositivo IoT Edge
BIENVENIDA
Implemente un módulo de aprendizaje automático entrenado en el
perímetro con un contenedor. El módulo de aprendizaje automático
que cree se implementará en un dispositivo IoT Edge. Comprobará que
la imagen de contenedor se ha creado y almacenado correctamente en
el registro de contenedor de Azure. Verá los datos del módulo
implementado desde IoT Edge.
En este módulo, aprenderá a:
2 1. Iniciar un módulo desde Azure Portal en IoT Edge mediante un
contenedor
2. Generar datos simulados desde un dispositivo perimetral
3. Comprobar los datos generados desde el dispositivo perimetral
Requisitos previos
4. Capacidad de usar IoT Hub de Azure en
5. Capacidad de usar Azure Cloud Shell
6. Experiencia en la creación y administración de recursos con
Azure Portal o Azure Cloud Shell a nivel de principiante
7. IoT Hub
8. Dispositivo IoT Edge
Introducción 5 min
Procedimiento para crear e implementar módulos de Azure
Machine Learning 10 min
Ejercicio: Creación e implementación de un módulo de Azure
Machine Learning 15 min
Procedimientos para ver el repositorio de contenedor 2 min
Ejercicio: Visualización del repositorio de contenedores 15 min
Procedimiento para ver los datos generados 2 min
Ejercicio: Visualización de los datos generados 5 min
Limpieza de los recursos 1 min
3
Prueba de conocimientos 5 min
Resumen 2 min
INTRODUCCIÓN
La implementación de modelos de aprendizaje automático en
producción presenta muchos desafíos. Por ejemplo, tendrá que
administrar las dependencias entre varios entornos. Cada entorno
también puede tener un conjunto único de bibliotecas y otros recursos
específicos. Además, es posible que tenga que mantener varias
versiones de modelos en un momento determinado. Para solucionar
estos problemas, puede entrenar e implementar los modelos mediante
contenedores, donde todas las dependencias se pueden empaquetar
4 en un contenedor independiente. Los contenedores se pueden
implementar en dispositivos perimetrales. Esto le permite trabajar con
una variedad de hardware sin problemas. También puede administrar
el entorno de implementación de destino de manera más eficaz
mediante el uso de contenedores.
Imagine que trabaja como científico de datos y quiere implementar en
producción modelos de aprendizaje automático entrenados. Se le ha
encargado implementar un módulo de aprendizaje automático en
dispositivos perimetrales de una manera escalable. El módulo debe
implementar la lógica de negocios en un algoritmo de detección de
anomalías en un dispositivo perimetral. El algoritmo debe predecir
cuándo se produce un error en el dispositivo en función de los datos
de temperatura simulados de la máquina. El algoritmo debe analizar
los datos generados por el dispositivo y etiquetar el mensaje como
anómalo o no. Podría implementar esta solución mediante una
estrategia de contenedores. Podría entrenar el detector de anomalías
en la nube en función de datos históricos e implementar el modelo
5 entrenado como un contenedor. El uso de contenedores en esta
solución facilita la implementación del algoritmo en varios entornos de
destino de una manera escalable.
6
En este módulo, desarrollará un módulo de aprendizaje automático y
lo implementará en un dispositivo Linux que ejecuta Azure IoT Edge.
La solución permitirá hacer lo siguiente:
9. Crear un módulo de Azure Machine Learning
10. Insertar un contenedor de módulo en Azure Container Registry
11. Implementar un modelo de Azure Machine Learning en un
dispositivo de IoT Edge
12. Visualización de los datos generados
Objetivos de aprendizaje
En este módulo, aprenderá a:
13. Iniciar un módulo desde Azure Portal en IoT Edge mediante un
contenedor
14. Generar datos simulados desde un dispositivo perimetral
15. Comprobar los datos generados desde el dispositivo perimetral
Requisitos previos
16. Capacidad de usar IoT Hub en Azure
17. Capacidad de usar Azure Cloud Shell
18. Experiencia en la creación y administración de recursos con
Azure Portal o Azure Cloud Shell a nivel de principiante
19. IoT Hub
20. Dispositivo IoT Edge
¿Qué es una máquina
virtual?
Una máquina virtual es un entorno de software que emula la
funcionalidad de un sistema de hardware físico. Una máquina virtual se
puede instalar y ejecutar en un hardware anfitrión para emular un
hardware dedicado con el fin de admitir la ejecución de varios entornos
de sistema operativo, denominados sistemas operativos invitados, en
el mismo hardware físico. Proporciona la misma experiencia de ejecutar
un SO invitado diferente sin necesidad de hardware adicional para
ejecutar el sistema.
La máquina virtual administra el aislamiento de los recursos para evitar
conflictos entre el sistema operativo en ejecución. La máquinas
8 virtuales eliminan la necesidad de que el hardware físico ejecute cada
uno de los sistemas operativos y también evita que se reinicie el
sistema para ejecutar cualquier copia del sistema operativo antes de
que la máquina virtual existiera. Este enfoque ahorra el coste de tener
máquinas físicas para cada sistema operativo.
La máquina virtual de Azure agrega otro nivel al concepto de VM para
admitirlas en la nube. El usuario no tiene que preocuparse de los
requisitos de la máquina física. Puede crear y ejecutar fácilmente la
máquina virtual en la nube. La VM puede configurarse mediante una
interfaz basada en web que facilita la puesta en marcha del sistema
para satisfacer las necesidades del usuario. La máquina virtual de Azure
también permite escalar o reducir verticalmente varios sistemas
operativos sin preocuparse por los costes de administración o de la
infraestructura. El sistema de la máquina virtual se puede supervisar en
línea para obtener el estado o para realizar el seguimiento de cualquier
aplicación que se ejecute en él.
Además, Azure admite el uso de implementaciones automáticas de IoT
Edge para implementar cargas de trabajo basadas en Edge en la
máquina virtual. Esto proporciona la capacidad de ejecutar Azure IoT
Edge en una VM con un sistema operativo compatible que pueda
ejecutar contenedores. Permite que Azure IoT Edge se ejecute en una
gama completa de hardware, incluidas las unidades de
microcontrolador que ejecutan Azure Sphere, con la potencia de la
experiencia de la nube y el perímetro de Azure Stack.
En este módulo, se crea una máquina virtual en la nube que permite
implementar los módulos de IoT Edge.
9
Procedimientos para
configurar la
comunicación entre IoT
Hub e IoT Edge
Información general
En este módulo, se usa una máquina virtual basada en Ubuntu
existente para que actúe como dispositivo IoT Edge. Como alternativa,
puede ejecutar el entorno de ejecución de Azure IoT Edge en un
dispositivo Linux físico propio (x64, ARM32 o ARM64). A continuación,
se considera solamente el escenario de un dispositivo virtual.
Se establecen comunicaciones entre IoT Edge e IoT Hub para poder
10
implementar el módulo en el dispositivo IoT. Para configurar las
comunicaciones entre IoT Hub e IoT Edge, primero debe crear un
dispositivo virtual de Ubuntu proporcionado por Microsoft mediante
los scripts proporcionados. Este dispositivo virtual tiene instalados
todos los requisitos previos. Después, cree una instancia de IoT Hub
mediante Azure Cloud Shell. A continuación, registre el dispositivo IoT
Edge en la instancia de IoT Hub y recupere la cadena de conexión.
Necesitará esta cadena para configurar el dispositivo IoT Edge en pasos
posteriores.
Para resumir el proceso: a fin de registrar un dispositivo IoT Edge en la
instancia de IoT Hub, primero debe crear una identidad del dispositivo
para el dispositivo perimetral. Esta identidad del dispositivo le permite
comunicarse con la instancia de IoT Hub. La identidad del dispositivo
reside en la nube y usa una cadena de conexión de dispositivo única
para asociar un dispositivo físico a una identidad del dispositivo. El
dispositivo IoT Edge se conecta a la instancia de IoT Hub, ya sea a un
centro existente o a uno recién creado. La cadena de conexión vincula
el dispositivo IoT con su identidad en la instancia de IoT Hub. Por tanto,
el proceso de registro de un dispositivo implica la recuperación de la
cadena de conexión asociada a un dispositivo perimetral que
representa la identidad del dispositivo en IoT Hub. Después de esto, se
configura la cadena de conexión en el dispositivo IoT Edge.
Antes de empezar, si no tiene una suscripción activa a Azure, debe crear
una cuenta gratuita, y puede usar una evaluación gratuita de 30 días, o
bien crear una suscripción de pago por uso propia.
Por tanto, los pasos que debe seguir son estos:
11
1. Definir el grupo de recursos o usar uno existente
2. Crear un dispositivo Azure IoT Edge
3. Crear una instancia de Azure IoT Hub o usar una existente
4. Registrar el dispositivo IoT Edge en IoT Hub
Qué es un grupo de recursos
Un grupo de recursos es un contenedor que conserva los recursos
relacionados de una solución. El grupo de recursos incluye los recursos
que se quieren administrar como grupo. Los recursos relacionados se
agrupan de forma lógica, como las cuentas de almacenamiento, redes
virtuales y máquinas virtuales para implementarlos, administrarlos y
mantenerlos como entidad única. Los grupos de recursos almacenan
metadatos sobre los recursos. Por tanto, al especificar una ubicación
para el grupo de recursos, se especifica dónde se almacenan esos
metadatos. Por motivos de compatibilidad, es posible que sea
necesario asegurarse de que los datos se almacenan en una región
concreta.
Procedimientos para crear un dispositivo IoT Edge
Una vez creado el grupo de recursos, puede crear un dispositivo virtual
IoT preconfigurado dentro de este grupo de recursos. La creación de
un dispositivo perimetral virtual implica dos propiedades obligatorias:
Definir un nombre del dispositivo virtual y elegir el grupo de recursos
que se va a implementar. Como va usar Azure IoT Edge en la máquina
virtual Ubuntu según se ha descrito en los requisitos previos, el
dispositivo ya tiene instalado el entorno de ejecución de Azure IoT
Edge. El entorno de ejecución de Azure IoT Edge es una colección de
programas que convierten un dispositivo en un dispositivo IoT Edge.
12 Colectivamente, los componentes del entorno de ejecución de Azure
IoT Edge permiten que los dispositivos IoT Edge reciban código para
ejecutarlo en el perímetro y comunicar los resultados a la instancia de
IoT Hub.
El entorno de ejecución de Azure IoT Edge se implementa en todos los
dispositivos IoT Edge. Tiene tres componentes. El demonio de
seguridad de IoT Edge se inicia cada vez que se inicia un dispositivo IoT
Edge y arranca el dispositivo mediante el inicio del agente de este. El
agente de IoT Edge facilita la implementación y supervisión de los
módulos en el dispositivo IoT Edge, incluido el centro de IoT Edge. El
centro de IoT Edge administra las comunicaciones entre los módulos
del dispositivo IoT Edge y entre el dispositivo y la instancia de IoT Hub.
Puede usar el comando az IoT hub device-identity create para crear
un dispositivo IoT Edge.
Procedimientos para crear la instancia de IoT Hub
Azure IoT Hub permite la comunicación entre el dispositivo virtual y la
nube. La creación de una instancia de IoT Hub implica las siguientes
propiedades obligatorias: Definir un nombre único de la instancia de
IoT Hub y elegir el grupo de recursos que se va a implementar. Para
crear una instancia de Azure IoT Hub con la CLI de Azure, usará el
conjunto de comandos az IoT hub create. Tenga en cuenta que solo
se permite una instancia gratuita de IoT Hub en cada suscripción. El
nivel gratuito de IoT Hub funciona para este ejercicio. Si ha usado IoT
Hub en el pasado y ya tiene un centro gratis creado, puede usar ese
centro de IoT.
Registro del dispositivo IoT Edge en IoT Hub
El proceso de registro de un dispositivo IoT implica la recuperación de
13
la cadena de conexión del dispositivo. La identidad del dispositivo
reside en la nube, y se usa una cadena de conexión de dispositivo única
para asociar un dispositivo físico a una identidad de dispositivo. Use el
comando az iot hub device-identity show-connection-string para
recuperar la cadena de conexión. Copie el valor de la clave
connectionString desde la salida JSON y guárdelo. Usará esta cadena
de conexión para configurar el entorno de ejecución de Azure IoT Edge.
Procedimientos para configurar un dispositivo IoT Edge
El proceso de configuración del dispositivo IoT Edge implica la
configuración de la cadena de conexión en el dispositivo IoT Edge.
Puede establecer la cadena de conexión de forma remota sin tener que
conectarse a la máquina virtual mediante la ejecución de un script en
el dispositivo. Use el comando az vm run para invocar un script en el
dispositivo perimetral y pasar la cadena de conexión como un
parámetro.
14
Procedimiento para crear
e implementar módulos
de Azure Machine
Learning
Información general
En este módulo, el objetivo es entrenar un modelo de aprendizaje
automático e implementar el modelo entrenado en un contenedor de
Azure Machine Learning. Todos los componentes necesarios para el
entrenamiento del modelo y la implementación del contenedor están
en el [repositorio de Git del kit de herramientas de inteligencia artificial
15 para Azure IoT Edge]([Link]
edge/tree/master/IoT Edge anomaly detection tutorial). Ejecutará el
cuaderno en el ejercicio siguiente.
En primer lugar, configure los parámetros para IoT Hub y el área de
trabajo de aprendizaje automático de Azure. Estos incluyen el grupo de
recursos, la región de Azure, el nombre de la instancia de Azure IoT
Hub, el identificador del dispositivo IoT Edge, el identificador de la
suscripción de Azure y el nombre del área de trabajo del servicio Azure
ML. También debe especificar el nombre del módulo
"machinelearningmodule". En este caso, se usa el clasificador de
árbol de decisión como un detector de anomalías. Compilará,
evaluará y probará el modelo. También almacenará el modelo en
disco y, después, registrará el modelo.
A continuación, usará el modelo registrado para crear una imagen de
Docker. Luego, puede probar el rendimiento del modelo mediante
la implementación del contenedor en Azure Container Instances (ACI).
Llame al servicio web con algunos datos de entrada ficticios
para obtener una predicción.
Por último, implementará el contenedor en el dispositivo Azure IoT
Edge. Cree un archivo [Link] que contenga los módulos
que quiere implementar en el dispositivo y las rutas. Después, inserte
este archivo en la instancia de IoT Hub, que lo enviará al
dispositivo IoT Edge. Después, el agente de IoT Edge extraerá las
imágenes de Docker y las ejecutará. En las secciones siguientes, se
describen estos pasos con más detalle.
16
Administración de
modelos de Azure
La creación del aprendizaje automático es solo el primer paso para
implementarlo en producción en dispositivos perimetrales. El flujo de
trabajo para implementar modelos de producción es el siguiente:
1. Registre el modelo.
2. Prepárese para la implementación. (Especifique los recursos, el
uso y el destino de proceso).
17 3. Implemente el modelo en el destino de proceso.
4. Pruebe el modelo implementado como un servicio web.
En primer lugar, después de compilar el modelo, debe registrarlo. Un
modelo registrado es una agrupación lógica para uno o varios archivos
que componen el modelo. Después, el modelo se empaqueta en una
imagen de Docker. En última instancia, el modelo se implementa como
un servicio web en la nube o en el equipo local. Es posible que durante
la implementación se necesiten pasos adicionales. Incluyen la
generación de perfiles para determinar la configuración de CPU y
memoria ideal o, la conversión del modelo para optimizar el
rendimiento.
Preparación de la
implementación del
modelo
Puede usar los siguientes destinos o recursos de proceso para
hospedar la implementación del servicio web.
21. Servicio web local
22. Instancia de proceso de Azure Machine Learning
23. Azure Kubernetes Service (AKS)
24. Azure Container Instances
25. Clústeres de proceso de Azure Machine Learning
26. Azure Functions
18
27. Azure IoT Edge
28. Azure Data Box Edge.
En este caso, usará Azure Container Instances como un destino de
proceso. Una vez creado el modelo en un contenedor, puede
implementarlo como un contenedor como un servicio web para
dispositivos IoT Edge.
Para implementar el modelo, necesita los elementos siguientes:
29. Un script de entrada. Este script acepta solicitudes, las puntúa
mediante el modelo y devuelve los resultados. El script de
entrada es específico del modelo.
30. Dependencias, como scripts de asistente o paquetes de Python
o Conda necesarios para ejecutar el modelo o el script de
entrada.
31. La configuración de la implementación del destino de
proceso que hospeda el modelo implementado. Esta
configuración describe aspectos como los requisitos de
memoria y CPU, necesarios para ejecutar el modelo.
Estos elementos se encapsulan en una configuración de inferencia y
una configuración de implementación. La configuración de inferencia
hace referencia al script de entrada y a otras dependencias. Estas
configuraciones se definen mediante programación cuando se usa el
SDK para realizar la implementación. Se definen en archivos JSON
cuando se usa la CLI.
19
El script de entrada recibe los datos enviados a un servicio web
implementado y los pasa al modelo. Después, toma la respuesta
devuelta por el modelo y la envía al cliente.
El script contiene dos funciones que cargan y ejecutan el modelo:
32. init(): Normalmente, esta función carga el modelo en un objeto
global. Esta función solo se ejecuta una vez cuando se inicia el
contenedor de Docker para el servicio web.
33. run(input_data): esta función usa el modelo para predecir un
valor basado en los datos de entrada. Las entradas y salidas de
la ejecución suelen usar el formato JSON para la serialización y
deserialización. También puede trabajar con datos binarios sin
formato. Puede transformar los datos antes de enviarlos al
modelo o antes de devolverlos al cliente.
Creación de una imagen
de Docker
Los modelos implementados se empaquetan como una imagen de
Docker. La imagen contiene las dependencias necesarias para ejecutar
el modelo junto con la lógica para puntuar nuevos datos. Para Azure
20 Container Instances, se usa la clase
[Link] para crear una configuración de
imagen. La configuración de imagen se usa después para crear una
imagen de Docker.
Una vez que tenga una imagen registrada, debe compilarla mediante
ContainerImage
Implementación de la
imagen en el destino de
proceso
Para implementar la imagen que ha creado, primero debe especificar
el destino que quiere usar. En este caso, es la instancia de Azure
Container Instances (ACI). Después, use la clase AciWebservice para
configurar e implementar a partir de una imagen.
21
Implementación de un
contenedor en un
dispositivo Azure IoT Edge
Cree un archivo [Link] que contenga los módulos que
quiere implementar en el dispositivo y las rutas. Después, debe insertar
este archivo en la instancia de IoT Hub, que lo enviará al dispositivo IoT
Edge. Después, el agente de IoT Edge extraerá las imágenes de Docker
y las ejecutará. Llegados a este punto, debería poder supervisar los
mensajes desde el dispositivo perimetral hasta la instancia de IoT Hub.
Ejercicio: Creación e
implementación de un
módulo de Azure Machine
Learning
Primer paso:
1. Inicie sesión en [Link]
2. Presione el botón Cargar.
3. Escriba Azure/ai-toolkit-iot-edge como repositorio de GitHub.
34. Puede asignar a este repositorio un nombre que pueda
recordar, o bien usar el mismo nombre.
22 35. Si quiere, puede mantener el repositorio privado.
4. Tenga en cuenta que el proceso de importación puede tardar
algún tiempo.
5. Después de esta fase, presione Run on Free Compute (Ejecutar
en un proceso gratuito) como se indica a continuación.
23
6. Se abrirá una nueva pestaña en el explorador. Asegúrese de que
el cuaderno se ejecute en un proceso gratuito (según la pestaña
anterior) para evitar cargos.
7. Vaya a la pestaña nueva y verá que el cuaderno se está
ejecutando con el proyecto que acaba de importar desde
GitHub.
24
8. Ahora, vaya a la carpeta IoT Edge anomaly detection
tutorial (Tutorial de detección de anomalías de IoT Edge) y 8.
haga clic en [Link]. Ejecutará
todas las celdas de código paso a paso en el cuaderno.
Realice las acciones
siguientes.
Especificación de parámetros
25
Carga de la extensión
azure iot
Inicio de sesión en Azure
26
Establecimiento de la
suscripción de Azure
Comprobación de la
versión del SDK
27 Creación del área de
trabajo de aprendizaje
automático
Carga del área de trabajo
de Azure ML
Registro del dispositivo en
28
IoT Hub
Obtención de la cadena de
conexión del dispositivo
29 Instalación de las
bibliotecas
Carga y lectura del
conjunto de datos
30
Carga de características
Entrenamiento del modelo
31
Evaluación de la precisión
Serialización y prueba del
modelo
32
Registro del modelo en la
nube
Escritura del archivo
iot_score.py
33
Creación de la imagen de
Docker
34
Prueba del modelo en
Azure Container Instances
35
Prueba del servicio web
Carga del área de trabajo
de Azure ML
36
Obtención de los detalles
del contenedor
Implementación del
contenedor en el
dispositivo perimetral
37
Procedimientos para ver el
repositorio de contenedor
En el paso anterior, ha creado una imagen de contenedor para el
módulo de detección de anomalías. Ahora puede comprobar que la
imagen de contenedor se ha creado y almacenado correctamente en
la instancia de Azure Container Registry asociada al entorno de
aprendizaje automático.
Ejercicio: Visualización del
repositorio de
contenedores
1. En Azure Portal, vaya al área de trabajo de aprendizaje
automático.
38
2. Haga clic en aprendizaje automático y seleccione el área de
trabajo que ha creado en el cuaderno.
3. Al hacer clic en el área de trabajo, verá la sección Información
general del área de trabajo de ML y los detalles del área de
trabajo, como el grupo de recursos, la ubicación, el identificador
de la suscripción, el almacenamiento, el registro, el almacén de
claves y Application Insights.
39 4. Haga clic en el valor Registro para entrar en el registro de
contenedor.
5. Al desplazarse hacia abajo desde la sección información
general, verá la sección Servicios y, después,
seleccione Repositorios en Servicios. Verá el
repositorio tempanomalydetection que ha creado en el
cuaderno.
40
6. Seleccione tempanomalydetection. El repositorio tendrá una
etiqueta. Ahora la ruta de acceso completa de la imagen del
contenedor tiene el
formato: .[Link]/tempanomalydetection:1. Puede usar la
ruta de acceso de la imagen para implementar este contenedor
en dispositivos IoT Edge.
7. Al desplazarse hacia abajo desde la sección Información
general, verá la sección Configuración. Seleccione Clave de
acceso.
41
Verá una serie de credenciales de acceso como Servidor de inicio
de sesión, Nombre de usuario y Contraseña para un usuario
administrador. Estas credenciales se pueden incluir en el manifiesto
de implementación para proporcionar acceso a los dispositivos IoT
Edge para extraer imágenes de contenedor del registro.
Procedimiento para ver
los datos generados
En este momento, puede ver cómo se ejecuta el contenedor como un
módulo en el dispositivo IoT Edge. Puede ver los mensajes que se
generan en cada módulo de IoT Edge. También puede ver los mensajes
que se entregan al centro de IoT.
Ejercicio: Visualización de
42 los datos generados
En este ejercicio, se configurará Visual Studio Code para supervisar los
mensajes del dispositivo a la nube que llegan al centro de IoT. Nota:
Para ver los mensajes del dispositivo a la nube que recibe el centro de
IoT, necesita la extensión Azure IoT Hub Toolkit para Visual Studio
Code (anteriormente, la extensión Azure IoT Toolkit).
1. En Visual Studio Code, seleccione IoT Hub
Devices (Dispositivos IoT Hub).
2. Después, seleccione Set IoT Hub Connection
String (Establecer cadena de conexión de IoT Hub) en el menú.
3. En el cuadro de texto que aparece en la parte superior de la
página, escriba la cadena de conexión iothubowner para IoT
Hub. El dispositivo IoT Edge debe aparecer en la lista de
dispositivos IoT Hub.
4. Seleccione Iniciar la supervisión del punto de conexión de
eventos integrado.
5. Observe los mensajes procedentes de tempSensor cada cinco
segundos. El cuerpo del mensaje contiene una propiedad
denominada anomaly que el módulo de aprendizaje
automático proporciona con un valor true o false.
6. La propiedad AzureMLResponse contiene el valor "OK" si el
modelo se ha ejecutado correctamente.
43
Limpieza de los recursos
Limpie los recursos si no quiere volver a usarlos. La eliminación de los
recursos de Azure y de los grupos de recursos es un proceso
irreversible. Debe estar seguro de que quiere eliminar los recursos.
1
Compilación de un bot de
chat con Azure Bot Service
BIENVENIDA
Azure Bot Service, en combinación con Microsoft QnA Maker, ofrece
las herramientas que los desarrolladores necesitan para crear y publicar
bots inteligentes que interactúen de forma natural con los usuarios
mediante una gama de servicios.
En este módulo, aprenderá a:
Crear un bot de aplicación web de Azure para hospedar un bot
Creará una base de conocimiento, la rellenará con datos y la
conectará a un bot
Implementará bots en el código y depurará los robots que
compile
2
Publicará los bots y usará la integración continua para
mantenerlos al día
Depuración de bots en local mediante Visual Studio Code y
Microsoft Bot Framework Emulator
Requisitos previos
Ninguno
Introducción 2 min
Ejercicio: Creación de un bot de aplicación web de Azure 15 min
Ejercicio: Creación de una base de conocimiento con Microsoft
QnA Maker 20 min
Ejercicio: Implementación de un bot con Visual Studio Code 20
min
Ejercicio: Depuración local del bot 20 min
Ejercicio: Conexión del bot con la base de conocimiento 20 min
Comprobación de conocimientos 5 min
Resumen y limpieza 8 min
3
INTRODUCCIÓN
Azure Bot Service, en combinación con Microsoft QnA Maker, ofrece
las herramientas que los desarrolladores necesitan para crear y publicar
bots inteligentes que interactúen de forma natural con los usuarios
mediante una gama de servicios.
En este módulo, creará un bot mediante Azure Bot Service y lo
conectará a una base de conocimiento creada con QnA Maker. Luego
4
se interactúa con el bot mediante Microsoft QnA Maker y Microsoft Bot
Framework Emulator.
Nota
Este módulo requiere una suscripción de Azure. Los servicios que cree
y use son gratuitos, pero necesitará una suscripción activa o una
versión de prueba para completar los ejercicios. Si no tiene una
suscripción a Azure, cree una cuenta gratuita antes de empezar.
Objetivos de aprendizaje
En este módulo, aprenderá a:
• Crear un bot de aplicación web de Azure para hospedar un bot
• Creará una base de conocimiento, la rellenará con datos y la
conectará a un bot
• Implementará bots en el código y depurará los robots que
compile
• Publicará los bots y usará la integración continua para
mantenerlos al día
• Depuración de bots en local mediante Visual Studio Code y
Microsoft Bot Framework Emulator
Requisitos previos
Para realizar los ejercicios de este módulo, necesita una suscripción
activa de Azure (o una versión de prueba) y una instalación local de
5 Visual Studio Code.
EJERCICIO: CREACIÓN DE
UN BOT DE APLICACIÓN
WEB DE AZURE
El primer paso para crear un bot es proporcionar una ubicación para
hospedarlo en Azure. La característica Web Apps de Azure App Service
es perfecta para hospedar aplicaciones de bot que Azure Bot Service
se encarga de aprovisionar automáticamente. En esta unidad se usa
Azure Portal para aprovisionar un bot de aplicación web de Azure.
1. Inicie sesión en Azure Portal .
6 2. En el menú de Azure Portal, seleccione Crear un recurso.
3. Seleccione IA y Machine Learning y luego Web App Bot.
4. En la
página Nuevo
bot de
aplicación web,
especifique la
configuración
siguiente para el
nuevo bot de
aplicación web.
Opción Valor Descripción
7
Nombre del Elija un nombre único Este nombre debe ser único dentro de
bot Azure, por lo que debe asegurarse de
que aparece una marca de verificación
de color verde junto a él.
Suscripción Seleccione la suscripción Seleccione la suscripción de Azure.
Grupo de Seleccione Crear Seleccione un grupo de recursos
recursos nuevo y use el existente o cree uno para almacenar
nombre mslearn- los recursos de este ejercicio.
factbot
Opción Valor Descripción
Ubicación Seleccione la región más Seleccione la ubicación donde se
cercana de la lista debe colocar el bot.
desplegable
Plan de tarifa F0 Un plan básico gratuito para esta
aplicación.
Nombre de Deje el valor El valor predeterminado se rellena
aplicación predeterminado según el nombre del bot. Puede
cambiarlo si prefiere otro nombre
8 para la aplicación web o dejar el valor
predeterminado.
5. Luego, seleccione Plantilla de bot. Seleccione SDK v3 como
versión, [Link] como lenguaje del SDK y Preguntas y
respuestas como tipo de plantilla. Luego haga clic
en Aceptar en la parte inferior de la vista.
6. Ahora seleccione Plan de
App
Service/Ubicación, Crear
nuevo y luego cree un plan
de App Service denominado
"qa-factbot-service-plan" o
algo similar en la misma
región que ha seleccionado
en el paso anterior. Haga clic
en Aceptar para cerrar la
vista.
7. Deje las restantes opciones con sus valores predeterminados.
9
Puede comparar la configuración con la siguiente captura de
pantalla si es necesario.
8. Haga clic en Crear en la parte inferior del panel "Bot de
aplicación web" para iniciar
la implementación.
Nota
Por lo general, la implementación
lleva dos minutos o menos. Puede
observar el progreso en el panel
Notificaciones (icono de campana)
de la parte superior del portal.
9. Una vez concluida la
implementación,
10
seleccione Grupos de
recursos en la barra lateral
izquierda.
10. Seleccione el grupo de
recursos que ha creado
(mslearn-factbot) y en el
que ha implementado el
bot de aplicación web de
Azure.
Ahora se deberían ver varios
recursos creados para el bot de
aplicación web de Azure.
En segundo plano, han sucedido muchas cosas al implementar el bot
de la aplicación web de Azure.
Se ha creado un bot y se ha registrado en Azure.
Se ha creado una aplicación web de Azure para hospedar el bot.
El bot se ha configurado para trabajar con Microsoft QnA
Maker.
11
El siguiente paso es usar QnA Maker para crear una base de
conocimiento de preguntas y respuestas para dotar al bot de
inteligencia.
EJERCICIO: CREACIÓN DE
UNA BASE DE
CONOCIMIENTO CON
MICROSOFT QNA MAKER
QnA Maker forma parte de Azure Cognitive Services, un conjunto de
servicios y API para compilar aplicaciones inteligentes respaldadas por
inteligencia artificial (IA) y aprendizaje automático. En lugar de codificar
un bot para que se anticipe a cada pregunta que un usuario pudiera
hacer y proporcionar una respuesta, puede conectarlo a una base de
conocimiento de preguntas y respuestas creadas con QnA Maker. Un
12
escenario de uso habitual es crear una base de conocimiento a partir
de la dirección URL de una página web de Preguntas más frecuentes
para que el bot pueda responder a preguntas específicas del dominio,
por ejemplo, "¿cómo encuentro la clave de producto de Windows?" o
"¿dónde puedo descargar Visual Studio Code?".
En esta unidad, usará QnA Maker para crear una base de conocimiento
con preguntas como "¿qué equipos de la NFL han ganado más
ediciones de la Super Bowl?" y "¿cuál es la ciudad más grande del
mundo?". Luego se implementa la base de conocimiento en una
aplicación web de Azure para que sea accesible a través de un punto
de conexión HTTPS.
Crear un servicio QnA Maker
1. Vaya al portal de QnA Maker .
2. Seleccione Iniciar sesión en la esquina superior derecha e
inicie sesión con la misma cuenta que ha usado para crear la
aplicación web.
3. A menos que ya tenga una base de conocimiento, el portal le
indica que no tiene ninguna y le pide que cree una desde el
menú.
4. En el menú de la parte superior del portal, seleccione Create a
knowledge base (Crear una base de conocimiento).
5. Haga clic en Create a QnA service (Crear un servicio QnA). Al
13 seleccionar este botón, se abre Azure Portal e inicia la sesión
con las credenciales que usó anteriormente. Se crean el servicio
QnA Maker y el servicio asociado de aplicación de Azure que lo
va a hospedar en este portal.
Nota
También es posible crear un servicio QnA Maker en Azure Portal antes
de crear una base de conocimiento.
6. En la pestaña de Azure Portal recién abierta, especifique la
siguiente configuración para el nuevo servicio QnA Maker.
Opción Valor Descripción
Nombre elija un nombre Este nombre debe ser único dentro de
único Azure, por lo que debe asegurarse de
que aparezca una marca de verificación
de color verde junto a él Y en el
cuadro Nombre de aplicación situado
14 más abajo en el panel.
Suscripción Seleccione la Seleccione la suscripción de Azure.
suscripción
Plan de tarifa F0 Un plan gratuito básico.
Ubicación Seleccione la región Seleccione la ubicación donde debe
más cercana de la colocarse el servicio.
lista desplegable
Grupo de Seleccione el grupo Seleccione el grupo de recursos
recursos de recursos creado existente (mslearn-factbot) para
en la unidad anterior almacenar los recursos de este ejercicio.
Opción Valor Descripción
Plan de tarifa B Seleccione el plan de tarifa del servicio
de la de búsqueda.
búsqueda
Ubicación de Seleccione la región Seleccione la ubicación donde debe
la búsqueda más cercana de la colocarse el servicio de búsqueda.
lista desplegable
Nombre de Deje el valor El valor predeterminado se rellena
aplicación predeterminado según el nombre de la instancia de QnA
15 Maker. Puede cambiarlo si prefiere otro
nombre para la aplicación web o dejar el
valor predeterminado.
Ubicación de Seleccione la región Seleccione la ubicación donde se debe
sitio web más cercana de la colocar el sitio web.
lista desplegable
7. Seleccione el botón Crear en la parte inferior del panel.
8. Haga clic en Grupos de
recursos en la cinta del lado
izquierdo del portal y busque el
grupo de recursos mslearn-
factbot.
Espere hasta que
"Implementando" cambie a
"Correcto" en la parte superior
del panel, lo que indica que el
servicio QnA y los recursos
asociados se han implementado
correctamente. Si el mensaje
16
desaparece, puede hacer clic en
el icono de la campana situado
en la barra de menús para ver el
estado. También puede
seleccionar Actualizar en la
parte superior del panel para
actualizar el estado de
implementación.
Creación, rellenado y
entrenamiento de la base de
conocimiento de QnA Maker
1. Para volver a Crear una base de conocimiento, vaya a la
pestaña abierta o a [Link] en el
explorador y desplácese al Paso 2 para conectarse al servicio
QnA.
2. En el Paso 2, seleccione Actualizar para asegurarse de que el
nuevo servicio QnA que acaba de implementar esté disponible
en esta pantalla.
3. En el campo correspondiente al id. de directorio de
Microsoft Azure, elija el directorio propietario de la
suscripción que ha usado (probablemente solo haya uno).
4. Seleccione la suscripción de Azure en la lista desplegable Azure
subscription name (Nombre de suscripción de Azure). Si no ve
la suscripción, pruebe a cambiar de directorio hasta que la
encuentre.
17
5. En Azure QnA service (Servicio Azure QnA), seleccione el
nombre del servicio QnA que ha especificado anteriormente. Si
no aparece ningún servicio, puede que tenga que actualizar la
página.
6. Luego asigne un nombre a la base de conocimiento, por
ejemplo, "Base de conocimiento de Factbot".
El siguiente paso es rellenar la base de conocimiento con preguntas y
respuestas. Puede escribir preguntas y respuestas de forma manual en
una base de conocimiento de QnA Maker o puede importarlas desde
archivos locales o preguntas frecuentes en línea. Los formatos
compatibles incluyen archivos de texto delimitados por tabuladores,
documentos de Microsoft Word, hojas de cálculo de Excel y archivos
PDF.
1. Para rellenar la base de conocimiento,
abra [Link]
bot-with-azure-bot-service/blob/master/[Link] en el
explorador y descargue el archivo [Link]. Esta carpeta
ZIP contiene un archivo de texto denominado [Link].
2. Extraiga y copie el archivo en el equipo. Luego, desplácese hacia
abajo por el portal de QnA Maker, haga clic en + Add file (+
Agregar archivo) y seleccione [Link].
Este archivo contiene 20 preguntas y respuestas en formato delimitado
por tabuladores.
18
3. Hay una serie de personalidades disponibles para QnA Maker,
que se puede seleccionar en Chit-chat. Puesto que
proporcionamos el punto de inicio de la base de conocimiento
en [Link], proporcionamos la personalidad de la línea
base, por lo que puede dejarlo como predeterminado.
4. Seleccione Create your KB (Crear la base de conocimiento) en
la parte inferior de la página y espere a que se cree la base de
conocimiento. Debería tardar menos de un minuto.
5. Confirme que las preguntas y las respuestas importadas
desde [Link] aparecen en la base de conocimiento.
Después, haga clic en Save and train (Guardar y entrenar) y
espere a que se complete el entrenamiento.
19
Probar la base de conocimiento
1. Haga clic en el botón Test (Probar) que está a la derecha del
botón Save and train (Guardar y entrenar). Escriba "Hi" (Hola)
en el cuadro de mensaje y presione Entrar. Confirme que la
respuesta es "Welcome to the QnA Factbot" (Bienvenido a
Factbot de QnA), como se muestra a continuación.
2. Escriba "What book has sold the most copies?" en el cuadro de
mensaje y presione ENTRAR. ¿Cuál es la respuesta?
3. Vuelva a hacer clic en el botón Probar para contraer el panel
de prueba.
20
4. Haga clic en Publicar en el menú de la parte superior de la
página y haga clic en el botón Publicar situado en la parte
inferior de la página para publicar la base de conocimiento.
La publicación hace que la base de conocimiento esté
disponible en un punto de conexión HTTPS.
Espere a que se complete el proceso de publicación y confirme que se
implementó el servicio de QnA. Con la base de conocimiento
hospedada ahora en una aplicación web de Azure, el paso siguiente es
implementar un bot que pueda usarla.
EJERCICIO:
IMPLEMENTACIÓN DE UN
BOT CON VISUAL STUDIO
CODE
Al crear un bot de una aplicación web de Azure, se ha implementado
una aplicación web de Azure para hospedarlo. Sin embargo, el bot se
debe implementar con código, y todavía se debe implementar en la
aplicación web de Azure. Afortunadamente, Azure Bot Service ha
generado el código automáticamente.
21 En esta unidad se usa Visual Studio Code para colocar el código en un
repositorio local de Git y publicar el bot en Azure mediante la inserción
de cambios desde el repositorio local en otro remoto conectado a la
aplicación web de Azure que hospeda el bot, un proceso conocido
como "integración continua" (CI).
Descarga del código fuente del bot de la aplicación web
1. Cree una carpeta denominada factbot en la ubicación del disco
duro que prefiera para almacenar el código fuente del bot.
2. En Azure Portal, busque y seleccione el grupo de recursos que
ha creado.
3. Busque y seleccione la instancia de Web App Bot que ha creado
anteriormente.
4. Seleccione Compilar en el menú de la izquierda y
luego Download Bot source code (Descargar código fuente
del bot) para preparar un archivo ZIP que contenga el código
fuente del bot.
22 5. El portal tardará unos minutos en comprimir el código.
6. Cuando haya finalizado, en el portal se mostrará un
botón Download Bot source code (Descargar código fuente
del bot) similar al de la siguiente captura de pantalla.
7. Seleccione Download Bot source code (Descargar código
fuente del bot) para descargar el código fuente en un archivo
.zip en su máquina local.
8. Una vez completada la descarga, extraiga el contenido del
archivo .zip en la carpeta factbot que ha creado en el disco
duro local.
Instalación del repositorio de Git del bot mediante el Centro de
implementación
1. Vuelva a Azure Portal en el explorador.
2. En el panel de compilación del bot de aplicación web de
Azure Portal, haga clic en el vínculo Publish updates
automatically to Azure with Continuous
Deployment (Publicar actualizaciones automáticamente en
Azure con implementación continua) en el área Publicar de la
vista principal. Esto se muestra en la captura de pantalla
23 siguiente.
3. En el panel Centro de implementación, seleccione Git
local como origen de implementación y haga clic
en Continuar.
4. Seleccione la opción Servidor de compilación de Kudu para
App Service y elija Continuar y Finalizar.
5. Seleccione FTP/Credenciales en el área de menú superior y,
luego, Credenciales de usuario en la vista abierta.
6. Escriba un nombre de usuario y una contraseña (debe tener
más de 10 caracteres) y haga clic en Guardar credenciales.
Tome nota del nombre de usuario y la contraseña.
7. Vaya a la configuración del bot de aplicación web y
24
seleccione Toda la configuración de App Service en el menú
de la izquierda. Así se muestra la aplicación web subyacente en
la que está hospedado el bot.
8. Anote la URL de clonación de Git del panel Información
general. Esta dirección URL es el repositorio de Git basado en
la nube que Azure ha creado para administrar el proyecto.
Crear un repositorio de Git local
En esta sección con una experiencia de Git integrada se va a usar Visual
Studio Code, aunque es posible crear el repositorio de Git con cualquier
otra técnica que prefiera si está familiarizado con los pasos. Si no tiene
instalado Visual Studio Code, puede descargarlo de forma gratuita
desde aquí.
1. Inicie Visual Studio Code y use el comando Archivo > Abrir
carpeta... para abrir la carpeta factbot en la que ha copiado el
código fuente del bot.
2. Haga clic en el botón Control de código fuente de la barra de
actividades izquierda de Visual Studio Code. Puede mantener el
puntero sobre cada botón si la barra lateral está contraída.
3. Seleccione el icono Inicializar repositorio de la parte superior
(a la derecha del título CONTROL DE CÓDIGO FUENTE).
25
4. Seleccione el botón Inicializar repositorio del cuadro de
diálogo.
5. Escriba "Primera confirmación." en el cuadro de texto de
entrada.
6. Haga clic en la marca de verificación para confirmar los
cambios, lo que almacena provisionalmente todos los archivos
cuando se pide.
Sugerencia
Si aparece un error de Git que indica que no tiene la identidad
establecida en Git, abra un símbolo del sistema y ejecute los comandos
siguientes, reemplazando los valores de marcador de posición de
correo electrónico y nombre. Luego, vuelva a pulsar el botón de
confirmación.
bashCopiar
git config --global [Link] "Your Email"
git config --global [Link] "Your name"
7. Seleccione Terminal en el menú Ver de Visual Studio Code
para abrir un terminal integrado.
8. Ejecute el siguiente comando en el terminal integrado,
26 reemplazando {git-url} en el siguiente comando por la
dirección URL de clonación de Git que ha localizado en
Azure Portal.
bashCopiar
git remote add qna-factbot {git-url}
9. Vuelva a la sección Control de código fuente de Visual Studio
Code y haga clic en los puntos suspensivos (los tres puntos) de
la parte superior del panel CONTROL DE CÓDIGO FUENTE.
10. Seleccione Publicar rama en el menú para insertar el código
de bot desde el repositorio local en Azure. Si se le piden
credenciales, escriba el nombre de usuario y la contraseña que
ha configurado en el Centro de implementación.
El bot se ha publicado en Azure. Antes de probarlo allí, ejecútelo
localmente y obtenga información sobre cómo depurarlo en Visual
Studio Code.
27
EJERCICIO: DEPURACIÓN
LOCAL DEL BOT
Como sucede con cualquier código de aplicación que escriba, los
cambios en el código del bot se deben probar y depurar de manera
local antes de implementarlos en producción. Para ayudar a depurar
los bots, Microsoft ofrece Bot Framework Emulator.
En esta unidad se aprende a usar Visual Studio Code y el emulador para
depurar los bots.
Instalar paquetes locales de [Link]
28 1. Ejecute el comando siguiente en el terminal integrado de Visual
Studio Code para instalar Restify, un conocido paquete de
[Link] para compilar y usar servicios web RESTful:
bashCopiar
npm install restify
2. Repita este paso para los comandos siguientes a fin de
instalar Bot Builder SDK para [Link] de Microsoft Bot
Framework:
bashCopiar
npm install botbuilder
npm install botbuilder-azure
npm install botbuilder-cognitiveservices
Modificar el bot para que se ejecute en local con el emulador de
bots
El código descargado es un simple servicio de eco. Vamos a reemplazar
ese código por algún código básico para hacer preguntas y responder
a preguntas sencillas. Este código se ejecuta con el emulador de bots.
1. Haga clic en el botón Explorador de la barra de actividades de
Visual Studio Code (es el primer icono de la barra lateral).
2. Seleccione [Link] para abrirlo en el editor de código. Este
archivo contiene el código que controla el bot, código que
generó Azure Bot Service y que se descargó desde Azure Portal.
29 3. Reemplace el contenido de [Link] por el código siguiente y
luego guarde el archivo.
JavaScriptCopiar
"use strict";
var builder = require("botbuilder");
var botbuilder_azure = require("botbuilder-azure");
var useEmulator = true;
var userName = "";
var yearsCoding = "";
var selectedLanguage = "";
var connector = useEmulator ? new [Link]() : new
botbuilder_azure.BotServiceConnector({
appId: [Link],
appPassword: [Link]
});
var bot = new [Link](connector);
30
[Link]('/', [
function (session) {
[Link](session, "Hello, and welcome to QnA Factbot!
What's your name?");
},
function (session, results) {
userName = [Link];
[Link](session, "Hi " + userName + ", how many
years have you been writing code?");
},
function (session, results) {
yearsCoding = [Link];
[Link](session, "What language do you love the
most?", ["C#", "Python", "[Link]", "Visual FoxPro"]);
},
31
function (session, results) {
selectedLanguage = [Link];
[Link]("Okay, " + userName + ", I think I've got it:" +
" You've been writing code for " + yearsCoding + " years," +
" and prefer to use " + selectedLanguage + ".");
}]);
var restify = require('restify');
var server = [Link]();
[Link](3978, function() {
[Link]('test bot endpoint at
[Link]
});
[Link]('/api/messages', [Link]());
Instalar Bot Framework Emulator
Bot Framework Emulator es una aplicación de escritorio
32
multiplataforma que permite que los desarrolladores de bots prueben
y depuren los bots compilados mediante BotBuilder SDK.
Puede usar Bot Framework Emulator para probar los bots que se
ejecutan en local en el equipo o para conectarse a los bots que se
ejecutan de forma remota a través de una conexión de red segura.
Nota
Si ya tiene el emulador instalado, puede omitir esta sección y pasar a
depurar el código de bot.
1. Vaya a la página de versiones de Bot Framework Emulator en
una nueva pestaña o ventana del explorador.
2. Seleccione una descarga para la plataforma en cuestión: Linux,
macOS o Windows.
3. Descomprima el paquete e instálelo mediante los
procedimientos de instalación normales del sistema operativo.
Depurar el bot en Visual Studio Code
Ahora que el emulador está instalado,
1. cambie a Visual Studio Code y abra el archivo de código
fuente [Link].
2. Haga clic en el margen de la izquierda para establecer puntos
de interrupción en las líneas 20, 25 y 30
(llamadas [Link]...).
33
3. Haga clic en el botón Depurar de la barra de actividades y en
el botón de flecha verde Iniciar depuración para iniciar una
sesión de depuración.
4. Confirme que aparece "test bot endpoint
at [Link] en la consola de
depuración.
El código de bot ahora se ejecuta en local.
5. Inicie Bot Framework Emulator desde el menú Inicio o el
icono de inicio.
6. Seleccione el campo Enter your endpoint URL (Escriba la
dirección URL del punto de conexión). Escriba el nombre del
bot y la dirección URL [Link] del
bot que aparecen en la consola de depuración en el paso
anterior.
7. Deje vacíos los campos correspondientes al id. y la contraseña
de la aplicación de Microsoft, así como el de la configuración
regional. Después, seleccione CONNECT (CONECTARSE).
8. Luego,
seleccione Save and
connect (Guardar y
conectar) y guarde el
archivo de configuración
34
en la ubicación que
prefiera.
Sugerencia
En el futuro, puede reconectarse al bot simplemente seleccionando el
nombre del bot en "My bots".
Probar el bot local
1. Escriba "hi" en el cuadro de la parte inferior del emulador y
presione Entrar. Confirme que Visual Studio Code se
interrumpe en la línea 20 de [Link].
35 2. Haga clic en el botón Continuar de la barra de herramientas de
depuración de Visual Studio Code y vuelva al emulador para ver
la respuesta del bot.
3. El bot le hará una serie de preguntas. Respóndalas y
seleccione Continuar en Visual Studio Code cada vez que se
alcance un punto de interrupción. Cuando haya terminado,
seleccione el botón Detener en la barra de herramientas de
depuración para finalizar la sesión de depuración.
En este momento, tiene un bot completamente funcional y sabe cómo
depurarlo mediante su ejecución local en Microsoft Bot Framework
Emulator. El paso siguiente consiste en conectar el bot a la base de
conocimiento que ha publicado para hacer que sea más inteligente.
EJERCICIO: CONEXIÓN
DEL BOT CON LA BASE DE
CONOCIMIENTO
En esta unidad, conectará el bot a la base de conocimiento de QnA
Maker que creó anteriormente para que el bot pueda llevar a cabo una
conversación inteligente. La conexión a la base de conocimiento
implica recuperar algo de información del portal de QnA Maker,
copiarla en Azure Portal, actualizar el código del bot y, luego, volver a
implementar el bot en Azure.
36
Conectar la base de conocimiento de Factbot al bot de aplicación
web
1. Abra el portal de QnA Maker en [Link] en el
explorador y haga clic en el botón de cuenta/perfil del extremo
superior derecho.
2. Seleccione Service Settings (Configuración de servicio) en el
menú que se despliega.
3. Seleccione Mostrar para mostrar la clave Principal del punto
de conexión y Copiar para copiarla en el Portapapeles. Péguela
en un archivo de texto para que pueda recuperarla fácilmente
en otro momento. Si no ve ninguna clave de configuración,
cierre la sesión y vuelva a iniciarla para actualizar la página.
Nota
En función de la configuración del explorador, es posible que deba
permitir las cookies de terceros para completar esta unidad.
4. Seleccione My knowledge bases (Mis bases de conocimiento)
en el menú de la parte superior de la página.
5. Seleccione View Code (Ver código) para la base de
conocimiento creada anteriormente.
6. Haga clic en el botón Copy (Copiar) para copiar los valores
predeterminados y péguelos en un editor.
7. Copie el identificador de la base de conocimiento de la primera
línea y el nombre de host de la segunda. No incluya el prefijo
37 "[Link] en el nombre de host que va a copiar.
8. Vuelva al bot de la aplicación web en Azure Portal.
Seleccione Configuración en el menú de la izquierda y
desplácese hacia abajo hasta que encuentre las configuraciones
de aplicación denominadas "QnAKnowledgebaseId",
"QnAAuthKey" y "QnAEndpointHostName".
9. Haga clic en Mostrar valores para mostrar los campos
editables.
10. Pegue en estos campos el identificador y el nombre de host de
la base de conocimiento que acaba de obtener y la clave del
punto de conexión que ha obtenido anteriormente.
11. Seleccione Guardar en la parte superior de la ventana para
conservar los cambios.
38
Configuración del código del servicio de bots
1. Cambie a Visual Studio Code y reemplace el contenido
de [Link] por este código. Luego guarde el archivo.
JavaScriptCopiar
var restify = require('restify');
var builder = require('botbuilder');
var botbuilder_azure = require("botbuilder-azure");
var builder_cognitiveservices = require("botbuilder-cognitiveservices");
// Setup Restify Server
var server = [Link]();
39
[Link]([Link] || [Link] || 3978, function () {
[Link]('%s listening to %s', [Link], [Link]);
});
// Create chat connector for communicating with the Bot Framework
Service
var connector = new [Link]({
appId: [Link],
appPassword: [Link],
openIdMetadata: [Link]
});
// Listen for messages from users
[Link]('/api/messages', [Link]());
var tableName = 'botdata';
var azureTableClient = new
botbuilder_azure.AzureTableClient(tableName,
[Link]['AzureWebJobsStorage']);
40
var tableStorage = new botbuilder_azure.AzureBotStorage({ gzipData:
false }, azureTableClient);
// Create your bot with a function to receive messages from the user
var bot = new [Link](connector);
[Link]('storage', tableStorage);
// Recognizer and and Dialog for preview QnAMaker service
var previewRecognizer = new
builder_cognitiveservices.QnAMakerRecognizer({
knowledgeBaseId: [Link],
authKey: [Link] ||
[Link]
});
var basicQnAMakerPreviewDialog = new
builder_cognitiveservices.QnAMakerDialog({
recognizers: [previewRecognizer],
defaultMessage: 'No match! Try changing the query terms!',
qnaThreshold: 0.3
41
}
);
[Link]('basicQnAMakerPreviewDialog',
basicQnAMakerPreviewDialog);
// Recognizer and and Dialog for GA QnAMaker service
var recognizer = new builder_cognitiveservices.QnAMakerRecognizer({
knowledgeBaseId: [Link],
authKey: [Link] ||
[Link], // Backward compatibility with
QnAMaker (Preview)
endpointHostName: [Link]
});
var basicQnAMakerDialog = new
builder_cognitiveservices.QnAMakerDialog({
recognizers: [recognizer],
defaultMessage: "I'm not quite sure what you're asking. Please ask
your question again.",
42
qnaThreshold: 0.3
});
[Link]('basicQnAMakerDialog', basicQnAMakerDialog);
[Link]('/', //basicQnAMakerDialog);
function (session) {
var qnaKnowledgebaseId = [Link];
var qnaAuthKey = [Link] ||
[Link];
var endpointHostName = [Link];
// QnA Subscription Key and KnowledgeBase Id null verification
if ((qnaAuthKey == null || qnaAuthKey == '') ||
(qnaKnowledgebaseId == null || qnaKnowledgebaseId == ''))
[Link]('Please set QnAKnowledgebaseId, QnAAuthKey
and QnAEndpointHostName (if applicable) in App Settings. Learn how
to get them at [Link]
else {
43
if (endpointHostName == null || endpointHostName == '')
// Replace with Preview QnAMakerDialog service
[Link]('basicQnAMakerPreviewDialog');
else
// Replace with GA QnAMakerDialog service
[Link]('basicQnAMakerDialog');
]);
Nota
Llamada para crear una instancia de QnAMakerDialog en la línea 30.
Con esto se crea un cuadro de diálogo que integra un bot compilado
con Azure Bot Service con una base de conocimiento compilada
mediante Microsoft QnA Maker.
Publicar el código de bot
1. Haga clic en el botón Control de código fuente de la barra de
actividades de Visual Studio Code.
2. Mantenga el puntero sobre el archivo [Link] y seleccione el
botón + para almacenar provisionalmente los cambios de ese
archivo para la siguiente confirmación.
44 3. Escriba "Connected to knowledge base" (Conectado a la base
de conocimiento) en el cuadro de mensaje y seleccione la marca
de verificación para confirmar los cambios.
Advertencia
Si ve cambios realizados en un archivo [Link], asegúrese de
que no se incluyan en la confirmación. La confirmación solo debe incluir
los cambios realizados en [Link].
4. Luego, haga clic en el botón de puntos suspensivos (...) y use el
comando Publicar rama para insertar estos cambios en el
repositorio remoto y en la aplicación web de Azure.
Probar el bot de aplicación web de Azure
1. Vuelva al bot de aplicación web en Azure Portal y
seleccione Probar en Chat en web a la izquierda para abrir la
consola de prueba.
2. Escriba "What's the most popular software programming
language in the world?" (¿Cuál es el lenguaje de programación
de software más popular del mundo?) en el cuadro que aparece
en la parte inferior de la ventana del chat y presione Entrar.
Confirme que el bot responde.
En entornos corporativos, C# es el rey, ya que se usa en más del 75 %
de las empresas de todo el mundo. Fuera de los entornos corporativos,
Java y JavaScript todavía le hacen sombra.
Enhorabuena. El bot está conectado a la base de conocimiento y puede
45 responder a preguntas.
1
Aplicación y supervisión de
estándares de infraestructura
con Azure Policy
BIENVENIDA
Obtenga información sobre la gobernanza y la administración de los
servicios de Azure.
En este módulo, aprenderá a:
• Aplicar directivas para controlar y auditar la creación de
recursos
• Obtener información sobre cómo la seguridad basada en roles
puede ajustar el acceso a los recursos
• Comprender las garantías de directivas y la privacidad de
Microsoft
2
• Supervisar los recursos
Requisitos previos
Ninguno
Introducción 2 min
Definición del cumplimiento de TI con Azure Policy 8 min
Organización de directivas con iniciativas 5 min
Administración de gobernanza empresarial 5 min
Definición de recursos estándar con Azure Blueprints 5 min
Exploración del cumplimiento de servicios con el Administrador
de cumplimiento 8 min
Supervisión del estado del servicio 8 min
Resumen 8 min
3
INTRODUCCIÓN
Una buena gobernanza de TI implica planear las iniciativas y establecer
prioridades a nivel estratégico que faciliten la administración y eviten
problemas.
Necesita una gobernanza correcta cuando:
• Tiene varios equipos de ingeniería que trabajan en Azure
4
• Tiene varias suscripciones en el inquilino
• Tiene requisitos normativos que se deben aplicar
• Quiere asegurarse de que se siguen los estándares para todos
los recursos asignados de TI
Podría aplicar estándares si no permite que los equipos creen recursos
de Azure directamente y, en su lugar, hace que el equipo de TI defina
e implemente todos los recursos basados en la nube. Esta suele ser la
solución en situaciones locales, pero el requisito reduce la agilidad del
equipo y la capacidad de innovar. En su lugar, Azure proporciona varias
herramientas que puede usar para aplicar y validar los estándares
mientras sigue permitiendo que los equipos de ingeniería creen y sean
propietarios de sus propios recursos en la nube.
Además de proporcionar estándares de TI, tendrá que poder supervisar
los recursos para asegurarse de que se ejecuten y respondan
correctamente. Azure proporciona varias características integradas
para realizar el seguimiento y analizar el uso y el rendimiento de los
recursos.
En este módulo, aprenderá a:
• Aplicar directivas para controlar y auditar la creación de
recursos
• Obtener información sobre cómo la seguridad basada en roles
puede ajustar el acceso a los recursos
• Comprender las garantías de directivas y la privacidad de
Microsoft
5
• Supervisar los recursos
DEFINICIÓN DEL
CUMPLIMIENTO DE TI
CON AZURE POLICY
La planeación de una infraestructura en la nube coherente empieza
con la configuración de directivas. Las directivas harán cumplir las
reglas para los recursos creados, con el fin de que la infraestructura
cumpla con los estándares corporativos, los requisitos de costos y los
contratos de nivel de servicio (SLA) que tenga con los clientes.
Azure Policy es un servicio de Azure que se
puede usar para crear, asignar y administrar
6
directivas. Dichas directivas aplican
distintas reglas y efectos a los recursos, con
el fin de que estos sigan siendo compatibles
con los estándares corporativos y los
acuerdos de nivel de servicio. Azure Policy satisface esta necesidad
mediante la evaluación de los recursos que incumplen las directivas
asignadas. Por ejemplo, puede haber una directiva que permita solo un
tamaño de máquinas virtuales en el entorno. Una vez que se
implementa esta directiva, se evalúa el cumplimiento de los recursos
nuevos y existentes. Con el tipo correcto de directiva, se puede
conseguir el cumplimiento de los recursos existentes.
Imagine que se permite que cualquier persona de la organización
pueda crear máquinas virtuales (VM). Se quieren controlar los costos,
por lo que el administrador del inquilino de Azure define una directiva
que prohíbe la creación de máquinas virtuales con más de 4 CPU.
Después de implementar la directiva, Azure Policy impedirá que nadie
cree una máquina virtual fuera de la lista de referencias de almacén
(SKU) permitidas. Además, si intenta actualizar una máquina virtual
existente, se comprobará con la directiva. Por último, Azure Policy
auditará todas las máquinas virtuales existentes en la organización para
asegurarse de que se aplique la directiva. Puede auditar los recursos
que no son compatibles, modificar las propiedades del recurso o
impedir que se cree el recurso. También puede integrar Azure Policy
con Azure DevOps, mediante la aplicación de las directivas de
integración continua y canalización de entrega que afectan a la
implementación anterior y posterior de las aplicaciones.
¿En qué se diferencian Azure Policy y RBAC?
7
A primera vista, podría parecer que Azure Policy es una manera de
restringir el acceso a tipos de recursos específicos similar al control de
acceso basado en rol (RBAC). Sin embargo, solucionan problemas
diferentes. RBAC se centra en las acciones del usuario en ámbitos
diferentes. Se le podría agregar al rol de colaborador de un grupo de
recursos, para que pueda realizar cambios en dicho grupo. Azure Policy
se centra en las propiedades de los recursos durante la
implementación de todos los recursos existentes. Azure Policy controla
las propiedades como los tipos y las ubicaciones de los recursos. A
diferencia de RBAC, Azure Policy es un sistema que permite de
manera predeterminada y niega explícitamente.
Creación de una directiva
El proceso de creación e implementación de una instancia de Azure
Policy comienza con la creación de una definición de directiva. Cada
definición de directiva tiene condiciones que regulan su aplicación.
Además, tiene un efecto complementario que se produce cuando se
cumplen las condiciones. Para aplicar una directiva, tendrá que:
1. Crear una definición de directiva
2. Asignar una definición a un ámbito de recursos
3. Visualizar los resultados de evaluación de la directiva
¿Qué es una definición de directiva?
Una definición de directiva expresa qué se debe evaluar y qué acción
realizar. Por ejemplo, podría asegurarse de que todos los sitios web
8 públicos se protejan con HTTPS, impedir que se cree un tipo de
almacenamiento determinado, o bien forzar el uso de una versión
específica de SQL Server.
Estas son algunas de las definiciones de directiva más comunes que
puede aplicar.
Definición de directiva Descripción
SKU permitidas de cuentas de Esta definición de directiva tiene
almacenamiento un conjunto de condiciones o
reglas que determinan si una
cuenta de almacenamiento que
se está implementado se
encuentra dentro de un conjunto
de tamaños de SKU. Su efecto es
denegar todas las cuentas de
almacenamiento que no
cumplen el conjunto de tamaños
de SKU definidos.
Tipo de recurso permitido Esta definición de directiva tiene
un conjunto de condiciones o
reglas para especificar los tipos
de recursos que puede
implementar la organización. Su
efecto es denegar a todos los
recursos que no forman parte de
esta lista definida.
9
Ubicaciones permitidas Esta directiva permite restringir
las ubicaciones que la
organización puede especificar al
implementar los recursos. Su
efecto se usa para exigir los
requisitos de cumplimiento de
replicación geográfica.
SKU de máquina virtual Esta directiva permite especificar
permitidas un conjunto de SKU de máquina
virtual que la organización puede
implementar.
Tipos de recursos no permitidos Impide la implementación de
una lista de tipos de recursos.
La propia definición de directiva se representa como un archivo JSON:
puede usar una de las definiciones predefinidas del portal o crear las
suyas propias (si modifica una existente o empieza desde cero).
Hay cientos de ejemplos disponibles en GitHub.
Este es un ejemplo de una directiva de proceso que solo permite
tamaños de máquina virtual específicos:
JSON
"if": {
"allOf": [
{
10
"field": "type",
"equals": "[Link]/virtualMachines"
},
"not": {
"field": "[Link]/virtualMachines/[Link]",
"in": "[parameters('listOfAllowedSKUs')]"
}
]
},
"then": {
"effect": "Deny"
Observe el valor [parameters('listofAllowedSKUs')]; se trata de un token
de reemplazo que se rellenará cuando la definición de directiva se
aplique a un ámbito. Cuando se define un parámetro, se le asigna un
nombre y, de manera opcional, un valor.
11 Aplicación de una directiva de Azure
Para aplicar una directiva, podemos usar Azure Portal o una de las
herramientas de línea de comandos, como Azure PowerShell. Para ello,
se agrega la extensión [Link].
PowerShell
# Register the resource provider if it's not already registered
Register-AzResourceProvider -ProviderNamespace
'[Link]'
Una vez que haya registrado el proveedor, podemos crear una
asignación de directiva. Este es un ejemplo de definición de directiva
que identifica las máquinas virtuales que no utilizan discos
administrados.
PowerShellCopiar
# Get a reference to the resource group that will be the scope of the
assignment
$rg = Get-AzResourceGroup -Name '<resourceGroupName>'
# Get a reference to the built-in policy definition that will be assigned
$definition = Get-AzPolicyDefinition | Where-Object {
$_.[Link] -eq 'Audit VMs that do not use managed
disks' }
12 # Create the policy assignment with the built-in definition against your
resource group
New-AzPolicyAssignment -Name 'audit-vm-manageddisks' -
DisplayName 'Audit VMs without managed disks Assignment' -Scope
$[Link] -PolicyDefinition $definition
Los comandos anteriores usan la siguiente información:
Parámetro Descripción
Name El nombre real de la asignación.
En este ejemplo, se ha utilizado
audit-vm-manageddisks.
DisplayName Nombre para mostrar de la
asignación de directiva. En este
caso, usará "Audit VMs without
managed disks Assignment"
(Auditoría de máquinas virtuales
sin discos administrados).
Definition Definición de la directiva, según
la opción utilizada para crear la
asignación. En este caso, es el
identificador de la definición de
directiva "Audit VMs without
managed disks Assignment".
13 Scope Un ámbito determina en qué
recursos o agrupación de
recursos se implementa la
asignación de directiva. Puede
abarcar desde una suscripción
hasta grupos de recursos.
Asegúrese de reemplazar
<scope> por el nombre del
grupo de recursos.
Identificación de recursos no compatibles
Podemos usar la definición de directiva aplicada para identificar los
recursos que no son compatibles con la asignación de directivas
mediante Azure Portal.
Los resultados coinciden con lo que se ve en la pestaña de
Cumplimiento de recursos de una asignación de directiva en
Azure Portal:
También se pueden usar las herramientas de línea de comandos para
identificar los recursos del grupo de recursos que no son compatibles
con la asignación de directiva
PowerShellCopiar
Get-AzPolicyState -ResourceGroupName $[Link] -
14 PolicyAssignmentName 'audit-vm-manageddisks' -Filter 'IsCompliant
eq false'
Este es un ejemplo de la salida que se puede obtener:
output
Timestamp : 3/9/19 [Link] PM
ResourceId :
/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}
/providers/[Link]/virtualMachines/{vmId}
PolicyAssignmentId :
/subscriptions/{subscriptionId}/providers/[Link]/poli
cyassignments/audit-vm-manageddisks
PolicyDefinitionId :
/providers/[Link]/policyDefinitions/06a78e20-9358-
41c9-923c-fb736d382a4d
IsCompliant : False
SubscriptionId : {subscriptionId}
ResourceType : /[Link]/virtualMachines
ResourceTags : tbd
PolicyAssignmentName : audit-vm-manageddisks
PolicyAssignmentOwner : tbd
PolicyAssignmentScope : /subscriptions/{subscriptionId}
PolicyDefinitionName : 06a78e20-9358-41c9-923c-fb736d382a4d
PolicyDefinitionAction : audit
PolicyDefinitionCategory : Compute
ManagementGroupIds : {managementGroupId}
Asignación de una definición a un ámbito de recursos
Una vez que haya definido una o varias definiciones de directiva, tendrá
que asignarlas. Una asignación de directiva es una definición de
directiva que se ha asignado para que se aplique dentro de un ámbito
15 específico.
Este ámbito puede ser desde una suscripción completa a un grupo de
recursos. Todos los recursos secundarios heredan las asignaciones de
directivas. Esta herencia significa que si una directiva se aplica a un
grupo de recursos, se aplica también a todos los recursos dentro de
ese grupo. Pero se puede excluir un subámbito de la asignación de
directiva. Por ejemplo, se podría aplicar una directiva para una
suscripción completa y, después, excluir algunos grupos de recursos
concretos.
Puede asignar cualquiera de estas directivas a través de Azure Portal,
PowerShell o la CLI de Azure. Al asignar una definición de directiva,
tendrá que proporcionar todos los parámetros que se definan.
Efectos de la directiva
En primer lugar, Azure Policy evalúa las solicitudes para crear o
actualizar un recurso a través de Azure Resource Manager. Policy crea
una lista de todas las asignaciones que se aplican al recurso y, después,
16 evalúa el recurso de acuerdo con cada definición. Policy procesa
algunos de los efectos antes de entregar la solicitud al proveedor de
recursos adecuado para evitar cualquier procesamiento innecesario si
el recurso incumple la directiva.
Cada definición de directiva en Azure Policy tiene un único efecto. Ese
efecto determina lo que ocurre cuando la regla de directivas asociada
coincide. Cuando sucede eso, Azure Policy realizará una acción
específica en función del efecto asignado.
Efecto de la directiva ¿Qué sucede?
Denegar Se produce un error en la
creación o actualización de
recursos debido a la directiva.
Deshabilitada Se omite la regla de directiva (se
deshabilita). Se suele usar para
realizar pruebas.
Anexar Agrega campos o parámetros
adicionales al recurso solicitado
durante la creación o
actualización. Un ejemplo común
consiste en agregar etiquetas a
recursos como Centro de costos,
o bien especificar direcciones IP
permitidas para un recurso de
almacenamiento.
17 Audit, AuditIfNotExists Crea un evento de advertencia
en el registro de actividad
cuando se evalúa un recurso no
compatible, pero no detiene la
solicitud.
DeployIfNotExists Ejecuta una implementación de
plantilla cuando se cumple una
condición específica. Por
ejemplo, si el cifrado de SQL está
habilitado en una base de datos,
puede ejecutar una plantilla una
vez creada la base de datos para
configurarla de forma específica.
Visualizar los resultados de evaluación de la directiva
Azure Policy puede permitir que se cree un recurso incluso si no pasa
la validación. En estos casos, puede hacer que desencadene un evento
de auditoría que se puede ver en el portal de Azure Policy o a través
de herramientas de línea de comandos. El enfoque más sencillo
consiste en usar el portal, ya que proporciona una agradable visión
general gráfica que se puede explorar. Puede encontrar la sección
Azure Policy a través del campo de búsqueda o en Todos los servicios.
18
Desde esta pantalla, puede detectar recursos que no son compatibles
y tomar medidas para corregirlos.
Eliminación de una definición de directiva
Por último, puede eliminar los requisitos de directiva a través del portal
o mediante el comando de PowerShell Remove-AzPolicyAssignment,
como se muestra a continuación.
PowerShell
Remove-AzPolicyAssignment -Name 'audit-vm-manageddisks' -Scope
'/subscriptions/<subscriptionID>/resourceGroups
19
ORGANIZACIÓN DE
DIRECTIVAS CON
INICIATIVAS
La administración de algunas definiciones de directiva es sencilla,
pero, cuando tenga más, le interesará organizarlas. Aquí es donde
intervienen las iniciativas.
Las iniciativas funcionan junto con las directivas de Azure Policy.
Una definición de iniciativa es un conjunto o grupo de definiciones de
directiva para facilitar el seguimiento del estado de cumplimiento para
un objetivo mayor. Aunque solo tenga una directiva, se recomienda
20
usar las iniciativas si prevé un aumento del número de directivas con el
tiempo.
Al igual que una asignación de directiva, una asignación de iniciativa es
una definición de iniciativa que se asigna a un ámbito específico. Las
asignaciones de iniciativa disminuyen la necesidad de crear varias
definiciones de iniciativa para cada ámbito. Este ámbito también puede
abarcar desde un grupo de administración a un grupo de recursos.
Una vez definidas, las iniciativas se pueden asignar al igual que las
directivas, y se aplican a todas las definiciones de directiva asociadas.
Definición de iniciativas
Las definiciones de iniciativa simplifican el proceso de administración y
asignación de definiciones de directiva al agrupar un conjunto de
directivas en un solo elemento. Por ejemplo, podría crear una iniciativa
denominada Habilitar la supervisión en Azure Security Center, con el
objetivo de supervisar todas las recomendaciones de seguridad
disponibles en Azure Security Center.
En esta iniciativa, tendría las definiciones de directiva siguientes:
Definición de directiva Propósito
Supervisión de la instancia de Para la supervisión de servidores
SQL Database sin cifrar en y bases de datos SQL sin cifrar.
Security Center
Supervisión de los puntos Para supervisar los servidores
vulnerables del sistema que no cumplen con la base de
operativo en Security Center referencia configurada.
21
Supervisión de la falta de Para supervisar los servidores sin
Endpoint Protection en Security un agente de protección de
Center punto de conexión instalada.
Las iniciativas se pueden definir mediante Azure Portal o herramientas
de línea de comandos. En el portal, se usa la sección "Crear".
22
ADMINISTRACIÓN DE
GOBERNANZA
EMPRESARIAL
La administración del acceso se produce en el nivel de suscripción de
Azure. Este control permite que una organización configure cada
división de la empresa de forma específica, en función de sus
responsabilidades y requisitos. La planeación y el mantenimiento de
reglas coherentes entre suscripciones puede ser difícil sin un poco de
ayuda.
Los grupos de administración de Azure son contenedores para
23
administrar el acceso, las directivas y el cumplimiento
entre varias suscripciones de Azure. Los grupos de administración
permiten ordenar los recursos de Azure de forma jerárquica en
colecciones, que proporcionan un nivel adicional de clasificación que
está por encima del nivel de suscripciones. Todas las suscripciones
dentro de un grupo de administración heredan automáticamente las
condiciones que se aplican al grupo de administración. Los grupos de
administración proporcionan capacidad de administración de nivel
empresarial a gran escala con independencia del tipo de suscripciones
que tenga.
En el diagrama siguiente se muestra un ejemplo de creación de una
jerarquía para la gobernanza mediante grupos de administración.
Cree una jerarquía para poder aplicar una directiva que, por ejemplo,
24 limite las ubicaciones de máquinas virtuales a la región Oeste de
EE. UU. para el grupo "Región geográfica 1". Esta directiva se heredará
en ambas suscripciones de Contrato Enterprise (EA) en ese grupo de
administración y se aplicará a todas las máquinas virtuales de esas
suscripciones. El propietario de los recursos o las suscripciones no
puede modificar esta directiva de seguridad, lo que permite una
gobernanza mejorada.
Otro escenario en el que se usarían grupos de administración es para
proporcionar acceso de usuario a varias suscripciones. Al mover
muchas suscripciones en ese grupo de administración, puede crear una
asignación de control de acceso basado en rol (RBAC) en el grupo de
administración que permitirá el acceso a todas las suscripciones. Una
asignación en el grupo de administración puede permitir a los usuarios
acceder a todo lo que necesitan en lugar de realizar scripting de las
reglas de RBAC sobre las distintas suscripciones.
Puede administrar las suscripciones de Azure de forma más eficaz
mediante Azure Policy y controles de acceso basado en rol (RBAC) de
Azure. Dichos controles proporcionan diferentes condiciones de
gobernanza que se pueden aplicar a cada grupo de administración. Los
recursos y las suscripciones que se asignan a un grupo de
administración heredan de forma automática las condiciones que se
aplican a dicho grupo.
Sugerencia
Si continúa en la ruta de aprendizaje de aspectos básicos de Azure,
obtendrá más información sobre RBAC en el módulo Control y
25 organización de los recursos de Azure con Azure Resource
Manager.
DEFINICIÓN DE
RECURSOS ESTÁNDAR
CON AZURE BLUEPRINTS
El cumplimiento de los requisitos de seguridad o normativos, ya sean
de gobierno o del sector, puede ser difícil y requiere mucho tiempo.
Para ayudarle con la auditoría, la rastreabilidad y el cumplimiento con
las implementaciones, use los artefactos y las herramientas de Azure
Blueprint.
Del mismo modo que un plano técnico permite
a un ingeniero o a un arquitecto bosquejar los
26
parámetros de diseño de un
proyecto, Azure Blueprints permite a los
grupos de arquitectos de la nube y de TI
central definir un conjunto repetible de recursos de
Azure que implementa y cumple los estándares de la organización, sus
requisitos y sus patrones. Azure Blueprints permite a los equipos de
desarrollo aprovisionar y crear rápidamente nuevos entornos con la
confianza de que se crean cumpliendo los estándares organizativos y
que contienen un conjunto de componentes integrados, como las
redes, para acelerar el desarrollo y la entrega.
Azure Blueprints es una manera declarativa de organizar la
implementación de varias plantillas de recursos y de otros artefactos,
como son:
27
Asignaciones de roles
Asignaciones de directivas
Plantillas de Azure Resource Manager
Grupos de recursos
Sugerencia
Azure Blueprints también es útil en escenarios de Azure DevOps, donde
los planos técnicos están asociados con artefactos de compilación y
canalizaciones de versión específicos, y se pueden rastrear de forma más
rigurosa.
El proceso de implementación de Azure Blueprints se compone de los
siguientes pasos generales:
1. Creación de una instancia de Azure Blueprint
2. Asignación del plano técnico
3. Seguimiento de las asignaciones del plano técnico
Con Azure Blueprints, se conserva la relación entre la definición del
plano técnico (lo que se debe implementar) y su asignación (lo que se
ha implementado). Esta conexión admite el seguimiento mejorado y la
auditoría de las implementaciones.
El servicio Azure Blueprints está respaldado por la base de datos de
Azure Cosmos distribuida a nivel global. Los objetos de plano técnico
se replican en varias regiones de Azure. Esta replicación proporciona
baja latencia, alta disponibilidad y acceso coherente a los objetos de
plano técnico, con independencia de la región en la que Blueprints
implemente el recurso.
28
¿En qué difiere de las plantillas de Resource Manager?
El servicio Azure Blueprints está diseñado para ayudar con la
configuración del entorno. A menudo, esta configuración consta de un
conjunto de grupos de recursos, directivas, asignaciones de roles e
implementaciones de plantillas de Resource Manager. Un plano
técnico es un paquete que reúne cada uno de estos tipos de artefacto
y permite componer y crear la versión de ese paquete, incluso
mediante una canalización CI/CD. En última instancia, cada
configuración se asigna a una suscripción en una única operación que
se puede auditar y seguir.
Casi todo lo que se puede querer incluir para la implementación en un
plano técnico se puede conseguir con una plantilla de Resource
Manager. Sin embargo, una plantilla de Resource Manager es un
documento que no existe de forma nativa en Azure. Las plantillas de
Rersource Manager se almacenan localmente o en el control de código
fuente. La plantilla se usa para las implementaciones de uno o varios
recursos de Azure, pero, una vez implementados, no hay conexión
activa ni relación con la plantilla.
Con Azure Blueprints, la relación entre la definición del plano técnico
(lo que debe ser implementado) y su asignación (lo que se ha
implementado) permanece. Esta conexión permite un seguimiento
mejorado y la auditoría de las implementaciones. Los planos técnicos
también pueden actualizar a la vez varias suscripciones que se rigen
por el mismo plano técnico.
No hay que elegir entre una plantilla de Resource Manager y un plano
técnico. Cada instancia del plano técnico puede tener o no artefactos
29
de una plantilla de Resource Manager. Esto significa que se pueden
reutilizar los trabajos anteriores para desarrollar y mantener una
biblioteca de plantillas de Resource Manager en Azure Blueprints.
En qué se diferencia de Azure Policy
Un plano técnico es un paquete o contenedor para crear conjuntos
muy específicos de estándares, patrones y requisitos relacionados con
la implementación de los servicios en la nube de Azure, la seguridad y
el diseño que se pueden reutilizar para garantizar la coherencia y el
cumplimiento normativo.
Una directiva es un sistema de denegación explícita y permisos
predeterminados que se centra en las propiedades de recursos durante
su implementación y para los recursos ya existentes. Admite la
gobernanza de la nube al validar que los recursos de una suscripción
cumplen los requisitos y estándares.
La inclusión de una directiva en un plano técnico permite crear el
patrón o diseño adecuado durante la asignación del plano. La inclusión
de la directiva garantiza que solo se pueden realizar en el entorno
cambios aprobados o esperados para proteger el cumplimiento
continuo en el ámbito del plano técnico.
Se puede incluir una directiva como uno de muchos artefactos en una
definición de plano técnico. Los planos técnicos también permiten usar
parámetros con las directivas y las iniciativas.
30
EXPLORACIÓN DEL
CUMPLIMIENTO DE
SERVICIOS CON EL
ADMINISTRADOR DE
CUMPLIMIENTO
El gobierno de los recursos propios y cómo se usan es solo una parte
de la solución cuando se usa un proveedor de nube. También debe
entender cómo el proveedor administra los recursos subyacentes en los
que se basa.
31
Microsoft se toma muy en serio esta administración y proporciona
transparencia completa con cuatro orígenes:
1. Declaración de privacidad de Microsoft
2. Microsoft Trust Center
3. Portal de confianza de servicios
4. Administrador de cumplimiento
Declaración de privacidad de Microsoft
En la declaración de privacidad de Microsoft se explica qué datos
personales procesa Microsoft, cómo los procesa y con qué fines.
La declaración se aplica a las interacciones que realice con Microsoft y
los productos como servicios, sitios web, aplicaciones, software,
servidores y dispositivos. Su objetivo es proporcionar transparencia y
honradez acerca de cómo Microsoft se ocupa de los datos personales
en sus productos y servicios.
En el resumen de este módulo hay un vínculo a la declaración de
privacidad.
¿Qué es Microsoft Trust Center?
Trust Center (Centro de confianza) es un recurso de sitio web que
contiene información y detalles sobre cómo Microsoft implementa y
admite la seguridad, la privacidad, el cumplimiento y la transparencia
en todos los servicios y productos de nube de Microsoft. Es una parte
32 importante de la iniciativa de nube de confianza de Microsoft y
proporciona soporte técnico y recursos para la comunidad de
cumplimiento normativo y legal, incluido lo siguiente:
Información detallada sobre seguridad, privacidad, ofertas de
cumplimiento, directivas, características y procedimientos en
todos los productos en la nube de Microsoft.
Recursos recomendados en forma de una lista exclusiva de los
recursos más aplicables y utilizados para cada tema.
Información específica de roles clave de la organización,
incluidos administradores empresariales, administradores de
inquilinos o equipos de seguridad de datos, responsables de
privacidad y evaluación de riesgos, y equipos de cumplimiento
legal.
Búsqueda de documentos en toda la empresa, que pronto
estará disponible y permitirá a los clientes existentes de
servicios en la nube realizar búsquedas en el Portal de confianza
de servicios.
Instrucciones directas y soporte técnico para cuando no puede
encontrar lo que busca.
33
¿Qué es el Portal de confianza de servicios?
En el Portal de confianza de servicios (STP) se hospeda el servicio
Administrador de cumplimiento y es el sitio público de Microsoft para
la publicación de informes de auditoría y otra información relacionada
con el cumplimiento de normas pertinente para los servicios en la nube
de Microsoft. Los usuarios de STP pueden descargar informes de
auditoría generados por auditores externos y obtener información de
los informes creados por Microsoft en los que se proporcionan detalles
sobre cómo Microsoft crea y opera sus servicios en la nube.
En STP también se incluye información sobre cómo los servicios en
línea de Microsoft pueden ayudar a la organización a mantener y
realizar el seguimiento del cumplimiento mediante estándares, leyes y
reglamentos, como:
ISO
SOC
NIST
FedRAMP
RGPD
El Portal de confianza de servicios es una característica complementaria
34 del Centro de confianza y permite:
Acceder a informes de auditoría de todos los servicios en la
nube de Microsoft en una sola página.
Acceder a guías de cumplimiento que ayudan a comprender
cómo se pueden usar las características de los servicios en la
nube de Microsoft para administrar el cumplimiento mediante
diversos reglamentos.
Acceder a documentos de confianza que ayudan a comprender
cómo los servicios en la nube de Microsoft protegen los datos.
Administrador de cumplimiento
El Administrador de cumplimiento es un panel de evaluación de
riesgos basado en flujos de trabajo dentro del Portal de confianza de
servicios que permite realizar el seguimiento, asignar y comprobar las
actividades de cumplimiento normativo de la organización
relacionadas con los servicios profesionales y los servicios en la nube
de Microsoft como Office 365, Dynamics 365 y Azure.
El Administrador de cumplimiento proporciona las características
siguientes:
Combina los tres elementos siguientes:
1. Información detallada proporcionada por Microsoft a
auditores y expertos en regulación, como parte de las
distintas auditorías de terceros de los servicios en la
nube de Microsoft sobre diversos estándares (por
ejemplo, ISO 27001, ISO 27018 y NIST).
2. Información que Microsoft compila de forma interna
35
para su cumplimiento de los reglamentos (como HIPAA
y el RGPD de la UE).
3. La autoevaluación de una organización de su propio
cumplimiento con estos estándares y reglamentos.
Permite asignar, realizar el seguimiento y registrar actividades
de cumplimiento relacionadas con la evaluación, que pueden
ayudar a que la organización traspase las barreras de los
equipos para alcanzar sus objetivos de cumplimiento
normativo.
Proporciona una puntuación de cumplimiento para ayudarle a
realizar el seguimiento del progreso y dar prioridad a los
controles de auditoría que ayudan a reducir la exposición de la
organización a los riesgos.
Proporciona un repositorio seguro en el que se cargan y
administran pruebas y otros artefactos relacionados con las
actividades de cumplimiento.
Genera informes detallados en Microsoft Excel en los que se
documentan las actividades de cumplimiento realizadas por
Microsoft y la organización, que se pueden proporcionar a
auditores, expertos en regulación y otras partes interesadas del
cumplimiento normativo.
36
El Administrador de cumplimiento proporciona evaluaciones de
riesgos continuas con una referencia de puntuaciones basadas en
riesgos que se muestra en una vista de panel para los reglamentos y
estándares. Como alternativa, puede crear evaluaciones para los
reglamentos o estándares más importantes para la organización.
Como parte de la evaluación de riesgos, el Administrador de
cumplimiento también proporciona las acciones recomendadas que
puede realizar para mejorar el cumplimiento normativo. Puede ver
todos los elementos de acción, o bien seleccionar los que se
correspondan con una certificación específica.
Importante
Administrador de cumplimiento es un panel en el que se proporciona un
resumen del estado de protección de datos y cumplimiento, y
recomendaciones para la mejora. Las acciones de cliente proporcionadas
en Administrador de cumplimiento son solo recomendaciones; cada
organización es responsable de evaluar la eficacia de estas
recomendaciones en su propio entorno reglamentario antes de la
implementación. Las recomendaciones de Administrador de
cumplimiento no se deben interpretar como una garantía de
cumplimiento.
37
SUPERVISIÓN DEL
ESTADO DEL SERVICIO
La definición de directivas y acceso proporciona un mayor control
sobre los recursos de la infraestructura de TI en la nube. Una vez
implementados esos recursos, le interesará conocer los problemas
generales o de rendimiento que pueden encontrar.
Azure proporciona dos servicios principales para supervisar el estado
de las aplicaciones y los recursos.
1. Azure Monitor
38 2. Azure Service Health
Azure Monitor
Azure Monitor maximiza la disponibilidad y
el rendimiento de las aplicaciones con una
completa solución que permite recopilar,
analizar y administrar datos de telemetría
tanto en la nube como en los entornos
locales. Esta solución ayuda a entender cómo
funcionan las aplicaciones y permite identificar de manera proactiva los
problemas que les afectan y los recursos de los que dependen.
Orígenes de datos
Azure Monitor puede recopilar datos de diversos orígenes. Puede
pensar en supervisar datos para las aplicaciones en niveles que abarcan
desde la aplicación hasta el sistema operativo y los servicios en los que
se basa, pasando por la propia plataforma.
Nivel de datos Descripción
Datos de supervisión de Datos sobre el rendimiento y la
aplicaciones funcionalidad del código que ha
escrito, independientemente de
la plataforma.
Datos de supervisión del sistema Datos sobre el sistema operativo
operativo invitado en el que se ejecuta la aplicación.
39
La aplicación se puede ejecutar
en Azure, en otra nube o en el
entorno local.
Datos de supervisión de recursos Datos sobre el funcionamiento
de Azure de un recurso de Azure.
Datos de supervisión de Datos sobre el funcionamiento y
suscripciones de Azure la administración de una
suscripción de Azure, así como
sobre el estado y el
funcionamiento propios de
Azure.
Datos de supervisión de Datos sobre el funcionamiento
inquilinos de Azure de los servicios de Azure en el
nivel del inquilino, como Azure
Active Directory.
Configuración de diagnóstico
En cuanto se crea una suscripción a Azure y se empiezan a agregar
recursos, como máquinas virtuales y aplicaciones web, Azure Monitor
comienza a recopilar datos. En los registros de actividad se registra
cuándo se crean o modifican los recursos, y las métricas indican cómo
está funcionando el recurso y los recursos que consume.
Puede ampliar los datos que se recopilan sobre el funcionamiento real
de los recursos si habilita los diagnósticos y agrega un agente a los
40
recursos de proceso. En la configuración del recurso se puede habilitar
Diagnósticos
Habilitar la supervisión a nivel de invitado
Contadores de rendimiento: recopilan datos de rendimiento
Registros de eventos: habilitan varios registros de eventos
Volcados de memoria: se pueden habilitar o deshabilitar
Receptores: los datos de diagnóstico se envían a otros servicios
para ampliar el análisis
Agente: se configuran opciones de agente
Obtención de más datos de las aplicaciones
La supervisión de datos solo resulta útil si mejora la visibilidad sobre
las operaciones del entorno informático. Azure Monitor incluye varias
características y herramientas que proporcionan información valiosa
sobre las aplicaciones y los recursos de los que pueden depender.
Application Insights es un servicio que supervisa la disponibilidad, el
rendimiento y el uso de las aplicaciones web, tanto si están hospedadas
en la nube como en un entorno local. Usa la eficaz plataforma de
análisis de datos de Log Analytics para proporcionar información
detallada sobre las operaciones de la aplicación. Application Insights
puede diagnosticar errores sin tener que esperar a que un usuario
informe de ellos. Application Insights incluye puntos de conexión a una
serie de herramientas de desarrollo y se integra con Microsoft Visual
Studio para admitir los procesos de DevOps.
Azure Monitor para contenedores es un servicio diseñado para
supervisar el rendimiento de las cargas de trabajo de contenedor, que
41
se implementan en clústeres de Kubernetes administrados hospedados
en Azure Kubernetes Service (AKS). Proporciona información sobre el
rendimiento mediante la recopilación de métricas del procesador y de
la memoria procedentes de los controladores, nodos y contenedores
disponibles en Kubernetes a través de la API de métricas. También se
recopilan registros del contenedor.
Azure Monitor para VM es un servicio que supervisa las máquinas
virtuales de Azure a escala, mediante el análisis del rendimiento y el
estado de las máquinas virtuales Windows y Linux (incluidos los
diferentes procesos y las dependencias interconectadas con otros
recursos, y los procesos externos). Azure Monitor para VM incluye
compatibilidad para supervisar el rendimiento y las dependencias de
las aplicaciones en máquinas virtuales hospedadas en el entorno local
o en otros proveedores en la nube.
La integración de alguno o todos estos servicios de supervisión con
Azure Service Health tiene ventajas adicionales. Mantenerse informado
del estado de los servicios de Azure le ayudará a entender cuándo y si
un problema que afecta a un servicio de Azure afecta al entorno. Lo
que puede parecer un problema localizado podría ser el resultado de
un problema más generalizado, y Azure Service Health proporciona
este tipo de información. Azure Service Health identifica los problemas
con los servicios de Azure que podrían afectar a la aplicación. Azure
Service Health también ayuda a planear un mantenimiento
programado.
Respuesta a las condiciones de alerta
Además de permitir analizar de forma interactiva los datos de
supervisión, una solución de supervisión eficaz debe poder responder
42
proactivamente a cualquier condición crítica que se identifique en los
datos que recopila. Esto podría implicar, por ejemplo, enviar un correo
electrónico o texto a un administrador responsable de investigar un
problema, o bien iniciar un proceso automatizado que intenta corregir
una condición de error.
Alertas. Azure Monitor notifica de forma proactiva de las condiciones
críticas por medio de alertas, y puede intentar aplicar acciones
correctivas. Las reglas de alertas basadas en métricas pueden
proporcionar alertas casi en tiempo real, en función de valores
numéricos. Las reglas de alertas basadas en registros permiten una
lógica compleja entre datos de varios orígenes.
Escalabilidad automática. Azure Monitor usa la escalabilidad
automática para asegurarse de que ejecute la cantidad adecuada de
recursos para administrar de forma eficaz la carga en la aplicación. La
escalabilidad automática permite crear reglas que usan métricas,
recopiladas por Azure Monitor, para determinar cuándo se deben
agregar automáticamente recursos para controlar el aumento de la
carga. La escalabilidad automática también puede ayudar a reducir los
costos de Azure mediante la eliminación de los recursos que no se
usen. Puede especificar un número mínimo y máximo de instancias, y
proporcionar la lógica que determine cuándo la escalabilidad
automática debe aumentar o reducir los recursos.
Visualización de datos de supervisión
Las visualizaciones, como los gráficos y las tablas, son herramientas
eficaces para resumir los datos de supervisión y presentar datos a
distintos destinatarios. Azure Monitor cuenta con características
43
propias para visualizar datos de supervisión y usa otros servicios de
Azure para publicar datos para diferentes destinatarios. Otras
herramientas que se pueden usar para la visualización de datos, para
destinatarios y escenarios específicos, incluyen las siguientes:
Paneles
Vistas
Power BI
Integración con otros servicios
A menudo, tendrá que integrar Azure Monitor con otros sistemas y
crear soluciones personalizadas que usen los datos de supervisión.
Otros servicios de Azure pueden funcionar con Azure Monitor para
proporcionar esta integración.
Azure Service Health
Azure Service Health es un conjunto de
experiencias que proporcionan
instrucciones y soporte técnico
personalizados cuando aparecen
problemas con los servicios de Azure.
Puede enviarle notificaciones, ayudarle a
conocer el impacto de los problemas y mantenerle actualizado con
respecto a la resolución del problema. Azure Service Health también
puede ayudar a preparar las operaciones de mantenimiento y los
cambios planeados que podrían afectar a la disponibilidad de los
recursos.
Azure Service Health consta de las vistas siguientes.
44
Estado de Azure proporciona una visión global del estado de
mantenimiento de los servicios de Azure. Con Estado de Azure, puede
obtener información actualizada sobre la disponibilidad del servicio.
Todos los usuarios tienen acceso a Estado de Azure y pueden ver todos
los servicios que notifican su estado de mantenimiento.
Service Health proporciona un panel personalizable que realiza el
seguimiento del estado de los servicios de Azure en las regiones donde
los use. En este panel, puede realizar el seguimiento de eventos activos,
como problemas de servicio, próximos mantenimientos planeados
o avisos de estado adecuados. Cuando los eventos se vuelven inactivos,
se colocan en el historial de estado hasta un máximo de 90 días. Por
último, puede usar el panel de Service Health para crear y
administrar alertas de estado de servicio, que le notifican los problemas
del servicio que le afectan.
Resource Health ayuda a diagnosticar cuándo un problema de
servicio de Azure afecta a los recursos y a obtener soporte técnico para
resolverlo. Proporciona detalles sobre el estado actual y pasado de los
recursos. También proporciona soporte técnico para ayudar a mitigar
problemas. Al contrario que Estado de Azure, que informa sobre
problemas de servicio que afectan a un amplio conjunto de clientes de
Azure, Resource Health proporciona un panel personalizado del
mantenimiento de los recursos. Resource Health muestra las veces que
los recursos no estuvieron disponibles en el pasado debido a
problemas de servicio de Azure. Después, es más fácil comprender si
se infringió un Acuerdo de Nivel de Servicio.
45
De forma conjunta, los componentes de Azure Service Health
proporcionan una vista completa del estado de Azure, con el nivel de
detalle más relevante.
RESUMEN
En este módulo ha obtenido información sobre las metodologías de
gobernanza de Azure, la supervisión y los informes en Azure, y los
estándares de privacidad, cumplimiento y protección de datos en
Azure.
46
Servicios de Azure
Aquí tiene una vista general de los servicios y características
disponibles de Azure.
1
Veamos con más detalle las categorías que se usan con más frecuencia:
Proceso Internet de las cosas
Redes Datos de gran
tamaño
Almacenamiento
Inteligencia artificial
Móvil
DevOp
Bases de datos
Web
Proceso
Los servicios de proceso a menudo son una de las razones principales
de por qué las compañías se cambian a la plataforma Azure. Azure
proporciona una amplia gama de opciones para hospedar aplicaciones
y servicios. Estos son algunos ejemplos de servicios de proceso en
Azure:
Nombre del servicio Función del servicio
Azure Virtual Machines Máquinas virtuales (VM)
Windows o Linux hospedadas en
Azure
Azure Virtual Machine Scale Sets Escalado de máquinas virtuales
Windows o Linux hospedadas en
2
Azure
Azure Kubernetes Service Permite la administración de un
clúster de máquinas virtuales que
ejecutan servicios en
contenedores
Azure Service Fabric Plataforma de sistemas
distribuidos. Se ejecuta en Azure
o en local
Azure Batch Servicio administrado para
aplicaciones informáticas de alto
rendimiento y paralelas
Azure Container Instances Ejecución de aplicaciones en
contenedores en Azure sin
necesidad de aprovisionar
servidores ni máquinas virtuales
Azure Functions Un servicio Compute sin servidor
y controlado por eventos
Redes
La vinculación de recursos de proceso y el suministro de acceso a las
aplicaciones es la función clave de la red de Azure. La funcionalidad de
red de Azure incluye una gama de opciones para conectar el mundo
exterior a servicios y características de los centros de datos globales de
Microsoft Azure.
3
Las instalaciones de red de Azure presentan las siguientes
características:
Nombre del servicio Función del servicio
Azure Virtual Network Conecta las máquinas virtuales a
las conexiones de red privada
virtual (VPN) entrantes.
Azure Load Balancer Equilibra las conexiones
entrantes y salientes a
aplicaciones o puntos de
conexión de servicio.
Azure Application Gateway Optimiza la entrega de granja de
servidores de aplicaciones y, al
mismo tiempo, aumenta la
seguridad de la aplicación.
Azure VPN Gateway Accede a redes Azure Virtual
Network a través de puertas de
enlace VPN de alto rendimiento.
Azure DNS Proporciona respuestas DNS
ultrarrápidas y disponibilidad de
dominio extremadamente alta.
Azure Content Delivery Network Entrega contenido de gran
ancho de banda a los clientes
4
globalmente.
Azure DDoS Protection Protege las aplicaciones
hospedadas en Azure frente a
ataques por denegación de
servicio distribuido (DDoS).
Azure Traffic Manager Distribuye el tráfico de red entre
las regiones de Azure en todo el
mundo.
Azure ExpressRoute Se conecta a Azure a través de
conexiones seguras de gran
ancho de banda dedicadas.
Azure Network Watcher Supervisa y diagnostica
problemas de red mediante el
análisis basado en escenario.
Azure Firewall Implementa el firewall de alta
seguridad y alta disponibilidad
con escalabilidad ilimitada.
Azure Virtual WAN Crea una red de área extensa
(WAN) unificada, conectando
sitios locales y remotos.
Almacenamiento
Azure proporciona cuatro tipos principales de servicios de
5 almacenamiento. Estos servicios son los siguientes:
Nombre del servicio Función del servicio
Azure Blob Storage Servicios de almacenamiento
para objetos muy grandes, como
archivos de vídeo o mapas de
bits.
Azure File storage Recursos compartidos de
archivos que puede administrar
como un servidor de archivos y
acceder a ellos.
Azure Queue Storage Un almacén de datos para la
puesta en cola y la entrega
confiable de mensajes entre
aplicaciones.
Azure Table storage Un almacén NoSLQ que hospeda
datos no estructurados
independientes de cualquier
esquema.
Todos estos servicios comparten varias características:
Durabilidad y alta disponibilidad con redundancia y la
replicación.
Seguridad mediante el cifrado automático y control de acceso
basado en rol.
6 Escalabilidad con un almacenamiento prácticamente ilimitado.
Administración y control del mantenimiento y de cualquier
problema crítico que pueda surgir.
Accesibilidad desde cualquier parte del mundo a través de
HTTP o HTTPS.
Móvil
Azure permite a los desarrolladores crear servicios back-end móviles
para aplicaciones de iOS, Android y Windows de forma rápida y
sencilla. Las características que solían tardar tiempo y aumentaban los
riesgos del proyecto, como la incorporación del inicio de sesión
corporativo y la posterior conexión a recursos locales como SAP,
Oracle, SQL Server y SharePoint, ahora se incluyen con facilidad.
Estas son otras características de este servicio:
Sincronización de datos sin conexión.
Conectividad a datos locales.
Difusión de notificaciones de inserción.
Escalado automático para satisfacer las necesidades del
negocio.
Bases de datos
Azure proporciona varios servicios de base de datos para almacenar
una gran variedad de volúmenes y tipos de datos. Y con la conectividad
global, los usuarios disponen de estos datos al instante.
7 Nombre del servicio Función del servicio
Azure Cosmos DB Base de datos distribuida
globalmente que admite
opciones NoSQL.
Azure SQL Database Base de datos relacional
totalmente administrada con
escalado automático,
inteligencia integral y seguridad
sólida.
Azure Database for MySQL Base de datos relacional MySQL
totalmente administrada y
escalable con alta disponibilidad
y seguridad.
Azure Database for PostgreSQL Base de datos relacional
PostgreSQL totalmente
administrada y escalable con alta
disponibilidad y seguridad.
SQL Server en Virtual Machines Hospedar aplicaciones
empresariales de SQL Server en
la nube.
Azure SQL Data Warehouse Almacén de datos totalmente
administrado con seguridad
integral en todos los niveles de
8 escala sin costo adicional.
Azure Database Migration Migra las bases de datos a la
Service nube sin cambios de código de
aplicación.
Azure Cache for Redis Almacena en caché datos
estáticos y usados con frecuencia
para reducir la latencia de los
datos y las aplicaciones.
Azure Database for MariaDB Base de datos relacional MariaDB
totalmente administrada y
escalable con alta disponibilidad
y seguridad.
Web
En el mundo empresarial actual es fundamental tener una experiencia
web excelente. Azure incluye soporte técnico de primera clase para
compilar y hospedar aplicaciones web y servicios web basados en
HTTP. Los servicios de Azure centrados en el hospedaje web incluyen:
Nombre del servicio Descripción
Azure App Service Cree rápidamente aplicaciones
eficaces en la nube basadas en
web.
Azure Notification Hubs Envíe notificaciones push a
cualquier plataforma desde
cualquier back-end.
9
Azure API Management Publique API para
desarrolladores, asociados y
empleados de forma segura y a
escala.
Azure Cognitive Search Búsqueda completamente
administrada como servicio.
Característica Web Apps de Cree e implemente rápidamente
Azure App Service aplicaciones web críticas a escala.
Servicio Azure SignalR Agregue funcionalidades web en
tiempo real con facilidad.
Internet de las cosas
Los usuarios pueden tener acceso a más información que nunca. Todo
comenzó con los asistentes digitales personales (PDA), que luego se
transformaron en smartphones. Ahora hay relojes inteligentes,
termostatos inteligentes e incluso neveras inteligentes. Los equipos
estaban a la orden del día. Ahora, Internet permite que cualquier objeto
capaz de conectarse tenga acceso a valiosa información. Esta
capacidad de los dispositivos de obtener y luego retransmitir
información para el análisis de datos se conoce como el Internet de las
cosas (IoT).
Hay una serie de servicios que pueden ayudar e impulsar soluciones de
un extremo a otro para IoT en Azure.
10 Nombre del servicio Descripción
IoT Central Solución global de software
como servicio (SaaS) totalmente
administrada de IoT que facilita
la conexión, la supervisión y la
administración de sus recursos
de IoT a escala.
Azure IoT Hub Centro de mensajería que
proporciona comunicaciones y
supervisión seguras entre
millones de dispositivos de IoT
IoT Edge Inserte los modelos de análisis
de datos directamente en los
dispositivos de IoT para que
puedan responder rápidamente
a los cambios de estado sin
necesidad de consultar modelos
de IA basados en la nube.
Macrodatos
Los datos se presentan en cualquier formato y tamaño. Cuando
hablamos sobre macrodatos, nos referimos a grandes volúmenes de
datos. Los datos de los sistemas del tiempo, sistemas de
comunicaciones, investigación genómica, plataformas de imágenes y
muchos otros escenarios generan cientos de gigabytes de datos. Esta
cantidad de datos hace que resulte difícil analizar y tomar decisiones
en torno a ellos. A menudo es tan grande que las formas de
11
procesamiento y análisis tradicionales ya no son adecuados.
Se han desarrollado tecnologías de clúster de código abierto para
tratar con estos grandes conjuntos de datos. Microsoft Azure admite
una amplia gama de tecnologías y servicios para proporcionar
soluciones de análisis y macrodatos.
Nombre del servicio Descripción
Azure SQL Data Warehouse Ejecute análisis a gran escala
mediante un almacenamiento de
datos empresarial (EDW) basado
en la nube que aprovecha el
procesamiento paralelo masivo
(MPP) para ejecutar rápidamente
consultas complejas en
petabytes de datos.
Azure HDInsight Procese grandes cantidades de
datos con los clústeres
administrados de Hadoop en la
nube.
Azure Databricks Servicio de análisis colaborativo
basado en Apache Spark que se
puede integrar con otros
servicios de macrodatos en
Azure.
Inteligencia artificial
12
En el contexto de la informática en la nube, la inteligencia artificial se
basa en una amplia gama de servicios, donde el principal es Machine
Learning. Machine Learning es una técnica de ciencia de datos que
permite a los equipos usar datos existentes para prever tendencias,
resultados y comportamientos futuros. Mediante el aprendizaje
automático, los equipos aprenden sin necesidad de programarlos
explícitamente.
Las previsiones o predicciones del aprendizaje automático pueden
hacer que las aplicaciones y los dispositivos sean más inteligentes. Por
ejemplo, al comprar en línea, el aprendizaje automático le recomienda
otros productos que le pueden gustar según lo que haya comprado. O
bien, al pasar la tarjeta de crédito, el aprendizaje automático compara
la transacción con una base de datos de transacciones y ayuda a
detectar fraudes. Y cuando la aspiradora robot aspira una sala, el
aprendizaje automático le ayuda a decidir si se ha terminado el trabajo.
Algunos de los tipos más comunes de servicios de Inteligencia Artificial
y Machine Learning en Azure son:
Nombre del servicio Descripción
Azure Machine Learning Service Entorno basado en la nube que
puede usar para desarrollar,
entrenar, probar, implementar,
administrar y realizar un
seguimiento de los modelos de
aprendizaje automático. Puede
generar y ajustar
13 automáticamente un modelo. Le
permite comenzar a entrenar en
su máquina local y luego escalar
horizontalmente a la nube.
Azure Machine Learning Studio Área de trabajo visual,
colaborativa y de arrastrar y
colocar donde puede crear,
probar e implementar soluciones
de aprendizaje automático
mediante algoritmos de
aprendizaje automático
predefinidos y módulos de
control de datos.
Cognitive Services es un conjunto de productos estrechamente
relacionados. Estas son API precompiladas que puede aprovechar en
sus aplicaciones para solucionar problemas complejos.
Nombre del servicio Descripción
Visión Algoritmos de procesamiento de
imágenes para identificar,
subtitular, indexar y moderar
imágenes y vídeos.
Voz Convierta voz en texto, use la voz
para la comprobación o agregue
reconocimiento del hablante a la
14
aplicación.
Asignación de conocimiento Asigne la información y los datos
complejos con el fin de resolver
tareas tales como las
recomendaciones inteligentes y
la búsqueda semántica.
Bing Search Agregue las Bing Search API a
sus aplicaciones y aproveche la
capacidad de combinar miles de
millones de páginas web,
imágenes, vídeos y noticias con
una sola llamada API.
Procesamiento de lenguaje Permita que las aplicaciones
natural procesen lenguaje natural con
scripts precompilados, evalúen
opiniones y aprendan a
reconocer lo que quieren los
usuarios.
DevOps
DevOps (desarrollo y operaciones) reúne a personas, procesos y
tecnología, y automatiza la entrega de software para ofrecer un valor
continuo a los usuarios. Azure DevOps Services permite
crear, compilar y liberar las canalizaciones que proporcionan
integración continua, entrega e implementación a las aplicaciones.
15 Puede integrar los repositorios y las pruebas de aplicaciones, realizar la
supervisión de aplicaciones y trabajar con artefactos de compilación.
También puede trabajar con elementos y establecerlos como
pendientes para realizar un seguimiento, automatizar la
implementación de la infraestructura e integrar una gama de
herramientas y servicios de terceros como Jenkins y Chef. Todas estas
funciones y muchas más están estrechamente integradas con Azure
para permitir implementaciones coherentes y reproducibles para que
las aplicaciones proporcionen unos procesos de compilación y
lanzamiento optimizados.
Algunos de los servicios principales de DevOps disponibles con Azure
son Azure DevOps Services y Azure DevTest Labs.
Nombre del servicio Descripción
Azure DevOps Azure DevOps Services
(anteriormente conocido como
Visual Studio Team Services o
VSTS), proporciona herramientas
de colaboración para la
implementación, incluidas
canalizaciones de alto
rendimiento, repositorios Git
privados gratuitos, paneles
Kanban configurables y
numerosas pruebas de carga
basadas en la nube y
16
automatizadas.
Azure DevTest Labs Cree rápidamente entornos de
Windows y Linux a petición que
puede usar para probar o realizar
una demostración de sus
aplicaciones directamente desde
las canalizaciones de
implementación.
EJERCICIO: CREACIÓN DE
UN SITIO WEB
HOSPEDADO EN AZURE
Para completar este módulo, se necesita un espacio
aislado. Un espacio aislado le da acceso a los recursos de Azure. Su
suscripción de Azure no recibirá ningún cobro. El espacio aislado solo
se puede usar para realizar los cursos de Microsoft Learn. Está
prohibido el uso con cualquier otro fin y puede dar lugar a la pérdida
permanente del acceso al espacio aislado.
17
Inicie sesión para activar el espacio aislado.
Como profesional de la tecnología, es probable que tenga experiencia
en un área concreta. Quizás usted sea un administrador de
almacenamiento o un experto en virtualización, o es posible que se
centre en las prácticas de seguridad más recientes. Si está estudiando,
es posible que todavía esté explorando lo que más le interesa.
Independientemente de su rol, la mayoría de los usuarios crean un sitio
web para empezar a trabajar con la nube. Aquí implementaremos un
sitio web hospedado en una instancia de App Service.
Vamos a revisar algunos términos básicos y a poner en funcionamiento
nuestro primer sitio web.
¿Qué es App Service?
Azure App Service es un servicio basado en HTTP que permite crear y
hospedar muchos tipos de soluciones basadas en Web sin necesidad
de administrar la infraestructura. Por ejemplo, puede hospedar
aplicaciones web, back-ends móviles y API de RESTful en varios
lenguajes de programación admitidos. Las aplicaciones desarrolladas
en .NET, .NET Core, Java, Ruby, [Link], PHP o Python se pueden
ejecutar y escalar con facilidad en entornos basados tanto en Windows
como en Linux.
Lo que pretendemos es crear un sitio web en menos tiempo del que
tardamos en almorzar. Por lo tanto, no vamos a escribir código, sino
que, en su lugar, implementaremos una aplicación predefinida desde
Microsoft Azure Marketplace.
18
¿Qué es Microsoft Azure Marketplace?
Microsoft Azure Marketplace es una tienda en línea que hospeda
aplicaciones certificadas y optimizadas para ejecutarse en Azure.
Existen muchos tipos de aplicaciones disponibles, que van desde la
inteligencia artificial y Machine Learning a las aplicaciones web. Como
veremos en un par de minutos, las implementaciones desde la tienda
se realizan mediante Azure Portal, con una interfaz de usuario de tipo
asistente. Esta interfaz de usuario permite evaluar fácilmente diferentes
soluciones.
Vamos a usar una de las opciones de la aplicación de WordPress de
Azure Marketplace para nuestro sitio web.
Creación de recursos en Azure
Lo primero que se suele hacer es crear un grupo de recursos que
contendrá todo lo que necesitamos crear. Un grupo de recursos permite
administrar todos los servicios, discos, interfaces de red y demás
elementos que pueden componer la solución como una unidad.
Podemos usar Azure Portal para crear y administrar los grupos de
recursos de la solución, pero cabe decir que también podemos
administrar recursos a través de una línea de comandos con la CLI de
Azure. La CLI de Azure es una opción útil si hay que automatizar el
proceso en el futuro.
En el entorno de espacio aislado gratuito de Azure, usará el grupo de
recursos creado previamente, [nombre del grupo de recursos del
espacio aislado], por lo que no tendrá que realizar este paso.
19
Elección de una ubicación
El espacio aislado gratuito permite crear recursos en un subconjunto
de las regiones globales de Azure. Seleccione una región de la lista al
crear los recursos:
westus2 southeastasia
southcentralus japaneast
centralus brazilsouth
eastus australiasoutheast
westeurope centralindiaralindia
Creación de un sitio web de WordPress
1. Inicie sesión en Azure Portal con la misma cuenta con la que
ha activado el espacio aislado.
2. Expanda el panel de navegación de la izquierda.
3. En la parte superior de la lista de navegación de Azure Portal,
seleccione Crear un recurso.
20
Esto le llevará a Azure Marketplace.
21
Azure Marketplace tiene muchos servicios, soluciones y recursos que
puede usar. Sabemos que queremos instalar WordPress, así que
podemos realizar una búsqueda rápida para encontrarlo. En el
cuadro Buscar en Marketplace que hay sobre las opciones de
aplicaciones que aparecen, escriba WordPress. Seleccione la
opción WordPress predeterminada en la lista de opciones disponibles.
En el panel que acaba de aparecer, normalmente encontrará
información adicional sobre el elemento que va a instalar, por ejemplo,
el editor, una breve descripción del recurso y vínculos para obtener más
información. Asegúrese de revisar esta información.
Seleccione Crear para iniciar el proceso de creación de una aplicación
22 de WordPress.
23
Después, aparecerán varias opciones para configurar la
implementación. Escriba la siguiente información:
Campo Valor
Nombre de aplicación Elija un nombre de aplicación
único. Formará parte de un
nombre de dominio completo
(FQDN).
Suscripción Compruebe que ha seleccionado
Suscripción de Concierge.
Grupo de recursos Seleccione el botón de radio
Usar existente y, después, el
grupo de recursos [nombre del
grupo de recursos del espacio
aislado] en la lista desplegable.
Proveedor de base de datos Seleccione MySQL In App.
Plan de App Service/Ubicación Cambiará el plan de App Service
en el paso siguiente.
Application Insights Deje la configuración
24 predeterminada.
La configuración debería ser similar a la siguiente:
25
Ahora vamos a configurar el plan de App Service para usar un plan de
tarifa específico. El plan de App Service especifica los recursos de
proceso y la ubicación de la aplicación web. Seleccione Plan de App
Service/Ubicación.
26
En el panel Plan de App Service, seleccione Crear.
En el panel Nuevo plan de App Service, escriba un nombre para el
plan de servicio nuevo.
En Ubicación, elija Centro de EE. UU. para asegurarse de que
selecciona una región que permita el plan de servicio. Normalmente,
se elegiría la región más cercana a los clientes y se ofrecerían los
servicios necesarios.
Seleccione Plan de tarifa para ver las opciones de rendimiento y
características de los distintos tipos de planes de servicio.
27
El Selector de especificaciones permite seleccionar un nuevo plan de
tarifa para la aplicación. Esta pantalla se abre en la pestaña Producción,
con el plan de tarifa S1 seleccionado. En la pestaña Desarrollo/pruebas,
seleccionaremos un nuevo plan de tarifa para nuestro sitio web.
Seleccione la pestaña Desarrollo/pruebas y, después, el plan de
tarifa F1. Luego, seleccione Aplicar.
28
En el panel Nuevo plan de App Service, seleccione Aceptar para crear
el plan y cerrar el panel.
Por último, seleccione el botón Crear para iniciar la implementación
del sitio nuevo.
Si detecta algún problema al crear los recursos, compruebe que ha
seleccionado el plan de tarifa F1 en el plan de App Service. Este es un
requisito del sistema de espacio aislado al crear este sitio de WordPress.
Comprobación de que el sitio web se está ejecutando
La implementación del nuevo sitio web puede tardar unos minutos en
completarse; mientras tanto, le invitamos a que explore Portal por su
cuenta.
Podemos llevar un seguimiento del progreso de la implementación en
cualquier momento.
1. Seleccione el icono de la campana de notificación situado en
la parte superior del portal. Si el ancho de la ventana del
explorador es menor, puede aparecer al hacer clic en el icono
de puntos suspensivos (...) de la parte superior derecha.
29
2. Seleccione Implementación en curso... para ver los detalles de
todos los recursos que se han creado.
Fíjese en cómo se muestran los recursos mientras se crean y el estado
cambia a una marca de verificación de color verde a medida que cada
componente se termina de implementar.
30
3. Cuando el mensaje de estado de la implementación cambie
a Se completó la implementación, verá que el estado del
cuadro de diálogo de la notificación cambiará
a Implementación correcta. Seleccione Ir al recurso para ir a
la información general de App Service.
4. Busque la URL en la sección Información general.
Copie la información de URL. Abra una pestaña nueva en el explorador
31
y use la información para ir al nuevo sitio de WordPress. Ya puede
configurar el sitio web de WordPress y agregarle contenido.
EJERCICIO:
CONFIGURACIÓN DE UNA
INSTANCIA DE APP
SERVICE
Para completar este módulo, se necesita un espacio aislado. Un espacio
aislado le da acceso a los recursos de Azure. Su suscripción de Azure no
recibirá ningún cobro. El espacio aislado solo se puede usar para realizar
los cursos de Microsoft Learn. Está prohibido el uso con cualquier otro fin
y puede dar lugar a la pérdida permanente del acceso al espacio aislado.
32 Inicie sesión para activar el espacio aislado.
Recuerde que, en versiones anteriores, utilizamos una instancia de
App Service para ejecutar nuestra aplicación de WordPress. Aquí
veremos más información expuesta sobre nuestra aplicación y
exploraremos algunas de las opciones disponibles para configurar
nuestro sitio web.
Echemos un vistazo a parte de esta información.
1. Abra Azure Portal .
2. En el menú de navegación de la izquierda,
seleccione Panel para acceder a una lista de todos los recursos
de la suscripción. Es posible que tenga que hacer clic en el icono
de menú para mostrar las opciones de navegación.
33
3. Seleccione la instancia de App Service con el nombre que ha
elegido en el ejercicio anterior.
4. Aparecerá de forma predeterminada la información general de
la instancia de App Service; si no es así, seleccione Información
general.
5. Desplácese hacia abajo en la vista de información general hasta
34
el lugar donde pueda ver los gráficos del sitio web que acaba
de crear. En estos gráficos se proporcionan estadísticas sobre el
número de solicitudes recibidas por el sitio web, la cantidad de
datos que han entrado y salido, y el número de errores
detectados en el sitio.
La información que se muestra aquí aparece casi en tiempo real y
proporciona datos generales rápidamente sobre el rendimiento del
35 sitio web. Los problemas de rendimiento del sitio aparecerán reflejados
en estos gráficos como advertencias anticipadas.
¿Qué es escalar?
Supongamos que hemos implementado el sitio web y este se ha
popularizado. Al examinar los gráficos de información general, nos
damos cuenta de que el sitio no puede administrar todas las solicitudes
que recibe de manera eficaz. Para solucionar el problema, hay que
aumentar la capacidad de hardware del servidor.
Escalar hace referencia a agregar ancho de banda de red, memoria,
almacenamiento o eficacia de proceso para lograr un mejor
rendimiento.
Es posible que haya oído los términos escalar verticalmente y escalar
horizontalmente.
Escalar verticalmente significa aumentar la memoria, el
almacenamiento o la eficacia de proceso en una máquina virtual
existente. Por ejemplo, podemos agregar más memoria a un servidor
web o de bases de datos para que se ejecute más rápido.
Escalar horizontalmente significa agregar más máquinas virtuales para
aumentar la eficacia de la aplicación. Por ejemplo, podemos crear
muchas máquinas virtuales configuradas exactamente de la misma
manera y usar un equilibrador de carga para distribuir el trabajo entre
ellas.
Sugerencia
36
La nube es elástica. Podríamos reducir verticalmente o reducir
horizontalmente la implementación si necesitáramos escalarla
verticalmente u horizontalmente, solo de forma temporal. Reducirla
verticalmente u horizontalmente puede ayudar a ahorrar dinero. Azure
Advisor y Azure Cost Management son dos servicios que ayudan a
optimizar los gastos en la nube. Estos servicios se pueden usar para
identificar dónde se invierte más de lo necesario y, seguidamente, volver
a escalar a la capacidad que se está usando realmente.
Cuando tenga más tiempo, no dude en repasar cada sección y explorar
las distintas opciones disponibles.
Cómo cambiar la configuración de App Service
App Service tiene muchas opciones configurables disponibles y agrupa
estas opciones en secciones de funcionalidad.
La primera sección que se muestra es un grupo de opciones comunes
al que accederíamos para obtener una vista del estado de la aplicación.
No obstante, en cada una de las secciones siguientes se proporciona
información y funcionalidad adicional.
Por ejemplo, la sección Configuración da acceso para configurar
varios aspectos, como la configuración de la aplicación, las copias de
seguridad, los dominios personalizados, la configuración de TLS/SSL,
37
distintas opciones para escalar verticalmente los recursos de la
aplicación, etc.
38
Escalado vertical de App Service
1. En la sección Configuración de la instancia de App Service,
seleccione Escalar verticalmente (plan de App Service).
2. Observe que hay tres categorías de carga de trabajo entre las
que elegir en el panel de configuración. Estas tres categorías
facilitan la decisión del tipo de carga de trabajo que vamos a
ejecutar.
Categoría Descripción
39 Desarrollo/pruebas Esta categoría es ideal para las
cargas de trabajo menos
exigentes. Se centra
principalmente en facilitar una
infraestructura compartida. En
esta categoría, hay más
características que están
disponibles para la aplicación de
App Service. Por ejemplo,
Dominios personalizados/SSL o
Escala manual.
Producción Esta categoría es ideal para las
cargas de trabajo más exigentes.
En ella también verá otras
características como los espacios
de ensayo, las copias de
seguridad diarias y un
administrador de tráfico.
Aislado Esta categoría es ideal para
cargas de trabajo que requieren
redes avanzadas y un escalado
específico.
En ella hay planes de tarifa que nos permitirán escalar los recursos
disponibles para nuestra instancia de App Service. Estos planes de tarifa
nos proporcionan acceso a las características adicionales mencionadas
anteriormente.
40 Dejaremos la configuración en el nivel F1, pero tendrá que acceder
aquí para ajustar el escalado en la instancia de App Service si tiene
cambios en la carga de la aplicación.
Echemos un vistazo a cómo usar Cloud Shell para configurar recursos
de Azure, como App Service.
EJERCICIO: ACCESO A
UNA INSTANCIA DE APP
SERVICE MEDIANTE
AZURE CLOUD SHELL
Para completar este módulo, se necesita un espacio aislado. Un espacio
aislado le da acceso a los recursos de Azure. Su suscripción de Azure no
recibirá ningún cobro. El espacio aislado solo se puede usar para realizar
los cursos de Microsoft Learn. Está prohibido el uso con cualquier otro fin
y puede dar lugar a la pérdida permanente del acceso al espacio aislado.
41 Inicie sesión para activar el espacio aislado.
Azure Portal ofrece una cómoda interfaz de usuario para buscar e
instalar diversas ofertas de Azure disponibles, así como para acceder a
ellas. No obstante, veremos que algunas de estas tareas son repetitivas
y, por tanto, son claras candidatas a automatizarse mediante una
interfaz habilitada para la línea de comandos.
¿Qué es Azure Cloud Shell?
Azure Cloud Shell es una consola basada en explorador que permite el
uso de líneas de comandos para administrar y utilizar recursos de
Azure. Piense en Cloud Shell como una consola interactiva que se
ejecuta en la nube.
Cloud Shell proporciona dos experiencias entre las que elegir: Bash y
PowerShell. Ambas incluyen acceso a la interfaz de la línea de
comandos de Azure (la CLI de Azure) y a Azure PowerShell.
Puede usar cualquier interfaz de administración de Azure (como Azure
Portal, la CLI de Azure y Azure PowerShell) para administrar recursos
de Azure. Con un fin didáctico, aquí usaremos la CLI de Azure para
iniciar y detener el sitio de WordPress que hemos creado
anteriormente.
Supongamos que tenemos varios sitios web implementados y
queremos detener o iniciar cada uno de estos sitios web sin tener que
acceder a cada instancia individual de App Service mediante Portal. Se
trata de una tarea sencilla que puede convertir en un script mediante
Cloud Shell y la CLI de Azure.
42
En este ejercicio, usará la ventana de Cloud Shell que se muestra en
paralelo con las instrucciones del ejercicio. Cuando acceda de forma
normal a Cloud Shell desde dentro de Azure Portal, haga clic en el
icono de Cloud Shell en la barra de navegación superior. Este icono se
encuentra a veces en el icono de menú de puntos suspensivos (...)
situado junto al perfil.
En este ejercicio, usaremos la experiencia de Cloud Shell como parte
de nuestra implementación del espacio aislado.
1. El primer paso consiste en asegurarnos de que estamos
trabajando con la suscripción de Azure correcta antes de
cambiar la configuración. Usaremos el comando de lista az
account list. El comando devuelve una cadena json de forma
predeterminada. Vamos a dar formato a la salida para que sea
más fácil trabajar con esta información. Ejecute el siguiente
comando.
CLI de Azure
az account list --output table
2. Recuerde que, cuando creamos el sitio web, usamos un grupo
de recursos creado previamente denominado [nombre del
grupo de recursos del espacio aislado], pero si alguna vez
43 necesitamos mostrar todos los grupos de recursos de una
suscripción, deberemos ejecutar el comando az group list.
CLI de Azure
az group list --output table
3. Después, obtendremos una lista con todos los recursos
de [nombre del grupo de recursos del espacio aislado] con
el comando az resource list. El comando devolverá una lista de
recursos. Al especificar --resource-type, es posible filtrar el
resultado para incluir solo la información de recursos relativa a
sitios web.
Ejecute el siguiente comando.
CLI de Azure
az resource list \
--resource-group [sandbox resource group name] \
--resource-type [Link]/sites
Este es un ejemplo de la salida del comando:
output
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-
xxxxxxxxxxx/resourceGroups/[sandbox resource group
name]/providers/[Link]/sites/BlogFor",
"identity": null,
44
"kind": "app",
"location": "centralus",
"managedBy": null,
"name": "MyWebApp",
"plan": null,
"properties": null,
"resourceGroup": "[sandbox resource group name]",
"sku": null,
"tags": null,
"type": "[Link]/sites"
Copie el valor de name. Lo usaremos en los pasos posteriores para
detener e iniciar después el sitio web.
4. Usaremos el comando az webapp stop para detener la
aplicación web que se ejecuta en App Service. Reemplace <web
app name> por el nombre de la aplicación web que ha copiado
y después ejecute este comando para detener la aplicación
web.
CLI de Azure
az webapp stop \
45
--resource-group [sandbox resource group name] \
--name <web app name>
5. Abra el sitio web en una nueva pestaña del explorador.
Encontrará la dirección URL del sitio en la información general
de App Service, en Portal. Verá un mensaje en el explorador que
indica lo siguiente:
46
6. Por último, ejecutaremos el comando az webapp start para
iniciar la aplicación web. Reemplace <web app name> por el
nombre de la aplicación web que ha copiado y después ejecute
este comando para iniciar la aplicación web.
CLI de Azure
az webapp start \
--resource-group [sandbox resource group name] \
--name <web app name>
7. Vuelva a la pestaña del sitio web y actualice la página. El sitio
web estará disponible transcurrido un par de segundos.
1
Compilación de un bot de
chat con Azure Bot Service
BIENVENIDA
Azure Bot Service, en combinación con Microsoft QnA Maker, ofrece
las herramientas que los desarrolladores necesitan para crear y publicar
bots inteligentes que interactúen de forma natural con los usuarios
mediante una gama de servicios.
En este módulo, aprenderá a:
• Crear un bot de aplicación web de Azure para hospedar un bot
• Creará una base de conocimiento, la rellenará con datos y la
conectará a un bot
• Implementará bots en el código y depurará los robots que
2
compile
• Publicará los bots y usará la integración continua para
mantenerlos al día
• Depuración de bots en local mediante Visual Studio Code y
Microsoft Bot Framework Emulator
Requisitos previos
Para realizar los ejercicios de este módulo, necesita una suscripción
activa de Azure (o una versión de prueba) y una instalación local de
Visual Studio Code.
Introducción 2 min
Ejercicio: Creación de un bot de aplicación web de Azure 15 min
Ejercicio: Creación de una base de conocimiento con Microsoft
QnA Maker 20 min
Ejercicio: Implementación de un bot con Visual Studio Code 20
min
Ejercicio: Depuración local del bot 20 min
Ejercicio: Conexión del bot con la base de conocimiento 20 min
Comprobación de conocimientos 5 min
Resumen y limpieza 8 min
3
INTRODUCCIÓN
Azure Bot Service, en combinación con Microsoft QnA Maker, ofrece
las herramientas que los desarrolladores necesitan para crear y publicar
bots inteligentes que interactúen de forma natural con los usuarios
mediante una gama de servicios.
4
En este módulo, creará un bot mediante Azure Bot Service y lo
conectará a una base de conocimiento creada con QnA Maker. Luego
se interactúa con el bot mediante Microsoft QnA Maker y Microsoft Bot
Framework Emulator.
Nota
Este módulo requiere una suscripción de Azure. Los servicios que cree
y use son gratuitos, pero necesitará una suscripción activa o una
versión de prueba para completar los ejercicios. Si no tiene una
suscripción a Azure, cree una cuenta gratuita antes de empezar.
Objetivos de aprendizaje
En este módulo, aprenderá a:
• Crear un bot de aplicación web de Azure para hospedar un bot
• Creará una base de conocimiento, la rellenará con datos y la
conectará a un bot
• Implementará bots en el código y depurará los robots que
compile
• Publicará los bots y usará la integración continua para
mantenerlos al día
• Depuración de bots en local mediante Visual Studio Code y
Microsoft Bot Framework Emulator
Requisitos previos
Para realizar los ejercicios de este módulo, necesita una suscripción
5
activa de Azure (o una versión de prueba) y una instalación local de
Visual Studio Code.
Siguiente unidad: Ejercicio: Creación de un bot de aplicación web de
Azure
EJERCICIO: CREACIÓN DE
UN BOT DE APLICACIÓN
WEB DE AZURE
El primer paso para crear un bot es proporcionar una ubicación para
hospedarlo en Azure. La característica Web Apps de Azure App Service
es perfecta para hospedar aplicaciones de bot que Azure Bot Service
se encarga de aprovisionar automáticamente. En esta unidad se usa
Azure Portal para aprovisionar un bot de aplicación web de Azure.
1. Inicie sesión en Azure Portal .
6 2. En el menú de Azure Portal, seleccione Crear un recurso.
3. Seleccione IA y Machine Learning y luego Web App Bot.
7
4. En la página Nuevo bot de aplicación web, especifique la
configuración siguiente para el nuevo bot de aplicación web.
Opción Valor Descripción
Nombre del bot Elija un nombre Este nombre debe
único ser único dentro de
Azure, por lo que
debe asegurarse de
que aparece una
marca de verificación
de color verde junto
a él.
Suscripción Seleccione la Seleccione la
suscripción suscripción de Azure.
Grupo de recursos Seleccione Crear Seleccione un grupo
nuevo y use el de recursos existente
nombre mslearn- o cree uno para
factbot almacenar los
recursos de este
ejercicio.
Ubicación Seleccione la región Seleccione la
más cercana de la ubicación donde se
lista desplegable debe colocar el bot.
Plan de tarifa F0 Un plan básico
8
gratuito para esta
aplicación.
Nombre de Deje el valor El valor
aplicación predeterminado predeterminado se
rellena según el
nombre del bot.
Puede cambiarlo si
prefiere otro nombre
para la aplicación
web o dejar el valor
predeterminado.
5. Luego, seleccione Plantilla de bot. Seleccione SDK v3 como
versión, [Link] como lenguaje del SDK y Preguntas y
respuestas como tipo de plantilla. Luego haga clic
en Aceptar en la parte inferior de la vista.
9
6. Ahora seleccione Plan de App Service/Ubicación, Crear
nuevo y luego cree un plan de App Service denominado "qa-
factbot-service-plan" o algo similar en la misma región que ha
seleccionado en el paso anterior. Haga clic en Aceptar para
cerrar la vista.
7. Deje las restantes opciones con sus valores predeterminados.
Puede comparar la configuración con la siguiente captura de
pantalla si es necesario.
10
11
8. Haga clic en Crear en la parte inferior del panel "Bot de
aplicación web" para iniciar la implementación.
Nota
Por lo general, la implementación lleva dos minutos o menos. Puede
observar el progreso en el panel Notificaciones (icono de campana) de
la parte superior del portal.
9. Una vez concluida la implementación, seleccione Grupos de
recursos en la barra lateral izquierda.
10. Seleccione el grupo de recursos que ha creado (mslearn-
factbot) y en el que ha implementado el bot de aplicación web
de Azure.
12 Ahora se deberían ver varios recursos creados para el bot de aplicación
web de Azure.
En segundo plano, han sucedido muchas cosas al implementar el bot
de la aplicación web de Azure.
• Se ha creado un bot y se ha registrado en Azure.
• Se ha creado una aplicación web de Azure para hospedar el bot.
• El bot se ha configurado para trabajar con Microsoft QnA
Maker.
El siguiente paso es usar QnA Maker para crear una base de
conocimiento de preguntas y respuestas para dotar al bot de
inteligencia.
Siguiente unidad: Ejercicio: Creación de una base de conocimiento con
Microsoft QnA Maker
13
EJERCICIO: CREACIÓN DE
UNA BASE DE
CONOCIMIENTO CON
MICROSOFT QNA MAKER
QnA Maker forma parte de Azure Cognitive Services, un conjunto de
servicios y API para compilar aplicaciones inteligentes respaldadas por
inteligencia artificial (IA) y aprendizaje automático. En lugar de codificar
un bot para que se anticipe a cada pregunta que un usuario pudiera
hacer y proporcionar una respuesta, puede conectarlo a una base de
conocimiento de preguntas y respuestas creadas con QnA Maker. Un
14
escenario de uso habitual es crear una base de conocimiento a partir
de la dirección URL de una página web de Preguntas más frecuentes
para que el bot pueda responder a preguntas específicas del dominio,
por ejemplo, "¿cómo encuentro la clave de producto de Windows?" o
"¿dónde puedo descargar Visual Studio Code?".
En esta unidad, usará QnA Maker para crear una base de conocimiento
con preguntas como "¿qué equipos de la NFL han ganado más
ediciones de la Super Bowl?" y "¿cuál es la ciudad más grande del
mundo?". Luego se implementa la base de conocimiento en una
aplicación web de Azure para que sea accesible a través de un punto
de conexión HTTPS.
Crear un servicio QnA Maker
1. Vaya al portal de QnA Maker .
2. Seleccione Iniciar sesión en la esquina superior derecha e
inicie sesión con la misma cuenta que ha usado para crear la
aplicación web.
3. A menos que ya tenga una base de conocimiento, el portal le
indica que no tiene ninguna y le pide que cree una desde el
menú.
4. En el menú de la parte superior del portal, seleccione Create a
knowledge base (Crear una base de conocimiento).
5. Haga clic en Create a QnA service (Crear un servicio QnA). Al
seleccionar este botón, se abre Azure Portal e inicia la sesión
con las credenciales que usó anteriormente. Se crean el servicio
15
QnA Maker y el servicio asociado de aplicación de Azure que lo
va a hospedar en este portal.
Nota
También es posible crear un servicio QnA Maker en Azure Portal antes
de crear una base de conocimiento.
6. En la pestaña de Azure Portal recién abierta, especifique la
siguiente configuración para el nuevo servicio QnA Maker.
Opción Valor Descripción
Nombre elija un nombre Este nombre debe
único ser único dentro de
Azure, por lo que
debe asegurarse de
que aparezca una
marca de verificación
de color verde junto
a él Y en el cuadro
Nombre de
aplicación situado
16
más abajo en el
panel.
Suscripción Seleccione la Seleccione la
suscripción suscripción de Azure.
Plan de tarifa F0 Un plan gratuito
básico.
Ubicación Seleccione la región Seleccione la
más cercana de la ubicación donde
lista desplegable debe colocarse el
servicio.
Grupo de recursos Seleccione el grupo Seleccione el grupo
de recursos creado de recursos existente
en la unidad anterior (mslearn-factbot)
para almacenar los
recursos de este
ejercicio.
Plan de tarifa de la B Seleccione el plan de
búsqueda tarifa del servicio de
búsqueda.
Ubicación de la Seleccione la región Seleccione la
búsqueda más cercana de la ubicación donde
lista desplegable debe colocarse el
17 servicio de
búsqueda.
Nombre de Deje el valor El valor
aplicación predeterminado predeterminado se
rellena según el
nombre de la
instancia de QnA
Maker. Puede
cambiarlo si prefiere
otro nombre para la
aplicación web o
dejar el valor
predeterminado.
Ubicación de sitio Seleccione la región Seleccione la
web más cercana de la ubicación donde se
lista desplegable debe colocar el sitio
web.
7. Seleccione el botón Crear en la parte inferior del panel.
18
19
8. Haga clic en Grupos de recursos en la cinta del lado izquierdo
del portal y busque el grupo de recursos mslearn-factbot.
Espere hasta que "Implementando" cambie a "Correcto" en la parte
superior del panel, lo que indica que el servicio QnA y los recursos
asociados se han implementado correctamente. Si el mensaje
desaparece, puede hacer clic en el icono de la campana situado en la
barra de menús para ver el estado. También puede
seleccionar Actualizar en la parte superior del panel para actualizar el
estado de implementación.
Creación, rellenado y entrenamiento de la base de conocimiento
de QnA Maker
1. Para volver a Crear una base de conocimiento, vaya a la
20 pestaña abierta o a [Link] en el
explorador y desplácese al Paso 2 para conectarse al servicio
QnA.
2. En el Paso 2, seleccione Actualizar para asegurarse de que el
nuevo servicio QnA que acaba de implementar esté disponible
en esta pantalla.
3. En el campo correspondiente al id. de directorio de
Microsoft Azure, elija el directorio propietario de la
suscripción que ha usado (probablemente solo haya uno).
4. Seleccione la suscripción de Azure en la lista desplegable Azure
subscription name (Nombre de suscripción de Azure). Si no ve
la suscripción, pruebe a cambiar de directorio hasta que la
encuentre.
5. En Azure QnA service (Servicio Azure QnA), seleccione el
nombre del servicio QnA que ha especificado anteriormente. Si
no aparece ningún servicio, puede que tenga que actualizar la
página.
6. Luego asigne un nombre a la base de conocimiento, por
ejemplo, "Base de conocimiento de Factbot".
El siguiente paso es rellenar la base de conocimiento con preguntas y
respuestas. Puede escribir preguntas y respuestas de forma manual en
una base de conocimiento de QnA Maker o puede importarlas desde
archivos locales o preguntas frecuentes en línea. Los formatos
compatibles incluyen archivos de texto delimitados por tabuladores,
documentos de Microsoft Word, hojas de cálculo de Excel y archivos
PDF.
21
1. Para rellenar la base de conocimiento,
abra [Link]
bot-with-azure-bot-service/blob/master/[Link] en el
explorador y descargue el archivo [Link]. Esta carpeta
ZIP contiene un archivo de texto denominado [Link].
2. Extraiga y copie el archivo en el equipo. Luego, desplácese hacia
abajo por el portal de QnA Maker, haga clic en + Add file (+
Agregar archivo) y seleccione [Link].
Este archivo contiene 20 preguntas y respuestas en formato delimitado
por tabuladores.
3. Hay una serie de personalidades disponibles para QnA Maker,
que se puede seleccionar en Chit-chat. Puesto que
proporcionamos el punto de inicio de la base de conocimiento
22
en [Link], proporcionamos la personalidad de la línea
base, por lo que puede dejarlo como predeterminado.
4. Seleccione Create your KB (Crear la base de conocimiento) en
la parte inferior de la página y espere a que se cree la base de
conocimiento. Debería tardar menos de un minuto.
5. Confirme que las preguntas y las respuestas importadas
desde [Link] aparecen en la base de conocimiento.
Después, haga clic en Save and train (Guardar y entrenar) y
espere a que se complete el entrenamiento.
Probar la base de conocimiento
1. Haga clic en el botón Test (Probar) que está a la derecha del
botón Save and train (Guardar y entrenar). Escriba "Hi" (Hola)
en el cuadro de mensaje y presione Entrar. Confirme que la
respuesta es "Welcome to the QnA Factbot" (Bienvenido a
23
Factbot de QnA), como se muestra a continuación.
2. Escriba "What book has sold the most copies?" en el cuadro de
mensaje y presione ENTRAR. ¿Cuál es la respuesta?
3. Vuelva a hacer clic en el botón Probar para contraer el panel
de prueba.
4. Haga clic en Publicar en el menú de la parte superior de la
página y haga clic en el botón Publicar situado en la parte
inferior de la página para publicar la base de conocimiento.
La publicación hace que la base de conocimiento esté
disponible en un punto de conexión HTTPS.
Espere a que se complete el proceso de publicación y confirme que se
implementó el servicio de QnA. Con la base de conocimiento
hospedada ahora en una aplicación web de Azure, el paso siguiente es
implementar un bot que pueda usarla.
24
Siguiente unidad: Ejercicio: Implementación de un bot con Visual
Studio Code
EJERCICIO:
IMPLEMENTACIÓN DE UN
BOT CON VISUAL STUDIO
CODE
Al crear un bot de una aplicación web de Azure, se ha implementado
una aplicación web de Azure para hospedarlo. Sin embargo, el bot se
debe implementar con código, y todavía se debe implementar en la
aplicación web de Azure. Afortunadamente, Azure Bot Service ha
generado el código automáticamente.
25 En esta unidad se usa Visual Studio Code para colocar el código en un
repositorio local de Git y publicar el bot en Azure mediante la inserción
de cambios desde el repositorio local en otro remoto conectado a la
aplicación web de Azure que hospeda el bot, un proceso conocido
como "integración continua" (CI).
Descarga del código fuente del bot de la aplicación web
1. Cree una carpeta denominada factbot en la ubicación del disco
duro que prefiera para almacenar el código fuente del bot.
2. En Azure Portal, busque y seleccione el grupo de recursos que
ha creado.
3. Busque y seleccione la instancia de Web App Bot que ha creado
anteriormente.
4. Seleccione Compilar en el menú de la izquierda y
luego Download Bot source code (Descargar código fuente
del bot) para preparar un archivo ZIP que contenga el código
fuente del bot.
26 5. El portal tardará unos minutos en comprimir el código.
6. Cuando haya finalizado, en el portal se mostrará un
botón Download Bot source code (Descargar código fuente
del bot) similar al de la siguiente captura de pantalla.
7. Seleccione Download Bot source code (Descargar código
fuente del bot) para descargar el código fuente en un archivo
.zip en su máquina local.
8. Una vez completada la descarga, extraiga el contenido del
archivo .zip en la carpeta factbot que ha creado en el disco
duro local.
Instalación del repositorio de Git del bot mediante el Centro de
implementación
1. Vuelva a Azure Portal en el explorador.
2. En el panel de compilación del bot de aplicación web de
Azure Portal, haga clic en el vínculo Publish updates
automatically to Azure with Continuous
Deployment (Publicar actualizaciones automáticamente en
Azure con implementación continua) en el área Publicar de la
vista principal. Esto se muestra en la captura de pantalla
27 siguiente.
3. En el panel Centro de implementación, seleccione Git
local como origen de implementación y haga clic
en Continuar.
4. Seleccione la opción Servidor de compilación de Kudu para
App Service y elija Continuar y Finalizar.
5. Seleccione FTP/Credenciales en el área de menú superior y,
luego, Credenciales de usuario en la vista abierta.
6. Escriba un nombre de usuario y una contraseña (debe tener
más de 10 caracteres) y haga clic en Guardar credenciales.
Tome nota del nombre de usuario y la contraseña.
7. Vaya a la configuración del bot de aplicación web y
28
seleccione Toda la configuración de App Service en el menú
de la izquierda. Así se muestra la aplicación web subyacente en
la que está hospedado el bot.
8. Anote la URL de clonación de Git del panel Información
general. Esta dirección URL es el repositorio de Git basado en
la nube que Azure ha creado para administrar el proyecto.
Crear un repositorio de Git local
En esta sección con una experiencia de Git integrada se va a usar Visual
Studio Code, aunque es posible crear el repositorio de Git con cualquier
otra técnica que prefiera si está familiarizado con los pasos. Si no tiene
instalado Visual Studio Code, puede descargarlo de forma gratuita
desde aquí.
1. Inicie Visual Studio Code y use el comando Archivo > Abrir
carpeta... para abrir la carpeta factbot en la que ha copiado el
código fuente del bot.
2. Haga clic en el botón Control de código fuente de la barra de
actividades izquierda de Visual Studio Code. Puede mantener el
puntero sobre cada botón si la barra lateral está contraída.
3. Seleccione el icono Inicializar repositorio de la parte superior
(a la derecha del título CONTROL DE CÓDIGO FUENTE).
29
4. Seleccione el botón Inicializar repositorio del cuadro de
diálogo.
5. Escriba "Primera confirmación." en el cuadro de texto de
entrada.
6. Haga clic en la marca de verificación para confirmar los
cambios, lo que almacena provisionalmente todos los archivos
cuando se pide.
Sugerencia
Si aparece un error de Git que indica que no tiene la identidad
establecida en Git, abra un símbolo del sistema y ejecute los comandos
siguientes, reemplazando los valores de marcador de posición de
correo electrónico y nombre. Luego, vuelva a pulsar el botón de
confirmación.
bashCopiar
git config --global [Link] "Your Email"
git config --global [Link] "Your name"
7. Seleccione Terminal en el menú Ver de Visual Studio Code
para abrir un terminal integrado.
8. Ejecute el siguiente comando en el terminal integrado,
30 reemplazando {git-url} en el siguiente comando por la
dirección URL de clonación de Git que ha localizado en
Azure Portal.
bashCopiar
git remote add qna-factbot {git-url}
9. Vuelva a la sección Control de código fuente de Visual Studio
Code y haga clic en los puntos suspensivos (los tres puntos) de
la parte superior del panel CONTROL DE CÓDIGO FUENTE.
10. Seleccione Publicar rama en el menú para insertar el código
de bot desde el repositorio local en Azure. Si se le piden
credenciales, escriba el nombre de usuario y la contraseña que
ha configurado en el Centro de implementación.
El bot se ha publicado en Azure. Antes de probarlo allí, ejecútelo
localmente y obtenga información sobre cómo depurarlo en Visual
Studio Code.
Siguiente unidad: Ejercicio: Depuración local del bot
31
EJERCICIO: DEPURACIÓN
LOCAL DEL BOT
Como sucede con cualquier código de aplicación que escriba, los
cambios en el código del bot se deben probar y depurar de manera
local antes de implementarlos en producción. Para ayudar a depurar
los bots, Microsoft ofrece Bot Framework Emulator.
En esta unidad se aprende a usar Visual Studio Code y el emulador para
depurar los bots.
Instalar paquetes locales de [Link]
32 1. Ejecute el comando siguiente en el terminal integrado de Visual
Studio Code para instalar Restify, un conocido paquete de
[Link] para compilar y usar servicios web RESTful:
bashCopiar
npm install restify
2. Repita este paso para los comandos siguientes a fin de
instalar Bot Builder SDK para [Link] de Microsoft Bot
Framework:
bashCopiar
npm install botbuilder
npm install botbuilder-azure
npm install botbuilder-cognitiveservices
Modificar el bot para que se ejecute en local con el emulador de
bots
El código descargado es un simple servicio de eco. Vamos a reemplazar
ese código por algún código básico para hacer preguntas y responder
a preguntas sencillas. Este código se ejecuta con el emulador de bots.
1. Haga clic en el botón Explorador de la barra de actividades de
Visual Studio Code (es el primer icono de la barra lateral).
2. Seleccione [Link] para abrirlo en el editor de código. Este
archivo contiene el código que controla el bot, código que
generó Azure Bot Service y que se descargó desde Azure Portal.
33 3. Reemplace el contenido de [Link] por el código siguiente y
luego guarde el archivo.
JavaScriptCopiar
"use strict";
var builder = require("botbuilder");
var botbuilder_azure = require("botbuilder-azure");
var useEmulator = true;
var userName = "";
var yearsCoding = "";
var selectedLanguage = "";
var connector = useEmulator ? new [Link]() : new
botbuilder_azure.BotServiceConnector({
appId: [Link],
appPassword: [Link]
});
var bot = new [Link](connector);
34
[Link]('/', [
function (session) {
[Link](session, "Hello, and welcome to QnA Factbot!
What's your name?");
},
function (session, results) {
userName = [Link];
[Link](session, "Hi " + userName + ", how many
years have you been writing code?");
},
function (session, results) {
yearsCoding = [Link];
[Link](session, "What language do you love the
most?", ["C#", "Python", "[Link]", "Visual FoxPro"]);
},
35
function (session, results) {
selectedLanguage = [Link];
[Link]("Okay, " + userName + ", I think I've got it:" +
" You've been writing code for " + yearsCoding + " years," +
" and prefer to use " + selectedLanguage + ".");
}]);
var restify = require('restify');
var server = [Link]();
[Link](3978, function() {
[Link]('test bot endpoint at
[Link]
});
[Link]('/api/messages', [Link]());
Instalar Bot Framework Emulator
Bot Framework Emulator es una aplicación de escritorio
36
multiplataforma que permite que los desarrolladores de bots prueben
y depuren los bots compilados mediante BotBuilder SDK.
Puede usar Bot Framework Emulator para probar los bots que se
ejecutan en local en el equipo o para conectarse a los bots que se
ejecutan de forma remota a través de una conexión de red segura.
Nota
Si ya tiene el emulador instalado, puede omitir esta sección y pasar a
depurar el código de bot.
1. Vaya a la página de versiones de Bot Framework Emulator en
una nueva pestaña o ventana del explorador.
2. Seleccione una descarga para la plataforma en cuestión: Linux,
macOS o Windows.
3. Descomprima el paquete e instálelo mediante los
procedimientos de instalación normales del sistema operativo.
Depurar el bot en Visual Studio Code
Ahora que el emulador está instalado,
1. cambie a Visual Studio Code y abra el archivo de código
fuente [Link].
2. Haga clic en el margen de la izquierda para establecer puntos
de interrupción en las líneas 20, 25 y 30
(llamadas [Link]...).
37
3. Haga clic en el botón Depurar de la barra de actividades y en
el botón de flecha verde Iniciar depuración para iniciar una
sesión de depuración.
4. Confirme que aparece "test bot endpoint
at [Link] en la consola de
depuración.
El código de bot ahora se ejecuta en local.
5. Inicie Bot Framework Emulator desde el menú Inicio o el
icono de inicio.
38
6. Seleccione el campo Enter your endpoint URL (Escriba la
dirección URL del punto de conexión). Escriba el nombre del
bot y la dirección URL [Link] del
bot que aparecen en la consola de depuración en el paso
anterior.
7. Deje vacíos los campos correspondientes al id. y la contraseña
de la aplicación de Microsoft, así como el de la configuración
regional. Después, seleccione CONNECT (CONECTARSE).
8. Luego, seleccione Save and connect (Guardar y conectar) y
guarde el archivo de configuración en la ubicación que prefiera.
Sugerencia
En el futuro, puede reconectarse al bot simplemente seleccionando el
nombre del bot en "My bots".
Probar el bot local
1. Escriba "hi" en el cuadro de la parte inferior del emulador y
39 presione Entrar. Confirme que Visual Studio Code se
interrumpe en la línea 20 de [Link].
2. Haga clic en el botón Continuar de la barra de herramientas de
depuración de Visual Studio Code y vuelva al emulador para ver
la respuesta del bot.
3. El bot le hará una serie de preguntas. Respóndalas y
seleccione Continuar en Visual Studio Code cada vez que se
alcance un punto de interrupción. Cuando haya terminado,
seleccione el botón Detener en la barra de herramientas de
depuración para finalizar la sesión de depuración.
En este momento, tiene un bot completamente funcional y sabe cómo
depurarlo mediante su ejecución local en Microsoft Bot Framework
Emulator. El paso siguiente consiste en conectar el bot a la base de
conocimiento que ha publicado para hacer que sea más inteligente.
Siguiente unidad: Ejercicio: Conexión del bot con la base de
conocimiento
40
41
EJERCICIO: CONEXIÓN
DEL BOT CON LA BASE DE
CONOCIMIENTO
En esta unidad, conectará el bot a la base de conocimiento de QnA
Maker que creó anteriormente para que el bot pueda llevar a cabo una
conversación inteligente. La conexión a la base de conocimiento
implica recuperar algo de información del portal de QnA Maker,
copiarla en Azure Portal, actualizar el código del bot y, luego, volver a
implementar el bot en Azure.
Conectar la base de conocimiento de Factbot al bot de aplicación
42
web
1. Abra el portal de QnA Maker en [Link] en el
explorador y haga clic en el botón de cuenta/perfil del extremo
superior derecho.
2. Seleccione Service Settings (Configuración de servicio) en el
menú que se despliega.
3. Seleccione Mostrar para mostrar la clave Principal del punto
de conexión y Copiar para copiarla en el Portapapeles. Péguela
en un archivo de texto para que pueda recuperarla fácilmente
en otro momento. Si no ve ninguna clave de configuración,
cierre la sesión y vuelva a iniciarla para actualizar la página.
Nota
En función de la configuración del explorador, es posible que deba
permitir las cookies de terceros para completar esta unidad.
4. Seleccione My knowledge bases (Mis bases de conocimiento)
en el menú de la parte superior de la página.
5. Seleccione View Code (Ver código) para la base de
conocimiento creada anteriormente.
6. Haga clic en el botón Copy (Copiar) para copiar los valores
predeterminados y péguelos en un editor.
7. Copie el identificador de la base de conocimiento de la primera
línea y el nombre de host de la segunda. No incluya el prefijo
"[Link] en el nombre de host que va a copiar.
43
8. Vuelva al bot de la aplicación web en Azure Portal.
Seleccione Configuración en el menú de la izquierda y
desplácese hacia abajo hasta que encuentre las configuraciones
de aplicación denominadas "QnAKnowledgebaseId",
"QnAAuthKey" y "QnAEndpointHostName".
9. Haga clic en Mostrar valores para mostrar los campos
editables.
10. Pegue en estos campos el identificador y el nombre de host de
la base de conocimiento que acaba de obtener y la clave del
punto de conexión que ha obtenido anteriormente.
11. Seleccione Guardar en la parte superior de la ventana para
conservar los cambios.
44
Configuración del código del servicio de bots
1. Cambie a Visual Studio Code y reemplace el contenido
de [Link] por este código. Luego guarde el archivo.
JavaScriptCopiar
var restify = require('restify');
var builder = require('botbuilder');
var botbuilder_azure = require("botbuilder-azure");
var builder_cognitiveservices = require("botbuilder-cognitiveservices");
// Setup Restify Server
var server = [Link]();
[Link]([Link] || [Link] || 3978, function () {
45 [Link]('%s listening to %s', [Link], [Link]);
});
// Create chat connector for communicating with the Bot Framework
Service
var connector = new [Link]({
appId: [Link],
appPassword: [Link],
openIdMetadata: [Link]
});
// Listen for messages from users
[Link]('/api/messages', [Link]());
var tableName = 'botdata';
var azureTableClient = new
botbuilder_azure.AzureTableClient(tableName,
[Link]['AzureWebJobsStorage']);
var tableStorage = new botbuilder_azure.AzureBotStorage({ gzipData:
false }, azureTableClient);
46
// Create your bot with a function to receive messages from the user
var bot = new [Link](connector);
[Link]('storage', tableStorage);
// Recognizer and and Dialog for preview QnAMaker service
var previewRecognizer = new
builder_cognitiveservices.QnAMakerRecognizer({
knowledgeBaseId: [Link],
authKey: [Link] ||
[Link]
});
var basicQnAMakerPreviewDialog = new
builder_cognitiveservices.QnAMakerDialog({
recognizers: [previewRecognizer],
defaultMessage: 'No match! Try changing the query terms!',
qnaThreshold: 0.3
}
47
);
[Link]('basicQnAMakerPreviewDialog',
basicQnAMakerPreviewDialog);
// Recognizer and and Dialog for GA QnAMaker service
var recognizer = new builder_cognitiveservices.QnAMakerRecognizer({
knowledgeBaseId: [Link],
authKey: [Link] ||
[Link], // Backward compatibility with
QnAMaker (Preview)
endpointHostName: [Link]
});
var basicQnAMakerDialog = new
builder_cognitiveservices.QnAMakerDialog({
recognizers: [recognizer],
defaultMessage: "I'm not quite sure what you're asking. Please ask
your question again.",
48
qnaThreshold: 0.3
});
[Link]('basicQnAMakerDialog', basicQnAMakerDialog);
[Link]('/', //basicQnAMakerDialog);
function (session) {
var qnaKnowledgebaseId = [Link];
var qnaAuthKey = [Link] ||
[Link];
var endpointHostName = [Link];
// QnA Subscription Key and KnowledgeBase Id null verification
if ((qnaAuthKey == null || qnaAuthKey == '') ||
(qnaKnowledgebaseId == null || qnaKnowledgebaseId == ''))
[Link]('Please set QnAKnowledgebaseId, QnAAuthKey
and QnAEndpointHostName (if applicable) in App Settings. Learn how
to get them at [Link]
else {
49
if (endpointHostName == null || endpointHostName == '')
// Replace with Preview QnAMakerDialog service
[Link]('basicQnAMakerPreviewDialog');
else
// Replace with GA QnAMakerDialog service
[Link]('basicQnAMakerDialog');
]);
Nota
Llamada para crear una instancia de QnAMakerDialog en la línea 30.
Con esto se crea un cuadro de diálogo que integra un bot compilado
con Azure Bot Service con una base de conocimiento compilada
mediante Microsoft QnA Maker.
Publicar el código de bot
1. Haga clic en el botón Control de código fuente de la barra de
actividades de Visual Studio Code.
2. Mantenga el puntero sobre el archivo [Link] y seleccione el
botón + para almacenar provisionalmente los cambios de ese
archivo para la siguiente confirmación.
50 3. Escriba "Connected to knowledge base" (Conectado a la base
de conocimiento) en el cuadro de mensaje y seleccione la marca
de verificación para confirmar los cambios.
Advertencia
Si ve cambios realizados en un archivo [Link], asegúrese de
que no se incluyan en la confirmación. La confirmación solo debe incluir
los cambios realizados en [Link].
4. Luego, haga clic en el botón de puntos suspensivos (...) y use el
comando Publicar rama para insertar estos cambios en el
repositorio remoto y en la aplicación web de Azure.
Probar el bot de aplicación web de Azure
1. Vuelva al bot de aplicación web en Azure Portal y
seleccione Probar en Chat en web a la izquierda para abrir la
consola de prueba.
2. Escriba "What's the most popular software programming
language in the world?" (¿Cuál es el lenguaje de programación
de software más popular del mundo?) en el cuadro que aparece
en la parte inferior de la ventana del chat y presione Entrar.
Confirme que el bot responde.
En entornos corporativos, C# es el rey, ya que se usa en más del 75 %
de las empresas de todo el mundo. Fuera de los entornos corporativos,
Java y JavaScript todavía le hacen sombra.
Enhorabuena. El bot está conectado a la base de conocimiento y puede
51 responder a preguntas.
Siguiente unidad: Comprobación de conocimientos
RESUMEN Y LIMPIEZA
En este módulo ha avanzado mucho. QnA Maker es una manera fácil
de proporcionar respuestas a preguntas habituales mediante
documentos existentes o listas de preguntas frecuentes.
La integración del servicio QnA Maker con un bot en Azure puede
facilitar la interacción de los usuarios con listas de preguntas frecuentes
a modo de conversación, para no tener que buscar en documentos de
gran tamaño en un explorador.
Limpieza
Para evitar costos inesperados en la cuenta de Azure, elimine el grupo
de recursos mslearn-factbot. Con esto se eliminan todos los recursos
52 creados en este módulo. Estos son los pasos:
1. Busque el grupo de recursos mslearn-factbot. Puede
seleccionar Grupos de recursos en la barra lateral de Azure
para encontrarlo rápidamente o bien usar la barra de búsqueda
global de la parte superior de la ventana del portal.
2. Seleccione el grupo de recursos y haga clic con el botón
derecho en la fila o use el botón de puntos suspensivos (…) del
extremo derecho de la fila para abrir el menú.
3. Haga clic en Eliminar grupo de recursos.
4. Escriba el nombre del grupo de recursos y haga clic
en Eliminar. Azure quita todos los recursos, incluida la base de
conocimiento de QnA Maker.
Más información
Se puede hacer mucho más para aprovechar la eficacia de Azure Bot
Service.
• Incorporación de cuadros de diálogo
• Agregar compatibilidad con FormFlow
• Compatibilidad con el lenguaje natural con Microsoft Language
Understanding and Intelligence Services (LUIS).
Con estas y otras características, puede compilar bots sofisticados que
respondan a las consultas y los comandos de los usuarios e interactúen
de manera fluida, no lineal y a modo de conversación.
Para obtener más información y para ver ideas para empezar, vea el
53
artículo de información general sobre Microsoft Bot Framework.
Si quiere que el bot sea más inteligente, considere la posibilidad de
expandir la base de conocimiento con otras preguntas y respuestas.
Por ejemplo, puede usar las preguntas frecuentes en línea para que Bot
Framework entrene al bot para que responda a preguntas sobre el
propio Framework.
1
Detección de opiniones en
texto con Text Analytics API
BIENVENIDA
Obtenga información sobre lo que los clientes dicen realmente sobre
su producto o marca cuando envían comentarios. Se va a crear una
solución que use Azure Functions y la inteligencia de Text Analytics API
para detectar opiniones en mensajes de texto.
En este módulo, aprenderá lo siguiente:
Más información acerca de Text Analytics API
Registrarse para conseguir una clave de Text Analytics API
Diseñar y compilar un servicio con Azure Functions que use Text
Analytics API para clasificar comentarios de texto
Leer y escribir mensajes de Azure Queue Storage en una
2
aplicación de función con la ayuda de enlaces
Requisitos previos
Ninguno
Introducción 2 min
Análisis de opiniones y Text Analytics API 4 min
Ejercicio: Llamada a Text Analytics API desde la consola de
pruebas en línea 10 min
Diseño de un clasificador de comentarios 6 min
Ejercicio: Creación de una aplicación de función en el portal
para hospedar la lógica de negocios 6 min
Ejercicio: Llamada a Text Analytics API desde una aplicación 9
min
Ejercicio: Ordenación de los mensajes en colas diferentes en
función de la puntuación de opiniones 8 min
Resumen 2 min
3
INTRODUCCIÓN
Si le muestro un texto escrito con TODAS LAS LETRAS EN
MAYÚSCULAS, ¿qué emociones transmitiría? Si en la reseña de un libro
escribo un comentario que indica que “el final era impredecible”,
¿indica esa afirmación algo positivo o negativo? ¿Cómo puedo
averiguar mediante programación en qué idioma se escribió un correo
electrónico? Text Analytics consiste en comprender y analizar texto no
4 estructurado para responder a ese tipo de preguntas. Incluye el análisis
de opiniones, la extracción de frases clave, la detección de idioma, etc.
En este módulo, vamos a centrar la atención en el análisis de opiniones.
Vamos a conocer más información sobre Text Analytics API. Este
servicio basado en la nube de Microsoft proporciona un procesamiento
avanzado del lenguaje natural (PLN) sobre texto sin formato. Una vez
que haya completado el módulo, habrá creado una solución con Azure
Functions que permite clasificar los comentarios de texto según las
opiniones.
Objetivos de aprendizaje
En este módulo, aprenderá a:
• Más información acerca de Text Analytics API
• Registrarse para conseguir una clave de Text Analytics API
• Diseñar y compilar un servicio con Azure Functions que use Text
Analytics API para clasificar comentarios de texto
• Leer y escribir mensajes de Azure Queue Storage en una
aplicación de función con la ayuda de enlaces
5
ANÁLISIS DE OPINIONES
Y TEXT ANALYTICS API
Todos queremos saber la opinión de los clientes sobre la marca, el
producto y el mensaje. ¿Cómo cambia su opinión con el tiempo? La
búsqueda de opiniones en lo que escriben puede darnos algunas
pistas. El análisis de opiniones ayuda a responder esta pregunta: ¿Qué
quieren realmente nuestros clientes? Se usa para analizar los tweets y
cualquier otro contenido de las redes sociales, los comentarios de los
clientes y los correos electrónicos.
Un enfoque habitual del análisis de opiniones consiste en entrenar
modelos de Machine Learning que detecten las opiniones. Sin
embargo, este proceso es complejo. Implica tener datos de
entrenamiento de buena calidad que estén etiquetados, crear
características a partir de esos datos, entrenar un clasificador y usarlo
para predecir la opinión de nuevos fragmentos de texto. No todas las
compañías tienen el dinero y los conocimientos para invertir en la
compilación de soluciones de inteligencia artificial desde cero.
Afortunadamente, Microsoft y otras empresas sí que pueden, y lo
hacen, e invierten en las investigaciones más avanzadas en estas áreas.
Como desarrolladores, podemos beneficiarnos de sus descubrimientos
a través de las API, SDK y plataformas que ellos crean. Microsoft
Cognitive Services es una de esas ofertas.
Azure Cognitive Services
Microsoft Cognitive Services consta de un conjunto de API, SDK y
servicios. El objetivo es ayudar a los desarrolladores a hacer que sus
aplicaciones sean más inteligentes, atractivas y detectables.
Azure Cognitive Services ofrece algoritmos inteligentes de visión, voz,
idioma, conocimiento y búsqueda. Para ver las ofertas, eche un vistazo
a Directorio de Cognitive Services. Puede probar cada servicio de forma
gratuita. Si decide integrar uno o varios de estos servicios en las
aplicaciones, suscríbase a una suscripción de pago. El servicio que
7 vamos a usar a lo largo de este módulo es Text Analytics API, así que
vamos a ver más información al respecto.
Text Analytics API
Text Analytics API es un servicio de Cognitive Services diseñado para
ayudarle a extraer información a partir de texto. A través del servicio
puede identificar el idioma, detectar opiniones, extraer frases clave y
detectar entidades conocidas del texto.
En esta lección, vamos a obtener más información sobre el elemento
de análisis de opinión de esta API. En un segundo plano, este servicio
utiliza un algoritmo de clasificación de aprendizaje automático para
generar una puntuación de opinión entre 0 y 1. Las puntuaciones
cercanas a 1 indican una opinión positiva y las puntuaciones cercanas
a 0 indican una opinión negativa. Una puntuación cercana a 0,5 indica
que no hay ninguna opinión o que se trata de una declaración neutra.
No tiene que preocuparse por los detalles de implementación del
algoritmo. Puede centrarse en realizar llamadas al servicio desde la
aplicación. Como veremos en breve, puede estructurar una
solicitud POST, enviarla al punto de conexión /sentiment y recibir una
respuesta JSON que le indique una puntuación de opinión.
Primero vamos a experimentar con Text Analytics API mediante una
consola de pruebas de API en línea. Una vez que se sienta cómodo con
la API, vamos a usarla en un escenario para detectar opiniones en
mensajes a fin de clasificarlos para su posterior procesamiento.
8
EJERCICIO: LLAMADA A
TEXT ANALYTICS API
DESDE LA CONSOLA DE
PRUEBAS EN LÍNEA
Para ver a Text Analytics API en funcionamiento, se realizarán algunas
llamadas mediante la herramienta de consola de pruebas de API
integrada que se encuentra en la documentación de referencia en línea.
Antes de hacerlo, necesitaremos una clave de acceso para realizar esas
llamadas.
9 Creación de una clave de acceso
Cada llamada a Text Analytics API requiere una clave de suscripción. A
menudo se la denomina clave de acceso y se usa para validar que tiene
acceso para realizar la llamada. Se usará Azure Portal para obtener una
clave.
1. Inicie sesión en Azure Portal con la misma cuenta que ha usado
para activar el espacio aislado.
2. En el menú de Azure Portal o en la página Inicio,
seleccione Crear un recurso.
3. En el cuadro de búsqueda Buscar en Marketplace, escriba text
analytics y presione la tecla Entrar o Retorno.
4. Seleccione Text Analytics en los resultados de la búsqueda y,
después, seleccione el botón Crear en la parte inferior derecha
de la pantalla.
5. En la página Crear que se abre, escriba los siguientes valores en
cada campo.
TABLA 1
Propiedad Valor Descripción
Nombre Elija un nombre único El nombre de la cuenta de Cognitive
Services. Es recomendable que use un
nombre descriptivo. Los caracteres
válidos son a-z, 0-9 y -.
10
Suscripción Concierge Subscription La suscripción en la que se crea esta
cuenta de Cognitive Services API
con Text Analytics API.
Ubicación Elija una región en la lista Seleccione una ubicación en la lista
desplegable desplegable.
Plan de F0 gratis El costo de la cuenta de Cognitive
tarifa Services depende del uso real y de las
opciones que elija. Se recomienda
seleccionar el nivel gratis para
nuestros fines.
TABLA 1
Propiedad Valor Descripción
Grupo de Haga clic en Usar Nombre del nuevo grupo de recursos
recursos existente y elija [nombre en el que se va a crear la cuenta de
del grupo de recursos del Text Analytics API de Cognitive
espacio aislado]. Services.
6. Sugerencia
7. Recuerde la ubicación que ha seleccionado al crear la cuenta de
Cognitive Services Text Analytics. La usará para realizar
llamadas de API en breve.
11 8. Haga clic en Crear en la parte inferior de la página para iniciar
el proceso de creación de la cuenta. Esté atento a una
notificación de que la implementación está en curso. A
continuación, recibirá una notificación que le avisa de que la
cuenta se ha implementado correctamente en el grupo de
recursos.
Obtención de la clave de acceso
Ahora que tenemos nuestra cuenta de Cognitive Services, vamos a
buscar la clave de acceso para que podamos iniciar una llamada a la
API.
1. Haga clic en el botón Ir al recurso de la notificación
de implementación correcta. Esta acción abre el inicio rápido de
la cuenta.
2. Seleccione el elemento de menú Claves del menú de la
izquierda o en la sección Obtener las claves del inicio rápido.
Esta acción abre la página Administrar claves.
3. Copie una de las claves con el botón Copiar.
12
Importante
Mantenga siempre las claves de acceso a salvo y no las comparta
nunca.
4. Almacene esta clave durante el resto de este módulo. La vamos
a usar en breve para realizar llamadas API desde la consola de
pruebas y durante el resto del módulo.
Llamada a la API desde la consola de pruebas
Ahora que tenemos nuestra clave, podemos ir a la consola de pruebas
y elegir la API para una prueba.
1. Vaya a la siguiente URL en su explorador favorito.
Reemplace [location] por la ubicación que ha seleccionado
13 antes en esta unidad al crear la cuenta de Cognitive Services
Text Analytics. Por ejemplo, si ha creado la cuenta en eastus,
debería reemplazar [location] por eastus en la dirección URL.
bashCopiar
9. [Link]
xtAnalytics.V2.0
La página de aterrizaje muestra un menú a la izquierda y contenido a
la derecha. El menú enumera los métodos POST a los que puede llamar
en Text Analytics API. Estos puntos de conexión son Detectar
idioma, Entidades, Frases clave y Opinión. Para llamar a alguna de
estas operaciones, necesitamos hacer algunas cosas.
Seleccione el método al que queremos llamar.
Agregue la clave de acceso que guardamos anteriormente en
esta lección para cada llamada.
2. En el menú de la izquierda, seleccione Opinión. Esta selección
abre la documentación correspondiente a la derecha. Como se
muestra en la documentación, se realizará una llamada REST
con el formato siguiente.
[Link]
ment
[location] se reemplaza por la ubicación que ha seleccionado al crear
la cuenta Text Analytics.
Pasaremos nuestra clave de suscripción, o clave de acceso, en el
encabezado ocp-Apim-Subscription-Key.
14
Realización de algunas llamadas API
1. En la sección de la consola de pruebas de Open API de esta
página, seleccione el botón correspondiente a la ubicación o
región en que se creó la cuenta de Cognitive Services. Al
seleccionar este botón, se abre la consola de API activa a
interactiva.
2. Pegue la clave de acceso que ha guardado en el campo con la
etiqueta Ocp-Apim-Subscription-Key. Observe que la clave se
ha escrito automáticamente en la ventana de solicitud HTTP
como un valor de encabezado.
3. Desplácese a la parte inferior de la página y haga clic en Enviar.
Vamos a examinar las secciones de esta pantalla con más detalle.
En la sección Encabezados de la interfaz de usuario, establecemos la
clave de acceso, o de suscripción, en el encabezado de nuestra
solicitud.
A continuación, tenemos la sección de cuerpo de la solicitud, que
contiene una matriz de documentos. Cada documento de la matriz
tiene tres propiedades. Las propiedades
son "language", "id" y "text". "id" es un número en este ejemplo, pero
puede ser cualquier cosa que desee, siempre que sea única en la matriz
de documentos. En este ejemplo también vamos a pasar documentos
escritos en tres idiomas diferentes. Se admiten más de 15 idiomas en
15
la característica Opinión de Text Analytics API. Para más información,
consulte Idiomas admitidos en Text Analytics API. El tamaño máximo
de un solo documento es de 5000 caracteres y una solicitud puede
contener hasta 1000 documentos.
La solicitud completa, incluidos los encabezados y la dirección URL de
solicitud se muestran en la sección siguiente. En este ejemplo puede
ver que las solicitudes se enrutan a una dirección URL que empieza
por westus. La dirección URL varía según la ubicación que haya
seleccionado al crear la cuenta de Text Analytics.
16
Después, tenemos información acerca de la respuesta. En el ejemplo,
vemos que la solicitud fue correcta y que se devolvió el código 200.
Por último, vemos la respuesta a nuestra solicitud. La respuesta
contiene las conclusiones que Text Analytics API tenía sobre nuestros
documentos. Se nos devuelve una matriz de documentos sin el texto
original. Obtenemos un "id" y un "score" para cada documento. La API
devuelve una puntuación numérica comprendida entre 0 y 1. Las
puntuaciones cercanas a 1 indican una opinión positiva mientras que
las puntuaciones cercanas a 0 indican una opinión negativa. Una
puntuación de 0,5 indica la ausencia de opinión, una instrucción neutra.
En este ejemplo, tenemos dos documentos bastante positivos y uno
negativo.
17
Enhorabuena. Ha realizado su primera llamada a Text Analytics API sin
escribir una sola línea de código. No dude en permanecer en la consola
y probar a realizar más llamadas. Estas son algunas sugerencias:
Cambie los documentos de la sección número 2 y vea lo que
devuelve la API.
Pruebe los otros métodos, Detectar
idioma, Entidades y Frases clave, con la misma clave de
suscripción.
Intente realizar una llamada desde otra región con su
suscripción y observe lo que sucede.
La consola de pruebas de API es una excelente manera de explorar las
funcionalidades de esta API. Ahora que ha explorado por sí mismo,
pasemos a poner esta inteligencia en un escenario real.
DISEÑO DE UN
CLASIFICADOR DE
COMENTARIOS
Vamos a aplicar los conocimientos de Text Analytics a una solución
práctica. Nuestra solución se centrará en el análisis de sentimiento de
documentos de texto. Vamos a describir el problema que queremos
abordar para establecer el contexto.
Administración más eficaz de los comentarios de clientes
En los medios sociales se habla activamente del producto de su
18 empresa. El alias de correo electrónico de comentarios también recibe
comentarios de los clientes que desean compartir su opinión sobre su
producto.
Como sucede con cualquier startup, vive con el mantra de escuchar a
los clientes. Sin embargo, el éxito de su producto ha hecho que
mantener esta promesa sea más fácil de decir que de hacer. Es un buen
problema, pero un problema al fin y al cabo.
El equipo ya no puede con el volumen de comentarios. Necesitan
ayuda para clasificar los comentarios para poder administrar los
problemas de la forma más eficaz posible. Como desarrollador jefe de
la organización, se le ha pedido que cree una solución.
Veamos algunos requisitos generales:
TABLA 1
Requisito Detalles
Clasificar los comentarios para No todos los comentarios son iguales. Alguno
poder reaccionar a ellos. mordaces de clientes frustrados. En otros ca
Como mínimo, tener una indicación de la opinió
clasificarlos.
La solución debe poder ampliarse Somos una startup. Los costos fijos son difíciles d
o reducirse verticalmente para exacto del tráfico de comentarios. Necesitaremo
satisfacer la demanda. actividad, pero con un costo mínim
19 En este caso, un buen candidato es una arquitec
consumo.
Genere un producto viable Hoy queremos clasificar los comentarios en categ
mínimo (MVP), pero haga que la limitados a los comentarios que importan. Si algú
solución sea adaptable. enseguida y empezar a charlar con él. En el futur
cosas. Una idea para una nueva característica es e
detectar puntos problemáticos antes de que llegu
es automatizar las respuestas a los clientes que s
con nosotros, quieren saber
En este escenario, una buen elección es una solu
Por ejemplo, podríamos usar colas como una form
escribe el resultado en una cola para que la siguie
TABLA 1
Requisito Detalles
Entrega rápida. Todos hemos oído esto antes. Recuerde que e
rápidamente en nuestro escenario. Para lograr ve
código.
Vamos a aprovechar las ventajas de Text Analytic
detectar opiniones. Con Azure Functions y un en
código que hay que escribir. Una solución sin
preocuparse por la administración del servidor.
La solución que proponemos para cada requisito de la tabla anterior
20 nos da una idea de cómo asignar los requisitos a las soluciones. Ahora
veamos el aspecto que tendría una solución basada en Azure.
Una solución basada en Azure Functions, Azure Queue Storage y
Text Analytics API
El diagrama siguiente es una propuesta de diseño de una solución. Usa
tres componentes principales de Azure: Azure Queue Storage, Azure
Functions y Cognitive Services de Azure.
La idea es que los documentos de texto que contienen comentarios de
los usuarios se coloquen en una cola que hemos llamado new-
feedback-q en el diagrama anterior. La llegada de un mensaje que
contenga el documento de texto a la cola desencadenará o iniciará la
ejecución de funciones. La función lee los mensajes que contienen
documentos nuevos en la cola de entrada y los envía para su análisis a
Text Analytics API. Según los resultados que la API devuelva, se coloca
en una cola de salida un nuevo mensaje que contiene el documento
para su posterior procesamiento.
El resultado que obtenemos para cada documento es una puntuación
de la opinión. Las colas de salida se usan para almacenar los
comentarios clasificados como positivos, neutros y negativos.
¡Esperamos que la cola de comentarios negativos esté siempre vacía!
21 Una vez clasificado cada comentario entrante en una cola de salida en
función de la opinión, vamos a agregar lógica para actuar sobre los
mensajes de cada cola.
Echemos un vistazo al diagrama de flujo siguiente para ver lo que debe
hacer la lógica de la función.
Nuestra lógica es como un enrutador. Toma la entrada de texto y lo
enruta a una cola de salida según la puntuación de la opinión del texto.
22
Tenemos una dependencia de Text Analytics API. Aunque la lógica
parece trivial, esta función eliminará la necesidad de tener personas en
el equipo para analizar manualmente los comentarios.
Pasos para implementar nuestra solución
Para implementar la solución descrita en esta unidad, se deberán
completar los pasos siguientes.
1. Crear una aplicación de función para hospedar nuestra
solución.
2. Buscar las opiniones en los mensajes de comentarios entrantes
con Text Analytics API. Usaremos la clave de acceso del ejercicio
anterior y escribiremos código para enviar las solicitudes.
3. Publique los comentarios en las colas de procesamiento en
función de la opinión.
Vamos a pasar a crear la aplicación de función.
23
EJERCICIO: CREACIÓN DE
UNA APLICACIÓN DE
FUNCIÓN EN EL PORTAL
PARA HOSPEDAR LA
LÓGICA DE NEGOCIOS
Una aplicación de función proporciona un contexto para administrar
y ejecutar las funciones. Vamos a crear una aplicación de función y, a
continuación, agregarle una función.
24 Creación de una aplicación de función para hospedar nuestra
función
1. Inicie sesión en Azure Portal con la misma cuenta con la que
ha activado el espacio aislado.
2. En el menú de Azure Portal o la página Inicio, seleccione Crear
un recurso y luego Proceso > Aplicación de funciones.
3. Escriba la configuración de la aplicación de funciones como se
especifica en la tabla siguiente.
TABLA 1
Configuración Valor Descripción
Nombre de la Nombre único Nombre que identifica la nueva ap
aplicación globalmente z, 0-9 y -.
Suscripción Suscripción de Suscripción en la que se creará est
Concierge
Grupo de recursos [nombre del grupo Nombre del grupo de recursos e
de recursos del
espacio aislado] Asegúrese de seleccionar Usar exi
anterior. De esta forma, todos los
25 conservan juntos.
SO Windows Sistema operativo que hospeda la
Plan de hospedaje Plan de consumo Plan de hospedaje que define cóm
el Plan de consumo predetermina
los requisitos de las funciones. E
tiempo durante el cual se ejecutan
Ubicación Seleccione la misma Elija una región cerca de usted o c
ubicación que usó funciones.
anteriormente.
Seleccione la misma región que ha
el último ejercicio.
TABLA 1
Configuración Valor Descripción
Pila en tiempo de [Link] El código de ejemplo de este mód
ejecución
Almacenamiento Nombre único global Nombre de la nueva cuenta de alm
Los nombres de las cuentas de alm
y solo pueden incluir números y le
el campo con un nombre único de
embargo, no dude en usar otro no
4. Haga clic en Crear para aprovisionar e implementar la
aplicación de función.
26
5. Haga clic en el icono de notificación de la esquina superior
derecha del portal y observe el mensaje Implementación en
curso.
6. La implementación puede tardar un tiempo. Por tanto,
permanezca en el Centro de notificaciones y esté atento para
ver un mensaje Implementación correcta.
7. Una vez implementada la aplicación de función, vaya a Todos
los recursos en el portal. Se muestra la aplicación de función
con el tipo App Service y el nombre que le asignó. Para abrir la
aplicación de función, selecciónela en la lista.
Enhorabuena. Ha creado e implementado la aplicación de función.
Sugerencia
¿Tiene dificultades para encontrar las aplicaciones de función en el
portal? Intente agregar aplicaciones de función a sus favoritos en
Azure Portal.
Creación de una función que ejecute nuestra lógica
Ahora que tenemos una aplicación de función, es el momento de crear
una función. Se activa una función a través de un desencadenador. En
este módulo, usaremos un desencadenador de colas. El runtime sondea
una cola e inicia esta función para procesar un mensaje nuevo.
1. Seleccione el botón Agregar (+) situado junto a Funciones. Esta
acción inicia el proceso de creación de funciones.
27 2. En la página Azure Functions for JavaScript - getting
started (Azure Functions para JavaScript: introducción),
seleccione En el portal y luego Continuar.
3. En el paso Crear una función, seleccione Más plantillas... y
luego Finish and view templates (Plantillas Finalizar y ver).
4. En la lista de plantillas disponibles para esta aplicación de
función, seleccione Desencadenador de Azure Queue
Storage.
5. Si ve un mensaje que indica Extensiones no instaladas,
seleccione Instalar. La instalación de dependencias puede
llevar un par de minutos. Espere hasta que termine la
instalación antes de continuar.
6. En el cuadro de diálogo Nueva función que aparece,
especifique los siguientes valores.
TABLA 2
Propiedad Valor
Nombre discover-sen
Nombre de cola new-feedba
Conexión de cuenta de Storage AzureWebJo
7. Haga clic en Crear para iniciar el proceso de creación de la
función.
28 8. Se crea una función en el lenguaje elegido mediante la plantilla
de funciones del desencadenador de colas. Aunque en este
módulo vamos a implementar la función en JavaScript, puede
crear una función en cualquier lenguaje compatible.
Una vez completado el proceso de creación, el editor de código se abre
en el portal y carga la página [Link]. Este archivo es el archivo de
código en el que escribimos nuestra lógica de la función.
Pruébelo
Vamos a probar lo que tenemos hasta ahora. Aún no hemos escrito
ningún código, por lo que esta prueba es para asegurarnos de que lo
que hemos configurado hasta ahora, funciona.
1. Haga clic en Ejecutar en la parte superior del editor de código.
2. Observe la pestaña Registros que se abre en la parte inferior
de la pantalla. Si todo funciona según lo previsto, verá un
mensaje similar al
siguiente.
El botón Ejecutar inició nuestra función y pasó los datos de cola de
ejemplo, el texto predeterminado de la ventana de solicitud Prueba de
nuestra función.
Sugerencia
Si se agota el tiempo de espera de la función o no devuelve un valor
29 correctamente, pruebe a reiniciar la aplicación de función. Seleccione
la aplicación de función en el menú de la izquierda y, a continuación,
seleccione Reiniciar en el panel Introducción. Espere a que la
aplicación de función se reinicie y, a continuación, pruebe a ejecutar de
nuevo la función.
Buen trabajo. Ha agregado correctamente una función desencadenada
por colas a su aplicación de función y la ha probado para asegurarse
de que funciona según lo previsto. Vamos a agregar más funcionalidad
a la función en el ejercicio siguiente.
Echemos un vistazo rápido al otro archivo de la función, el archivo de
configuración [Link]. Los datos de configuración de este archivo
se muestran en el siguiente listado JSON.
JSONCopiar
{
"bindings": [
"name": "myQueueItem",
"type": "queueTrigger",
"direction": "in",
"queueName": "new-feedback-q",
"connection": "AzureWebJobsDashboard"
30 ],
"disabled": false
Como puede ver, esta función tiene un enlace de desencadenador que
se llama myQueueItem del tipo queueTrigger. Si llega un mensaje
nuevo a la cola que hemos denominado new-feedback-q, se llama a
la función. Hacemos referencia al nuevo mensaje mediante el
parámetro de enlace myQueueItem. Los enlaces se ocupan realmente
de parte del trabajo pesado por nosotros.
En el paso siguiente, vamos a agregar código para llamar al servicio
Text Analytics API.
Sugerencia
Puede ver [Link] y [Link] expandiendo el menú Ver
archivos en la parte derecha del panel de función de Azure Portal.
En este ejercicio se explicó como poner en funcionamiento nuestra
infraestructura de Azure Functions. Tenemos una función en marcha
hospedada en una aplicación de función que se ejecuta cuando llega
un mensaje nuevo a la cola. La hemos llamado new-feedback-q. Lo
divertido empieza en el siguiente ejercicio, en el que vamos a agregar
código para llamar a Azure Cognitive Services a fin de realizar análisis
de opiniones.
31
EJERCICIO: LLAMADA A
TEXT ANALYTICS API
DESDE UNA APLICACIÓN
Vamos a actualizar la implementación de la función para llamar al
servicio Text Analytics API y obtener una puntuación de opinión.
1. Seleccione la función discover-sentiment-function, en
nuestra aplicación de función en el portal.
2. Expanda el menú Ver archivos a la derecha de la pantalla.
3. En la pestaña Ver archivos, seleccione [Link] para abrir el
32
archivo de código en el editor.
4. Reemplace todo el contenido de [Link] por el siguiente
código JavaScript y haga clic en Guardar.
JavaScriptCopiar
[Link] = function (context, myQueueItem) {
[Link]('Processing queue message', myQueueItem);
let https = require ('https');
// Replace the accessKey string value with your valid access key.
let accessKey = '<YOUR ACCESS KEY HERE>';
// Replace [region], including square brackets, in the uri variable
below.
// You must use the same region in your REST API call as you used
to obtain your access keys.
// For example, if you obtained your access keys from the
northeurope region, replace
// "westus" in the URI below with "northeurope".
let uri = '[region].[Link]';
33 let path = '/text/analytics/v2.0/sentiment';
let response_handler = function (response) {
let body = '';
[Link] ('data', function (chunk) {
body += chunk;
});
[Link] ('end', function () {
let body_ = [Link] (body);
let body__ = [Link] (body_, null, ' ');
[Link] (body__);
[Link]();
return;
});
[Link] ('error', function (e) {
34 [Link] ('Error: ' + [Link]);
[Link]();
return;
});
};
let get_sentiments = function (documents) {
let body = [Link] (documents);
let request_params = {
method : 'POST',
hostname : uri,
path : path,
headers : {
'Ocp-Apim-Subscription-Key' : accessKey,
};
35 let req = [Link] (request_params, response_handler);
[Link] (body);
[Link] ();
// Create a documents array with one entry.
let documents = { 'documents': [
{
'id': '1',
'language': 'en',
'text': myQueueItem
},
]};
get_sentiments (documents);
};
36 5. En el código que pegó, actualice el valor de accessKey con la
clave de acceso de Text Analytics API que guardó anteriormente
en este módulo.
6. Actualice el valor de uri con la región desde la que ha obtenido
la clave de acceso.
Vamos a ver qué sucede en este código:
Cada llamada al servicio Text Analytics necesita la clave de
acceso, que se agrega como el encabezado Ocp-Apim-
Subscription-Key.
Todas las llamadas se realizan a un punto de conexión
específico de la región, definido por uri en nuestro código.
En la parte inferior del archivo de código, se ha definido una
matriz documents. Esta matriz es la carga que enviamos al
servicio Text Analytics API.
La matriz documents tiene una sola entrada en este caso, que
es el mensaje de cola que ha desencadenado la función.
Aunque solo tenemos un documento en la matriz, esto no
significa que nuestra solución solo pueda controlar un mensaje
a la vez. El entorno en tiempo de ejecución de Azure Functions
recupera y procesa mensajes en lotes, llamando a varias
instancias de nuestra función en paralelo. Actualmente, el
tamaño de lote predeterminado es 16 y el tamaño máximo es
32.
id debe ser único dentro de la matriz. La
propiedad language especifica el idioma del texto del
37
documento.
A continuación, llamamos al método get_sentiments, que usa
el módulo HTTPS para realizar la llamada a Text Analytics API.
Observe que la clave de suscripción, o de acceso, se pasa en el
encabezado de cada solicitud.
Cuando el servicio vuelve, se llama a response_handler y se
registra la respuesta en la consola mediante [Link]
Pruébelo
Antes de adentrarnos en la ordenación en colas, vamos a realizar una
serie de pruebas con lo que ya tenemos.
1. Con la función discover-sentiment-function seleccionada en
el área Function App del portal, haga clic en el elemento de
menú Probar, en el extremo derecho.
2. Haga clic en el elemento de menú Probar y compruebe que
tiene abierto el panel de prueba.
3. Agregue una cadena de texto en el cuerpo de la solicitud tal
como se indica en la captura de pantalla.
38
4. Haga clic en Ejecutar en la parte inferior del panel de prueba.
5. Asegúrese de que la pestaña Registros está expandida en la
parte inferior izquierda de la pantalla principal, en el editor de
código.
6. Compruebe que la pestaña Registros muestra la información
de registro que ha completado la función. La ventana también
mostrará la respuesta de la llamada a Text Analytics API.
Enhorabuena. discover-sentiment-function funciona según lo
previsto. En este ejemplo, se pasa un mensaje muy optimista y se recibe
una puntuación superior a 0,98. Pruebe a cambiar el mensaje a algo
menos optimista, vuelva a ejecutar la prueba y observe la respuesta.
39 Agregar un mensaje a la cola
Vamos a repetir la prueba. Esta vez, en lugar de usar la ventana de
prueba del portal, vamos a colocar realmente un mensaje en la cola de
entrada y ver qué sucede.
1. Vaya al grupo de recursos de la sección Grupos de
recursos del portal.
2. Seleccione [nombre del grupo de recursos del espacio aislado],
el grupo de recursos usado en esta lección.
3. En el panel Grupo de recursos que aparece, busque la entrada
Cuenta de almacenamiento y selecciónela.
4. Seleccione Explorador de Storage (versión preliminar) en el
menú izquierdo de la ventana principal de Cuenta de
almacenamiento. Esta acción abre el Explorador de Azure
Storage dentro del portal.
40
Como puede ver, todavía no tenemos ninguna cola en esta cuenta de
almacenamiento, así que vamos a agregar una.
5. Si recuerda lo que se ha visto anteriormente en esta lección, la
cola asociada al desencadenador se ha denominado new-
feedback-q. Haga clic con el botón derecho en el
elemento Colas del Explorador de Storage y seleccione Crear
cola.
6. En el cuadro de diálogo que se abre, escriba new-feedback-
q y haga clic en Aceptar. Ahora ya tenemos nuestra cola de
entrada.
7. Seleccione la nueva cola en el menú izquierdo para ver el
explorador de datos de esta cola. Como era de esperar, la cola
está vacía. Vamos a agregar un mensaje a la cola mediante el
comando Agregar mensaje de la parte superior de la ventana.
8. En el cuadro de diálogo Agregar mensaje, escriba "Este
mensaje procede de la cola de entrada new-feedback-q" en el
campo Texto del mensaje y haga clic en Aceptar en la parte
41 inferior del cuadro de diálogo.
9. Observe el mensaje, parecido al mensaje de la siguiente captura
de pantalla, en el explorador de
datos.
10. Después de unos segundos, haga clic en Actualizar para
actualizar la vista de la cola. Observe que la cola vuelve a
estar vacía. Algo debe haber leído el mensaje de la cola.
11. Vuelva a nuestra función en el portal y abra la
pestaña Supervisar. Seleccione el mensaje más reciente de la
lista. Observe que la función ha procesado el mensaje de cola
que se había publicado en new-feedback-q. Los resultados
pueden retrasarse en este registro, por lo que es posible que
deba esperar unos minutos y presionar Actualizar.
En esta prueba, hicimos un recorrido de ida y vuelta completo para
publicar algo en nuestra cola y, posteriormente, ver cómo la función lo
procesa.
42
Estamos progresando con nuestra solución. Nuestra función ahora está
haciendo algo útil. Está recibiendo texto de la cola de entrada y, a
continuación, llama al servicio Text Analytics API para obtener una
puntuación de opinión. También hemos aprendido a probar nuestra
función mediante Azure Portal y el Explorador de Storage. En el
ejercicio siguiente, se verá lo fácil que es escribir en colas mediante
enlaces de salida.
EJERCICIO: ORDENACIÓN
DE LOS MENSAJES EN
COLAS DIFERENTES EN
FUNCIÓN DE LA
PUNTUACIÓN DE
OPINIONES
Veamos de nuevo la arquitectura de la solución.
43
Como puede ver en el lado derecho de este diagrama, queremos enviar
mensajes a tres colas. Para ello, vamos a definir esas conexiones como
enlaces de salida en la función. Se pueden crear esos enlaces mediante
la interfaz de usuario de Enlace de salida. Pero, para ahorrar tiempo,
vamos a editar directamente el archivo de configuración.
Adición de enlaces de salida a [Link]
1. Seleccione la función discover-sentiment-function en el
portal de Function App.
2. Expanda el menú Ver archivos a la derecha de la pantalla.
3. En la pestaña Ver archivos, seleccione [Link] para abrir
el archivo de configuración en el editor.
4. Reemplace todo el contenido de [Link] por el siguiente
JSON y haga clic en Guardar.
JSONCopiar
"bindings": [
"name": "myQueueItem",
44
"type": "queueTrigger",
"direction": "in",
"queueName": "new-feedback-q",
"connection": "AzureWebJobsStorage"
},
"type": "queue",
"name": "positiveFeedbackQueueItem",
"queueName": "positive-feedback-q",
"connection": "AzureWebJobsStorage",
"direction": "out"
},
"type": "queue",
"name": "neutralFeedbackQueueItem",
"queueName": "neutral-feedback-q",
"connection": "AzureWebJobsStorage",
"direction": "out"
45 },
"type": "queue",
"name": "negativeFeedbackQueueItem",
"queueName": "negative-feedback-q",
"connection": "AzureWebJobsStorage",
"direction": "out"
],
"disabled": false
Hemos agregado tres nuevos enlaces a la configuración.
Cada nuevo enlace es del tipo queue. Estos enlaces son para las
tres colas que rellenaremos con nuestros mensajes de
comentarios una vez que conozcamos la opinión de estos.
Cada enlace tiene una dirección definida como out, ya que
vamos a publicar los mensajes en estas colas.
Cada enlace usa la misma conexión a nuestra cuenta de
almacenamiento.
Cada enlace tiene un único queueName y name.
Publicar un mensaje en una cola es tan sencillo como decir, por
46
ejemplo, [Link] =
"<message>".
Actualización de la implementación de la función para ordenar los
comentarios en colas según la puntuación de opinión
El objetivo de nuestro clasificador de comentarios es ordenar los
comentarios en tres cubos: positivos, negativos y neutrales. Hasta el
momento tenemos la cola de entrada, el código para llamar a Text
Analytics API y hemos definido las colas de salida. En esta sección,
vamos a agregar la lógica para trasladar los mensajes a esas colas
según las opiniones.
1. Vaya a nuestra función, discover-sentiment-function y vuelva
a abrir [Link] en el editor de código.
2. Reemplace la implementación por el código siguiente.
JavaScriptCopiar
[Link] = function (context, myQueueItem) {
[Link]('Processing queue message', myQueueItem);
let https = require ('https');
// Replace the accessKey string value with your valid access key.
let accessKey = '<YOUR ACCESS CODE HERE>';
47
// Replace [region], including square brackets, in the uri variable
below.
// You must use the same region in your REST API call as you used
to obtain your access keys.
// For example, if you obtained your access keys from the
northeurope region, replace
// "westus" in the URI below with "northeurope".
let uri = '[region].[Link]';
let path = '/text/analytics/v2.0/sentiment';
let response_handler = function (response) {
let body = '';
[Link] ('data', function (chunk) {
body += chunk;
});
[Link] ('end', function () {
48 let body_ = [Link] (body);
// Even though we send and receive a documents array from
the Text Analytics API,
// we only ever pass one document in the array.
if (body_.documents && body_.[Link] == 1) {
let score = body_.documents[0].score;
// Create a message that contains the original message we
received and
// the sentiment score returned by Text Analytics API.
let messageWithScore = [Link]({
originalMessage: myQueueItem,
score: score
});
// Place message into appropriate output queue based on
sentiment score.
if (score > 0.8) {
[Link] ("Positive message arrived");
49
[Link] =
messageWithScore;
} else if (score < 0.3) {
[Link] ("Negative message arrived");
[Link] =
messageWithScore;
} else {
[Link] ("Neutral message arrived");
[Link] =
messageWithScore;
}
let body__ = [Link] (body_, null, ' ');
[Link] (body__);
[Link]();
return;
});
[Link] ('error', function (e) {
50 [Link] ('Error: ' + [Link]);
[Link]();
return;
});
};
let get_sentiments = function (documents) {
let body = [Link] (documents);
let request_params = {
method : 'POST',
hostname : uri,
path : path,
headers : {
'Ocp-Apim-Subscription-Key' : accessKey,
};
51 let req = [Link] (request_params, response_handler);
[Link] (body);
[Link] ();
// Create a documents array with one entry.
let documents = { 'documents': [
{
'id': '1',
'language': 'en',
'text': myQueueItem
},
]};
get_sentiments (documents);
};
52 Hemos agregado el código resaltado a la implementación. El código
analiza la respuesta de Text Analytics API de Cognitive Services. Según
la puntuación de la opinión, se reenvía el mensaje a una de las tres
colas de salida. El código para publicar el mensaje simplemente
establece el parámetro de enlace correcto.
Pruébelo
Para probar la implementación actualizada, vamos a volver al
Explorador de Storage.
1. Vaya al grupo de recursos de la sección Grupos de
recursos del portal.
2. Seleccione [nombre del grupo de recursos del espacio aislado],
el grupo de recursos usado en esta lección.
3. En el panel Grupo de recursos que se abre, localice la entrada
Cuenta de almacenamiento y
selecciónela.
4. Seleccione Explorador de Storage (versión preliminar) en el
menú izquierdo de la ventana principal de Cuenta de
almacenamiento. Esta acción abre el Explorador de Azure
53
Storage dentro del portal.
Tenemos una cola que aparece en la colección Colas. Esta cola es new-
feedback-q, la cola de entrada que hemos definido en la sección
anterior de prueba del módulo.
5. Seleccione new-feedback-q en el menú izquierdo para ver el
explorador de datos de esta cola. Como era de esperar, la cola
no contenía datos. Vamos a agregar un mensaje a la cola
mediante el comando Agregar mensaje de la parte superior de
la ventana.
6. En el cuadro de diálogo Agregar mensaje, escriba "Me estoy
divirtiendo con este ejercicio". en el campo Texto del
mensaje y haga clic en Aceptar en la parte inferior del cuadro
de diálogo.
7. El mensaje aparece en la ventana de datos de new-feedback-
q. Después de unos segundos, haga clic en Actualizar en la
parte superior de la vista de datos para actualizar la vista de la
cola. Observe que el mensaje desaparece después de unos
54
minutos. ¿Dónde se fue?
8. Haga clic con el botón derecho en la colección COLAS en el
menú de la izquierda. Observe que ha aparecido
una nueva cola.
La cola positive-feedback-queue se creó automáticamente cuando se
publicó un mensaje en ella por primera vez. Con los enlaces de salida
de la cola de Azure Functions, no es necesario crear manualmente la
cola de salida antes de publicar en ella. Ahora que vemos que nuestra
función ha clasificado un mensaje entrante en positive-feedback-
queue, vamos a ver dónde van los siguientes mensajes.
9. Con los mismos pasos de arriba, agregue los siguientes
mensajes a new-feedback-q.
"Me gusta el brócoli"
"Microsoft es una empresa"
10. Haga clic en Actualizar hasta que new-feedback-q esté
nuevamente vacío. Este proceso podría tardar unos minutos y
se requieren varias actualizaciones.
11. Haga clic con el botón derecho en la colección COLAS y
observe que aparecen dos colas más. Las colas se
denominan neutral-feedback-queue y negative-feedback-
queue. Esto puede tardar unos segundos, por ello, continúe
actualizando la colección COLAS hasta que aparezcan nuevas
55 colas. Cuando termine, la lista de colas debería tener el
siguiente aspecto.
12. Haga clic en cada cola de la lista para ver si tiene mensajes. Si
ha agregado los valores sugeridos, debería ver uno
en positive-feedback-queue, neutral-feedback-
queue y negative-feedback-queue.
Enhorabuena. Ahora ya tenemos un clasificador de comentarios
operativo. Conforme llegan los mensajes a la cola de entrada, nuestra
función usa el servicio Text Analytics API para obtener una puntuación
de opinión. En función de esa puntuación, la función reenvía los
mensajes a la cola adecuada. Aunque parece que la función procesa
solo un elemento de la cola cada vez, el runtime de Azure Functions
realmente lee lotes de elementos de la cola y pone en marcha otras
instancias de la función para procesarlas en paralelo.
56
RESUMEN
Azure Cognitive Services es un completo conjunto de servicios
inteligentes que se puede usar para enriquecer las aplicaciones. Text
Analytics API tiene varias operaciones para convertir texto en
conclusiones significativas. Hemos usado el servicio para detectar
opiniones en los comentarios de texto de los clientes. Hemos creado
57
una solución hospedada en Azure Functions para clasificar estos
mensajes de texto en cubos distintos, o colas, para su posterior
procesamiento.
Una vez que sepa cómo llamar a una API REST, puede integrar
fácilmente estos servicios inteligentes en sus soluciones. Todos ellos
siguen un patrón similar:
• Regístrese para obtener una clave de acceso.
• Explore en la consola de pruebas de la API.
• Formule solicitudes mediante la clave de acceso y la región
adecuada.
• PUBLIQUE las solicitudes desde la solución y analice las
respuestas para sacar conclusiones.
Hemos agregado esta inteligencia a la lógica sin servidor que creó en
Azure Functions. Puede llamar fácilmente a estos servicios desde otros
tipos de aplicaciones. Hay muchas bibliotecas de cliente, tutoriales y
guías de inicio rápido para comenzar.
Sugerencias para una mejora aún mayor de la solución
Aquí le presentamos algunas ideas a tener en cuenta si desea ampliar
lo que ya hemos hecho.
• Pruebe la solución con más ejemplos de texto. Decida si los
umbrales que establecemos para clasificar las puntuaciones de
opinión en positivas, negativas y neutrales son adecuados.
• Considere la posibilidad de agregar otra función a la aplicación
de función que lea los mensajes de la cola negative-feedback-
58
queue y llame a Text Analytics API para buscar frases clave en
el texto.
• Nuestra cola de entrada contiene comentarios de texto sin
formato. En el mundo real, asociaríamos los comentarios con
algún tipo de identificador de usuario, como la dirección de
correo electrónico, el número de cuenta, etc. Mejore los
elementos de la cola de entrada para que sean documentos
JSON que contengan un campo de identificador y el texto.
Después, use ese identificador cuando trabaje con el mensaje
de texto.
• En la actualidad, nuestra aplicación está "codificada de forma
rígida" en inglés. Piense en los cambios que implementaría para
que pudiera controlar texto en todos los idiomas compatibles
mediante Text Analytics API.
• Si está familiarizado con Logic Apps, visite el vínculo para el
conector integrado para el análisis de texto en la sección
Lecturas adicionales.
Ahora que sabe cómo llamar a una de estas Cognitive Services APIs,
explore algunos de los otros servicios y piense cómo puede usarlos en
sus soluciones.
Lecturas adicionales
• Introducción a Text Analytics
• Demostración de Text Analytics
59
• Cómo detectar opiniones en Text Analytics
• Documentación de Cognitive Services
• Conector de Text Analytics para Logic Apps
Limpieza
El espacio aislado limpia los recursos automáticamente cuando haya
terminado con este módulo.
Al trabajar en una suscripción propia, se recomienda identificar al final
de un proyecto si aún necesita los recursos creados. Dejar recursos en
funcionamiento puede costarle dinero. Puede eliminar los recursos de
forma individual o eliminar el grupo de recursos para eliminar todo el
conjunto de recursos.
Enfoque por capas de la seguridad
La defensa en profundidad es una estrategia que emplea una serie de
mecanismos para ralentizar el avance de un ataque dirigido a adquirir
acceso no autorizado a la información. Cada capa proporciona
protección, de modo que, si se produce una brecha en una capa, ya
existe otra en funcionamiento para evitar una mayor exposición.
Microsoft aplica un enfoque por capas a la seguridad de los centros de
datos físicos y de los servicios de Azure. El objetivo de la defensa en
profundidad es proteger y evitar que personas no autorizadas puedan
sustraer la información para acceder a ella.
La defensa en profundidad se puede visualizar como un conjunto de
anillos concéntricos, con los datos que se deben proteger en el centro.
1 Cada anillo agrega una capa adicional de seguridad en torno a los
datos. Este enfoque elimina la dependencia de cualquier nivel de
protección único y actúa para ralentizar un ataque y para proporcionar
datos de telemetría de alertas sobre los que se puede actuar
automática o manualmente. Echemos un vistazo a cada una de las
capas.
Datos
En casi todos los casos, los atacantes intentan conseguir datos:
2 Almacenados en una base de datos
Almacenados en discos en máquinas virtuales
Almacenados en una aplicación de SaaS como Office 365
Almacenados en un almacenamiento en la nube
Es responsabilidad de aquellas personas encargadas de almacenar los
datos y controlar el acceso a estos asegurarse de que la protección sea
la adecuada. A menudo existen requisitos legales que dictan los
controles y los procesos que deben cumplirse para garantizar la
confidencialidad, la integridad y la disponibilidad de los datos.
Aplicación
Asegúrese de que las aplicaciones sean seguras y estén libres
de vulnerabilidades.
3
Almacene los secretos de aplicación confidenciales en un medio
de almacenamiento seguro.
Convierta la seguridad en un requisito de diseño en todo el
desarrollo de aplicaciones.
La integración de la seguridad en el ciclo de vida del desarrollo de
aplicaciones ayudará a reducir el número de vulnerabilidades en el
código. Animamos a todos los equipos de desarrollo a que garanticen
que sus aplicaciones son seguras de forma predeterminada y están
siguiendo los requisitos de seguridad sin concesiones.
Proceso
Proteja el acceso a las máquinas virtuales.
4 Implemente la protección del punto de conexión y mantenga
los sistemas revisados y actualizados.
El software malintencionado, los sistemas sin revisiones aplicadas y los
sistemas protegidos incorrectamente abren el entorno a los ataques. El
enfoque en esta capa es asegurarse de que sus recursos de proceso
estén seguros y de que cuenta con los controles adecuados para
minimizar los problemas de seguridad.
Redes
Limite la comunicación entre los recursos.
5 Deniegue de forma predeterminada.
Restrinja el acceso entrante de Internet y limite el saliente
cuando sea apropiado.
Implemente conectividad segura a las redes locales.
En esta capa, el enfoque está en limitar la conectividad de la red en
todos los recursos para permitir solo la necesaria. Al limitar esta
comunicación, se reduce el riesgo de desplazamiento lateral en toda la
red.
Perímetro
Use protección frente a ataques de denegación de servicio
distribuido (DDoS) para filtrar los ataques a gran escala antes
6
de que puedan causar una denegación de servicio para los
usuarios finales.
Use firewalls perimetrales para identificar y alertar sobre los
ataques malintencionados contra la red.
En el perímetro de la red, se trata de la protección frente a ataques
basados en red contra los recursos. Identificar estos ataques, eliminar
sus repercusiones y recibir alertas sobre ellos cuando suceden son
formas importantes de proteger la red.
Identidad y acceso
Controle el acceso a la infraestructura y al control de cambios.
7 Use el inicio de sesión único y la autenticación multifactor.
Audite los eventos y los cambios.
La capa de identidad y acceso consiste en garantizar que las
identidades están protegidas, que solo se otorga el acceso necesario y
que se registran los cambios.
Seguridad física
La seguridad física del edificio y el control del acceso al
hardware de computación del centro de datos son la primera
8
línea de defensa.
La intención de la seguridad física es proporcionar medidas de
seguridad físicas contra el acceso a los recursos. Estas medidas
garantizan que no se puedan omitir otras capas y se controle
apropiadamente la pérdida o el robo.
Azure le ayuda a combatir los problemas de seguridad. Pero, aun así,
la seguridad sigue siendo una responsabilidad compartida. En qué
grado recae esa disponibilidad sobre nosotros depende de qué
modelo se utilice con Azure. Vamos a usar los anillos de defensa en
profundidad como directrices para considerar qué protecciones son
adecuadas para nuestros datos y entornos.
Siguiente unidad: Siguiente unidad: Obtener sugerencias de Azure
Security Center
OBTENER SUGERENCIAS
DE AZURE SECURITY
CENTER
Un excelente lugar para comenzar a examinar la seguridad de las
soluciones basadas en Azure es Azure Security Center. Security Center
es un servicio de supervisión que proporciona protección contra
amenazas en todos los servicios, tanto en Azure como en el entorno
local. Security Center puede:
Proporcionar recomendaciones de seguridad en función de las
configuraciones, los recursos y las redes.
9
Supervisar la configuración de seguridad de las cargas de
trabajo locales y en la nube, y aplicar automáticamente la
seguridad necesaria a los nuevos servicios cuando se conectan.
Supervisar continuamente todos los servicios y realizar
evaluaciones de seguridad automáticas para identificar posibles
vulnerabilidades antes de que alguien las aproveche.
Usar aprendizaje automático para detectar y bloquear la
instalación de malware en los servicios y las máquinas virtuales.
También puede definir una lista de aplicaciones permitidas para
asegurarse de que solo se ejecuten aquellas que valide.
Analizar e identificar posibles ataques entrantes y ayudar a
investigar amenazas y otras actividades posteriores a una
brecha que pudieran haberse producido.
Proporcionar control de acceso Just-In-Time para los puertos,
reduciendo la superficie expuesta a ataques al asegurarse de
que la red solo permite el tráfico necesario.
Azure Security Center forma parte de las recomendaciones de Center
for Internet Security (CIS).
Niveles disponibles
Azure Security Center está disponible en dos
niveles:
10 1. Gratuito. Disponible como parte de la
suscripción de Azure, este nivel está limitado a
evaluaciones y recomendaciones de recursos de Azure.
2. Estándar. Este nivel ofrece un conjunto completo de servicios
relacionados con la seguridad, como supervisión continua,
detección de amenazas, control de acceso Just-In-Time para
puertos, etc.
Para acceder al conjunto completo de servicios de Azure Security
Center, tiene que actualizar a una suscripción de nivel estándar. Puede
acceder a la evaluación gratuita de 30 días desde el panel de Azure
Security Center en Azure Portal. Una vez finalizado el período de
prueba de 30 días, Azure Security Center cuesta 15 USD por nodo al
mes.
Escenarios de uso
Puede integrar Security Center en los flujos de trabajo y usarlo de
muchas maneras. Estos son dos ejemplos.
1. Use Security Center para dar respuesta a incidentes.
Muchas organizaciones aprenden a responder a incidentes de
seguridad solo después de sufrir un ataque. Para reducir los costos y
los daños, es importante tener un plan de respuesta a incidentes
implementado antes de que se produzca un ataque. Puede usar Azure
Security Center en distintas fases de una respuesta a incidentes.
11
Puede usar Security Center durante las fases de detección, evaluación
y diagnóstico. Estos son ejemplos de cómo Security Center puede ser
útil durante las tres fases iniciales de respuesta a incidentes:
Detectar. Revisión de la primera indicación de una
investigación de eventos. Por ejemplo, puede usar el
panel de Security Center para revisar la comprobación
inicial de que se ha generado una alerta de seguridad
de alta prioridad.
Evaluar. Se realiza la evaluación inicial para obtener más
información sobre la actividad sospechosa. Por ejemplo,
obtenga más información sobre la alerta de seguridad.
Diagnosticar. Se realiza una investigación técnica y se
identifican las estrategias de contención, mitigación y
solución. Por ejemplo, siga los pasos de corrección
descritos por Security Center para esa alerta de
seguridad concreta.
2. Use las recomendaciones de Security Center para mejorar la
seguridad.
Puede reducir las posibilidades de que se produzca un evento de
seguridad importante si configura una directiva de seguridad y luego
12 implementa las recomendaciones de Azure Security Center.
Las directivas de seguridad definen el conjunto de
controles recomendado para los recursos de esa
suscripción o grupo de recursos especificados. En
Security Center, se definen directivas de acuerdo con los
requisitos de seguridad de la empresa.
Security Center analiza el estado de seguridad de los
recursos de Azure. Si Security Center identifica posibles
vulnerabilidades de seguridad, crea recomendaciones
basadas en los controles establecidos en la directiva de
seguridad. Las recomendaciones le guían a lo largo del
proceso de configuración de los controles de seguridad
necesarios. Por ejemplo, si tiene cargas de trabajo que
no requieren la directiva de Cifrado de datos
transparente (TDE) de Azure SQL Database, desactive la
directiva en el nivel de suscripción y habilítela solo en
los grupos de recursos donde se requiera TDE de SQL.
Importante
Para actualizar una suscripción al nivel estándar, debe tener asignado el
rol de Propietario de la suscripción, Colaborador de suscripción o
Administrador de seguridad.
13
IDENTIDAD Y ACCESO
Los parámetros de red, los firewalls y los controles de acceso físicos
solían ser la protección principal de los datos corporativos. Pero los
parámetros de red se han vuelto cada vez más penetrables con la
expansión del uso de Bring Your Own Device (BYOD), aplicaciones
móviles y aplicaciones en la nube.
La identidad se ha convertido en el nuevo límite de seguridad principal.
Por lo tanto, la autenticación y asignación de privilegios correctas es
fundamental para mantener el control de los datos.
Su empresa, Contoso Shipping, se centra en afrontar estas cuestiones
de inmediato. La nueva solución de nube híbrida del equipo debe tener
14
en cuenta las aplicaciones móviles con acceso a datos secretos cuando
un usuario autorizado inicia sesión —, además de contar con vehículos
de transporte que envían constantemente un flujo de datos de
telemetría fundamentales para optimizar el negocio de la empresa.
Autenticación y autorización
Dos conceptos fundamentales que deben entenderse al hablar sobre
identidad y control de acceso son la autenticación y la autorización.
Sustentan todo lo demás que ocurre y se producen secuencialmente
en cualquier proceso de identidad y acceso:
La autenticación es el proceso de establecimiento de la
identidad de una persona o servicio que intenta acceder a un
recurso. Implica el acto de solicitar a un usuario credenciales
legítimas y proporciona la base para la creación de una entidad
de seguridad que se va a usar para el control de identidad y de
acceso. Establece si se es quien se dice ser.
La autorización es el proceso de establecer el nivel de acceso
que tiene una persona o un servicio autenticados. Específica a
qué datos puede acceder y qué puede hacer con ellos.
Nota
La palabra autenticación a veces se acorta a AuthN y autorización
a AuthZ.
Azure ofrece servicios para administrar la autenticación y la autorización
a través de Azure Active Directory (Azure AD).
¿Qué es Azure Active Directory?
15
Azure AD es un servicio de identidad basado en la nube. Tiene
compatibilidad integrada para sincronizarse con la instancia de Active
Directory local existente o se puede usar de forma independiente. Esto
significa que todas las aplicaciones, ya sean locales, en la nube (incluido
Office 365) o incluso móviles, pueden compartir las mismas
credenciales. Los administradores y los desarrolladores pueden
controlar el acceso a datos internos y externos y a aplicaciones
mediante reglas y directivas centralizadas configuradas en Azure AD.
Azure AD proporciona servicios como:
Autenticación. Incluye una comprobación de identidad para
acceder a aplicaciones y recursos, además proporciona
funcionalidades, como autoservicio para el restablecimiento de
contraseñas, autenticación multifactor (MFA), una lista
personalizada de contraseñas prohibidas y servicios de bloqueo
inteligente.
Inicio de sesión único (SSO). SSO permite a los usuarios
recordar solo un identificador y una contraseña para acceder a
varias aplicaciones. Una sola identidad está asociada a un
usuario, lo que simplifica el modelo de seguridad. Cuando los
usuarios cambian de roles o dejan una organización, las
modificaciones de acceso se asocian a esa identidad, lo que
reduce considerablemente el esfuerzo necesario para cambiar
o deshabilitar cuentas.
Administración de aplicaciones. Puede administrar las
aplicaciones en la nube y locales mediante Azure AD
Application Proxy, SSO, el portal Mis aplicaciones (también
16
conocido como panel Acceso) y aplicaciones SaaS.
Servicios de identidad de negocio a negocio
(B2B). Administre a los usuarios invitados y a los asociados
externos sin perder el control sobre los propios datos
corporativos.
Servicios de identidad de negocio a cliente
(B2C). Personalice y controle la forma en que los usuarios se
suscriben, inician sesión y administran sus perfiles al usar las
aplicaciones con servicios.
Administración de dispositivos. Administre la forma en que
los dispositivos en la nube o locales acceden a los datos
corporativos.
Vamos a examinar algunas de estas características más detalladamente.
Inicio de sesión único
Cuantas más identidades tenga que administrar un usuario, mayor será
el riesgo de que se produzca alguna incidencia de seguridad
relacionada con las credenciales. Más identidades significa más
contraseñas para recordar y cambiar. Las directivas sobre contraseñas
pueden variar entre aplicaciones y, a medida que aumentan los
requisitos de complejidad, cada vez resultan más difíciles de recordar
para los usuarios.
Ahora, tenga en cuenta la logística necesaria para administrar todas
estas identidades. El departamento de soporte técnico se ve sometido
a una mayor presión al tener que ocuparse de los bloqueos de cuentas
y las solicitudes de restablecimiento de contraseñas. Si un usuario deja
una organización, puede resultar complicado hacer un seguimiento de
17
todas las identidades y asegurarse de que están deshabilitadas. Si se
pasa por alto una identidad, podría permitir el acceso cuando debería
haberse eliminado.
Con el inicio de sesión único (SSO), los usuarios tienen que recordar
solo un identificador y una contraseña. El acceso de una aplicación a
otra se concede a una única identidad asociada a un usuario, lo que
simplifica el modelo de seguridad. Cuando los usuarios cambian de
roles o dejan una organización, las modificaciones de acceso están
vinculadas a una única identidad, lo que reduce considerablemente el
esfuerzo necesario para cambiar o deshabilitar cuentas. El uso del inicio
de sesión único para las cuentas facilita a los usuarios la administración
de sus identidades y aumenta las funcionalidades de seguridad del
entorno.
SSO con Azure Active Directory
Si aprovecha Azure AD para el SSO, también puede combinar varios
orígenes de datos en un gráfico de seguridad inteligente. Este gráfico
de seguridad permite proporcionar análisis de amenazas y la
protección de identidad en tiempo real a todas las cuentas en Azure
AD, incluidas las que se sincronizan desde las instalaciones en AD.
Mediante el uso de un proveedor de identidades centralizado, habrá
centralizado los controles de seguridad, los informes, las alertas y la
administración de la infraestructura de identidad.
Puesto que Contoso Shipping integra su instancia existente de Active
Directory con Azure AD, se podrá controlar el acceso de manera
uniforme en toda la organización. Si lo hace, se simplificará
enormemente la capacidad de iniciar sesión en el correo electrónico y
18
los documentos de Office 365 sin necesidad de volver a autenticar.
Autenticación multifactor
La autenticación multifactor (MFA) proporciona seguridad adicional a
las identidades al requerir dos o más elementos para una autenticación
completa. Estos elementos se dividen en tres categorías:
Algo que sabe
Algo que posee
Algo que es
Algo que sabe sería una contraseña o la respuesta a una pregunta de
seguridad. Algo que posee podría ser una aplicación móvil que recibe
una notificación o un dispositivo generador de tokens. Algo que
es suele ser algún tipo de propiedad biométrica como una huella
digital o un escaneo facial utilizados en muchos dispositivos móviles.
El uso de la autenticación multifactor aumenta la seguridad de su
identidad al limitar el impacto de la exposición de credenciales. Un
atacante que tenga la contraseña de un usuario también necesitaría su
teléfono o su cara para autenticarse de forma completa. La
autenticación con solo un factor verificado no es suficiente y el atacante
no podría usar solo esas credenciales para autenticarse. Las ventajas
que esto proporciona a la seguridad son enormes, y se debe hacer
hincapié en la importancia de habilitar MFA siempre que sea posible.
Azure AD tiene funcionalidades de MFA integradas y se integrará con
otros proveedores de MFA de terceros. Es necesario emplear la
autenticación multifactor para los usuarios que tengan el rol
19
Administrador global en Azure AD, ya que son cuentas altamente
confidenciales. El resto de cuentas también puede tener la
autenticación multifactor habilitada.
En el caso de Contoso Shipping, se decide habilitar la autenticación
multifactor cada vez que un usuario inicia sesión desde un equipo —
no conectado a ningún dominio, lo que incluye las aplicaciones móviles
y las unidades que use.
Aprovisionamiento de identidades en servicios
A menudo resulta útil que los servicios tengan identidades. Con
frecuencia, y en contra de los procedimientos recomendados, la
información de las credenciales se inserta en los archivos de
configuración. Si no hay seguridad en torno a estos archivos de
configuración, cualquier persona con acceso a los sistemas o a los
repositorios puede acceder a ellas y provocar una exposición a riesgos.
Azure AD resuelve este problema mediante dos métodos: entidades de
servicio e identidades administradas para servicios de Azure.
Entidades de servicio
Para comprender las entidades de servicio, es útil entender primero las
palabras identidad y entidad, debido a cómo se usan en el sector de
la administración de identidades.
Una identidad no es más que un elemento que se puede autenticar.
Obviamente esto incluye a los usuarios con un nombre de usuario y
contraseña, pero también aplicaciones u otros servidores, que se
pueden autenticar con certificados o claves secretas.
20
Una entidad de seguridad es una identidad que actúa con ciertos
roles o notificaciones. A menudo no es útil considerar identidad y
entidad de seguridad por separado, pero piense en el uso de "sudo"
en un símbolo del sistema de Bash en Linux o en Windows con la
opción "Ejecutar como administrador". En ambos casos, el inicio de
sesión mantiene la misma identidad que antes, pero ha cambiado el rol
con el que se está ejecutando. A menudo, los grupos también se
consideran entidades de seguridad, porque pueden tener derechos
asignados.
Una entidad de servicio es una identidad que usa un servicio o una
aplicación. Al igual que a otras identidades, se le pueden asignar roles.
Identidades administradas para servicios de Azure
La creación de entidades de servicio puede ser un proceso tedioso;
además, hay una gran cantidad de puntos delicados que pueden
dificultar el mantenimiento. Las identidades administradas para
servicios de Azure son mucho más fáciles y automatizan la mayor parte
del trabajo.
Una identidad administrada se puede crear al instante para cualquier
servicio de Azure que la admita (la lista crece constantemente). Cuando
se crea una identidad administrada para un servicio, está creando una
cuenta en el servicio Active Directory de la organización (la instancia de
Active Directory de una organización específica se conoce como
"Inquilino de Active Directory"). La infraestructura de Azure se
encargará automáticamente de autenticar el servicio y administrar la
21
cuenta. Luego, dicha cuenta se puede usar como cualquier otra cuenta
de Azure AD, lo que incluye permitir el acceso del servicio autenticado
a otros recursos de Azure.
Control de acceso basado en rol
Los roles son conjuntos de permisos, como "Solo lectura" o
"Colaborador", que se pueden conceder a los usuarios para acceder a
una instancia de servicio de Azure.
Las identidades se asignan a los roles directamente o mediante la
pertenencia a grupos. La separación de entidades de seguridad,
permisos de acceso y recursos proporciona un control más minucioso
y una administración del acceso simple. Los administradores pueden
garantizar que se conceden los permisos mínimos necesarios.
Se pueden conceder roles en el nivel de instancia del servicio individual,
pero también se propagan hacia abajo en la jerarquía de Azure
Resource Manager.
Este es un diagrama que muestra esta relación. Los ámbitos
secundarios, como las instancias de servicio, heredan los roles
asignados en un ámbito superior, como una suscripción completa.
22
Privileged Identity Management
Además de administrar el acceso a los recursos de Azure con el control
de acceso basado en rol (RBAC), un enfoque integral a la protección de
la infraestructura debería incluir la auditoría constante de los miembros
del rol a medida que la organización cambia y evoluciona. Azure AD
Privileged Identity Management (PIM) es una oferta adicional de pago
que proporciona supervisión de las asignaciones de roles, autoservicio,
activación del rol just-in-time y revisiones de acceso a los recursos de
Azure AD y Azure.
23
RESUMEN
La identidad nos permite mantener un perímetro de seguridad, incluso
fuera de nuestro control físico. Con el inicio de sesión único y la
configuración adecuada del acceso basado en rol siempre podemos
estar seguros de quién tiene la capacidad de ver y manipular nuestros
datos y la infraestructura.
24
CIFRADO
Para la mayoría de las organizaciones, los datos son el recurso más
valioso e irreemplazable. El cifrado sirve como la última y más fuerte
línea de defensa de una estrategia de seguridad por capas.
Contoso Shipping sabe que el cifrado es la única protección que tienen
sus datos una vez que salen del centro de datos y se almacenan en
dispositivos móviles que podrían ser pirateados o robados.
¿Qué es el cifrado?
El cifrado es el proceso para hacer que los datos aparezcan ilegibles e
inútiles para visores no autorizados. Para usar o leer los datos cifrados,
25 es necesario descifrarlos, lo que requiere el uso de una clave secreta.
Hay dos tipos de cifrado de nivel superior: simétrico y asimétrico.
El cifrado simétrico usa la misma clave para cifrar y descifrar los datos.
Piense por ejemplo en una aplicación de administración de contraseñas
de escritorio. Cuando escriba las contraseñas, estas se cifran con su
propia clave personal (su clave a menudo procede de la contraseña
maestra). Cuando es necesario recuperar los datos, se usa la misma
clave y se descifran los datos.
El cifrado asimétrico usa un par de claves pública y privada.
Cualquiera de las dos puede cifrar, pero una sola no puede descifrar
sus propios datos cifrados. Para descifrar se necesita la otra clave del
par. El cifrado asimétrico se utiliza, por ejemplo, para Seguridad de la
capa de transporte (TLS) (que se usa en HTTPS) y la firma de datos.
Tanto el cifrado simétrico como el asimétrico desempeñan un papel en
la protección apropiada de los datos. Normalmente el cifrado se enfoca
de dos maneras:
1. Cifrado en reposo
2. Cifrado en tránsito
Cifrado en reposo
Los datos en reposo son aquellos que se han almacenado en un medio
físico. Estos podrían estar almacenados en el disco de un servidor, en
una base de datos o en una cuenta de almacenamiento.
Independientemente del mecanismo de almacenamiento, el cifrado de
datos en reposo garantiza que los datos almacenados sean ilegibles sin
las claves y los secretos necesarios para descifrarlos. Si un atacante
26
lograra obtener una unidad de disco duro con este tipo de datos
cifrados, pero no tuviera acceso a las claves del cifrado, no podría poner
los datos en peligro con facilidad.
Los datos reales que se cifran pueden variar en su contenido, uso e
importancia dentro de la organización. Esta información financiera
podría ser vital para el negocio, propiedad intelectual que ha
desarrollado la empresa, datos personales de los clientes o empleados
que almacena la empresa e, incluso, las claves y los secretos usados
para el cifrado de los propios datos.
En este diagrama se muestra el aspecto de los datos de cliente cifrados
en una base de datos.
Cifrado en tránsito
Los datos en tránsito son los que se están moviendo activamente de
una ubicación a otra, por ejemplo, por Internet o a través de una red
privada. La transferencia segura se puede controlar mediante varias
capas diferentes. Se puede hacer mediante el cifrado de los datos en el
nivel de aplicación antes de enviarlos a través de una red. HTTPS es un
ejemplo de nivel de aplicación en el cifrado en tránsito.
27 También puede configurar un canal seguro, como una red privada
virtual (VPN), en un nivel de red, para transmitir datos entre dos
sistemas.
El cifrado de datos en tránsito protege los datos de los observadores
exteriores y proporciona un mecanismo para transmitirlos que limita el
riesgo de exposición.
En este diagrama se muestra el proceso. En este caso, los datos de los
clientes se cifran cuando se envían a través de la red. Solo el receptor
tiene la clave secreta que permite descifrar los datos a un formato útil.
28 Cifrado en Azure
Echemos un vistazo a algunas formas que proporciona Azure para cifrar
los datos en los servicios.
Almacenamiento sin formato
cifrado
Azure Storage Service Encryption para
datos en reposo ayuda a proteger los
datos con el fin de cumplir con los
compromisos de seguridad y de cumplimiento de la organización. Con
esta característica, la plataforma de almacenamiento de Azure cifra
automáticamente los datos antes de almacenarlos en Azure Managed
Disks, Azure Blob Storage, Azure Files o Azure Queue Storage y los
descifra antes de recuperarlos. El control del cifrado, el cifrado en
reposo, el descifrado y la administración de claves en Storage Service
Encryption son transparentes para las aplicaciones que usan los
servicios.
Discos de máquina virtual cifrados
Storage Service Encryption proporciona
protección de cifrado de bajo nivel para
los datos escritos en un disco físico pero,
¿cómo se protegen los discos duros
virtuales (VHD) de las máquinas virtuales? Si algunos atacantes
malintencionados han obtenido acceso a la suscripción de Azure y han
obtenido los discos duros virtuales de las máquinas virtuales, ¿cómo se
garantiza que no puedan acceder a los datos almacenados?
29
Azure Disk Encryption es una funcionalidad que ayuda a cifrar los
discos de las máquinas virtuales de IaaS Windows y Linux. Azure Disk
Encryption aprovecha la característica estándar del sector BitLocker de
Windows y la característica dm-crypt de Linux para ofrecer cifrado de
volumen para los discos de datos y del sistema operativo. La solución
se integra con Azure Key Vault para ayudar a controlar y administrar
los secretos y las claves de cifrado de discos (y puede usar las
identidades de servicio administradas para acceder a Key Vault).
En el caso de Contoso Shipping, el uso de máquinas virtuales fue uno
de sus primeros movimientos hacia la nube. El cifrado de todos los
discos duros virtuales es una manera fácil y de bajo impacto de
garantizar que se hace todo lo posible por proteger los datos de una
empresa.
Bases de datos cifradas
El cifrado de datos transparente
(TDE) ayuda a proteger Azure SQL
Database y Azure Data Warehouse
frente a la amenaza de actividad
malintencionada. También realiza cifrado y descifrado de la base de
datos en tiempo real, copias de seguridad asociadas y archivos de
registro de transacciones en reposo sin necesidad de efectuar cambios
en la aplicación. De forma predeterminada, TDE está habilitado para
todas las instancias de Azure SQL Database recién implementadas.
TDE cifra el almacenamiento de una base de datos completa mediante
el uso de una clave simétrica denominada clave de cifrado de base de
datos. De forma predeterminada, Azure proporciona una clave de
30
cifrado única por cada instancia lógica de SQL Server y controla todos
los detalles. También se admite el servicio Bring Your Own Key (BYOK)
con las claves almacenadas en Azure Key Vault (vea a continuación).
Como TDE está habilitado de forma predeterminada, tiene la seguridad
de que Contoso Shipping tiene los mecanismos de protección
adecuados para los datos almacenados en las bases de datos de la
empresa.
Cifrado de secretos
Hemos visto que todos los servicios de
cifrado usan claves para cifrar y descifrar
datos, pero, ¿cómo garantizamos la
protección de las propias claves? Las
empresas también pueden tener contraseñas, cadenas de conexión u
otros elementos de información confidenciales que tienen que
almacenar de forma segura. En Azure, se puede usar Azure Key
Vault para proteger los secretos.
Azure Key Vault es un servicio centralizado en la nube para almacenar
secretos de aplicación. Key Vault ayuda a controlar los secretos de la
aplicación al mantenerlos en una sola ubicación centralizada y al
proporcionar funcionalidades de acceso seguro, control de permisos y
registro de acceso. Resulta útil para una serie de escenarios:
Administración de secretos. Puede usar Azure Key Vault para
almacenar de forma segura y controlar de manera estricta el
acceso a tokens, contraseñas, certificados, claves de interfaz de
programación de aplicaciones (API) y otros secretos.
Administración de claves. También se puede usar Key Vault
31
como solución de administración de claves. Key Vault facilita la
creación y el control de las claves de cifrado usadas para cifrar
los datos.
Administración de certificados. Key Vault permite aprovisionar,
administrar e implementar certificados públicos y privados
de Capa de sockets seguros y de Seguridad de la capa de
transporte (SSL/TLS) para los recursos de Azure, y sus recursos
conectados internamente, con más facilidad.
Almacenamiento de secretos respaldado por módulos de
seguridad de hardware (HSM). Las claves y los secretos se
pueden proteger mediante software o mediante dispositivos
HSM validados por FIPS 140-2 nivel 2.
Las ventajas del uso de Key Vault incluyen:
Secretos de aplicación centralizados. La centralización del
almacenamiento de secretos de aplicación permite controlar su
distribución y reduce las posibilidades de que se puedan filtrar
accidentalmente.
Secretos y claves almacenados de forma segura. Azure usa
algoritmos estándar del sector, longitudes de clave y HSM, y el
acceso requiere autorización y autenticación correctas.
Supervisión del acceso y el uso. Con Key Vault, puede supervisar
y controlar el acceso a los secretos de la empresa.
Administración simplificada de secretos de aplicación. Key Vault
facilita la inscripción y la renovación de certificados de
entidades de certificación (CA) públicas. También puede escalar
32 verticalmente y replicar contenido dentro de las regiones y usar
herramientas de administración de certificados estándar.
Integración con otros servicios de Azure. Puede integrar Key
Vault con cuentas de almacenamiento, registros de contenedor,
centros de eventos y muchos más servicios de Azure.
Dado que a las identidades de Azure AD se les puede conceder acceso
para usar secretos de Azure Key Vault, las aplicaciones con identidades
de servicio administradas habilitadas pueden adquirir de forma
automática y sin problemas los secretos que necesiten.
RESUMEN
Como seguramente sabrá, por lo general el cifrado es la última capa
de defensa frente a los atacantes y, por tanto, una parte importante del
enfoque por capas para proteger los sistemas. Azure proporciona
funcionalidades y servicios integrados para cifrar y proteger los datos
de una exposición no deseada. La protección de datos del cliente
almacenados dentro de los servicios de Azure es de gran importancia
para Microsoft y debe incluirse en cualquier diseño. Servicios
fundamentales, como Azure Storage, Azure Virtual Machines, Azure
33 SQL Database y Azure Key Vault, pueden ayudar a proteger el entorno
mediante el cifrado.
INFORMACIÓN GENERAL
DE LOS CERTIFICADOS DE
AZURE
Como se ha mencionado anteriormente, la Seguridad de la capa de
transporte (TLS) es la base para el cifrado de datos de sitios web en
tránsito. TLS usa certificados para cifrar y descifrar los datos. Sin
embargo, estos certificados tienen un ciclo de vida que requiere
administración de administradores. Un problema de seguridad común
con los sitios web es cuando tienen certificados de TLS expirados que
abren vulnerabilidades de seguridad.
34
Los certificados que se usan en Azure son de tipo x.509 v3 y pueden
estar firmados por una autoridad certificada de confianza, o bien estar
autofirmados. Un certificado autofirmado está firmado por su propio
creador; por tanto, no es de confianza de forma predeterminada. La
mayoría de los exploradores pueden pasar por alto este problema. Sin
embargo, solo debe usar certificados autofirmados cuando desarrolle
y pruebe sus servicios en la nube. Estos certificados pueden contener
una clave privada o pública y tener una huella digital que proporcione
un medio para identificar un certificado de manera inequívoca. Esta
huella digital se utiliza en el archivo de configuración de Azure para
identificar qué certificado debe usar un servicio en la nube.
Tipos de certificados
En Azure, los certificados se usan con dos finalidades principales y se
les asigna una designación concreta en función de su uso previsto.
1. Los certificados de servicio se usan para los servicios en la
nube.
2. Los certificados de administración se usan para la
autenticación con la API de administración.
Certificado de servicio
Los certificados de servicio están vinculados a los servicios en la nube
y posibilitan la comunicación segura hacia el servicio y desde este. Por
ejemplo, si implementa un sitio web, le interesaría proporcionar un
35 certificado que pueda autenticar un punto de conexión HTTPS
expuesto. Los certificados de servicio, especificados en la definición de
servicio, se implementan de forma automática en la máquina virtual
que ejecute una instancia del rol.
Puede cargar certificados de servicio en Azure mediante Azure Portal o
mediante el modelo de implementación clásica. Los certificados de
servicio están asociados a un servicio en la nube específico. Se asignan
a una implementación en el archivo de definición de servicio.
Puede administrar certificados de servicio de forma independiente de
los servicios y puede tener diferentes personas administrándolos. Por
ejemplo, un desarrollador podría cargar un paquete de servicio que
hiciera referencia a un certificado que un administrador de TI hubiera
cargado previamente en Azure. Un administrador de TI puede
administrar y renovar el certificado (cambiando la configuración del
servicio) sin necesidad de cargar un nuevo paquete de servicio. La
actualización sin un nuevo paquete de servicio es posible porque el
nombre lógico, el nombre del almacén y la ubicación del certificado se
encuentran en el archivo de definición de servicio, mientras que la
huella digital del certificado se especifica en el archivo de configuración
de servicio. Para actualizar el certificado, solo es necesario cargar un
nuevo certificado y cambiar el valor de la huella digital en el archivo de
configuración de servicio.
Certificados de administración
Los certificados de administración permiten autenticar con el modelo
de implementación clásica. Muchos programas y herramientas (como
Visual Studio o Azure SDK) usan estos certificados para automatizar la
36
configuración y la implementación de diferentes servicios de Azure.
Pero estos tipos de certificados no están relacionados con los servicios
en la nube.
Uso de Azure Key Vault con certificados
Puede almacenar los certificados en Azure Key Vault, como cualquier
otro secreto. Sin embargo, Key Vault proporciona características
adicionales más allá de la administración de certificados típica.
Puede crear certificados en Key Vault o importar certificados
existentes.
Puede almacenar y administrar de manera segura los
certificados sin ninguna interacción con el material de clave
privada.
Puede crear una directiva que indique a Key Vault cómo
administrar el ciclo de vida de un certificado.
Puede proporcionar información de contacto para la
notificación de eventos del ciclo de vida de caducidad y
renovación de certificados.
Puede renovar certificados de forma automática con emisores
seleccionados: proveedores de certificados x509 y entidades de
certificación asociados con Key Vault.
La automatización de la administración de certificados ayuda a reducir
o eliminar la tarea de la administración manual de certificados,
propensa a errores.
37
PROTECCIÓN DE LA RED
La protección de la red frente a los ataques cibernéticos y el acceso
no autorizado es una parte importante de cualquier arquitectura. En
esta sección examinaremos cómo es la seguridad de red, cómo se
integra un enfoque en capas con la arquitectura y cómo puede
ayudarle Azure a proporcionar seguridad de red para su entorno.
Una estrategia en capas para la seguridad de red
Seguramente haya observado que un hilo común en este módulo ha
sido el énfasis en adoptar una estrategia en capas para la seguridad.
Este enfoque también se recomienda en la capa de red. No basta con
centrarse en proteger el perímetro de red ni en la seguridad de red
entre los servicios dentro de una red. Una estrategia en capas
38
proporciona varios niveles de protección, por lo que si un atacante
atraviesa una capa, se dispone de más protecciones para limitar
ataques posteriores.
Echemos un vistazo a cómo Azure puede proporcionar las
herramientas para una estrategia en capas orientada a la protección de
la superficie de red.
Protección de Internet
Si comenzamos por el perímetro de la
red, nos centramos en limitar y eliminar
los ataques que proceden de Internet. En
primer lugar, se recomienda evaluar los
recursos accesibles desde Internet y permitir solo la comunicación
entrante y saliente cuando sea necesario. Asegúrese de identificar
todos los recursos que permiten el tráfico de red entrante de cualquier
tipo, y luego asegúrese de que estén restringidos solo a los puertos y
protocolos necesarios. Azure Security Center es un excelente lugar para
buscar esta información, ya que identifica los recursos accesibles desde
Internet que no tienen grupos de seguridad de red asociados, así como
los recursos que no están protegidos detrás de un firewall.
¿Qué es un firewall?
Un firewall es un servicio que otorga acceso a un servidor según la
dirección IP de origen de cada solicitud. Con las reglas de firewall se
especifican intervalos de direcciones IP. Solo los clientes de estas
direcciones IP especificadas podrán tener acceso al servidor. Por lo
general, las reglas de firewall también incluyen información específica
39
de puertos y protocolos de red.
Para proporcionar protección de entrada en el perímetro, dispone de
varias opciones.
• Azure Firewall es un servicio de seguridad de red administrado
y basado en la nube que protege los recursos de Azure Virtual
Network. Se trata de un firewall como servicio con estado
completo que incorpora alta disponibilidad y escalabilidad a la
nube sin restricciones. Azure Firewall proporciona protección
entrante para protocolos no HTTP/S. Los ejemplos de
protocolos no HTTP/S incluyen: Protocolo de escritorio remoto
(RDP), Secure Shell (SSH) y Protocolo de transferencia de
archivos (FTP). Además, proporciona protección de salida de
nivel de red para todos los puertos y protocolos, y protección
de nivel de aplicación para HTTP/S saliente.
• Azure Application Gateway es un equilibrador de carga que
incluye un firewall de aplicaciones web (WAF) que ofrece
protección frente a vulnerabilidades comunes conocidas de
sitios web. Está diseñado para proteger el tráfico HTTP.
• Las aplicaciones virtuales de red (NVA) son una opción ideal
para los servicios no HTTP o para configuraciones avanzadas, y
son similares a las aplicaciones de firewall de hardware.
Bloqueo de ataques de denegación de servicio distribuido (DDoS)
Cualquier recurso expuesto a Internet está en riesgo de sufrir un ataque
por denegación de servicio. Estos tipos de ataques intentan
40
sobrecargar un recurso de red mediante el envío de tantas solicitudes
que el recurso se vuelve lento o deja de responder.
Al combinar Azure DDoS Protection con los procedimientos
recomendados de diseño de aplicaciones, contribuye a la defensa
frente a los ataques DDoS. DDoS Protection aprovecha la escala y la
elasticidad de la red global de Microsoft para incorporar capacidad de
mitigación DDoS a cada región de Azure. El servicio Azure DDoS
Protection protege las aplicaciones de Azure al supervisar el tráfico en
el borde de red de Azure antes de que afecte a la disponibilidad del
servicio. En un intervalo de pocos minutos tras la detección del ataque,
recibe una notificación mediante métricas de Azure Monitor.
Este diagrama muestra el tráfico de red que llega a Azure de los clientes
y un atacante. La protección contra DDoS de Azure identifica el intento
del atacante de sobrecargar la red y evita que más tráfico llegue a los
servicios de Azure. El tráfico legítimo de los clientes sigue llegando a
Azure sin ninguna interrupción del servicio.
Azure DDoS Protection proporciona los siguientes niveles de servicio:
Básico: este servicio está habilitado de forma automática como
parte de la plataforma Azure. La supervisión continua del tráfico
y la mitigación en tiempo real de ataques de nivel de red
comunes ofrecen la misma defensa que usan los servicios en
41
línea de Microsoft. La red global de Azure se usa para distribuir
y mitigar el tráfico de ataques en las distintas regiones.
Estándar: este nivel de servicio ofrece funcionalidades
adicionales de mitigación adaptadas específicamente a los
recursos de Microsoft Azure Virtual Network. DDoS Protection
Estándar es fácil de habilitar y no requiere ningún cambio en la
aplicación. Las directivas de protección se ajustan mediante
algoritmos dedicados de supervisión del tráfico y aprendizaje
automático. Las directivas se aplican a direcciones IP públicas
asociadas a recursos implementados en redes virtuales, como
Azure Load Balancer y Application Gateway. La protección
estándar frente a DDoS puede mitigar los tipos de ataques
siguientes:
o Ataques volumétricos. El objetivo del atacante es
desbordar la capa de red con una gran cantidad de
tráfico aparentemente legítimo.
o Ataques de protocolo. Estos ataques vuelven un destino
inaccesible al aprovechar una vulnerabilidad en la pila
de protocolo de capa 3 y 4.
o Ataques de nivel de recurso (aplicación). Estos ataques
van dirigidos a paquetes de aplicaciones web para
interrumpir la transmisión de datos entre hosts.
Control del tráfico dentro de la red virtual
Seguridad de red virtual
42 Una vez dentro de una red virtual (VNet),
es fundamental que limite la
comunicación entre los recursos a solo la
imprescindible.
En la comunicación entre las máquinas virtuales, los grupos de
seguridad de red (NSG) son una pieza fundamental para restringir las
comunicaciones innecesarias.
Un grupo de seguridad de red permite filtrar el tráfico de red hacia y
desde los recursos de Azure de una red virtual de Azure. Un NSG puede
contener varias reglas de seguridad entrantes y salientes que permiten
filtrar el tráfico de y a los recursos por dirección IP de origen y destino,
puerto y protocolo. Proporcionan una lista de comunicaciones
permitidas y denegadas hacia y desde las interfaces de red y las
subredes, y son totalmente personalizables.
Puede quitar completamente el acceso público a Internet de los
servicios. Para ello debe restringir el acceso a los puntos de conexión
de servicio. Con los puntos de conexión de servicio, el acceso a los
servicios de Azure se puede limitar a la red virtual.
Integración de red
Es habitual disponer ya de una
infraestructura de red que debe
integrarse para proporcionar
comunicación desde las redes locales o
para proporcionar una comunicación mejorada entre los servicios de
43 Azure. Existen varias maneras clave de administrar esta integración y
mejorar la seguridad de la red.
Las conexiones de red privada virtual (VPN) son una manera habitual
de establecer canales de comunicación segura entre las redes. La
conexión entre Microsoft Azure Virtual Network y un dispositivo de
VPN local es una excelente manera de proporcionar una comunicación
segura entre su red y su red virtual en Azure.
Para proporcionar una conexión privada dedicada entre una red y
Azure, se puede usar Azure ExpressRoute. ExpressRoute permite
ampliar las redes locales a la nube de Microsoft a través de una
conexión privada que facilita un proveedor de conectividad. Con
ExpressRoute, se pueden establecer conexiones con servicios en la
nube de Microsoft, como Microsoft Azure, Office 365 y Dynamics 365.
Las conexiones de ExpressRoute mejoran la seguridad de la
comunicación local al enviar este tráfico a través del circuito privado en
lugar de hacerlo a través de la red pública de Internet. No es preciso
permitir que los usuarios finales accedan a estos servicios a través de
la red pública de Internet, y puede enviar este tráfico a través de
aplicaciones, lo que mejora la inspección del tráfico.
44
RESUMEN
Un enfoque en capas para la seguridad de la red ayuda a reducir el
riesgo de exposición a ataques basados en la red. Azure proporciona
varios servicios y funcionalidades para proteger los recursos accesibles
desde Internet, los recursos internos y la comunicación entre redes
locales. Estas características permiten la creación de soluciones seguras
en Azure.
También puede combinar varios servicios de redes y seguridad de
Azure para administrar la seguridad de red y proporcionar mayor
45
protección por capas. Por ejemplo, puede usar Azure Firewall para
proteger el tráfico de Internet entrante y saliente, y los grupos de
seguridad de red para limitar el tráfico a los recursos dentro de las
redes virtuales.
PROTEGER LOS
DOCUMENTOS
COMPARTIDOS
Microsoft Azure Information Protection (en ocasiones denominada
AIP) es una solución basada en la nube que ayuda a las organizaciones
a clasificar y, opcionalmente, a proteger documentos y correos
electrónicos mediante la aplicación de etiquetas.
Las etiquetas se pueden aplicar automáticamente en función de reglas
y condiciones. También se pueden aplicar de forma manual. Además,
46 puede guiar a los usuarios para que elijan las etiquetas recomendadas
con una combinación de pasos automáticos y manuales.
En la siguiente captura de pantalla se ve un ejemplo de AIP en acción
en el equipo de un usuario. En este ejemplo, el administrador ha
configurado una etiqueta con reglas que detectan datos
confidenciales. Cuando un usuario guarda un documento de
Microsoft Word que contiene un número de tarjeta de crédito, se
muestra una información sobre herramientas personalizada. La
información sobre herramientas recomienda etiquetar el archivo
como Confidencial: todos los empleados. El administrador configura
esta etiqueta. Si se usa esta etiqueta, se clasifica el documento y se
protege.
Una vez clasificado el contenido, puede realizar un seguimiento y
controlar cómo se usa. Por ejemplo, puede:
Analizar flujos de datos para obtener información sobre el
negocio
Detectar comportamientos de riesgo y tomar medidas
correctivas
Controlar el acceso a documentos
47 Evitar la pérdida de datos o el uso indebido de información
confidencial
Nota
Puede adquirir AIP como una solución independiente o a través de uno
de los siguientes conjuntos de licencias de Microsoft: Enterprise Mobility
+ Security o Microsoft 365 Enterprise.
AZURE ADVANCED
THREAT PROTECTION
Azure Advanced Threat Protection (Azure ATP) es una solución de
seguridad basada en la nube que identifica, detecta y ayuda a
investigar amenazas avanzadas, identidades en peligro y acciones de
infiltrado malintencionadas dirigidas a la organización.
Azure ATP es capaz de detectar ataques y técnicas malintencionados
conocidos, problemas de seguridad y riesgos para la red.
Componentes de Azure ATP
Azure ATP tiene varios componentes.
48
Portal de Azure ATP
Azure ATP tiene su propio portal, donde puede supervisar la actividad
sospechosa y responder a ella. El portal de Azure ATP permite crear la
instancia de Azure ATP y ver los datos recibidos de los sensores de
Azure ATP. También puede usar el portal para supervisar, administrar e
investigar amenazas en el entorno de red. Puede iniciar sesión en el
portal de Azure ATP en [Link] Las cuentas de
usuario deben estar asignadas a un grupo de seguridad de Azure AD
con acceso al portal de Azure ATP para poder iniciar sesión.
Sensor de Azure ATP
Los sensores de Azure ATP se instalan directamente en los
controladores de dominio. El sensor supervisa el tráfico del controlador
de dominio sin necesidad de un servidor dedicado ni de configurar la
creación de reflejo del puerto.
Servicio en la nube de Azure ATP
El servicio en la nube de Azure ATP se ejecuta en la infraestructura de
Azure y actualmente está implementado en Estados Unidos, Europa y
Asia. El servicio en la nube de Azure ATP está conectado a Microsoft
Intelligent Security Graph.
49
Compra de Azure Advanced Threat Protection
Azure ATP está disponible como parte del conjunto de aplicaciones
Enterprise Mobility + Security E5 (EMS E5) y como licencia
independiente. Puede adquirir una licencia directamente desde la
página Opciones de precios de Enterprise Mobility + Security o a través
del modelo de licencia Proveedor de soluciones en la nube (CSP). No
está disponible a través de Azure Portal.
50
COMPRENSIÓN DE LAS
CONSIDERACIONES
SOBRE SEGURIDAD PARA
LAS SOLUCIONES DE
ADMINISTRACIÓN DEL
CICLO DE VIDA DE LAS
APLICACIONES
El Ciclo de vida de desarrollo de seguridad de Microsoft
(SDL) introduce consideraciones sobre seguridad y privacidad en
51
todas las fases del proceso de desarrollo. Ayuda a los desarrolladores
a crear software altamente seguro, abordar los requisitos de
cumplimiento de seguridad y reducir los costos de desarrollo. Las
guías, los procedimientos recomendados, las herramientas y los
procesos de SDL son prácticas que se usan internamente en Microsoft
para crear productos y servicios más seguros.
Desde la primera vez que compartimos SDL en 2008, las prácticas se
han actualizado continuamente para abarcar nuevos escenarios, como
servicios en la nube, IoT e IA.
Aprendizaje
La seguridad es trabajo de todos los usuarios. Los desarrolladores,
ingenieros de servicio y jefes de proyectos y de programas deben
conocer los aspectos básicos de la seguridad. Todos ellos deben saber
cómo compilar la seguridad en el software y los servicios para que los
productos sean más seguros, a la vez que satisfacen las necesidades
empresariales y entregan el valor de usuario. Un entrenamiento
eficiente complementará y reforzará las directivas de seguridad,
prácticas de SDL, estándares y requisitos de seguridad de software, y
se guiará por información obtenida a través de los datos o las
capacidades técnicas nuevas disponibles.
Aunque la seguridad es un trabajo que recae en todos los usuarios,
cabe recordar que no todos deben ser expertos en seguridad ni
esforzarse en llegar a ser un evaluador de pruebas de penetración
experto. Sin embargo, garantizar que todos entiendan la perspectiva
del atacante, sus objetivos y el arte de lo posible ayudará a captar la
52 atención de todo el mundo y a aumentar la base de conocimiento
colectiva.
Definición de requisitos de seguridad
La seguridad y la privacidad son un aspecto fundamental para
desarrollar aplicaciones y sistemas muy seguros. Independientemente
de la metodología de desarrollo que se use, los requisitos de seguridad
se deben actualizar continuamente para abordar los cambios en la
funcionalidad necesaria y en el escenario de las amenazas. El tiempo
óptimo para definir los requisitos de seguridad es durante las fases
iniciales de diseño y planeación. Una planeación temprana permite a
los equipos de desarrollo integrar la seguridad de maneras que
minimizan la interrupción.
Algunos de los factores que afectan a los requisitos de seguridad son
los siguientes:
Requisitos legales y del sector
Estándares internos y procedimientos de codificación
Revisión de los incidentes anteriores
Amenazas conocidas
Se debe realizar un seguimiento de estos requisitos a través de un
sistema de seguimiento de trabajo o de la telemetría que se deriva de
la canalización de ingeniería.
Definición de métricas e informes de cumplimiento
Es fundamental que las organizaciones definan los niveles mínimos
aceptables de calidad de seguridad y que los equipos de ingeniería
53
mantengan la responsabilidad de cumplir esos criterios. La definición
de estas expectativas ayuda en una fase temprana a los equipos a
comprender los riesgos asociados a las incidencias de seguridad,
identificar y corregir los defectos de seguridad durante el desarrollo y
aplicar los estándares en todo el proyecto. Establecer una barra de
seguridad significativa implica definir claramente los umbrales de
gravedad de las vulnerabilidades de seguridad y ayuda a establecer un
plan de acción cuando se encuentran las vulnerabilidades. Por ejemplo,
todas las vulnerabilidades conocidas que se detecten con una
clasificación de gravedad "crítica" o "importante" deben corregirse en
un período de tiempo específico.
Para realizar el seguimiento de los indicadores clave de rendimiento
(KPI) y asegurarse de que se completan las tareas de seguridad, el
seguimiento de errores y los mecanismos de seguimiento del trabajo
que usa una organización (como Azure DevOps) deben permitir que
los defectos de seguridad y los elementos de trabajo de seguridad se
etiqueten claramente como seguridad, y se marquen con la gravedad
de seguridad adecuada. Esto permite un seguimiento preciso y la
generación de informes de trabajo de seguridad.
Puede obtener más información sobre cómo definir métricas e
informes de cumplimiento en los siguientes recursos:
Ejemplo de barra de errores de privacidad de SDL
Agregar o modificar un campo de Azure DevOps para realizar
un seguimiento del trabajo
Ejemplo de barra de errores de seguridad de SDL
Realización del modelado de amenazas
54
El modelado de amenazas debe usarse en entornos en los que haya un
riesgo de seguridad considerable. Como práctica, permite a los equipos
de desarrollo tener en cuenta, documentar y analizar las implicaciones
de seguridad de los diseños en el contexto de su entorno operativo
planificado de forma estructurada. Aplicar un enfoque estructurado a
los escenarios de amenaza ayuda a los equipos a identificar de forma
más eficiente y económica las vulnerabilidades de seguridad,
determinar los riesgos derivados de esas amenazas y, después, realizar
las selecciones de las características de seguridad y establecer las
mitigaciones adecuadas. Se puede aplicar el modelado de amenazas
en el nivel de componente, aplicación o sistema.
Puede encontrar más información disponible en Modelado de
amenazas.
Establecimiento de requisitos de diseño
El SDL suele considerarse como varias actividades de seguridad que
ayudan a los ingenieros a implementar características más seguras, lo
que significa que las características están bien diseñadas con respecto
a la seguridad. Para lograrlo, los ingenieros suelen basarse en
características de seguridad como la criptografía, la autenticación y el
registro. En muchos casos, la selección o la implementación de las
características de seguridad han demostrado ser tan complicadas que
las opciones de implementación o diseño pueden dar lugar a
vulnerabilidades. Por lo tanto, es fundamental que se apliquen de
forma uniforme y con una comprensión coherente de la protección que
proporcionan.
Definición y uso de estándares de criptografía
55
Con el aumento de la informática móvil y en la nube, es importante
garantizar que todos los datos, incluida la información confidencial de
seguridad y la administración y el control de los datos, se protejan
contra la modificación o divulgación no intencionadas cuando se
transmiten o almacenan. Normalmente, el cifrado se usa para lograr
esta protección. Pero una elección incorrecta al usar cualquier aspecto
de la criptografía puede tener un resultado catastrófico. Por lo tanto,
es mejor desarrollar estándares de cifrado claros que proporcionen
información específica sobre cada elemento de la implementación del
cifrado.
El cifrado debe estar en manos de expertos. Una regla general correcta
consiste en usar solo las bibliotecas de cifrado que haya revisado el
sector y asegurarse de que se implementan de forma que se puedan
reemplazar fácilmente en caso necesario.
Para obtener más información sobre el cifrado, consulte el documento
técnico Recomendaciones criptográficas de Microsoft SDL.
Administración de los riesgos de seguridad mediante el uso de
componentes de terceros
La gran mayoría de los proyectos de software de hoy en día se
compilan mediante el uso de componentes de terceros (tanto
comerciales como de código abierto). Al seleccionar los componentes
de terceros que se van a usar, es importante comprender el impacto
que podría suponer en estos una vulnerabilidad de seguridad en la
seguridad del sistema más grande en el que están integrados. El hecho
56 de tener un inventario preciso de estos componentes y un plan para
responder cuando se descubran nuevas vulnerabilidades allanará el
camino hacia la mitigación de los riesgos. Con todo, también debe
tener en cuenta la validación adicional, según la tolerancia al riesgo de
su organización, el tipo de componente que se usa y el posible impacto
de una vulnerabilidad de seguridad.
Obtenga más información sobre la administración de los riesgos de
seguridad al usar componentes de terceros en los siguientes recursos:
Código abierto
Administrar los riesgos de seguridad inherentes al uso de
componentes de terceros
Administrar los riesgos de seguridad inherentes al uso de
software de código abierto
Uso de herramientas aprobadas
Defina y publique una lista de herramientas aprobadas y sus
comprobaciones de seguridad asociadas, como las opciones y
advertencias del compilador y el enlazador. Los ingenieros deben
esforzarse por usar la versión más reciente de las herramientas
aprobadas (como las versiones de compilador) y utilizar nuevas
capacidades y protecciones de análisis de seguridad.
Para obtener más información, consulte:
Herramientas recomendadas, compiladores y opciones para
x86, x64 y ARM (documento técnico)
Recursos de SDL
Realización de pruebas de seguridad de análisis estático
57
Analizar el código fuente antes de la compilación proporciona un
método muy escalable de revisión de código de seguridad y ayuda a
garantizar que se siguen las directivas de codificación segura. Las
Pruebas de seguridad de análisis estático (SAST) normalmente se
integran en la canalización de confirmación para identificar las
vulnerabilidades cada vez que se compila o empaqueta el software.
Pero algunas ofertas se integran en el entorno del desarrollador para
detectar ciertos errores, como la existencia de funciones no seguras u
otras funciones prohibidas y, luego, reemplazarlas por alternativas más
seguras mientras el desarrollador diseña el código de forma activa. No
existe una solución única; los equipos de desarrollo deben decidir la
frecuencia óptima para realizar las pruebas SAST y considerar la
posibilidad de implementar varias tácticas para equilibrar la
productividad con una cobertura de seguridad adecuada.
Puede encontrar más información disponible en los siguientes
recursos:
Microsoft DevSkim en GitHub
Reglas de restricción de seguridad de Roslyn
Visual Studio Marketplace
Análisis de la calidad del código de C/C++ mediante el análisis
de código
Microsoft BinSkim en GitHub
Realización de pruebas de seguridad de análisis dinámico
La comprobación en tiempo de ejecución del software totalmente
compilado o empaquetado realiza la comprobación de la funcionalidad
que solo es aparente cuando todos los componentes están integrados
58 y en ejecución. Esta comprobación se consigue mediante una
herramienta, un conjunto de ataques compilados previamente o
herramientas que supervisan específicamente el comportamiento de la
aplicación en busca de daños en la memoria, incidencias de privilegios
de usuarios y otros problemas de seguridad críticos. Como sucede con
las pruebas SAST, no existe una solución única y, mientras que algunas
herramientas (como las de examen de aplicaciones web) se pueden
integrar más fácilmente en la canalización de CI/CD, otras Pruebas de
seguridad de aplicaciones dinámicas (DAST), como la aplicación de
pruebas de vulnerabilidad ante datos aleatorios o inesperados,
requieren otro enfoque.
Puede encontrar más información disponible en los siguientes
recursos:
Visual Studio Marketplace
Pruebas de penetración automatizadas con pruebas de
vulnerabilidad ante datos aleatorios o inesperados de caja
blanca
Realización de pruebas de penetración
La prueba de penetración es un análisis de seguridad de un sistema de
software que lo realizan profesionales de seguridad experimentados
que simulan las acciones de un hacker. El objetivo de una prueba de
penetración es revelar posibles vulnerabilidades derivadas de errores
de codificación, errores de configuración del sistema u otros puntos
débiles de la implementación operativa. Las pruebas de penetración
suelen encontrar la variedad más amplia de vulnerabilidades y
normalmente se realizan junto con las revisiones de código
automatizadas y manuales para proporcionar un mayor nivel de análisis
59
del que normalmente sería posible.
Puede encontrar más información disponible en los siguientes
recursos:
Analizador de superficie expuesta a ataques
Ejemplo de barra de errores de seguridad de SDL
Establecimiento de un proceso de respuesta estándar a los
incidentes
La preparación de un plan de respuesta a incidentes es crucial para
enfrentarse a las nuevas amenazas que puedan surgir con el tiempo.
Debe crear su plan en coordinación con el Equipo de respuesta a
incidentes de seguridad de productos (PSIRT) de su organización. El
plan de respuesta ante incidentes debería:
Incluir la información de contacto de la persona a la que se
deberá acudir si se produce una emergencia de seguridad.
Establecer el protocolo para el servicio de seguridad, incluidos
los planes para de código heredado de otros grupos de la
organización y para el código de terceros.
Probarse antes de que sea necesario.
Para obtener más información sobre las respuestas a los incidentes,
consulte lo siguiente:
Uso de Azure Security Center para dar respuesta a los
incidentes
Respuesta a los incidentes de Microsoft y responsabilidad
compartida para la informática en la nube
Centro de respuestas de seguridad de Microsoft
60
Mediante la inclusión de consideraciones sobre seguridad y
cumplimiento normativo en todas las fases del proceso de desarrollo,
los desarrolladores pueden reducir la probabilidad de que se
produzcan vulnerabilidades en los productos y servicios, y evitar la
repetición de los mismos errores de seguridad. Del mismo modo, la
integración de seguridad en todo el ciclo de vida de las operaciones
ayudará a mantener la integridad de esos productos y servicios. Los
procedimientos de garantía de seguridad operativa deben alinearse
con sus procesos de desarrollo; esto dará como resultado una inversión
menor de tiempo y dinero en la evaluación de prioridades y respuesta
posterior. Además, proporcionará a sus clientes la tranquilidad de saber
que sus productos son muy seguros.
RESUMEN
En este módulo se han tratado los conceptos básicos para proteger la
infraestructura y los datos cuando se trabaja en la nube.
Defensa en profundidad es el tema principal: pensar en la seguridad
como un problema relacionado con varias capas y vectores. Las
amenazas surgen de lugares inesperados y su intensidad puede
sorprendernos.
Azure puede proporcionarnos una ayuda inmediata para hacer frente
a los problemas de seguridad. Uno de los primeros pasos que debemos
tomar es evaluar cuánta ayuda de Azure podemos usar en función de
61 si vamos a emplear IaaS, PaaS o SaaS.
Azure Security Center centraliza gran parte de la ayuda que Azure tiene
que ofrecer. Proporciona un único panel, que ofrece una vista sobre
muchos de los servicios y ayuda a garantizar que está siguiendo los
procedimientos recomendados. Los algoritmos de aprendizaje
automático que se actualizan continuamente le ayudan a identificar si
las amenazas más recientes van a atacar a sus recursos. Y ayuda a su
organización a mitigar las amenazas.
Este módulo es simplemente introductorio. La seguridad es un tema
amplio y complejo, por lo que sea cual sea su enfoque en la nube, es
necesaria una formación continua en materia de seguridad. Pero este
módulo debe encaminarle en la dirección correcta, para que sepa lo
que necesita aprender a continuación.
1
Cloud Services básico:
administración de servicios
con Azure Portal
BIENVENIDA
Recorra las características y servicios de Azure Portal y personalice el
portal.
En este módulo, aprenderá a:
• Obtener información sobre las opciones de administración de
Azure
• Desplazarse por Azure Portal
• Personalización del panel
• Más información sobre cómo participar en servicios y
2
características en versión preliminar
Requisitos previos
• Conocimiento de términos y conceptos básicos de informática
en la nube
Introducción 3 min
Opciones de administración de Azure 7 min
Desplazarse por el portal 10 min
Ejercicio: Trabajo con paneles 10 min
Ejercicio: Uso de Azure Portal 10 min
Paneles de Azure Portal 15 min
Ejercicio: Personalización del panel 10 min
Acceso a características en versión preliminar pública y privada
5 min
Resumen 3 min
3
INTRODUCCIÓN
Azure es una plataforma en la nube que proporciona los recursos de
proceso, almacenamiento y red necesarios para compilar aplicaciones
hospedadas en la nube. Como usuario nuevo, lo más probable es que
empiece a interactuar con Azure a través de Azure Portal. Azure Portal
le permite crear y administrar todos los recursos de Azure. Por ejemplo,
puede configurar una nueva base de datos, aumentar la capacidad de
proceso de las máquinas virtuales y supervisar el costo mensual.
4 También es una gran herramienta de aprendizaje, ya que puede
inspeccionar todos los recursos disponibles y usar asistentes guiados
para crear los que necesite.
Aquí obtendrá información sobre cómo iniciar sesión en el portal y
desplazarse por su interfaz. También aprenderá a personalizar el panel,
para que sea mas cómodo buscar y supervisar los servicios más
importantes.
Objetivos de aprendizaje
En este módulo, aprenderá a:
• Obtener información sobre las opciones de administración de
Azure
• Desplazarse por Azure Portal
• Personalización del panel
OPCIONES DE
ADMINISTRACIÓN DE
AZURE
Puede configurar y administrar Azure mediante una amplia gama de
plataformas y herramientas. Hay herramientas disponibles para la línea
de comandos, kits de desarrollo de software (SDK) específicos del
lenguaje, herramientas de desarrollo, herramientas para la migración y
muchas otras.
5 Entre las herramientas que se usan habitualmente para la
administración y las interacciones diarias, se incluyen las siguientes:
• Azure Portal para interactuar con Azure a través de una
interfaz gráfica de usuario (GUI)
• Azure PowerShell y la interfaz de la línea de comandos de
Azure (CLI) para las interacciones con Azure de línea de
comandos y basadas en automatización
• Azure Cloud Shell para una interfaz de línea de comandos
basada en web
• Azure Mobile App para supervisar y administrar los recursos
desde el dispositivo móvil
Azure Portal
Azure Portal es un sitio web público al que se puede acceder con un
explorador web. Una vez que inicie sesión con la cuenta de Azure,
podrá crear, administrar y supervisar todos los servicios de Azure
disponibles. Puede identificar un servicio que esté buscando y obtener
vínculos de ayuda para temas concretos, además de implementar,
administrar y eliminar recursos. También ofrece guías para tareas
administrativas complejas mediante asistentes e información sobre
herramientas.
En la vista del panel se proporciona información general sobre el
entorno de Azure. Para personalizar el panel, mueva los iconos y
cambie su tamaño; también puede optar por mostrar los servicios que
le interesen.
El portal no proporciona ninguna forma de automatizar tareas
repetitivas. Por ejemplo, para configurar varias máquinas virtuales,
tendría que crearlas una a una completando el asistente para cada una
de ellas. Este proceso hace que el enfoque del portal lleve mucho
tiempo y sea propenso a errores si se trata de tareas complejas.
Azure PowerShell
Azure PowerShell es un módulo que se puede instalar para Windows
PowerShell o para PowerShell Core, una versión multiplataforma de
PowerShell que se ejecuta en Windows, Linux o macOS. Azure
PowerShell le permite conectarse a su suscripción de Azure y
administrar los recursos. Windows PowerShell y PowerShell Core
proporcionan varios servicios, como la ventana de shell y el análisis de
comandos. Después, Azure PowerShell agrega los comandos
específicos de Azure.
Por ejemplo, Azure PowerShell proporciona el comando New-AzVM,
7 que crea una máquina virtual de forma automática dentro de la
suscripción de Azure. Para usarlo, inicie PowerShell, instale el módulo
de Azure PowerShell, inicie sesión en la cuenta de Azure mediante el
comando Connect-AzAccount y, después, emita un comando, por
ejemplo:
PowerShell
New-AzVM `
-ResourceGroupName "MyResourceGroup" `
-Name "TestVm" `
-Image "UbuntuLTS" `
...
La creación de scripts de administración y el uso de herramientas de
automatización es una manera eficaz de optimizar el flujo de trabajo.
Puede automatizar tareas repetitivas. Una vez que se comprueba un
script, se ejecuta de forma coherente, lo que puede reducir el número
de errores. Otro entorno de scripting es la CLI de Azure.
CLI de Azure
La CLI de Azure es un programa de línea de comandos multiplataforma
que se conecta a Azure y ejecuta comandos administrativos en los
recursos de Azure. Multiplataforma significa que se puede ejecutar en
Windows, Linux o macOS. Por ejemplo, para crear una máquina virtual,
podría abrir una ventana del símbolo del sistema, iniciar sesión en
Azure mediante el comando az login, crear un grupo de recursos y
luego usar un comando como este:
8
CLI de Azure
az vm create \
--resource-group MyResourceGroup \
--name TestVm \
--image UbuntuLTS \
--generate-ssh-keys \
...
Azure Cloud Shell
Azure Cloud Shell es un shell interactivo, autenticado y accesible desde
el explorador, que sirve para administrar los recursos de Azure.
Proporciona la flexibilidad de poder elegir la experiencia de shell que
mejor se adapte a la forma de trabajar, ya sea Bash o PowerShell.
Puede cambiar entre los dos shells y ambos admiten la CLI de Azure y
el módulo de Azure PowerShell. En Bash se usa la CLI de Azure de forma
predeterminada (con el comando az preinstalado), pero puede
cambiar a PowerShell Core en Linux si escribe pwsh. En el entorno de
PowerShell ya están instaladas las dos herramientas de la CLI. Además
de estas herramientas administrativas, Cloud Shell tiene un conjunto
de herramientas de desarrollo, editores de texto y otras herramientas
disponibles, como las siguientes:
Herramientas para desarrolladores
• .NET Core
• Python
• Java
• [Link]
• Go
Editores
• code (Editor de Cloud Shell)
• vim
10 • nano
• emacs
Otras herramientas
• git
• maven
• make
• npm
• Y mucho más...
Puede crear, compilar e implementar aplicaciones directamente desde
este entorno basado en explorador. Y también es persistente: se le
pedirá que cree una cuenta de Azure Storage cuando acceda a Azure
Cloud Shell. Este área de almacenamiento se usa como la carpeta
$HOME y los scripts o datos que coloque aquí se conservan entre
sesiones. Cada suscripción tiene una cuenta de almacenamiento única
asociada para que pueda mantener los datos y las herramientas
específicas que necesita para cada cuenta que administre.
En Microsoft Learn, se usará Cloud Shell en muchos de los ejercicios
interactivos para probar las características de Azure.
Azure Mobile App
11
Microsoft Azure Mobile App permite acceder, administrar y supervisar
todas las cuentas y recursos de Azure desde una tableta o un teléfono
Android o iOS. Una vez instalada, podrá:
Comprobar el estado actual y métricas importantes de los
servicios
Mantenerse informado con notificaciones y alertas sobre
problemas de estado importantes
Diagnosticar y corregir problemas rápidamente en cualquier
momento y en cualquier lugar
Revisar las alertas más recientes de Azure
Iniciar, detener y reiniciar máquinas virtuales o aplicaciones web
Conectarse a las máquinas virtuales
Administrar permisos con el control de acceso basado en roles
(RBAC)
Usar Azure Cloud Shell para ejecutar los scripts guardados o
realizar tareas administrativas ad hoc
12
Y mucho más...
Otras opciones
También hay SDK de Azure para diferentes lenguajes y marcos de
trabajo, así como API de REST que puede usar para administrar y
controlar los recursos de Azure mediante programación. Para obtener
una lista completa de las herramientas disponibles, vea la
página Descargas.
Al comenzar con Azure, usará Azure Portal con frecuencia. Veamos el
enfoque del portal con más detalle.
DESPLAZARSE POR EL
PORTAL
Con una cuenta de Azure, puede iniciar sesión en Azure Portal. El
portal es un sitio de administración basado en web que permite
interactuar con todas las suscripciones y los recursos que haya creado.
Casi todo lo que se hace con Azure se puede realizar a través de esta
interfaz web.
Diseño de Azure Portal
Azure Portal es la interfaz gráfica de usuario (GUI) principal para
controlar Microsoft Azure. La mayoría de las acciones de
13
administración se pueden llevar a cabo en el portal, que suele ser la
mejor interfaz para realizar tareas individuales o donde se pueden
examinar las opciones de configuración de forma detallada.
14
Panel de recursos
En la barra lateral izquierda del portal está el panel de recursos, que
enumera los tipos de recursos principales. Tenga en cuenta que Azure
tiene más tipos de recursos que los que se muestran. Los recursos
enumerados forman parte de los favoritos.
Se puede personalizar con los tipos de recursos concretos que suela
crear o administrar con más frecuencia.
El resto de la vista del portal es para los elementos específicos con los
que se está trabajando. La página predeterminada (principal) es Inicio,
pero puede cambiar la vista predeterminada al Panel personalizable
en Configuración. Se tratará la configuración más adelante en esta
unidad.
15
¿Qué es Azure Marketplace?
Azure Marketplace es con frecuencia el punto de partida cuando crea
recursos en Azure. Marketplace permite a los clientes buscar, probar,
comprar y aprovisionar aplicaciones y servicios de cientos de los
principales proveedores de servicios, todos ellos certificados para
ejecutarse en Azure.
El catálogo de soluciones abarca varias categorías del sector,
incluyendo pero sin limitarse a plataformas de contenedores de código
abierto, imágenes de máquina virtual, bases de datos, software de
compilación e implementación de aplicaciones, herramientas para
desarrolladores, detección de amenazas y cadena de bloques. Con
Azure Marketplace, puede aprovisionar soluciones integrales de forma
rápida y confiable, hospedadas en su propio entorno de Azure. En el
momento de redactar este artículo, esta lista incluía más de
8 000 entradas.
Aunque Azure Marketplace está diseñado para profesionales de TI y
desarrolladores de nube interesados en software de TI y comercial, los
asociados de Microsoft también lo usan como un punto de inicio para
todas las actividades conjuntas de comercialización.
Configuración de opciones en Azure Portal
En Azure Portal se muestran varias opciones de configuración,
principalmente en la barra de estado de la parte superior derecha de la
pantalla.
Si está viendo Azure Portal en una pantalla con menos espacio
horizontal, los iconos siguientes pueden estar disponibles mediante un
16
menú de puntos suspensivos (...).
Cloud Shell
Si selecciona el icono de Cloud Shell (>_), se crea una sesión de Azure
Cloud Shell. Si recuerda, Azure Cloud Shell es un shell interactivo,
accesible desde el explorador, para administrar los recursos de Azure.
Ofrece la flexibilidad de poder elegir la experiencia de shell que mejor
se adapte a la forma de trabajar. Los usuarios de Linux pueden elegir
una experiencia de Bash, mientras que los de Windows pueden optar
por PowerShell. Este terminal basado en el explorador permite
controlar y administrar todos los recursos de Azure de la suscripción
actual mediante una interfaz de la línea de comandos integrada en el
portal.
Directorio y suscripción
Seleccione el icono de Libro y filtro para mostrar el panel Directorio
y suscripción.
Azure permite tener más de una suscripción asociada con un directorio.
En el panel Directorio y suscripción, puede cambiar entre
suscripciones. Aquí, puede cambiar la suscripción o cambiar a otro
directorio.
17
Notificaciones
Al seleccionar el icono de campana se muestra el panel Notificaciones.
Este panel muestra las últimas acciones que se han realizado, junto con
su estado.
Configuración
Seleccione el icono de engranaje para cambiar la configuración de
Azure Portal. Esta configuración incluye lo siguiente:
Retraso de cierre de sesión de inactividad
Vista predeterminada al iniciar sesión por primera vez
Opción de flotante o acoplado para el menú del portal
Temas de contraste y color
Notificaciones del sistema (a un dispositivo móvil)
Idioma y formato regional
18
19
Cuando haya cambiado la configuración, seleccione Aplicar para
aceptar los cambios.
Panel Ayuda
Seleccione el icono de signo de interrogación para mostrar el
panel Ayuda. Aquí puede elegir entre varias opciones, incluidas las
siguientes:
Ayuda y soporte técnico
Novedades
Azure Roadmap
Iniciar paseo guiado
Métodos abreviados de teclado
Mostrar diagnósticos
20
Declaración de privacidad
Opciones de ayuda y soporte técnico
Ayuda y soporte técnico abre el área principal de ayuda y soporte
técnico de Azure Portal e incluye opciones de documentación para
diversas preguntas frecuentes. Aquí, una de las áreas ocultas es el
vínculo Nueva solicitud de soporte que se encuentra en esta página.
Este vínculo es la forma de abrir una incidencia de soporte técnico con
el equipo de Azure.
Todos los clientes de Azure pueden acceder a soporte técnico de
facturación, cuotas y administración de suscripciones. La disponibilidad
del soporte técnico para otros problemas depende del plan de soporte
técnico que tenga.
Al abrir una incidencia de soporte técnico, completará el formulario
mediante las listas desplegables y campos de entrada de texto que se
proporcionan.
Una vez que haya rellenado el formulario, haga clic en Crear para
enviar la solicitud de soporte técnico. El equipo de soporte técnico de
Azure se pondrá en contacto con usted después de enviar la solicitud.
Luego, puede comprobar el estado y los detalles de la solicitud de
soporte técnico en Ayuda > Ayuda y soporte técnico > Todas las
solicitudes de soporte técnico.
Panel de comentarios
El icono de cara sonriente abre el panel Envíenos comentarios. Aquí
puede enviar comentarios a Microsoft sobre Azure. Como parte de los
21
comentarios, puede decidir si Microsoft puede responderlos por correo
electrónico.
Configuración del perfil
Si selecciona su nombre en la esquina superior derecha, se abre un
menú con algunas opciones:
Iniciar sesión con otra cuenta o cerrar sesión completamente
Ver el perfil de la cuenta, donde puede cambiar la contraseña
Seleccionar el botón "..." situado en el lado derecho con opciones para:
Comprobar los permisos
Ver la factura
Actualizar la información de contacto.
Si selecciona "..." y después Ver mi factura, Azure le lleva a la
página Administración de costos + facturación - Facturas, que le
ayuda a analizar dónde se generan los costos de Azure.
Azure es un producto grande y la interfaz de usuario de Azure Portal
refleja este ámbito. El enfoque de paneles deslizantes permite navegar
con facilidad hacia delante y hacia atrás por las diversas tareas
administrativas. A continuación experimentará con esta interfaz de
usuario para que obtenga algo de práctica.
Azure Advisor
Por último, Azure Advisor es un servicio gratuito integrado en Azure
que ofrece recomendaciones sobre alta disponibilidad, seguridad,
22
rendimiento, excelencia operativa y costo. Advisor analiza los servicios
implementados y busca maneras de mejorar el entorno en esas cuatro
áreas. Puede ver las recomendaciones en el portal o descargarlas en
formato PDF o CSV.
Con Azure Advisor puede:
Obtener sugerencias de procedimientos recomendados
proactivas, prácticas y personalizadas.
Mejorar el rendimiento, la seguridad y la alta disponibilidad de
los recursos, al mismo tiempo que identifica oportunidades
para reducir los costos generales de Azure.
Obtener recomendaciones con acciones propuestas en línea.
Puede acceder a Azure Advisor si selecciona Advisor en el menú de
navegación, o bien lo busca en el menú Todos los servicios.
23
Vamos a probar algunas de estas características.
EJERCICIO: TRABAJO CON
PANELES
Para completar este módulo, se necesita un espacio aislado. Un espacio
aislado le da acceso a los recursos de Azure. Su suscripción de Azure no
recibirá ningún cobro. El espacio aislado solo se puede usar para realizar
los cursos de Microsoft Learn. Está prohibido el uso con cualquier otro fin
y puede dar lugar a la pérdida permanente del acceso al espacio aislado.
Inicie sesión para activar el espacio aislado.
En esta unidad, aprenderá a trabajar con los paneles de la interfaz de
usuario (IU) de Azure Portal.
24
Activación del espacio aislado de Azure
1. Empiece por activar el espacio aislado de Azure anterior.
2. Una vez activado, inicie sesión en Azure Portal para el espacio
aislado . Asegúrese de usar la misma cuenta con la que ha
activado el espacio aislado.
Exploración de Marketplace
Después de iniciar sesión en Azure Portal, puede comenzar a explorar
las cosas. En estas secciones, dará un paseo por Azure Portal, pero no
creará realmente ningún recurso de Azure.
1. Para comenzar, se verá cómo crear un recurso. En la página
principal, seleccione Crear un recurso.
2. Aparece un panel con la etiqueta Nuevos y se muestra una lista
de categorías en el lado izquierdo, con la etiqueta Azure
Marketplace. Esta vista inicial es parecida a un menú de
"Categorías populares", en el que puede ver algunas de las
categorías más habituales. Si quiere, puede expandir esta lista
para ver todos los elementos del panel Marketplace con el
vínculo Ver todo situado junto al título. Si lo hace, puede volver
al panel Nuevos con el icono de la X de la esquina superior
derecha de cualquiera de los paneles que ha abierto.
3. Al seleccionar cualquiera de los elementos de la lista de Azure
Marketplace, se mostrarán los servicios populares de esa
categoría a la derecha del panel Nuevos. Esta lista es un
subconjunto de la gama completa de recursos de proceso
25 disponibles para esa categoría. Como con Azure Marketplace,
puede seleccionar el vínculo Ver todo para obtener una lista
más completa. En las secciones siguientes se hablará más sobre
esta lista.
4. De vuelta en el panel Nuevos, seleccione Introducción; verá
una lista en el lado derecho del panel en la que se incluyen
servicios como Windows Server 2016 Datacenter, Ubuntu
Server VM, SQL Database, etc. La mayoría de estos elementos
incluyen un vínculo Inicio rápido y tutoriales directamente
debajo del nombre. Este vínculo abre una nueva pestaña del
explorador con la documentación de inicio rápido de Microsoft
para ese elemento.
5. Opcional: seleccione Inicio rápido y
tutoriales en Windows Server 2016 Datacenter y, en la
nueva ventana del explorador, examine los tutoriales de la
máquina virtual de Windows. Cuando haya terminado, cierre
esta pestaña nueva para volver a Azure Portal.
Visualización de recursos
1. En Azure Marketplace, haga clic en Proceso para mostrar más
opciones de proceso en la parte derecha del panel, como Red
Hat Enterprise, Reserved VM Instances, Aplicación web para
Containers, etc.
2. A la derecha de Destacados, seleccione Ver todo. Ahora
aparece la lista completa de servicios de máquina virtual
disponibles.
3. Seleccione Windows Server en la sección Sistemas
26
operativos. En las pantallas con espacio horizontal limitado
para el panel, es posible que tenga que desplazarse a la derecha
y seleccionar el vínculo Ver más para encontrar la
opción Windows Server.
4. Seleccione la lista desplegable para ver todas las imágenes de
Windows Server disponibles.
5. Seleccione la X de la esquina superior derecha para cerrar la
ventana Windows Server.
6. Seleccione la X en la ventana de Marketplace anterior. Ahora
volverá a ver el panel Nuevos.
Filtro de los resultados
Otra manera de encontrar servicios es restringir la lista con filtros y
términos de búsqueda. En el panel Nuevo, puede que haya observado
el cuadro de búsqueda en la parte superior. La búsqueda es la forma
más rápida de filtrar qué servicios se ven.
De forma predeterminada, esta búsqueda comprueba cada categoría
de servicio de Azure para obtener sus resultados. A continuación,
realizará el filtrado después de seleccionar una categoría.
1. Escriba virtual machine en el cuadro de búsqueda y
presione Entrar.
2. Seleccione Proceso. Verá una lista filtrada de los servicios de
proceso relacionados con imágenes de máquinas virtuales.
27
3. Seleccione cualquiera de los resultados que le interesen para
aprender más sobre el servicio, incluidos los primeros pasos.
Seleccione la X de la esquina para explorar otro servicio.
Cuando haya terminado, vaya al paso siguiente.
4. Seleccione la X de la esquina superior derecha del cuadro de
búsqueda. El botón X borrará el término de búsqueda, pero no
restablecerá ninguno de los filtros de la lista desplegable que
haya establecido. Puede restablecer estos filtros manualmente,
o bien cerrar el panel Proceso con el icono X en la esquina
superior derecha y, después, volver a abrirla. Cuando haya
terminado de probar las opciones de filtrado y búsqueda,
avance al paso siguiente.
5. Seleccione la X de la esquina superior derecha para cerrar el
panel Marketplace. Ahora verá el panel Nuevos una vez más.
6. Seleccione la X de la esquina superior derecha para cerrar el
panel Nuevos.
Muchos de los principios que ha aprendido en este ejercicio se aplican
a lo largo de la experiencia de la interfaz de usuario de Azure Portal. En
la unidad siguiente, continuará el recorrido por Azure Portal y
configurará opciones adicionales en Azure.
28
EJERCICIO: USO DE AZURE
PORTAL
Para completar este módulo, se necesita un espacio aislado. Un espacio
aislado le da acceso a los recursos de Azure. Su suscripción de Azure no
recibirá ningún cobro. El espacio aislado solo se puede usar para realizar
los cursos de Microsoft Learn. Está prohibido el uso con cualquier otro fin
y puede dar lugar a la pérdida permanente del acceso al espacio aislado.
Inicie sesión para activar el espacio aislado.
Azure Portal tiene varios servicios y características disponibles; a
continuación se verán algunas de las áreas más comunes que se suelen
29
usar. En primer lugar, mantenga el puntero del mouse durante unos
segundos sobre cada uno de los iconos de la barra de menús superior.
Para cada uno de los iconos, se mostrará un elemento emergente con
información en pantalla. Esta etiqueta es el nombre del elemento de
menú. Usará estos iconos más adelante.
Todos los servicios
1. En el lado superior izquierdo de Azure Portal,
seleccione Mostrar menú del portal.
2. Seleccione Todos los servicios. Tardará un par de minutos en
desplazarse hacia abajo de la lista para ver cuántos servicios
30 ofrece Azure.
3. Puede buscar servicios mediante el cuadro de filtro.
4. Seleccione Máquinas virtuales. Si no ve esta opción, use el
cuadro de filtro. Aparece el panel Máquinas virtuales. Como
no ha creado ninguna máquina virtual, no hay resultados.
5. Seleccione + Agregar. Aparece el panel Crear una máquina
virtual.
6. Seleccione la X de la esquina superior derecha para cerrar el
panel Crear una máquina virtual.
7. Seleccione la X de la esquina superior derecha para cerrar el
panel Máquinas virtuales.
8. Haga clic en Microsoft Azure en la parte superior izquierda
para volver a la página principal.
Azure Cloud Shell
Azure Cloud Shell le permite usar una interfaz de la línea de comandos
(CLI) para ejecutar comandos en la suscripción de Azure. Para acceder
31 a ella, seleccione el icono (>_) de la barra de herramientas. También
puede ir a [Link] para iniciar una instancia de Cloud
Shell en el explorador independiente del portal.
Azure Cloud Shell está disponible en el entorno del espacio aislado,
pero la versión de espacio aislado del shell tiene una funcionalidad
reducida. Para usar todas las características de Azure Cloud Shell, utilice
su propia suscripción a Azure.
Cuando inicie el shell, verá una ventana de bienvenida. Puede elegir un
entorno de Bash o de PowerShell, como prefiera. También puede
cambiar el shell en cualquier momento mediante la lista desplegable
de lenguajes situada en el lado izquierdo del shell.
Por último, hay varias herramientas de administración y programación
incluidas en el entorno creado.
• Herramientas de línea de comandos de Azure (CLI de Azure,
AzCopy, etc.).
• Lenguajes o marcos, incluidos .NET Core, Python y Java.
• Compatibilidad con la administración de contenedores de
Docker, Kubernetes, etc.
• Editores de código como vim, emacs, code y nano.
• Herramientas de compilación (make, maven, npm, etc.).
• Herramientas de consulta de bases de datos, como sqlcmd.
Directorio y suscripción
32
1. Seleccione el icono de Directorio y suscripción (libro y filtro)
para mostrar el panel Directorio y suscripción.
Aquí es donde puede cambiar entre varias suscripciones o directorios.
Aquí debería ver que se encuentra en la suscripción de Concierge del
directorio Microsoft Learn Sandbox. Si tiene otros directorios de Azure
vinculados a la misma dirección de correo electrónico, esas
suscripciones también estarán disponibles.
También hay un vínculo para aprender más sobre las suscripciones y
los directorios.
2. Seleccione la X de la esquina superior derecha para cerrar el
panel Directorio y suscripción.
Panel Notificaciones
1. En la barra de menús de iconos, seleccione el
icono Notificaciones (campana). En esta ventana se muestran
las notificaciones pendientes.
2. Si aparece alguna notificación, mantenga el mouse sobre ella.
Seleccione la X que aparece en dicha notificación para
33
descartarla.
3. Seleccione Descartar todo. Ahora no se mostrará ninguna
notificación.
4. Seleccione la X de la esquina superior derecha para cerrar el
panel Notificaciones.
Configuración
1. Seleccione el icono de Configuración (engranaje) para abrir el
panel Configuración del portal, que muestra la
configuración General de forma predeterminada.
2. Abra la lista desplegable Cerrar sesión cuando esté inactivo y
seleccione Después de 1 hora.
3. En Elegir un tema, seleccione los diferentes temas con color y
observe los cambios en la interfaz de usuario del portal. Déjelo
establecido en el que más le guste.
4. En Tema de contraste alto, pruebe las tres opciones.
5. Seleccione Habilitar las notificaciones emergentes. Cuando
se activa esta opción, las notificaciones aparecerán como
notificaciones de tipo "notificación del sistema" emergente.
También se mostrarán en el icono de notificaciones (campana).
6. Seleccione la pestaña Idioma y región en la configuración.
Seleccione Idioma, elija Español y, luego, seleccione el
34
botón Aplicar. Si aparece un cuadro de diálogo Traducir esta
página, ciérrelo. Todo el portal está ahora en español.
7. Para volver al inglés, seleccione el icono
de Configuración (engranaje) en la barra de menú superior y
cámbielo en Idioma y región. Seleccione Idioma y elija Inglés.
Seleccione el botón Aplicar. El portal volverá a mostrarse en
inglés.
Panel Ayuda
1. Seleccione el icono de Ayuda (?) para mostrar el panel Ayuda.
2. Seleccione el botón Ayuda y soporte técnico.
3. En el panel Ayuda y soporte técnico, en Soporte técnico,
seleccione Nueva solicitud de soporte técnico. Para crear una
solicitud de soporte técnico, deberá rellenar la información de
cada una de las secciones siguientes y, después,
seleccionar Crear para presentar la incidencia.
o Aspectos básicos: tipo de problema
o Problema: gravedad del problema, un resumen y una
descripción y cualquier información adicional
o Información de contacto: método de contacto
preferido y la información asociada con este método de
contacto.
35
4. Puede ver el estado de las solicitudes de soporte técnico si hace
clic en Todas las solicitudes de soporte técnico.
Las solicitudes de soporte técnico solo se pueden crear con una
suscripción de pago activa. No se permite crear solicitudes de soporte
técnico desde un espacio aislado de Microsoft Learn.
Novedades y otra información
1. Seleccione el icono de Ayuda y seleccione Novedades.
2. Revise las características que se han publicado recientemente.
Tenga en cuenta también y explore las otras opciones del
menú Ayuda, tales como:
o Azure Roadmap
o Iniciar paseo guiado
o Métodos abreviados de teclado
o Mostrar diagnósticos
o Declaración de privacidad
3. Seleccione la X de la esquina superior derecha para cerrar el
panel Ayuda.
4. Cierre el panel Novedades. Ahora volverá al Panel.
Panel de comentarios
36
1. Seleccione el icono de Comentarios (cara sonriente) para abrir
el panel Envíenos comentarios.
2. Escriba sus impresiones de Azure en el cuadro Cuéntenos su
experiencia, seleccione el cuadro que indica Microsoft puede
ponerse en contacto con usted por correo electrónico en
relación con sus comentarios y seleccione Enviar
comentarios.
3. Aparece un mensaje Comentarios enviados y luego se cierra.
Ahora volverá al Panel.
Configuración del perfil
1. Seleccione su nombre en la esquina superior derecha del portal.
Las opciones incluyen:
o Iniciar sesión con otra cuenta o cerrar sesión
completamente
o Ver el perfil de cuenta, donde puede cambiar la
contraseña
o Enviar una idea
o Comprobar los permisos
o Ver la factura
o Actualizar la información de contacto.
Algunos de estos elementos no aparecen a menos que seleccione el
icono "...".
37 2. Seleccione "..." y luego Ver mi factura para ir a la
página Administración de costos y facturación: Facturas,
que le ayuda a analizar dónde se generan los costos en Azure.
3. Si usa su propia cuenta y no el espacio aislado, puede
seleccionar una suscripción en la lista desplegable.
4. Seleccione un período de facturación.
5. Observe los costos de servicio y compárelos con los que espera
para la suscripción actual.
6. Seleccione la X de la esquina superior derecha para cerrar el
panel Costos por servicio.
7. Seleccione la X de la esquina superior derecha para cerrar la
página Administración de costos y facturación: Facturas.
8. Ahora volverá a la página principal.
Ahora que se han explorado todas las áreas principales de Azure Portal,
veamos una de las características más útiles: los paneles.
38
PANELES DE AZURE
PORTAL
Veamos cómo crear y modificar los paneles mediante Azure Portal y la
edición directa del archivo JSON subyacente. En esta unidad, aprenderá
a navegar por el portal. Y, en la unidad siguiente, probará todo lo que
ha aprendido.
¿Qué es un panel?
Un panel es una colección personalizable de iconos de interfaz de
usuario mostrados en Azure Portal. Los iconos se agregan, quitan y
colocan para crear la vista exacta deseada, que luego se guarda como
39
un panel. Se admiten varios paneles y se puede cambiar entre ellos
según sea necesario. Incluso puede compartir los paneles con otros
miembros del equipo.
Los paneles proporcionan una flexibilidad considerable con respecto a
la forma de administrar Azure. Por ejemplo, puede crear paneles para
roles específicos dentro de la organización y luego usar el control de
acceso basado en rol (RBAC) para controlar quién puede acceder a ese
panel. Así, el administrador de base de datos tendría un panel con
vistas del servicio de base de datos SQL, mientras que el administrador
de Azure Active Directory tendría vistas de los usuarios y grupos dentro
de Azure AD. Incluso puede personalizar el portal entre los entornos
de producción y desarrollo, y crear un panel específico para cada
entorno que administre.
Los paneles se almacenan como archivos de notación de objetos
JavaScript (JSON). Este formato significa que se pueden cargar y
descargar en otros equipos o compartir con los miembros de Azure
Directory. Azure almacena los paneles dentro de grupos de recursos, al
igual que las máquinas virtuales o las cuentas de almacenamiento que
puede administrar en el portal.
Como los paneles son archivos JSON, también puede personalizarlos
mediante programación y así convertirlos en herramientas
administrativas atractivas. Además, algunos tipos de icono se pueden
basar en consultas y actualizarse de forma automática cuando cambien
los datos de origen.
Exploración del panel predeterminado
40 El panel predeterminado se denomina "Panel". Cuando inicie sesión en
el portal por primera vez y seleccione Panel en el menú del portal,
aparecerá este panel que contiene cinco iconos.
41
Estos elementos web predeterminados son:
1. Controles del panel
2. Icono Todos los recursos
3. Icono Inicios rápidos y tutoriales
4. Icono de Service Health
5. Icono de Marketplace
Creación y administración de paneles
En la parte superior del panel están los controles que permiten crear,
cargar, descargar, editar y compartir un panel. También puede cambiar
un panel a pantalla completa, clonarlo o eliminarlo.
Seleccionar panel
En el extremo izquierdo de la barra de herramientas se encuentra el
control de lista desplegable Seleccionar panel. Al hacer clic en este
control, puede seleccionar entre los paneles que ya ha definido para la
cuenta. Este control facilita la definición de varios paneles con
diferentes propósitos y luego cambiar de uno a otro, según lo que esté
42 intentando hacer en ese momento.
Los paneles que crea son privados inicialmente, es decir, solo el usuario
puede verlos. Para que un panel esté disponible en toda la empresa,
tiene que compartirlo. Veremos esa opción en breve.
Creación de un panel
Para crear un panel, haga clic en Nuevo panel. Aparece el área de
trabajo del panel, sin iconos. A continuación, puede agregar, quitar y
ajustar iconos como quiera. Cuando haya terminado de personalizar el
panel, haga clic en Personalización finalizada para guardar y cambiar
a ese panel.
Cargar y Descargar
Los botones Cargar y Descargar permiten descargar el panel actual
como un archivo JSON, personalizarlo y luego distribuirlo y cargarlo, o
bien hacer que otra persona cargue de nuevo ese archivo en Azure
Portal, de forma que reemplace su panel actual.
Si hace clic en Descargar, el panel actual descarga el código JSON
como un archivo que se puede editar de forma local. Después, puede
volverlo a cargar en Azure si hace clic en el botón Cargar. La descarga
y la carga de paneles se describe más adelante.
Edición de un panel mediante el portal
Aunque para modificar un panel puede descargar el archivo JSON,
cambiar los valores del archivo y volver a cargarlo en Azure, puede
43
preferir un enfoque gráfico para diseñar la interfaz de usuario. Para usar
la interfaz gráfica de usuario para configurar el panel actual, puede
cambiar al modo de edición de varias maneras:
• Haga clic en el botón Editar (icono del lápiz).
• Haga clic con el botón derecho en el área de fondo del panel y
seleccione Editar.
• Haga clic con el botón derecho en un icono y aparecerá un
menú con opciones de edición.
• Mantenga el puntero sobre un icono del panel; aparecerá un
menú ... en la esquina superior derecha con la
opción Personalizar.
El panel cambiará al modo de edición.
44 En el lado izquierdo aparece la Galería de iconos, con varios iconos
posibles. Puede filtrar la Galería de iconos por tipo de recurso y
categoría.
La incorporación de iconos es tan simple como seleccionar el icono en
la lista de la izquierda y luego arrastrarlo al área de trabajo. Luego
puede mover cada icono, cambiar su tamaño o cambiar los datos que
muestra.
Sugerencia
Una característica interesante es que puede tomar elementos del
paneles secundarios y colocarlos en el panel. Simplemente mantenga
el mouse sobre el elemento y busque el icono ... del menú Editar;
tendrá una opción "Anclar al panel" que le permite seleccionar de
forma rápida un icono desde un servicio y colocarlo en el panel.
El área de trabajo en modo de edición se divide en cuadrados. Cada
icono debe ocupar al menos un cuadrado, y los iconos se ajustan al
conjunto más grande y cercano de divisores de iconos. Los iconos que
se solapan se quitan del medio. Al crear un icono más pequeño, los
iconos que lo rodean retroceden con respecto a él.
Cambio de tamaño de los iconos
Algunos iconos tienen un tamaño establecido, que solo se puede
modificar mediante programación. Sin embargo, los iconos con una
esquina inferior derecha de color gris se pueden editar si se arrastra el
indicador de la esquina.
45
46
También puede hacer clic con el botón derecho en el menú contextual
y especificar el tamaño que quiere.
Para crear el panel, extraiga iconos de la Galería de iconos al área de
trabajo y luego reorganícelos.
Cambio de la configuración de los iconos
Algunos iconos tienen valores editables. Por ejemplo, con el icono de
reloj, cuando se arrastra al área de trabajo, se abre el icono de Editar
47
reloj. Luego puede establecer la zona horaria que muestra y también
el formato: 12 o 24 horas.
En las empresas multinacionales o transcontinentales, puede agregar
varios relojes de diferentes zonas horarias.
Aceptación de las modificaciones
Cuando haya organizado los iconos como quiera, haga clic
en Personalización finalizada o haga clic con el botón derecho y
luego haga clic en Personalización finalizada.
Editar un panel mediante la modificación del archivo JSON
También puede editar un panel mediante la modificación del archivo
JSON. Este método proporciona más opciones para cambiar la
configuración, pero no se pueden ver los cambios hasta que se carga
de nuevo el archivo en Azure. El punto de partida más sencillo consiste
en descargar el panel JSON como se ha descrito anteriormente y editar
ese archivo.
48
49
Como ejemplo, en el código JSON anterior, para cambiar el tamaño del
icono, se editarían las variables colSpan y rowSpan, y luego se
guardaría el archivo y se volvería a cargar en Azure.
Sugerencia
También puede distribuir el archivo JSON del panel a otros usuarios.
Restablecimiento de un panel
Puede restablecer cualquier panel al estilo predeterminado. En modo
de edición, haga clic con el botón derecho en el fondo del panel y
seleccione Restaurar al estado predeterminado. Un cuadro de
diálogo le pedirá que confirme que quiere restablecer ese panel.
Compartir o dejar de compartir un panel
Al definir un nuevo panel, es privado y solo visible para su cuenta. Para
que sea visible para otros usuarios, debe compartirlo. Pero como
cualquier otro recurso de Azure, debe especificar un grupo de recursos
nuevo (o usar uno existente) en el que almacenar los paneles
compartidos. Si no tiene un grupo de recursos, Azure crea un grupo de
recursos paneles en cualquier ubicación que especifique. Si ya tiene
grupos de recursos, puede especificar un grupo de recursos para
almacenar los paneles.
50
51
Cuando haya compartido la plantilla, verá un segundo panel Uso
compartido y control de acceso.
52
Luego puede hacer clic en Administrar usuarios para especificar los
usuarios que tienen acceso a ese panel.
Cambio a un panel compartido
Para cambiar a un panel compartido, haga clic en la lista de paneles y
luego en Examinar todos los paneles.
Ahora verá el panel Todos los paneles, en el que se muestran los
nombres de los paneles compartidos. Simplemente haga clic en un
panel para aplicarlo a Azure Portal.
53
Visualización de un panel en pantalla completa
Si quiere el máximo tamaño del panel, haga clic en el botón Pantalla
completa para mostrar el panel actual sin los menús del explorador. Si
tiene iconos fuera de los límites de la pantalla, aparecerán barras de
control deslizantes en la parte derecha e inferior de la pantalla.
Cuando haya terminado de trabajar en modo de pantalla completa,
presione la tecla ESC o haga clic en Salir de pantalla completa junto
al nombre Panel en la parte superior de la pantalla.
Clonación de un panel
Al clonar un panel se crea una copia instantánea denominada "Clon de
<nombre del panel>" y se cambia a esa copia como panel actual. La
clonación también es una manera fácil de crear paneles antes de
compartirlos. Por ejemplo, si tiene un panel que es casi como lo quiere,
clónelo, realice los cambios que sean necesarios y luego compártalo.
Eliminación de un panel
54
Al eliminar un panel se quita de la lista de paneles disponibles. Se le
pedirá que confirme que quiere eliminar el panel, pero no hay ninguna
función para recuperar un panel que se ha eliminado.
Vamos a probar algunas de estas opciones mediante la creación de un
panel.
EJERCICIO:
PERSONALIZACIÓN DEL
PANEL
Para completar este módulo, se necesita un espacio aislado. Un espacio
aislado le da acceso a los recursos de Azure. Su suscripción de Azure no
recibirá ningún cobro. El espacio aislado solo se puede usar para realizar
los cursos de Microsoft Learn. Está prohibido el uso con cualquier otro fin
y puede dar lugar a la pérdida permanente del acceso al espacio aislado.
Inicie sesión para activar el espacio aislado.
55 Los paneles son una herramienta flexible para administrar distintos
aspectos de los servicios de Azure a través del portal. Permiten
supervisar de forma cómoda el estado de los servicios. Como se
pueden compartir, ayudan a garantizar que todos los miembros de un
equipo ven los mismos datos y están al corriente del estado de los
componentes críticos. Vamos a crear un panel y agregarle algunos
iconos.
Creación de un panel
1. En la parte superior izquierda de Azure Portal ,
seleccione Mostrar el menú del portal > Panel.
2. Seleccione Nuevo panel.
3. En el panel central, cambie Mi panel a Customer Dashboard.
Adición y configuración del icono de reloj
1. En la galería de iconos, arrastre el reloj hacia el área de trabajo.
Colóquelo en la parte superior derecha del espacio disponible.
2. En el panel Editar reloj, cambie la ubicación a Hora del
Pacífico (EE. UU. y Canadá).
3. En Formato de hora, seleccione 24 horas.
4. Seleccione Listo.
5. Repita los cuatro pasos anteriores, pero seleccione Hora del
este (EE. UU. y Canadá). Ahora debe tener dos relojes, uno que
muestre la hora en la costa oeste y el otro en la costa este.
Cambio del tamaño de un icono
56
1. En Galería de iconos, arrastre el icono Todos los recursos y
colóquelo en la parte superior izquierda de la nueva área de
trabajo del panel.
2. Mantenga el puntero sobre el nuevo icono Todos los
recursos y seleccione el icono de puntos suspensivos (...); a
continuación, seleccione el tamaño 6x6.
3. Seleccione la esquina de color gris de la parte inferior derecha
del icono y cambie el tamaño del icono a 3,5 cuadrados
verticalmente por 6 horizontalmente. Cuando termine de
cambiar el tamaño, el icono se ajusta a 4 x 6.
4. En la Galería de iconos, arrastre el icono Grupos de recursos al
área de trabajo. Colóquelo debajo del icono Todos los
recursos.
5. En la Galería de iconos, seleccione el icono Gráfico de
métricas y arrástrelo al área de trabajo. Colóquelo a la derecha
del icono Todos los recursos.
6. Siga agregando los iconos siguientes y organícelos para que
quepan:
o Ayuda y soporte técnico
o Tareas rápidas
o Marketplace
57
7. Cuando haya agregado estos iconos,
seleccione Personalización finalizada. Debe aparecer el panel
del cliente.
Clonación de un panel
Ahora quiere crear un panel similar para otros clientes.
1. Seleccione el botón Clonar.
2. Cambie el nombre del panel de Clonación del panel del
cliente a Panel de administración de Azure AD.
3. En el icono Grupos de recursos, seleccione el icono de cubo
de basura Quitar del panel para eliminar este icono.
4. En la Galería de iconos, agregue los siguientes iconos:
o Identidad de la organización
o Usuarios y grupos
o Resumen de la actividad del usuario
5. Cambie la posición de los iconos según sea necesario y,
después, seleccione Personalización finalizada.
Uso compartido de un panel
Ahora quiere poner este panel a disposición de otros usuarios. Para
que este panel esté disponible, lleve a cabo los siguientes pasos:
1. En el panel de administración de Azure AD, seleccione el
botón Compartir situado en la parte superior. Aparece el
panel Uso compartido y control de acceso.
58
2. Desactive la casilla Publique en el grupo de recursos
"paneles".
3. Seleccione el grupo de recursos [nombre del grupo de recursos
del espacio aislado] de la lista desplegable Grupo de recursos.
4. Haga clic en Publicar.
5. Cierre el panel Uso compartido y control de acceso.
6. Al cabo de un rato, aparecerá un panel compartido en el icono
de Todos los recursos del panel.
7. Repita los pasos del 1 al 3 para compartir el panel del cliente.
Edición de un archivo [Link]
Para mostrar cómo puede descargar y editar un archivo de panel, siga
estos pasos:
1. Seleccione Descargar.
2. Abra un explorador de archivos en el equipo y vaya a la
ubicación en la que el explorador web descargó el panel,
normalmente una carpeta Descargas.
3. Busque el archivo Customer [Link] y ábralo en un
editor de texto.
4. En el editor, busque el texto ClockPart.
5. En la primera aparición de ClockPart, cambie el valor
de posición > rowSpan anterior a 1.
59
6. En la segunda aparición de ClockPart, cambie también el valor
de posición > rowSpan anterior a 1.
7. En la segunda aparición de Clockpart, cambie el valor
de posición > y de 2 a 1.
8. Guarde el archivo Customer [Link] y cierre el editor de
código.
9. En el panel de Azure, seleccione Cargar.
10. En el cuadro de diálogo Abrir, vaya a la carpeta de descargas y
haga doble clic en Customer [Link].
Los relojes han cambiado de tamaño a una fila de alto y el reloj inferior
se ha movido una fila hacia arriba.
Selección de un panel compartido
Se ha dado cuenta de que no le gustan los relojes más pequeños y
quiere volver a la versión compartida anterior del Panel del cliente. Para
ello, edite el archivo y cárguelo de nuevo, o bien acceda a la versión
compartida. Para ello, siga estos pasos:
1. Seleccione la flecha abajo junto a Panel de cliente.
2. Seleccione Examinar todos los paneles.
3. En el panel Todos los paneles, en TIPO, seleccione Paneles
compartidos.
4. Seleccione Panel de cliente.
5. Cierre el panel Todos los paneles.
60
Los relojes han vuelto a su tamaño original.
Cambio a pantalla completa
1. Seleccione la flecha abajo junto a Panel de cliente.
Ahora hay otro panel de cliente, sin el símbolo compartido. Seleccione
esa versión del panel de cliente y los relojes volverán a ser pequeños.
2. Vuelva a cambiar al panel de cliente compartido.
3. Seleccione el botón Pantalla completa. Han desaparecido
todos los menús y barras del explorador.
4. Seleccione Salir de pantalla completa para volver a la pantalla
estándar.
Dejar de compartir un panel
Si quiere evitar que un panel compartido esté disponible para su
selección, puede dejar de compartirlo. Para dejar de compartir un panel,
siga estos pasos:
1. Seleccione el botón Dejar de compartir. Aparece el panel Uso
compartido y control de acceso.
2. Seleccione el botón Cancelar publicación.
3. En el cuadro de mensaje de confirmación, seleccione Aceptar.
4. Seleccione la flecha abajo junto a Panel de cliente.
5. Seleccione Examinar todos los paneles.
61 6. En el panel Todos los paneles, en TIPO, seleccione Paneles
compartidos.
El panel del cliente ya no aparece en la lista de paneles disponibles.
7. Cierre el panel Todos los paneles.
Eliminación de un panel
1. Asegúrese de que el panel Administración de Azure AD esté
seleccionado.
2. Seleccione el botón Eliminar.
3. En el cuadro de mensaje Confirmación, active la casilla para
confirmar que este panel dejará de ser visible y, después, haga
clic en Aceptar.
Restablecimiento de un panel
1. Asegúrese de que está seleccionado Panel de cliente.
2. Seleccione Editar.
3. Haga clic con el botón derecho en el área de trabajo y
seleccione Restaurar al estado predeterminado.
4. En el cuadro de mensaje Restaurar al estado
predeterminado, seleccione Sí.
El panel de cliente se ha restablecido a sus iconos predeterminados.
5. Seleccione Personalización finalizada.
6. Seleccione su nombre en la parte superior derecha del portal.
62
7. Seleccione Cerrar sesión.
8. Cierre el explorador.
Enhorabuena. Ahora ha creado y editado paneles, los ha compartido,
los ha modificado como archivos JSON, ha dejado de compartirlos y,
por último, los ha restablecido a su estado predeterminado. Ahora
debería poder comprobar qué herramientas tan eficaces pueden llegar
a ser los paneles y cómo se pueden usar para crear interfaces eficientes
para diferentes roles dentro de una organización.
ACCESO A
CARACTERÍSTICAS EN
VERSIÓN PRELIMINAR
PÚBLICA Y PRIVADA
Microsoft ofrece versiones preliminares de las características de Azure
con fines de evaluación. Con las características de versión preliminar de
Azure, puede probar versiones beta y preliminares de características,
productos, servicios, software y regiones.
Estas son algunas de las áreas comunes para las que verá versiones
63 preliminares:
Nuevos tipos de almacenamiento
Nuevos servicios de Azure, como mejoras de Machine Learning
Integración nueva o mejorada con otras plataformas
Nuevas API para servicios
Las versiones preliminares de características de Azure están disponibles
bajo determinados términos y condiciones que son específicos de cada
versión preliminar de Azure concreta. Además, algunas versiones
preliminares no están cubiertas por el servicio de asistencia al cliente.
Después de evaluar y probar correctamente una característica, es
posible que se publique para los clientes como parte del conjunto de
productos predeterminado de Azure. Esta versión se conoce
como Disponibilidad general (GA).
Categorías de versión preliminar de características
Hay dos tipos de versiones preliminares disponibles:
• Versión preliminar privada. Una característica de Azure
marcada como "versión preliminar privada" está disponible
para clientes específicos de Azure con fines de evaluación. Esto
suele ser solo por invitación y el equipo responsable de la
característica o el servicio la emite directamente.
• Versión preliminar pública. Una característica de Azure
marcada como "versión preliminar pública" está disponible
para todos los clientes de Azure con fines de evaluación. Estas
64
versiones preliminares se pueden activar a través de la página
de características de versión preliminar como se detalla a
continuación.
Encontrar las características de versión preliminar
Puede obtener información sobre las características en versión
preliminar específicas a través de la página de características de versión
preliminar . En esta página se enumeran las características en versión
preliminar que están disponibles para su evaluación. Para acceder a una
característica en versión preliminar, seleccione su entrada en esta
página y obtenga información sobre cómo evaluarla. También puede
usar el botón Fuente RSS de esta página para suscribirse a las
notificaciones y estar al día.
También puede seguir los pasos que hay a continuación para encontrar
las características en versión preliminar de Azure en el portal:
• Inicie sesión en Azure Portal.
• Seleccione Crear un recurso en el panel de recursos para abrir
el panel Nuevo.
• Escriba la palabra preview (versión preliminar) en el cuadro de
búsqueda de la parte superior del panel Nuevo.
• Se mostrará una lista de las características en versión preliminar
disponibles, con la palabra (preview) junto a ellas.
Características en versión preliminar en Azure Portal
Otra área de versión preliminar que puede probar es la próxima versión
65
de Azure Portal. Use la dirección
URL [Link] (observe el prefijo preview).
Las características en versión preliminar típicas del portal proporcionan
mejoras de rendimiento, navegación y accesibilidad a la interfaz de
Azure Portal. Se marcará con Microsoft Azure (versión
preliminar) en la barra superior, por lo que sabrá que está en el portal
de versión preliminar.
Envío de comentarios sobre las características en versión
preliminar
Si usa el portal de versión preliminar o una característica en versión
preliminar, a Microsoft le gustaría conocer su experiencia. Puede
proporcionar comentarios a través del icono de cara sonriente del
portal o mediante la publicación de ideas y sugerencias en el foro de
comentarios de Azure Portal.
Obtención de notificaciones sobre versiones de disponibilidad
general
En el vínculo "Novedades" de Azure Portal, en el menú Ayuda (?), se
proporciona una lista de las actualizaciones recientes, que puede
comprobar periódicamente para saber qué ha cambiado en Azure.
Como alternativa, puede usar la página Actualizaciones de Azure. En
esta página se proporciona información adicional y características,
incluido lo siguiente:
Qué actualizaciones son de disponibilidad general, versión
preliminar o desarrollo.
66
Examen de las actualizaciones por categoría de producto o tipo
de actualización, mediante las listas desplegables
proporcionadas.
Búsqueda de actualizaciones por palabra clave, si escribe los
términos de búsqueda en un campo de entrada de texto.
Suscripción para recibir notificaciones de actualizaciones de
Azure mediante RSS.
RESUMEN
En este módulo se ha analizado mucha información.
• Ha aprendido cómo iniciar sesión en Azure mediante una
cuenta de Azure.
• Ha revisado las características de Azure Portal y sus opciones
de personalización.
• Ha creado, personalizado y compartido un panel.
Sin embargo, esto es solo el principio. Azure tiene mucho más que
ofrecerle, con independencia de la función que desempeñe en su
organización. Si es un desarrollador, Azure proporciona una manera
fácil de probar nuevas plataformas y crear aplicaciones sofisticadas. Si
67
es administrador, usará Azure Portal, la CLI de Azure o las herramientas
de Azure PowerShell para administrar la infraestructura basada en la
nube. Si es un arquitecto, puede usar Azure para probar rápidamente
nuevas ideas de arquitectura.
Para continuar con la exploración de Azure, seleccione una o más rutas
a través del contenido que tenga la estructura específica para lo que
quiera aprender.
1
Conceptos de la nube:
Principios de la informática
en la nube
BIENVENIDA
Explore los conceptos principales de la informática en la nube y cómo
puede ayudar a la empresa.
En este módulo, aprenderá a realizar estas tareas:
Explorar servicios informáticos en la nube comunes
Explorar las ventajas de la informática en la nube
Decidir qué modelo de implementación en la nube es mejor
para usted
2
Requisitos previos
Ninguno
Introducción 4 min
¿Qué es la informática en la nube? 8 min
Beneficios de la informática en la nube 8 min
Requisitos y condiciones de cumplimiento 8 min
Economías de escala 1 min
Gastos de capital frente a gastos operativos 7 min
Modelos de implementación en la nube 10 min
Tipos de servicios en la nube 10 min
Prueba de conocimientos 3 min
Resumen 3 min
3
INTRODUCCIÓN
Cuando enciende una luz, simplemente quiere que funcione. Sabe que
para que esto ocurra se necesita electricidad, pero en ese momento,
los detalles de cómo llega la electricidad a la bombilla no son
importantes. Es posible que no piense en que la electricidad se crea en
una central eléctrica y viaja por una gran red de líneas de transmisión
de alta tensión hasta su ciudad, atraviesa una subestación y, finalmente,
4 llega a su casa.
El proceso de encender una luz se oculta detrás del simple hecho de
pulsar un interruptor. En este momento, la electricidad se convierte en
una utilidad, que tiene muchas ventajas. En primer lugar, solo paga por
lo que necesita. Cuando compra una bombilla, no paga al proveedor
de electricidad por adelantado por el tiempo durante el que podría
usarla. En su lugar, paga por la cantidad de electricidad que realmente
usa. En segundo lugar, no tiene que preocuparse sobre cómo o cuándo
se actualizan las centrales eléctricas a la tecnología más reciente. Por
último, no tiene que administrar el escalado de la electricidad. Por
ejemplo, a medida que las personas se mudan a su ciudad, puede estar
seguro de que seguirá teniendo luz.
Como profesional de la tecnología, sería bueno tener estas ventajas al
desarrollar e implementar aplicaciones. El almacenamiento de datos, el
streaming de vídeo o incluso el hospedaje de un sitio web, todo ello
requiere la administración de hardware y software. Esta administración
es un obstáculo innecesario al entregar la aplicación a los usuarios. Por
suerte, hay una solución a este problema: la informática en la nube.
Objetivos de aprendizaje
En este módulo aprenderá a:
• Explorar servicios informáticos en la nube comunes.
• Explorar las ventajas de la informática en la nube.
• Decidir qué modelo de implementación en la nube es mejor
para usted.
5
¿QUÉ ES LA INFORMÁTICA
EN LA NUBE?
La informática en la nube consiste en alquilar recursos como espacio
de almacenamiento o ciclos de CPU en los equipos de otra empresa.
Solo paga por lo que usa. La empresa que proporciona estos servicios
se conoce como un proveedor de nube. Algunos ejemplos de
proveedores son Microsoft, Amazon y Google.
El proveedor de nube es responsable del hardware físico necesario para
ejecutar el trabajo y de mantenerlo actualizado. Los servicios
informáticos ofrecidos suelen variar en función del proveedor. Pero
6 normalmente incluyen:
Potencia de proceso: por ejemplo, aplicaciones web o
servidores Linux.
Almacenamiento: por ejemplo, archivos y bases de datos.
Redes: por ejemplo, conexiones seguras entre el proveedor de
nube y su empresa.
Análisis: por ejemplo, visualización de telemetría y datos de
rendimiento.
Servicios de informática en la nube
El objetivo de la informática en la nube es simplificar y aumentar la
eficiencia de la gestión de un negocio, tanto si son pequeñas empresas
emergentes o grandes empresas. Cada empresa es única y tiene
necesidades distintas. Para satisfacer esas necesidades, los
proveedores de informática en la nube ofrecen una amplia gama de
servicios.
Debe tener un conocimiento básico de algunos de los servicios que se
proporcionan. Vamos a describir brevemente los dos servicios más
comunes que ofrecen todos los proveedores de nube: la potencia de
proceso y el almacenamiento.
Potencia de proceso
Cuando envía un correo electrónico, hace una reserva en Internet, paga
una factura en línea o incluso realiza este módulo de Microsoft Learn,
está interactuando con servidores basados en la nube que procesan
cada solicitud y devuelven una respuesta. Como consumidores, todos
dependemos de los servicios informáticos que proporcionan los
7 distintos proveedores de nube que componen Internet.
Al compilar soluciones con la informática en la nube, puede elegir
cómo quiere que se realice el trabajo en función de sus necesidades y
recursos. Por ejemplo, si quiere tener más control y responsabilidad
sobre el mantenimiento, podría crear una máquina virtual (VM). Una
máquina virtual es una emulación de un equipo, igual que el equipo de
escritorio o portátil que está usando ahora. Cada máquina virtual
incluye un sistema operativo y hardware que se muestra al usuario
como un equipo físico que ejecuta Windows o Linux. Después, puede
instalar cualquier software que necesite para realizar las tareas que
quiera ejecutar en la nube.
La diferencia es que no tiene que comprar ningún hardware ni instalar
el sistema operativo. El proveedor de nube ejecuta la máquina virtual
en un servidor físico en uno de sus centros de datos, y a menudo
comparte ese servidor con otras máquinas virtuales (aisladas y
seguras). Con la nube, puede tener una máquina virtual lista para
funcionar en cuestión de minutos con un costo menor que un equipo
físico.
Las máquinas virtuales no son la única opción informática, hay otras
dos opciones populares: contenedores e informática sin servidor.
¿Qué son los contenedores?
Los contenedores proporcionan un entorno de ejecución aislado y
coherente para las aplicaciones. Son similares a las máquinas virtuales,
salvo que no requieren un sistema operativo invitado. En su lugar, la
aplicación y todas sus dependencias se empaquetan en un
“contenedor” y después se usa un entorno de ejecución estándar para
8 ejecutar la aplicación. Esto permite que el contenedor se inicie en tan
solo unos segundos, porque no hay ningún sistema operativo que
arrancar e inicializar. Solo necesita la aplicación que quiere iniciar.
El proyecto de código abierto Docker es una de las principales
plataformas de administración de contenedores. Los contenedores de
Docker proporcionan un enfoque eficaz y ligero para implementar
aplicaciones porque permiten que los distintos componentes de la
aplicación se implementen de forma independiente en contenedores
diferentes. En una única máquina pueden ejecutarse varios
contenedores y estos se pueden mover entre máquinas. La portabilidad
de los contenedores facilita la implementación de las aplicaciones en
varios entornos, ya sean locales o en la nube, a menudo sin necesidad
de modificar la aplicación.
¿Qué es la informática sin servidor?
La informática sin servidor le permite ejecutar código de aplicación sin
necesidad de crear, configurar o mantener un servidor. La idea principal
es que la aplicación se divide en diferentes funciones que se ejecutan
cuando las desencadena alguna acción. Esto es ideal para las tareas
automatizadas. Por ejemplo, puede compilar un proceso sin servidor
que envíe automáticamente un correo electrónico de confirmación
después de que un cliente realice una compra en línea.
El modelo sin servidor difiere de las máquinas virtuales y los
contenedores en que usted solo paga por el tiempo de procesamiento
que ha usado cada función mientras se ejecuta. Las máquinas virtuales
y los contenedores se cobran mientras se ejecutan, incluso si las
aplicaciones están inactivas. Esta arquitectura no funciona con todas
9
las aplicaciones, pero si la lógica de la aplicación se puede dividir en
unidades independientes, puede probarlas por separado, actualizarlas
por separado e iniciarlas en microsegundos. Por lo tanto, este enfoque
es la opción más rápida para la implementación.
Almacenamiento
La mayoría de los dispositivos y las aplicaciones leen o escriben datos.
Estos son algunos ejemplos:
Comprar una entrada de cine en línea
Buscar el precio de un artículo en línea
Hacer una foto
Enviar un correo electrónico
Dejar un correo de voz
En todos estos casos, los datos se leen (buscar un precio) o se escriben
(hacer una foto). El tipo de datos y cómo se almacenan puede ser
diferente en cada uno de estos casos.
Los proveedores de servicios en la nube suelen ofrecer servicios que
pueden administrar todos estos tipos de datos. Por ejemplo, si quiere
almacenar texto o un clip de película, podría usar un archivo en disco.
Si tuviera un conjunto de relaciones (por ejemplo, una libreta de
direcciones), podría decidirse por un enfoque más estructurado, como
usar una base de datos.
La ventaja de usar el almacenamiento de datos basado en la nube es
que puede escalarlo para satisfacer sus necesidades. Si determina que
necesita más espacio para almacenar los clips de película, puede pagar
un poco más y agregar espacio disponible. En algunos casos, el
10
almacenamiento incluso puede expandirse y contraerse
automáticamente, de forma que paga exactamente por lo que necesita
en un momento determinado.
Resumen
Cada empresa tiene distintas necesidades y requisitos. La informática
en la nube es flexible y rentable, lo que puede ser beneficioso para
todos los negocios, ya sea una pequeña empresa emergente o una
gran empresa.
11
BENEFICIOS DE LA
INFORMÁTICA EN LA
NUBE
La informática La informática en la nube no es un enfoque de servicio
de todo o nada. Las empresas pueden optar por usar la nube para
almacenar sus datos y ejecutar la lógica a un nivel totalmente
personalizado y de acuerdo con sus requisitos empresariales. Las
empresas existentes pueden elegir una migración gradual para ahorrar
en costos de infraestructura y administración (o migración mediante
lift-and-shift), mientras que una empresa nueva puede comenzar
12
desde cero en la nube.
Vamos a conocer algunas de las principales ventajas de la informática
en la nube.
Es rentable
La informática en la nube proporciona un modelo de precios de pago
por uso o basado en el consumo.
Este modelo basado en el consumo aporta muchas ventajas, por
ejemplo:
No hay costos iniciales de infraestructura.
No es necesario comprar ni administrar infraestructuras costosas que
es posible que no se aprovechen del todo.
Se puede pagar para obtener recursos adicionales, y solo si se
necesitan y en el momento en el que se necesiten.
Se puede dejar de pagar por los recursos que ya no se necesiten.
Factura y nube que representan la rentabilidad
Esto también permite predecir mejor los costos. Como los precios de
los recursos y servicios se proporcionan por separado, puede predecir
cuánto va a gastar durante un período de facturación determinado en
función del uso que prevea. También puede realizar el análisis
basándose en el crecimiento futuro a partir de los datos de uso del
historial de los que hace el seguimiento su proveedor de servicios en
la nube.
13
Es escalable
Puede aumentar o disminuir los recursos y servicios que va a usar en
función de la demanda o la carga de trabajo siempre que quiera. La
informática en la nube admite el escalado vertical y horizontal, según
sus necesidades.
Escalado vertical, que es el proceso de agregar recursos para aumentar
la potencia de un servidor existente. Un ejemplo de escalado vertical
sería el hecho de agregar más CPU o más memoria.
Escalado horizontal, que es el proceso de agregar más servidores que
funcionen conjuntamente como una unidad. Por ejemplo, tener más de
un servidor para procesar solicitudes entrantes.
Gráfico de crecimiento que representa la escalabilidad
El escalado puede ser manual o automático según desencadenadores
específicos, como el uso de la CPU o el número de solicitudes y
recursos que se pueden asignar o desasignar en cuestión de minutos.
Es elástica
Cuando la carga de trabajo cambia debido a un aumento o una
disminución de la demanda, un sistema de informática en la nube
puede compensarlo mediante la incorporación o la retirada automática
de recursos.
Por ejemplo, imagine que su sitio web aparece en un artículo de
14 noticias, lo que comporta un aumento del tráfico de la noche a la
mañana. Como la nube es elástica, esta asigna automáticamente más
recursos informáticos para controlar el incremento del tráfico. Cuando
el tráfico comience a normalizarse, la nube desasignará
automáticamente los recursos adicionales para minimizar el costo.
Gráfico de puntos que representa la elasticidad
Otro ejemplo sería la ejecución de una aplicación que usan los
empleados: puede hacer que la nube agregue recursos
automáticamente durante las horas de máxima actividad, cuando más
usuarios acceden a la aplicación, y que los quite al final del día.
Es actual
Al usar la nube, puede centrarse en lo que realmente importa:
desarrollar e implementar aplicaciones. El uso de la nube permite
eliminar las cargas de mantenimiento de las revisiones de software, el
programa de instalación de hardware, las actualizaciones y otras tareas
de administración de TI. Todo esto se realiza de forma automática para
garantizar que use las herramientas más recientes y adecuadas para
dirigir su negocio.
Calendario que representa que se mantiene al día
Además, el proveedor de nube se encarga del mantenimiento y la
actualización del hardware del equipo. Por ejemplo, si se produce un
15
error en un disco, el proveedor de servicios en la nube lo reemplazará.
Si hay disponible una nueva actualización de hardware, no tiene que
pasar por todo el proceso de sustitución del hardware. El proveedor de
servicios en la nube garantizará que las actualizaciones de hardware
estén a su disposición automáticamente.
Es confiable
Cuando se tiene un negocio, uno necesita asegurarse de que los datos
siempre van a estar ahí. Los proveedores de informática en la nube
ofrecen servicios de copia de seguridad, recuperación ante desastres y
replicación de datos para garantizar que los datos estén siempre
seguros. Además, a menudo se integra redundancia en la arquitectura
de los servicios en la nube, de modo que, si se produce un error en un
componente, otro componente de copia de seguridad ocupa su lugar.
Esto se conoce como tolerancia a errores y garantiza que los clientes
no se vean afectados cuando se produzca un desastre.
Certificado que representa la confiabilidad
Es global. Los proveedores de servicios en la nube tienen centros de
datos totalmente redundantes ubicados en distintas regiones del
mundo. Esto le da una presencia local, cercana a sus clientes, lo que le
permite ofrecerles el mejor tiempo de respuesta posible estén donde
estén.
Puede replicar sus servicios en diferentes regiones para ofrecer
redundancia y localidad, o seleccionar una región específica para
garantizar que cumple las leyes de residencia de datos y de
16
cumplimiento para los clientes.
Globo terráqueo que representa varios centros de datos
Es segura. Piense en cómo proteger su centro de datos. Por un lado,
está la seguridad física, es decir, quién tienen acceso al edificio, quién
puede manejar los bastidores de los servidores, etc. Por otro, está la
seguridad digital, es decir, quién puede conectarse a los sistemas y a
los datos a través de la red.
Los proveedores de servicios en la nube ofrecen un amplio conjunto
de directivas, tecnologías, controles y habilidades técnicas expertas que
pueden proporcionar más seguridad de la que la mayoría de las
organizaciones pueden lograr por otros medios.
El resultado es una seguridad reforzada, que ayuda a proteger los
datos, las aplicaciones y la infraestructura frente a potenciales
amenazas.
Candado que representa la seguridad
En lo que respecta a las amenazas a la seguridad física, es decir, a la
infraestructura de la nube, los proveedores de servicios en la nube
realizan grandes inversiones en muros, cámaras, puertas, personal de
seguridad, etc., para proteger los activos físicos. También tienen
procedimientos estrictos para garantizar que los empleados solo
tengan acceso a aquellos recursos que se les haya permitido
administrar.
17
Hablemos sobre la seguridad digital. Quizá solo quiera que los usuarios
autorizados puedan iniciar sesión en máquinas virtuales o sistemas de
almacenamiento que se ejecutan en la nube. Los proveedores de
servicios en la nube ofrecen herramientas que le ayudarán a mitigar las
amenazas de seguridad y debe usarlas para proteger los recursos que
usa.
Resumen
La informática en la nube facilita la administración de un negocio. Es
rentable, escalable, elástica, actual, confiable y segura. Esto significa
que puede dedicar más tiempo a lo que importa y menos tiempo a
administrar los detalles subyacentes.
18
REQUISITOS Y
CONDICIONES DE
CUMPLIMIENTO
Al seleccionar un proveedor de nube para hospedar las soluciones,
debería comprender en qué medida puede ayudarle ese proveedor a
cumplir con las normas y estándares. Estas son algunas de las
preguntas que se podrían formular sobre un proveedor potencial:
¿Qué cumplimiento ofrece el proveedor de nube cuando se
trata de controlar datos confidenciales?
¿Qué cumplimiento ofrecen los servicios del proveedor de
19
nube?
¿Cómo puedo implementar mis propias soluciones basadas en
la nube en escenarios que tienen requisitos de cumplimiento o
de acreditación?
¿Qué términos forman parte de la declaración de privacidad
para el proveedor?
Ofertas de cumplimiento
En la lista siguiente se proporcionan detalles sobre algunas de las
ofertas de cumplimiento disponibles.
Criminal Justice Information Services (CJIS, Servicios de
información de la justicia penal). Cualquier agencia local o
estatal de EE. UU. que quiera acceder a la base de datos de los
CJIS del FBI debe cumplir la directiva de seguridad de los CJIS.
Azure es el único gran proveedor de nube que se compromete
contractualmente al cumplimiento de la directiva de seguridad
de los CJIS, que obliga a Microsoft a cumplir los mismos
requisitos que deben cumplir las fuerzas y entidades de
seguridad pública.
Certificación STAR de Cloud Security Alliance (CSA). Azure,
Intune y Microsoft Power BI han obtenido la certificación STAR,
la cual exige una rigurosa evaluación por parte de un tercero
independiente del nivel de seguridad ofrecido por el proveedor
de servicios en la nube. Esta certificación STAR se basa en lograr
la certificación ISO/IEC 27001 y cumplir los criterios
especificados en la Cloud Controls Matrix (CCM, Matriz de
controles para la nube). Esta certificación demuestra que un
20
proveedor de servicios en la nube:
o Cumple los requisitos aplicables de la norma ISO/IEC
27001.
o Ha solucionado problemas críticos para la seguridad de
la nube, tal y como se describe en la CCM.
o Ha sido evaluado según el Modelo de madurez y de
capacidad de STAR para la administración de
actividades en las áreas de control de la CCM.
Reglamento general de protección de datos (RGPD). A partir del
25 de mayo de 2018, está en vigor una ley de privacidad
Europea de — RGPD —. El RGPD impone nuevas reglas sobre
las empresas, agencias gubernamentales, entidades sin ánimo
de lucro y otras organizaciones que ofrecen bienes y servicios
a personas de la Unión Europea (UE) o que recopilan y analizan
datos vinculados a residentes en la UE. El RGPD se aplica con
independencia de la ubicación.
Cláusulas modelo de la UE. Microsoft ofrece a los clientes
cláusulas contractuales estándar de la UE que proporcionan
garantías contractuales con respecto a las transferencias de
datos personales fuera de la Unión Europea. Microsoft es la
primera compañía en recibir la aprobación conjunta del grupo
de trabajo del artículo 29 de la UE que avala que las
protecciones de seguridad contractuales que Azure ofrece a sus
clientes empresariales en la nube cumplen los estándares
actuales de la UE para la transferencia internacional de datos.
Esto garantiza que los clientes de Azure puedan usar los
servicios de Microsoft para mover datos libremente a través de
la nube de Microsoft desde Europa al resto del mundo.
21
Ley de transferencia y responsabilidad de seguros de salud
(HIPAA). HIPAA es una ley federal de EE. UU. que regula la
información médica protegida (PHI) de los pacientes. Azure
ofrece a los clientes un contrato de socio empresarial (BAA)
para HIPAA, el cual estipula su adhesión a determinadas
disposiciones de seguridad y privacidad de las leyes HIPAA y
Health Information Technology for Economic and Clinical
Health Act (HITECH). Para ayudar a los clientes en sus esfuerzos
de cumplimiento individual, Microsoft ofrece un contrato de
socio empresarial (BAA) a los clientes de Azure como un anexo
de contrato.
Organización internacional de normalización (ISO) y la
Comisión electrotécnica internacional (CEI) 27018. Microsoft es
el primer proveedor de nube que ha adoptado las normas
ISO/IEC 27018, que abarcan el procesamiento de información
personal por parte de proveedores de servicios en la nube.
Estándar de seguridad en la nube multinivel (MTCS) de
Singapur. Tras rigurosas evaluaciones llevadas a cabo por el
cuerpo de certificación del MTCS, los servicios en la nube de
Microsoft recibieron la certificación MTCS 584:2013 en todas las
clasificaciones de tres servicios:
• Infraestructura como servicio (IaaS)
• Plataforma como servicio (PaaS)
• Software como servicio (SaaS)
Microsoft fue el primer proveedor de soluciones en la nube (CSP)
global que recibió esta certificación en las tres clasificaciones.
Controles de organización de servicios (SOC) 1, 2 y 3. Los
22
servicios en la nube cubiertos por Microsoft se auditan al menos
anualmente en el marco de informes SOC por parte de
auditores independientes de terceros. La auditoría de servicios
en la nube de Microsoft abarca los controles de seguridad de
los datos, la disponibilidad, la integridad del procesamiento y la
confidencialidad, que son aplicables a los principios de
confianza incluidos para cada servicio.
Marco de ciberseguridad (CSF) del Instituto Nacional de
Estándares y Tecnología (NIST). El CSF del NIST es un marco
voluntario que consta de los estándares, las directrices y los
procedimientos recomendados para administrar los riesgos
relacionados con la ciberseguridad. Los servicios en la nube de
Microsoft se han sometido a auditorías de terceros de nivel alto
y moderado del Federal Risk and Authorization Management
Program (FedRAMP) y están certificados según los estándares
del FedRAMP. Además, a través de una evaluación validada
realizada por Health Information Trust Alliance (HITRUST), una
organización líder de desarrollo y acreditación de estándares de
seguridad y privacidad, Office 365 está certificado para los
objetivos especificados en el CSF NIST.
G-Cloud del gobierno del Reino Unido. El G-Cloud del gobierno
del Reino Unido es una certificación de informática en la nube
para los servicios usados por las entidades gubernamentales en
el Reino Unido. Azure ha recibido la acreditación oficial del
Government Accreditor del gobierno del Reino Unido.
23
ECONOMÍAS DE ESCALA
Las economías de escala son la capacidad de hacer cosas de forma
más eficiente o a un costo inferior por unidad al funcionar a una escala
mayor. Esta ventaja de costos es un beneficio importante de la
informática en la nube.
Los proveedores de servicios en la nube, como Microsoft, Google y
Amazon, son grandes empresas que pueden beneficiarse de las
ventajas de las economías de escala. Además, estos proveedores
pueden traspasar el ahorro a sus clientes.
Los ahorros de los usuarios finales se ponen de manifiesto de varias
formas, una de las cuales es la capacidad de adquirir hardware a un
24
costo inferior. Los proveedores de servicios en la nube también pueden
hacer operaciones con los gobiernos y servicios públicos locales para
obtener ahorros fiscales, menores precios de energía, refrigeración y
conectividad de red de alta velocidad entre sitios. Los proveedores de
servicios en la nube podrán repercutir estos beneficios a los usuarios
finales en forma de precios más bajos que los que podrían conseguir
por su cuenta.
GASTOS DE CAPITAL
FRENTE A GASTOS
OPERATIVOS
Anteriormente, las empresas tenían que adquirir infraestructuras y
entornos físicos para iniciar sus negocios. La infraestructura y el
hardware necesarios para iniciar cualquier negocio suponían un costo
por adelantado considerable. La informática en la nube permite ofrecer
servicios a los clientes sin tener que invertir grandes cantidades de
dinero por adelantado ni dedicar mucho tiempo a preparar el equipo.
Estos dos enfoques relativos a la inversión se conocen como:
25
Gastos de capital: los gastos de capital hacen referencia a la
inversión previa de dinero en infraestructura física, el IVA de
cuyas facturas se podrá deducir posteriormente. Este tipo de
gasto se hace por adelantado y tiene un valor que disminuye
con el tiempo.
Gastos operativos: los gastos operativos son dinero que se
invierte en servicios o productos y se facturan al instante. Este
gasto se puede deducir de la factura con IVA durante el mismo
año. No hay ningún costo por adelantado. Se paga por un
servicio o producto a medida que se usa.
Costos de los gastos de capital de informática
Un centro de datos local típico incluye costos como los siguientes:
Costos de servidores
En esta área se incluyen todos los componentes de hardware y su costo
de asistencia. Al comprar servidores, asegúrese de diseñar la tolerancia
a errores y la redundancia, como clústeres de servidores, fuentes de
alimentación redundantes y fuentes de alimentación ininterrumpida.
Cuando sea necesario reemplazar un servidor o agregarlo a un centro
de datos, tendrá que pagar por el equipo. Esto puede afectar al flujo
de efectivo inmediato porque tendrá que pagar el servidor por
adelantado.
Costos de almacenamiento
26
En esta área se incluyen todos los componentes de hardware de
almacenamiento y su costo de asistencia. En función de la aplicación y
el nivel de tolerancia a errores, el almacenamiento centralizado puede
ser costoso. Para las organizaciones de mayor tamaño, puede crear
niveles de almacenamiento en los que el almacenamiento con
tolerancia a errores más costoso se use para las aplicaciones críticas y
el menos costoso para los datos de menor prioridad.
Costos de red
Los costos de red incluyen todos los componentes de hardware locales,
incluido el cableado, los conmutadores, los puntos de acceso y los
enrutadores. Esto también incluye las conexiones a Internet y de red de
área extensa (WAN).
Costos de copia de seguridad y archivo
Este es el costo de realizar copias de seguridad y copiar o archivar los
datos. Las opciones podrían incluir la configuración de una copia de
seguridad con la nube como origen o destino. Hay un costo por
adelantado para el hardware y otros costos adicionales de
mantenimiento de las copias de seguridad y los bienes consumibles,
como las cintas.
Costos de continuidad y recuperación ante desastres de la
organización
Junto con la tolerancia a errores y la redundancia del servidor, tendrá
que planear cómo recuperarse ante un desastre y seguir operativo. El
plan debe consistir en crear un sitio de recuperación de datos. También
27 podría incluir generadores de reserva. La mayoría son costos por
adelantado, especialmente si crea un sitio de recuperación de datos,
pero hay un costo adicional continuo para la infraestructura y su
mantenimiento.
Costos de infraestructura del centro de datos
Estos son los costos de la construcción y la fabricación de equipos, así
como los futuros costos de renovación y remodelación que pueden
surgir a medida que aumenten las demandas. Además, esta
infraestructura incurre en gastos operativos de electricidad, superficie,
refrigeración y mantenimiento del edificio.
Personal técnico
Aunque no se trata de un gasto de capital, el personal necesario para
trabajar en la infraestructura es específico de los centros de trabajo
locales. Necesitará personal y conocimientos técnicos para instalar,
implementar y administrar los sistemas en el centro de datos y en el
sitio de recuperación de datos.
Costos de los gastos operativos de la informática en la nube
Con la informática en nube, muchos de los costos asociados a un
centro de datos local recaen en el proveedor de servicios. En lugar de
pensar en los costos del hardware físico y el centro de datos, la
informática en la nube tiene otro conjunto de costos. A efectos de
contabilidad, todos estos costos son gastos operativos:
28
Leasing de software y características personalizadas
El uso de un modelo de pago por uso requiere la administración activa
de las suscripciones para garantizar que los usuarios no utilicen de
forma indebida los servicios y que las cuentas aprovisionadas no se
empleen en vano. La facturación se inicia cuando el proveedor
aprovisiona los recursos. Su responsabilidad es cancelar el
aprovisionamiento de los recursos cuando no están en uso, para poder
minimizar los costos.
El escalado se cobra en función del uso o la demanda, en lugar del
hardware fijo o la capacidad.
La informática en nube se puede facturar de varias maneras, como el
número de usuarios o el tiempo de uso de CPU. Sin embargo, las
categorías de facturación también pueden incluir la RAM asignada, las
operaciones de E/S por segundo (IOPS) y el espacio de
almacenamiento. Establezca una previsión del tráfico de las copias de
seguridad y del de la recuperación de datos para determinar el ancho
de banda necesario.
Facturación en el nivel de usuario o la organización.
El modelo de suscripción (pago por uso) es un método de facturación
de informática diseñado para organizaciones y usuarios. A la
organización o al usuario se le facturan los servicios utilizados,
normalmente de forma periódica. Puede escalar, personalizar y
aprovisionar los recursos informáticos, incluidas las plataformas de
software, almacenamiento y desarrollo. Por ejemplo, cuando se usa un
servicio en la nube dedicado, puede pagar en función del uso y el
29
hardware del servidor.
Ventajas de los gastos de capital
Con los gastos de capital, los gastos se planean al principio de un
proyecto o período de presupuesto. Los costos son fijos, lo que
significa que sabe exactamente cuánto se gasta. Esto es atractivo
cuando tiene que predecir los gastos antes de iniciar un proyecto
debido a las limitaciones del presupuesto.
Ventajas de los gastos operativos
La demanda y el crecimiento no se pueden prever y pueden superar las
expectativas, lo que supone un reto para el modelo de gastos de
capital, como se muestra en el gráfico siguiente.
En este gráfico se puede ver que la demanda esperada puede ser
diferente a la real y de qué forma la demanda puede superar la
infraestructura de gastos de capital.
Con el modelo de gastos operativos, las empresas que quieran probar
un producto o un servicio nuevo no tienen que invertir en
equipamiento. En su lugar, pagan por la infraestructura la cantidad que
sea necesaria.
Los gastos operativos son especialmente interesantes si la demanda
fluctúa o no se conoce. Habitualmente se dice que los servicios en la
nube son ágiles. La agilidad de la nube es la capacidad de cambiar
rápidamente una infraestructura de TI para adaptarse a las necesidades
cambiantes del negocio. Por ejemplo, si el servicio aumenta
considerablemente un mes, puede adaptarse a la demanda y pagar
30
más ese mes concreto. Si el mes siguiente cae la demanda, puede
reducir los recursos usados y pagar menos. Esta agilidad le permite
administrar los costos de forma dinámica y optimizar el gasto a medida
que cambien los requisitos.
MODELOS DE
IMPLEMENTACIÓN EN LA
NUBE
Existen tres modelos diferentes de implementación en la nube. Un
modelo de implementación en la nube define dónde se almacenan los
datos y cómo los clientes interactúan con ellos, cómo llegan a los datos
y donde se ejecutan las aplicaciones. También depende de qué
cantidad de su propia infraestructura quiera o necesite administrar.
Explorar los tres métodos de implementación de informática en la nube
31
1
Análisis de datos
con Power BI
BIENVENIDA
Este módulo va más allá de la visualización y exploración del contenido
y explica cómo interactuar con él trabajando con informes y paneles
para descubrir y compartir nuevas perspectivas empresariales.
En este módulo, aprenderá a hacer lo siguiente:
Explorar el modo en que los filtros se aplican a los datos
Aprender sobre las diferentes maneras de filtrar los informes
Crear marcadores personales
2 Analizar y exportar datos
Requisitos previos
Acceder al servicio Power BI
Filtrar datos con Power BI 15 min
Ver los datos 5 min
Formular preguntas sobre los datos 5 min
Aplicar filtros a informes 25 min
Comprobación de conocimientos 5 min
Resumen 5 min
Filtrar datos con Power BI
Los datos constituyen el núcleo de Power BI. A medida que explora los
informes, cada objeto visual obtiene sus datos subyacentes de fuentes
que a menudo contienen muchos más datos de los que necesita. Power
BI ofrece varias maneras de filtrar y resaltar informes. Saber cómo filtrar
los datos es clave para buscar la información adecuada.
Nota
El filtrado solo se aplica a los informes, no a los paneles.
Nota
Al filtrar un objeto visual, como un gráfico de barras, simplemente está
cambiando la vista de los datos de ese objeto visual. No está modificando
los datos de origen de manera alguna.
Segmentación de datos
Un tipo sencillo de filtrado que puede usar directamente en la página
del informe es la segmentación. La segmentación de datos proporciona
indicaciones sobre las formas en que puede filtrar los resultados en los
objetos visuales de una página del informe. Hay varios tipos diferentes
de segmentaciones de datos: números, categorías y fechas. La
segmentación de datos facilita el filtrado de todos los objetos visuales
de la página a la vez.
Si desea seleccionar más de un campo, mantenga presionada la tecla
Ctrl y haga clic en los campos adicionales.
Explorar el panel Filtros
Otra manera de filtrar los datos consiste en abrir y modificar los filtros
en el panel Filtros. El panel Filtros contiene filtros que se agregaron al
informe por el diseñador de informes. Como consumidor, puede
interactuar con los filtros y guardar los cambios, pero no puede agregar
nuevos filtros.
Los cuatro tipos de filtros son:
Informe: se aplica a todas las páginas del informe.
Página: se aplica a todos los objetos visuales en la página del
informe actual.
Objeto visual: se aplica a un solo objeto visual en una página
del informe. Solo verá los filtros a nivel de objeto visual si ha
seleccionado un objeto visual en el lienzo del informe.
Obtención de detalles: permite explorar sucesivamente vistas
más detalladas de las vistas dentro de un solo objeto visual.
Por ejemplo, en la siguiente captura de pantalla, el diseñador agregó
tres filtros de nivel de página: Segment, Year y Region. Observe que
Year está establecido actualmente para filtrar por el año 2014.
Puede aplicar filtros en el panel Filtros, o bien seleccionar datos
directamente en el informe para restringir por fecha, categoría,
geografía, etc.
6
Nota
Puede explorar los datos modificando los filtros existentes. Los
cambios que realice se guardan para usted (no para otros) con el
informe, incluso si abre el informe en una aplicación móvil.
Cuando cierre el informe, los filtros se guardan. Para deshacer el
filtrado y volver a los valores predeterminados de filtrado,
segmentación, obtención de detalles y clasificación que ha establecido
el autor del informe, seleccione Restablecer valores
predeterminados en la barra de menús superior.
Borrar un filtro
En el modo de filtrado básico o avanzado, seleccione el icono de
borrador para borrar el filtro. A medida que ajuste el filtro, la consulta
de búsqueda se actualiza para reflejar las opciones seleccionadas.
7
Modo avanzado
La activación de las casillas para aplicar filtros simples es eficaz, pero a
veces es necesario aplicar un filtro basado en un intervalo dinámico. Es
posible que quiera filtrar entre dos fechas, por ejemplo, desde el 1 de
mayo de 2018 al 31 de julio de 2018. Puede filtrar dentro de un valor
numérico determinado, por ejemplo, las ventas entre 10 000 y 50 000
dólares. En estas situaciones, se necesita el modo avanzado.
Si los valores son continuos (no discretos) o representan un intervalo,
puede seleccionar el nombre del campo para abrir el modo de filtro
avanzado. Utilice le menú desplegable y los cuadros de texto para
especificar un intervalo de valores que desee ver.
Si los valores de campo representan una fecha u hora, puede
especificar una hora inicial y final al usar los filtros de fecha y hora.
Cambiar el modo en que se ordena un gráfico en un informe
En un informe de Power BI, puede ordenar la mayoría de los objetos
visuales alfabéticamente o por valores numéricos de cada categoría.
9
Por ejemplo, el siguiente gráfico se ordena por la categoría Store name
(Nombre de tienda).
Es sencillo cambiar el criterio de ordenación de una categoría (por
ejemplo, nombre de almacén) a un valor (por ejemplo, ventas por pies
cuadrados). En este ejemplo, tendría que seleccionar el botón de
puntos suspensivos (....) y elegir Ordenar por >Sales Per Sq Ft (Ventas
por pies cuadrados). Si lo desea, puede volver a seleccionar los puntos
suspensivos y elegir Orden descendente.
10
Nota
No todos los objetos visuales se pueden ordenar. Por ejemplo, los
siguientes objetos visuales no se pueden ordenar: gráfico de rectángulos,
mapa, mapa coroplético, dispersión, medidor, tarjeta, tarjeta de varias
filas y cascada.
Guardar los cambios del criterio de ordenación
Los informes de Power BI conservan los filtros, las segmentaciones, la
ordenación y otros cambios en la vista de datos que realice. Cuando
cierra un informe y más adelante vuelve a él, los cambios se habrán
guardado. Si desea revertir los cambios realizados en la configuración
del diseñador de informes, seleccione Restablecer valores
predeterminados en la barra de menús superior.
Exploración en profundidad de un objeto visual
Cuando un objeto visual tiene una jerarquía, puede profundizar para
mostrar detalles adicionales. Por ejemplo, podría tener un objeto visual
que examina el número de medallas olímpicas mediante una jerarquía
formada por deporte, disciplina y evento.
En este ejemplo, puede seleccionar el elemento Deportes acuáticos
para ver datos de natación, trampolín y waterpolo. Seleccione el
elemento de salto para ver los detalles de eventos de trampolín,
plataforma y salto sincronizado.
Si no está seguro de qué objetos visuales de Power BI contienen una
11
jerarquía, mantenga el cursor sobre un objeto visual. Si ve los siguientes
controles de exploración en profundidad en la esquina superior, el
objeto visual tiene una jerarquía.
Las fechas son un tipo único de jerarquía. Cuando el diseñador de
informes agrega un campo de fecha a un objeto visual, Power BI agrega
automáticamente una jerarquía de tiempo que contiene el año, el
trimestre, el mes y el día.
Usar marcadores para
compartir información
detallada y crear historias
Puede interactuar con filtros y guardar solo los cambios para usted. Sin
embargo, en ocasiones es posible que desee compartir determinadas
vistas filtradas con su equipo. En esos casos, puede crear marcadores
de informe.
El uso de marcadores en Power BI le ayuda a capturar la vista
configurada actualmente de una página del informe, incluidos los
filtros y el estado de los objetos visuales. Más adelante puede volver a
ese estado simplemente seleccionando el marcador guardado.
12
Para ver los marcadores de informes en acción, vaya a cualquier
informe de Power BI para el que tenga acceso de vista o edición y
seleccione el menú desplegable Marcadores en la barra de acción.
Crear marcadores
Cuando haya seleccionado el informe y la vista que desee, expanda el
menú desplegable Marcadores y seleccione Agregar marcador
personal. De forma predeterminada, Power BI le sugerirá un nombre
genérico para el marcador. Puede escribir su propio nombre y
seleccionar Guardar.
Después de crear un marcador, para mostrarlo, seleccione su nombre
en la lista desplegable. Tenga en cuenta que la ruta de navegación para
el informe ahora contendrá el marcador que está viendo actualmente.
13 Nota
Podrá crear un máximo de 20 marcadores por informe.
Abrir y ver los marcadores
A veces, el diseñador de informes incluirá marcadores como parte del
informe. Para ver un marcador personal o un marcador de informe,
seleccione el icono de marcador y seleccione lo que quiera. Los iconos
de marcador se muestran en el panel Marcador que puede abrir
mediante la selección de Marcadores > Mostrar más marcadores.
Ver los datos
Los objetos visuales se crean por los diseñadores de informes y paneles
y, a continuación, se comparten con los consumidores. Como
14 consumidor, puede elegir mostrar, exportar y analizar los datos que se
usaron para crear cada objeto visual.
Mostrar datos
Los objetos visuales de Power BI se crean a partir de datos que puede
ver. Al activar Mostrar datos, Power BI muestra los datos debajo del
objeto visual.
En Power BI, puede abrir un informe y seleccionar un objeto visual. Para
mostrar los datos que se usaron para crear el objeto visual, seleccione
Más opciones (...) del objeto visual y seleccione Tabla visual.
Exportación de datos a Excel
En ocasiones, es posible que desee utilizar Excel para ver e interactuar
con datos de Power BI. La característica Analizar en Excel le permite
hacerlo. Con esta opción también le puede tener acceso a las
características de tabla dinámica, gráfico de datos y segmentación en
Excel en función del conjunto de datos que existe en Power BI.
15 Al seleccionar Analizar en Excel en el menú de puntos suspensivos (...)
que está asociado a un informe, Power BI crea un archivo de conexión
de datos de Office (.odc) y lo descarga del explorador a su equipo.
Nota
Los datos exportados en Excel son su propia copia de los datos y no se
actualizarán automáticamente si se actualizan los datos originales.
Analizar datos en Excel
Al abrir el archivo en Excel, aparece una lista de Tabla dinámica y
Campos vacía con las tablas, los campos y las medidas del conjunto de
datos de Power BI. Puede crear tablas dinámicas y gráficos, así como
analizar ese conjunto de datos, como lo haría con un conjunto de datos
local en Excel.
Nota
Si desea ver los datos que se usaron para crear un objeto visual, puede
exportar esos datos a Excel como un archivo .xlsx o. csv.
16
Formular preguntas sobre
los datos
A veces, la manera más rápida de obtener respuestas acerca de los
datos es formular preguntas en la característica Preguntas y respuestas
de Power BI.
Nota
Aunque Preguntas y respuestas de Power BI solo puede actualmente
responder consultas formuladas en inglés, existe una versión preliminar
para español que su administrador de Power BI puede habilitar.
Explorar Preguntas y respuestas
Puede usar Preguntas y respuestas para explorar los datos mediante
funciones de lenguaje intuitivas y naturales de Power BI y recibir
respuestas en forma de gráficos.
17
Formular una pregunta
Formule una pregunta sobre sus datos en Preguntas y respuestas con
un lenguaje natural. Por lenguaje natural nos referimos al lenguaje
normal que los seres humanos usan para comunicarse entre sí cada día.
Por ejemplo: "¿Cuál es el total de unidades por región?"
Preguntas y respuestas está disponible en paneles e informes en
Power BI. Para abrir la pantalla de Preguntas y respuestas, vaya al panel
y coloque el cursor en el cuadro de pregunta.
18
Si las etiquetas del eje y los valores de los objetos visuales incluyen las
palabras ventas, cuenta, mes y oportunidades, puede formular
preguntas que utilicen esos valores. Por ejemplo, "Qué cuenta tiene la
mayor oportunidad" o "Mostrar las ventas por mes como un gráfico de
barras".
En el lateral de la pantalla se proporcionan otros elementos útiles. Para
cada conjunto de datos, Preguntas y respuestas muestra las palabras
clave y en ocasiones algunas sugerencias o ejemplos de preguntas.
Seleccione cualquier elemento para agregarlo al cuadro de pregunta.
Otra forma en que Preguntas y Respuestas le ayuda a formular
preguntas es mediante indicaciones, el completado automático y pistas
visuales.
19
Objetos visuales de Preguntas y respuestas
Preguntas y respuestas escoge el mejor objeto visual en función de los
datos que se muestran. Por ejemplo, los números podrían mostrarse
como un gráfico de líneas, mientras que las ciudades es más probable
que se muestren como un mapa.
También puede indicar a Preguntas y respuestas qué objeto visual debe
utilizar agregándolo a su pregunta. Preguntas y respuestas le facilitará
una lista de tipos de objetos visuales factibles. En el ejemplo anterior,
podría preguntar, ""¿Cuál es el total de unidades por región en un
gráfico circular?"
Palabras y terminología que reconoce Preguntas y respuestas
La mejor manera de determinar si Power BI reconoce una palabra clave
es escribiéndola en el cuadro de pregunta. Si la palabra o término
aparece atenuado, Power BI no lo reconoce. Las palabras clave en la
20 siguiente tabla usan el singular y el presente, pero reconocen todos los
tiempos verbales y pluralidades.
Para más información, consulte: Sugerencias para hacer preguntas con
Preguntas y respuestas de Power BI
Categoría Palabras clave
Agregados total, suma, cantidad, número, recuento, promedio,
máximo, mínimo, menor, más grande, más pequeño,
más alto, mayor, máx., mín
Comparaciones vs, frente a, en comparación con
Fechas Power BI reconoce la mayoría de los términos de
fecha (día, semana, mes, año, trimestre, década, etc.)
Categoría Palabras clave
Fechas relativas hoy, ahora, hora actual, ayer, mañana, actual, después,
las próximas, último, anterior, hace, antes de ahora,
después, a más tardar, de, en, desde ahora, después
de ahora, en el futuro, pasado, último, anterior, sobre,
hace N días, de hoy en N días, una vez, dos veces.
Ejemplo: número de pedidos en los 6 últimos días.
Comandos de ordenado, ordenar por, dirección, agrupar, agrupar
consulta por, de, mostrar, enumerar, darme, nombre, solo,
organizar, clasificar, comparar, con, por orden
alfabético, ascendente, descendente, orden
21 Intervalo mayor, más, más grande, superior, sobre, >, menos,
más pequeño, menor, bajo, <, al menos, no menor
que, > =, como máximo, no más de, <=, en, entre, en
el intervalo de, desde, más adelante, anteriormente,
antes, después, en, más tarde que, después, desde, a
partir de, terminando con
Horas a. m., p. m., en punto, mediodía, medianoche, hora,
minuto, segundo, hh:mm:ss. Ejemplos: 10 p. m., 10:35
p. m., [Link] p. m., 10 en punto, mediodía,
medianoche, hora, minuto, segundo.
Preguntas y respuestas le ayuda a formular la pregunta
Preguntas y respuestas hace todo lo posible para comprender y
responder a la pregunta de esta manera:
Completa automáticamente palabras y preguntas. Usa diversas
estrategias, como el completado automático de palabras
reconocidas y preguntas utilizadas anteriormente que
devolvieron respuestas válidas. Si hay más de una opción para
el completado automático, aparecerán en una lista desplegable.
Corrige la ortografía.
Proporciona una vista previa de la respuesta en forma de un
objeto visual. El objeto visual se actualiza a medida que escribe
y modifica la pregunta (no espera a que presione Entrar).
Sugiere términos de reemplazo de los conjuntos de datos
subyacentes cuando mueve el cursor en el cuadro de pregunta.
Redefine la pregunta en función de los datos de los conjuntos
de datos subyacentes. Preguntas y respuestas reemplaza las
palabras utilizadas por sinónimos de los conjuntos de datos
22
subyacentes. Al leer la redefinición, sabrá si Preguntas y
respuestas comprendió su pregunta o no.
Atenúa palabras que no entiende.
Escenario
¡Enhorabuena! Le acaban de nombrar director de ventas de una
empresa de fabricación de ropa llamada Van Arsdel. Su primera
tarea es analizar los datos de ventas y marketing para detectar
por qué hay una caída inesperada en las ventas de junio.
Procedimiento
Agregar la aplicación Ejemplo de marketing y ventas
Nota: Si ya tiene la aplicación de Ejemplo de marketing y
ventas instalada, vaya a la sección siguiente.
1. Inicie sesión en [Link]
23 2. Seleccione la pestaña Aplicaciones situada a la izquierda.
3. Seleccione el botón Obtener aplicaciones.
4. Seleccione el vínculo "Buscar más aplicaciones y servicios de
consultoría en AppSource" en la parte inferior del menú.
5. Busque "Ejemplo de marketing y ventas".
24
6. Cuando aparezca la indicación ¿Quiere instalar esta
aplicación de Power BI?, seleccione el botón Instalar.
7. Seleccione el vínculo "Obtener ahora" y espere a que la
aplicación se instale.
8. En la pantalla Empezar a trabajar con la nueva aplicación,
seleccione el botón Explorar aplicación.
9. Seleccione la pestaña Aplicaciones a la izquierda y, a
continuación, seleccione el icono de la aplicación Ejemplo de
marketing y ventas.
10. La primera vez que inicie la aplicación, verá Empezar a trabajar
con la nueva aplicación.
11. Seleccione el botón Explorar aplicación para explorar el panel.
Aplicar un filtro a una página de informe
En esta sección, explorará dos preguntas:
¿Por qué nuestra empresa, VanArsdel, tuvo en junio resultados
por debajo de lo esperado?
¿Cuáles son nuestras mejores oportunidades de crecimiento?
1. En la aplicación Ejemplo de marketing y ventas, empiece por
la página del informe de categoría de año hasta la fecha
seleccionando la pestaña de categoría de año hasta la fecha
en la parte inferior de cualquier informe (o el objeto visual de
unidades totales del año hasta la fecha en el panel).
25
2. Observe la anomalía del gráfico relativo a las unidades
totales por mes y fabricante.
3. Si aún no está abierto, abra el panel de filtros
seleccionando Filtros en el lado derecho del informe.
4. Power BI muestra todos los filtros que la diseñadora del
informe aplicó a ese objeto visual.
26
5. La diseñadora del informe filtró por Van Arsdel, nuestros tres
principales competidores y el año 2014. Es una buena idea, pero filtró
también por la región central, y lo que usted quiere ver son todas las
regiones. Desactive el filtro de región haciendo clic en el icono de
borrador en ese filtro.
6. Mueva el puntero sobre el gráfico de unidades totales del
año hasta la fecha por mes y fabricante y fíjese en los segmentos
en los que compite Van Arsdel. Observe que competimos en
moderación y comodidad.
7. Mantenga el puntero sobre nuestros competidores para ver
los segmentos en que compiten. ¿Detecta algún patrón?
27
8. Explore la misma pregunta solo para el mes de junio. Para
aplicar un filtro cruzado para esta página del informe de junio, en el
objeto visual del total de unidades por mes y fabricante, haga clic
en la etiqueta del 14 de junio. Observe que todos los objetos visuales
de esta página del informe se actualizan para junio.
9. Observe el resaltado cruzado del objeto visual del total de
unidades del año hasta la fecha por fabricante y región.
28
10. Mantenga el puntero sobre cada compañía para ver el
patrón de segmentos durante junio.
11. ¿Qué conclusiones obtiene sobre los dos segmentos con
mejores resultados en junio y por qué nuestras ventas totales
disminuyen durante ese tiempo?
12. Para explorar la misma pregunta de manera diferente:
vaya al informe de oportunidades de crecimiento
seleccionando la pestaña de oportunidades de crecimiento.
13. Mantenga el puntero sobre el objeto visual del gráfico de
barras del total de unidades por segmento y, a continuación,
seleccione el icono "Rastrear agrupando datos" (flecha arriba)
para ver el "total de unidades por fabricante".
29
14. Desactive los filtros isVanArsdel y Segmento haciendo clic en
los iconos de borrador. Esto nos permitirá ver todas las empresas y
los segmentos. Observe que el Van Arsdel es el fabricante líder a nivel
global.
15. Aplique un filtro cruzado para junio para el total de unidades
30 y total de unidades por 12 meses consecutivos por mes
seleccionando la fecha de 14 de junio. Una vez más, observe el
rendimiento de Van Arsdel en junio.
16. Explore en profundidad para ver los segmentos de junio
haciendo clic en el icono "Haga clic para activar Explorar en
profundidad" y luego en el icono "Ir al siguiente nivel de la jerarquía".
17. Una vez más, ¿cuáles son los segmentos con mejor
rendimiento en junio?
31
18. ¿Por qué las ventas de Van Arsdel no ofrecen en junio los
resultados esperados? ¿Qué podemos hacer para competir mejor?
1
Creación y uso de informes
de análisis con Power BI
BIENVENIDA
Esta ruta de aprendizaje es una introducción a Power BI y le enseña a
usar y crear informes de inteligencia empresarial.
Requisitos previos
Familiaridad con Excel
Acceso al servicio Power BI
Power BI Desktop
2
Filtrar datos con Power BI 15 min
Ver los datos 5 min
Formular preguntas sobre los datos 5 min
Aplicar filtros a informes 25 min
Comprobación de conocimientos 5 min
Resumen 5 min
Introducción a la
compilación con Power BI
Conozca mejor qué es Power BI, incluidos sus bloques de creación y
cómo funcionan conjuntamente.
En este módulo, aprenderá a realizar las tareas siguientes:
Obtenga información sobre cómo funcionan conjuntamente
las aplicaciones y los servicios de Power BI.
Descubra cómo Power BI puede hacer que su negocio sea más
eficaz.
3 Obtenga información sobre cómo crear objetos visuales e
informes.
Requisitos previos
Ninguno
Introducción 6 min
Uso de Power BI 2 min
Bloques de creación de Power BI 12 min
Paseo por el servicio Power BI y uso 12 min
Resumen 5 min
Comprobación de conocimientos 10 min
Introducción
Microsoft Power BI es una colección de servicios de software,
aplicaciones y conectores que funcionan conjuntamente para
convertir orígenes de datos sin relación entre sí en información
coherente, interactiva y atractiva visualmente. Tanto si se trata de un
sencillo libro de Microsoft Excel como de una colección de almacenes
de datos híbridos locales o basados en la nube, Power BI le permite
conectar fácilmente los orígenes de datos, visualizar o descubrir lo
más importante y compartirlo con quien quiera.
Power BI puede ser sencillo y rápido; capaz de crear información
rápida a partir de un libro de Excel o una base de datos local. Sin
embargo, Power BI también es estable y tiene una funcionalidad apta
para empresas, listo no solo para un modelado exhaustivo y un
análisis en tiempo real, sino también para un desarrollo
personalizado. Por tanto, puede convertirse en su herramienta
personal de creación de informes y visualización, pero también puede
actuar como el motor de análisis y de decisión que impulsa proyectos
en grupo, divisiones o empresas enteras.
Si es principiante con Power BI, este módulo le ayudará a empezar a
trabajar. Si ya tiene experiencia con Power BI, este módulo le
ayudará a relacionar conceptos y rellenar las lagunas.
Partes de Power BI
Power BI consta de una aplicación de escritorio de Microsoft
Windows denominada Power BI Desktop, un servicio SaaS (software
como servicio) en línea denominado servicio Power BI, y
aplicaciones móviles de Power BI disponibles en cualquier
dispositivo, con aplicaciones de BI nativas para Windows, iOS y
Android.
Estos tres elementos, Desktop, el servicio y las aplicaciones móviles,
están diseñados para permitir a los usuarios crear, compartir y utilizar
información empresarial de la forma que les resulte más eficaz para
su rol.
Adaptación de Power BI a su rol
Puede que la forma de utilizar Power BI dependa de su rol en un
proyecto o equipo. Por tanto, otras personas con otros roles podrían
utilizar Power BI de un modo distinto, lo cual es normal.
Por ejemplo, podría darse el caso de que usted consultara los
informes y los paneles del servicio Power BI y que esto sea lo único
que hace con Power BI. No obstante, su compañero de trabajo,
dedicado a procesar los números y crear informes empresariales,
puede que use Power BI Desktop y que publique informes de Power
BI Desktop en el servicio Power PI, que usted puede usar después
para verlos. Por su parte, otra compañera que se dedica a las ventas
podría utilizar principalmente la aplicación para móviles de Power BI
para supervisar el progreso de sus cuotas de venta y profundizar en
los detalles de los nuevos clientes potenciales.
6
También podría utilizar cada elemento de Power BI en distintos
momentos, en función de su objetivo o su rol en un proyecto o
trabajo determinados.
Quizás vea el progreso de inventario y fabricación en un panel en
tiempo real en el servicio y también utilice Power BI Desktop a fin de
crear informes para su equipo sobre las estadísticas de involucración
de los clientes. La forma de usar Power BI puede depender de qué
característica o servicio de Power BI es la mejor herramienta para su
situación. No obstante, tiene a su disposición cada una de las partes
de Power BI, que es lo que lo convierte en un servicio flexible y
atractivo.
Trataremos estos tres elementos, Desktop, el servicio y las
aplicaciones móviles, con más detalle más adelante. En los módulos
y las unidades siguientes, también aprenderá a crear informes en
Power BI Desktop, compartirlos en el servicio y analizarlos en
profundidad en el dispositivo móvil.
Descargar Power BI Desktop
Puede descargar Power BI Desktop desde la Web o como aplicación
de Microsoft Store en la pestaña Windows.
Estrategia de
descarga Vínculo Notas
Aplicación de la Tienda Se mantendrá actualizada
Tienda Windows Windows automáticamente
7
Descarga desde la Descargar Se debe actualizar periódicamente
Web .msi de manera manual
Iniciar sesión en el servicio Power BI
Para poder iniciar sesión en Power BI, necesitará una cuenta. Para
obtener una evaluación gratuita, vaya a [Link] y regístrese
con su dirección de correo electrónico.
Para obtener más información sobre cómo configurar una cuenta, vea
Inicio de sesión en el servicio Power BI.
El flujo de trabajo en Power BI
Un flujo de trabajo habitual de Power BI comienza en Power BI
Desktop, donde se crea un informe. Luego, ese informe se publica en
el servicio Power BI y, por último, se comparte para que los usuarios
de las aplicaciones de Power BI Mobile puedan usar la información.
No siempre ocurre de este modo, pero no importa. Vamos a usar ese
flujo para ayudarle a conocer las distintas partes de Power BI y cómo
se complementan entre sí.
Ahora que tenemos una visión general de este módulo, sabemos qué
es Power BI y conocemos sus tres elementos principales, vamos a ver
en qué consiste usar Power BI.
Uso de Power BI
Ahora que hemos presentado los aspectos básicos de Microsoft
8 Power BI, pasemos a algunas experiencias prácticas y una visita
guiada.
Las actividades y los análisis que aprenderá con Power BI suelen
seguir un flujo común. El flujo habitual de actividad presenta un
aspecto similar al siguiente:
1. Integrar datos en Power BI Desktop y crear un informe.
2. Publicarlo en el servicio Power BI, donde podrá crear nuevas
visualizaciones o compilar paneles.
3. Compartir los paneles con otros usuarios, especialmente con
personas que se estén desplazando.
4. Ver informes y paneles compartidos e interactuar con ellos en
aplicaciones de Power BI Mobile.
Como se mencionó anteriormente, podría dedicar todo su tiempo en
el servicio Power BI consultando objetos visuales e informes creados
por otros usuarios. Y esto está bien. También puede darse el caso de
9
que una persona de su equipo pase su tiempo en Power BI Desktop,
lo cual también es correcto. Para ayudarle a entender Power BI al
completo y lo que puede hacer con él, se lo mostraremos todo. Así,
luego podrá decidir cómo usarlo de la forma que más le convenga.
Vamos a empezar y a profundizar en todo el proceso. El objetivo
principal es aprender los bloques de creación básicos de Power BI,
con lo que obtendremos una base sólida para descubrir cómo se
convierten los datos en informes y objetos visuales atractivos.
Bloques de creación de
Power BI
Todo lo que haga en Microsoft Power BI puede dividirse en unos
bloques de creación básicos. Cuando los comprenda, podrá trabajar
sobre ellos y empezar a crear informes elaborados y complejos.
Después de todo, incluso las cosas aparentemente complejas se
construyen a partir de bloques de construcción básicos. Por ejemplo,
los edificios se crean con madera, acero, hormigón y vidrio, y los
automóviles están hechos de metal, tela y caucho. Por supuesto, los
edificios y los automóviles pueden ser básicos o más elaborados,
10 dependiendo de cómo se organicen esos bloques de creación
básicos.
Vamos a echar un vistazo a estos bloques de creación básicos,
analizaremos algunos elementos sencillos que pueden crearse con
ellos y después veremos brevemente cómo se pueden crear también
cosas complejas.
Estos son los bloques de creación básicos de Power BI:
Visualizaciones
Conjuntos de datos
Informes
Paneles
Iconos
Visualizaciones
Una visualización (también llamada objeto visual) es una
representación visual de los datos, como un diagrama, un mapa
codificado por colores u otros elementos interesantes que pueda
crear para representar los datos visualmente. Power BI tiene infinidad
de tipos de visualización, y muchos más que no dejan de llegar. La
siguiente imagen muestra una colección de distintas visualizaciones
que se crearon en el servicio Power BI.
11
Las visualizaciones pueden ser simples, como un único número que
representa un aspecto significativo, o visualmente complejas, como
un mapa de colores degradados que muestra la opinión del votante
sobre un determinado problema o preocupación social. El objetivo
del objeto visual es presentar los datos de forma que ofrezca
contexto e información detallada, lo que probablemente resultaría
difícil tan solo con una tabla de números o texto sin formato.
Conjuntos de datos
Un conjunto de datos es una colección de datos que Power BI utiliza
para crear sus visualizaciones.
Puede tener un conjunto de datos sencillo basado en una sola tabla
de un libro de Microsoft Excel, similar al que se muestra en la
siguiente imagen.
12
Los conjuntos de datos también pueden ser una combinación de
muchos orígenes diferentes, que puede filtrar y combinar para
proporcionar una colección de datos única (un conjunto de datos)
para usarla en Power BI.
Por ejemplo, puede crear un conjunto de datos de tres campos de la
base de datos, una tabla del sitio web, una tabla de Excel y los
resultados en línea de una campaña de marketing por correo
electrónico. Esa combinación única se sigue considerando un
conjunto de datos único, aunque proceda de muchos orígenes
diferentes.
Filtrar los datos antes de traerlos a Power BI le permite centrarse en
los datos que realmente le importan. Por ejemplo, puede filtrar su
base de datos de contactos para incluir en el conjunto de datos solo
los clientes que recibieron mensajes de correo electrónico de la
campaña de marketing. Después, puede crear objetos visuales
basados en ese subconjunto (la colección filtrada) de clientes que se
incluyeron en la campaña. El filtrado le ayuda a centrarse en los datos
y en sus esfuerzos.
Un aspecto fundamental de Power BI es la gran cantidad de
13
conectores de datos que incluye. Tanto si los datos que desea están
en Excel o en una base de datos de Microsoft SQL Server, en Azure o
en Oracle, o en un servicio como Facebook, Salesforce o MailChimp,
Power BI tiene conectores que le permiten conectar fácilmente con
los datos, filtrarlos si hace falta e incluirlos en el conjunto de datos.
Después de tener un conjunto de datos, puede comenzar a crear
visualizaciones que muestren las diferentes partes de él de maneras
diferentes y obtener información en función de lo que vea. Ahí es
donde entran en juego los informes.
Informes
En Power BI, un informe es una colección de visualizaciones que
aparecen juntas en una página o varias. Al igual que cualquier otro
informe que se puede crear para una presentación de ventas o un
trabajo para la escuela, un informe de Power BI es una colección de
elementos que están relacionados entre sí. La siguiente imagen
muestra un informe en Power BI Desktop; en este caso, es la secunda
página de un informe de cinco páginas. También puede crear
informes en el servicio Power BI.
14
Los informes permiten crear numerosas visualizaciones en varias
páginas si es necesario, y le permiten organizar dichas visualizaciones
de la forma más adecuada para contar su historia.
Es posible que tenga un informe sobre las ventas trimestrales, el
crecimiento del producto en un segmento determinado o los
patrones de migración de los osos polares. Sea cual sea el tema, los
informes permiten recopilar y organizar las visualizaciones en una o
varias páginas.
Paneles
Cuando esté listo para compartir una sola página de un informe, o
una colección de visualizaciones, cree un panel. De forma muy
parecida a los paneles de un automóvil, un panel de Power BI es una
colección de objetos visuales de una sola página que puede
compartir con otros usuarios. A menudo, es un grupo seleccionado
de objetos visuales que ofrecen información rápida sobre los datos o
la historia que intenta presentar.
Un panel debe caber en una sola página, también llamada lienzo (el
lienzo es el telón de fondo en blanco en Power BI Desktop o en el
servicio, donde se ponen las visualizaciones). Considérelo el lienzo
que un artista o pintor usa, un área de trabajo donde puede crear,
combinar y rehacer objetos visuales interesantes y atractivos. Puede
compartir paneles con otros usuarios o grupos que, después, pueden
15 interactuar con los paneles cuando estén en el servicio Power BI o en
su dispositivo móvil.
Iconos
En Power BI, un icono es una visualización única en un informe o en
un panel. Es el rectángulo que contiene un objeto visual individual. En
la siguiente imagen, verá un icono que también está rodeado por
otros iconos.
Cuando esté creando un informe o un panel en Power BI, puede
mover u organizar los mosaicos como desee. Puede hacerlos más
16 grandes, cambiar el alto o el ancho, y juntarlos con otros mosaicos.
Si ve o usa un panel o informe, lo que significa que no es el autor ni el
propietario, sino que el informe o panel se ha compartido con usted,
puede interactuar con él, pero no cambiar el tamaño de los iconos ni
su disposición.
Ahora, todo junto
Estos son los conceptos básicos de Power BI y sus bloques de
creación. Vamos a dedicar un momento a revisarlos.
Power BI es una colección de servicios, aplicaciones y conectores que
le permiten conectarse a sus datos, donde quiera que residan,
filtrarlos si es necesario y, después, llevarlos a Power BI para crear
atractivas visualizaciones que puede compartir con otros usuarios.
Ahora que conoce los bloques de creación básicos de Power BI, debe
quedar claro que puede crear conjuntos de datos que tengan sentido
para usted, así como crear informes visualmente atractivos que
cuenten su historia. Las historias que cuente con Power BI no tienen
que ser complejas ni complicadas para que resulten convincentes.
Para algunas personas, usar una sola tabla de Excel en un conjunto de
datos y compartir un panel con su equipo será una forma muy valiosa
de usar Power BI.
Para otros, el valor de Power BI está en el uso de tablas de Azure SQL
Data Warehouse en tiempo real que se combina con otras bases de
datos y orígenes en tiempo real para compilar un conjunto de datos
en todo momento.
17 En ambos grupos, el proceso es el mismo: crear conjuntos de datos,
crear objetos visuales atractivos y compartirlos con otros usuarios. Y
el resultado es también el mismo para ambos grupos: aprovechar el
número de datos cada vez mayor y convertirlos en información
procesable.
Si la información sobre los datos requiere conjuntos de datos
sencillos o complejos, Power BI le ayuda a empezar a trabajar
rápidamente y se puede expandir a la par que sus necesidades para
alcanzar la complejidad que precisen sus datos. Y puesto que Power
BI es un producto de Microsoft, puede dar por sentado que es sólido,
ampliable, compatible con Microsoft Office y listo para la empresa.
Ahora, veamos cómo funciona. Comenzaremos echando un vistazo
rápido al servicio Power BI.
Paseo por el servicio
Power BI y uso
Como hemos visto en la unidad anterior, el flujo de trabajo habitual
de Microsoft Power BI es crear un informe en Power BI Desktop,
publicarlo en el servicio Power BI y, después, compartirlo con otros
usuarios para que puedan verlo en el servicio o en una aplicación
móvil.
Pero como algunas personas empiezan en el servicio Power BI,
echemos un vistazo rápido al servicio primero, y aprendamos una
forma fácil y popular de crear rápidamente objetos visuales en Power
18
BI: las aplicaciones.
Una aplicación es una colección de objetos visuales e informes
configurados previamente y listos para su uso que se comparten con
toda la organización. Usar una aplicación es como cocinar en el
microondas un plato precocinado o pedir una comida rápida: con
solo presionar algunos botones y hacer unos comentarios, tendrá
rápidamente una colección de platos principales diseñados para que
combinen entre sí, y todo ello presentado en un paquete ordenado y
listo para su consumo.
Echemos un vistazo rápido a las aplicaciones, el servicio y su
funcionamiento. Veremos información más detallada sobre las
aplicaciones y el servicio en los próximos módulos, pero puede
pensar en esto como una degustación para abrir el apetito.
Creación de paneles listos para usar con servicios en la nube
Con Power BI, es muy fácil conectarse a los datos. Desde el servicio
Power BI, puede seleccionar simplemente el botón Obtener datos en
la esquina inferior izquierda de la página principal.
19
El lienzo (el área que se encuentra en el centro del servicio Power BI)
muestra los orígenes de datos disponibles en el servicio Power BI.
Además de los orígenes de datos habituales, como los archivos de
Microsoft Excel, las bases de datos o los datos de Microsoft Azure,
Power BI puede conectarse con la misma facilidad a una gran
variedad de servicios de software, también conocidos como
proveedores de SaaS o servicios en la nube: Salesforce, Facebook,
Google Analytics y muchos más.
Para estos servicios de software, el servicio Power BI ofrece una
colección de objetos visuales ya preparados, organizados
20 previamente en paneles e informes para su organización. A esta
colección de objetos visuales se le denomina aplicación. Las
aplicaciones le permiten ponerse en marcha rápidamente con datos y
paneles que su organización ha creado para usted. Por ejemplo,
cuando utiliza la aplicación de GitHub, Power BI se conecta a su
cuenta de GitHub (después de haber especificado sus credenciales) y
después rellena una colección predefinida de objetos visuales y
paneles en Power BI.
Hay aplicaciones para todo tipo de servicios en línea. En la siguiente
imagen se muestra una página de aplicaciones que están disponibles
para los distintos servicios en línea, en orden alfabético. Esta página
se muestra al seleccionar el botón Obtener del cuadro Servicios
(mostrado en la imagen anterior). Como puede ver en la imagen
siguiente, hay muchas aplicaciones para elegir.
Para nuestros fines, elegiremos GitHub. GitHub es una aplicación de
control de código fuente en línea. Cuando selecciona el botón
21 Obtener ahora en el cuadro de la aplicación GitHub, aparece el
cuadro de diálogo Conectarse a GitHub. Tenga en cuenta que
GitHub no admite Internet Explorer, de modo que conviene
asegurarse de estar utilizando otro explorador.
22
Después de escribir la información y las credenciales de la aplicación
GitHub, comienza la instalación de la aplicación.
Una vez cargados los datos, aparece el panel de la aplicación de
GitHub predefinido.
Además del panel de la aplicación, también está disponible el
informe que se generó (como parte de la aplicación de GitHub) y se
usó para crear el panel, así como el conjunto de datos (la colección
23 de datos extraídos de GitHub) que se creó durante la importación de
datos y se utilizó para crear el informe de GitHub.
En el panel, puede seleccionar cualquiera de los objetos visuales e
interactuar con ellos. Cuando lo haga, todos los demás objetos
visuales de la página responderán. Por ejemplo, cuando seleccione la
barra May 2018 del objeto visual Solicitudes de incorporación de
cambios por mes, los demás objetos visuales de la página se
ajustarán para reflejar esa selección.
24
Actualizar datos en el servicio Power BI
También puede actualizar el conjunto de datos de una aplicación u
otros datos que se utilicen en Power BI. Para definir la configuración
de la actualización, seleccione el icono de programación de la
actualización del conjunto de datos que desea actualizar y después
use el menú que aparece. También puede seleccionar el icono de
actualización (el círculo con una flecha) situado junto al icono de
programación de la actualización para actualizar el conjunto de datos
inmediatamente.
La pestaña Conjuntos de datos está seleccionada en la página
Configuración que aparece. En el panel derecho, seleccione la flecha
situada junto a Programar actualización para expandir esa sección.
El cuadro de diálogo Configuración aparece en el lienzo, lo que le
25 permite establecer la configuración de actualización que mejor se
adapte a sus necesidades.
Eso es suficiente para una breve introducción al servicio Power BI.
Este servicio ofrece muchas más posibilidades, que trataremos más
adelante en este módulo y en los siguientes. Recuerde que hay
muchos tipos de datos a los que puede conectarse y también todo
tipo de aplicaciones, y cada vez se incorporan más.
26
1
Implementación de un
módulo precompilado en el
dispositivo perimetral
BIENVENIDA
Implemente un módulo simulador de temperatura precompilado en el
perímetro mediante un contenedor. El módulo precompilado se
implementará en un dispositivo IoT Edge. Comprobará que el módulo
se ha creado e implementado correctamente en el perímetro. Verá los
datos simulados desde el módulo implementado.
En este módulo, aprenderá a:
Iniciar un módulo desde Azure Portal en IoT Edge
Generar datos simulados desde un dispositivo perimetral
2
Comprobar los datos generados desde el dispositivo perimetral
Requisitos previos
Capacidad de usar IoT Hub en Azure
Capacidad de usar Azure Cloud Shell
Experiencia en la creación y administración de recursos con
Azure Portal o Azure Cloud Shell a nivel de principiante
Conocimientos básicos de Azure IoT Edge
Introducción 3 min
¿Qué es un módulo precompilado? 4 min
Procedimientos para configurar la comunicación entre IoT Hub
e IoT Edge 7 min
Ejercicio: Configuración de la comunicación entre IoT Hub e IoT
Edge 15 min
Procedimientos para implementar un módulo precompilado en
un dispositivo IoT Edge 5 min
Ejercicio: Implementación de un módulo precompilado en IoT
Edge 15 min
Prueba de conocimientos 5 min
Resumen 2 min
3
INTRODUCCIÓN
Cuando se implementan sobre el terreno, los dispositivos IoT suelen
generar una secuencia continua de datos. Estos datos se agregan en la
nube para su análisis. El análisis de datos de IoT requiere que se
estudien los datos de varias secuencias simultáneamente. En la fase de
desarrollo de un proyecto de IoT, estos datos no son fáciles de adquirir
ni simular. Para simular datos de IoT desde un dispositivo IoT Edge,
puede elegir un módulo precompilado como un paquete ejecutable e
implementarlo como un contenedor en un dispositivo IoT Edge.
Imagine que es un desarrollador que va a implementar aplicaciones de
IoT en una nube para una aplicación de automatización de fábrica.
Quiere capturar datos sobre las máquinas que se ejecutan en la planta
4
de producción (por ejemplo, la sala de servidores o una turbina eólica).
Pero también quiere capturar datos sobre el entorno de la máquina.
Por ejemplo, es posible que quiera registrar la temperatura ambiente
en torno a la máquina. No es fácil adquirir y visualizar estos datos desde
la planta de producción antes de que se active la aplicación. Por tanto,
necesita una forma de simular los datos que imite los escenarios para
probar la aplicación.
5
Este módulo forma parte de la ruta de aprendizaje de ingeniería de
inteligencia artificial y dispositivos perimetrales. En este módulo, se
exploran los temas de ingeniería siguientes.
Previsión del comportamiento de un componente o sistema
Diseño de soluciones
Anticipación de restricciones y tolerancias, y condiciones de
funcionamiento específicas
Consideraciones de seguridad
Creación de herramientas que ayudan a la solución
En este módulo, registrará un dispositivo IoT Edge en la instancia de
IoT Hub. Después, iniciará el entorno de ejecución de IoT Edge en el
dispositivo virtual. A continuación, implementará de forma remota un
módulo precompilado en un dispositivo IoT Edge que simula la
ejecución de sensores desde ese dispositivo. Por último, verá los datos
generados desde el módulo para comprobar que se ejecuta en el
dispositivo. En este módulo, se usa Azure IoT Edge en una máquina
virtual Ubuntu. En este caso, el dispositivo ya tiene el entorno de
ejecución de IoT Edge instalado. No se ejecuta IoT Edge en el equipo
local o en un dispositivo ARM32 o ARM64.
6
Objetivos de aprendizaje
En este módulo, aprenderá a:
Iniciar un módulo desde Azure Portal en IoT Edge
Generar datos simulados desde un dispositivo perimetral
Comprobar los datos generados desde el dispositivo perimetral
Requisitos previos
Capacidad de usar IoT Hub en Azure
Capacidad de usar Azure Cloud Shell
Experiencia en la creación y administración de recursos con
Azure Portal o Azure Cloud Shell a nivel de principiante
Conocimientos básicos de Azure IoT Edge
¿Qué es un módulo
precompilado?
Azure IoT Edge permite implementar código en los dispositivos IoT
Edge desde la nube. La plataforma IoT Edge funciona con la nube para
implementar módulos de IoT Edge. Los módulos de IoT Edge son
paquetes ejecutables que se implementan como contenedores. A
través de los módulos de IoT Edge, puede implementar cargas de
trabajo en la nube para ejecutarlas directamente en dispositivos IoT. A
los módulos de IoT Edge se accede a través de Azure Marketplace. Los
publicadores de terceros también pueden publicar módulos a través de
Marketplace.
8 Los módulos de IoT Edge son las unidades de cálculo más pequeñas
que administra IoT Edge. Con los módulos de IoT Edge puede analizar
datos en los dispositivos en lugar de hacerlo en la nube. Al mover
elementos de la carga de trabajo al perímetro, los dispositivos pueden
dedicar menos tiempo a enviar mensajes a la nube y reaccionan más
rápidamente a los eventos. Aquí se usa un módulo precompilado que
ya existe en Marketplace. Este módulo se implementará para que envíe
datos de telemetría a IoT Hub. El módulo que se implementa simula un
sensor y devuelve los datos generados a la instancia de IoT Hub. Este
módulo es útil porque puede usar los datos simulados para el
desarrollo y las pruebas de la solución de IoT.
Procedimientos para
configurar la
comunicación entre IoT
Hub e IoT Edge
Información general
En este módulo, se usa una máquina virtual basada en Ubuntu existente
para que actúe como dispositivo IoT Edge. Como alternativa, puede
ejecutar el entorno de ejecución de Azure IoT Edge en un dispositivo
Linux físico propio (x64, ARM32 o ARM64). A continuación se considera
solamente el escenario de un dispositivo virtual.
9
Se establecen comunicaciones entre IoT Edge e IoT Hub para poder
implementar el módulo en el dispositivo IoT. Para configurar las
comunicaciones entre IoT Hub e IoT Edge, primero debe crear un
dispositivo virtual de Ubuntu proporcionado por Microsoft mediante
los scripts proporcionados. Este dispositivo virtual tiene instalados
todos los requisitos previos. Después, cree una instancia de IoT Hub
mediante Cloud Shell. A continuación, registre el dispositivo IoT Edge
en la instancia de IoT Hub y recupere la cadena de conexión. Necesitará
esta cadena para configurar el dispositivo IoT Edge en pasos
posteriores.
Para resumir el proceso: a fin de registrar un dispositivo IoT Edge en la
instancia de IoT Hub, primero debe crear una identidad del dispositivo
para el dispositivo perimetral. Esta identidad del dispositivo le permite
comunicarse con la instancia de IoT Hub. La identidad del dispositivo
reside en la nube y usa una cadena de conexión de dispositivo única
para asociar un dispositivo físico a una identidad del dispositivo. El
dispositivo IoT Edge se conecta a la instancia de IoT Hub, ya sea a un
centro existente o a uno recién creado. La cadena de conexión vincula
el dispositivo IoT con su identidad en la instancia de IoT Hub. Por tanto,
el proceso de registro de un dispositivo implica la recuperación de la
cadena de conexión asociada a un dispositivo perimetral que
representa la identidad del dispositivo en IoT Hub. Después de esto, se
configura la cadena de conexión en el dispositivo IoT Edge.
Antes de empezar, si no tiene una suscripción activa a Azure, debe crear
una cuenta gratuita, y puede usar una evaluación gratuita de 30 días, o
bien crear una suscripción de pago por uso propia.
10
Por tanto, los pasos que debe seguir son estos:
Definir el grupo de recursos o usar uno existente
Crear un dispositivo Azure IoT Edge
Crear una instancia de Azure IoT Hub o usar una existente
Registrar el dispositivo IoT Edge en IoT Hub
Qué es un grupo de
recursos
Un grupo de recursos es un contenedor que conserva los recursos
relacionados de una solución. El grupo de recursos incluye los recursos
que se quieren administrar como grupo. Los recursos relacionados se
agrupan de forma lógica, como las cuentas de almacenamiento, redes
11
virtuales y máquinas virtuales para implementarlos, administrarlos y
mantenerlos como entidad única. Los grupos de recursos almacenan
metadatos sobre los recursos. Por tanto, al especificar una ubicación
para el grupo de recursos, se especifica dónde se almacenan esos
metadatos. Por motivos de compatibilidad, es posible que sea
necesario asegurarse de que los datos se almacenan en una región
concreta.
Procedimientos para crear
un dispositivo IoT Edge
Una vez creado el grupo de recursos, puede crear un dispositivo virtual
IoT preconfigurado dentro de este grupo de recursos. La creación de
un dispositivo perimetral virtual implica dos propiedades obligatorias:
Definir un nombre del dispositivo virtual y elegir el grupo de recursos
que se va a implementar. Como va usar Azure IoT Edge en la máquina
virtual Ubuntu según se ha descrito en los requisitos previos, el
dispositivo ya tiene instalado el entorno de ejecución de Azure IoT
Edge. El entorno de ejecución de Azure IoT Edge es una colección de
programas que convierten un dispositivo en un dispositivo IoT Edge.
Colectivamente, los componentes del entorno de ejecución de Azure
12
IoT Edge permiten que los dispositivos IoT Edge reciban código para
ejecutarlo en el perímetro y comunicar los resultados a la instancia de
IoT Hub.
El entorno de ejecución de Azure IoT Edge se implementa en todos los
dispositivos IoT Edge. Tiene tres componentes. El demonio de
seguridad de IoT Edge se inicia cada vez que se inicia un dispositivo
IoT Edge y arranca el dispositivo mediante el inicio del agente de
este. El agente de IoT Edge facilita la implementación y supervisión de
los módulos en el dispositivo IoT Edge, incluido el centro de IoT
Edge. El centro de IoT Edge administra las comunicaciones entre los
módulos del dispositivo IoT Edge y entre el dispositivo y la instancia de
IoT Hub. Puede usar el comando az IoT hub device-identity
create para crear un dispositivo IoT Edge.
Procedimientos para crear
la instancia de IoT Hub
Azure IoT Hub permite la comunicación entre el dispositivo virtual y
la nube. La creación de una instancia de IoT Hub implica las siguientes
propiedades obligatorias: Definir un nombre único de la instancia de
IoT Hub y elegir el grupo de recursos que se va a implementar. Para
crear una instancia de Azure IoT Hub con la CLI de Azure, usará el
conjunto de comandos az IoT hub create. Tenga en cuenta que solo
se permite una instancia gratuita de IoT Hub en cada suscripción. El
nivel gratuito de IoT Hub funciona para este ejercicio. Si ha usado IoT
Hub en el pasado y ya tiene un centro gratis creado, puede usar ese
centro de IoT.
13
Registro del dispositivo
IoT Edge en IoT Hub
El proceso de registro de un dispositivo IoT implica la recuperación
de la cadena de conexión del dispositivo. La identidad del dispositivo
reside en la nube, y se usa una cadena de conexión de dispositivo única
para asociar un dispositivo físico a una identidad de dispositivo. Use el
comando az iot hub device-identity show-connection-string para
recuperar la cadena de conexión. Copie el valor de la clave
connectionString desde la salida JSON y guárdelo. Usará esta cadena
de conexión para configurar el entorno de ejecución de Azure IoT Edge.
Procedimientos para
configurar un dispositivo
IoT Edge
El proceso de configuración del dispositivo IoT Edge implica la
configuración de la cadena de conexión en el dispositivo IoT Edge.
Puede establecer la cadena de conexión de forma remota sin tener que
conectarse a la máquina virtual mediante la ejecución de un script en
el dispositivo. Use el comando az vm run para invocar un script en el
dispositivo perimetral y pasar la cadena de conexión como un
parámetro.
Procedimientos para
14
asegurarse de que el
dispositivo IoT Edge está
listo para ejecutar
módulos predefinidos
Una vez configurado el dispositivo perimetral, debe comprobar si el
dispositivo IoT Edge está listo para ejecutar un módulo precompilado.
Para ello, primero debe iniciar sesión en el dispositivo perimetral
mediante la dirección IP pública del dispositivo y el comando ssh.
Comprobará que el demonio de seguridad de IoT Edge se ejecuta
como un servicio del sistema mediante comandos iotedge. Necesita
privilegios elevados para ejecutar los comandos iotedge.
15
Ejercicio: Configuración de
la comunicación entre IoT
Hub e IoT Edge
Uso de Azure Cloud Shell
Para iniciar Azure Cloud Shell,
Vaya a [Link]
16
También tendrá que agregar la extensión IoT de Azure a la CLI
de Azure de la instancia de Cloud Shell mediante el comando
siguiente.
CLI de AzureCopiar
az extension add --name azure-cli-iot-ext
17
Creación de un grupo de
recursos
Cree un grupo de recursos denominado IoTEdgeResources
con el comando siguiente.
CLI de AzureCopiar
az group create --name IoTEdgeResources --location eastus2
18
Cree una máquina virtual
que actúe como
dispositivo.
Acepte los términos de uso y cree la instancia de Azure IoT Edge
proporcionada por Microsoft en la máquina virtual Ubuntu. Esta
máquina virtual preinstala todo lo que necesita para ejecutar IoT Edge
en un dispositivo.
Cree la máquina virtual denominada EdgeVM mediante los
comandos siguientes:
19
CLI de Azure
az vm image accept-terms --urn
microsoft_iot_edge:iot_edge_vm_ubuntu:ubuntu_1604_edgeruntimeo
nly:latest
CLI de Azure
az vm create --resource-group IoTEdgeResources --name EdgeVM --
image
microsoft_iot_edge:iot_edge_vm_ubuntu:ubuntu_1604_edgeruntimeo
nly:latest --admin-username azureuser --generate-ssh-keys
20
La nueva máquina virtual puede tardar unos minutos en crearse e
iniciarse.
Anote la dirección IP pública (publicIpAddress) que se proporciona
como parte de la salida del comando create. La usará para conectarse
a la máquina virtual en pasos posteriores.
Creación de un centro de
IoT
En el código siguiente se crea un centro F1 gratis en el grupo de
recursos IoTEdgeResources. Reemplace {hub_name} por un nombre
único para la instancia de IoT Hub.
CLI de Azure
az iot hub create --resource-group IoTEdgeResources --name
21 {hub_name} --sku S1
Registro de un dispositivo
IoT Edge
Creación de una identidad del dispositivo para el dispositivo IoT Edge
En Azure Cloud Shell, escriba el comando siguiente para crear un
dispositivo denominado myEdgeDevice en el centro.
Como los dispositivos IoT Edge se comportan y se pueden administrar
de manera diferente a los dispositivos IoT típicos, declare que esta
identidad es para un dispositivo IoT Edge con la marca --edge-enabled.
Si recibe un error sobre las claves de directiva de iothubowner,
asegúrese de que Cloud Shell ejecuta la versión más reciente de la
extensión azure-cli-iot-ext.
CLI de Azure
az iot hub device-identity create --hub-name {hub_name} --device-id
myEdgeDevice --edge-enabled
22
Recuperación de la cadena
de conexión del
dispositivo
Para recuperar la cadena de conexión del dispositivo, que vincula el
dispositivo físico con su identidad en IoT Hub, use el comando.
23 CLI de Azure
az iot hub device-identity show-connection-string --device-id
myEdgeDevice --hub-name {hub_name}
Copie el valor de la clave connectionString desde la salida JSON y
guárdelo. Este valor es la cadena de conexión del dispositivo. Esta
cadena de conexión se usará para configurar el entorno de ejecución
de IoT Edge en la sección siguiente.
Configuración del
dispositivo IoT Edge
Tiene que configurar el dispositivo con la cadena de conexión de
dispositivo que ha recuperado en la sección anterior. Esta operación se
puede realizar de forma remota, sin tener que conectarse a la máquina
virtual. Ejecute el comando siguiente y reemplace
{device_connection_string} por una cadena propia.
CLI de Azure
24 az vm run-command invoke -g IoTEdgeResources -n EdgeVM --
command-id RunShellScript --script "/etc/iotedge/[Link]
'{device_connection_string}'"
Visualización del estado
del entorno de ejecución
de Azure IoT Edge
Use el siguiente comando para conectarse a la máquina virtual.
Reemplace {azureuser} si ha usado un nombre de usuario que no sea
el que se sugiere en los requisitos previos. Reemplace
{publicIpAddress} por la dirección de la máquina.
bash
ssh azureuser@{publicIpAddress}
25
Comprobación de si el
dispositivo IoT Edge está
configurado
Comprobará que el demonio de seguridad de IoT Edge se ejecuta
como un servicio del sistema mediante comandos iotedge.
Necesita privilegios elevados para ejecutar los comandos
iotedge.
Ejecute los comandos siguientes para probar el estado del
dispositivo IoT Edge.
26 bash
sudo systemctl status iotedge
bash
journalctl -u iotedge
bash
sudo iotedge list
27
El dispositivo IoT Edge está ya configurado. Está preparado para
ejecutar módulos implementados en la nube.
Procedimientos para
implementar un módulo
precompilado en un
dispositivo IoT Edge
Envío de una nueva implementación a un dispositivo IoT Edge
Para implementar un módulo precompilado en el dispositivo
perimetral, primero debe elegir un módulo de IoT Edge en Azure
Marketplace y también el dispositivo IoT Edge que va a recibir el
módulo.
28 Puede acceder al módulo Sensor de temperatura simulado si busca
en Marketplace, al que se accede a través de Azure Portal. Una vez que
identifique este módulo, elija el dispositivo IoT Edge que lo va a recibir.
Un asistente de tres pasos ayuda a definir las fases para implementar
el módulo.
En el primer paso (Agregar módulos), elija solo el módulo Sensor de
temperatura simulado.
La segunda fase del asistente es la fase (especificar rutas). El
enrutamiento especifica cómo se pasan los mensajes entre los módulos
e IoT Hub. En este caso, se especifica que todos los mensajes de todos
los módulos vayan a IoT Hub. En el tercer paso (Revisar
implementación), puede obtener una vista previa del archivo
JSON que define todos los módulos que se implementarán en el
dispositivo IoT Edge. Cuando se envía una implementación nueva a un
dispositivo IoT Edge, no se inserta nada en el dispositivo. En lugar de
eso, el dispositivo consulta a IoT Hub de manera periódica para
comprobar cualquier instrucción nueva. Si el dispositivo encuentra
un manifiesto de implementación actualizado, usa la información
sobre la nueva implementación para extraer las imágenes del módulo
de la nube y, después, comienza a ejecutar localmente los módulos. El
asistente crea un manifiesto de implementación a través de los tres
pasos. Un manifiesto de implementación es un documento JSON en el
que se describe qué módulos se van a implementar, cómo fluyen los
datos entre los módulos y las propiedades deseadas de los módulos
gemelos. El manifiesto de implementación se usa para indicar al
dispositivo qué módulos debe instalar y cómo configurarlos para que
funcionen de manera conjunta. Todos los dispositivos IoT Edge se
29
deben configurar con un manifiesto de implementación.
Visualización de los datos
generados
El módulo del sensor de temperatura simulado crea datos de ejemplo
que se pueden usar con fines de prueba. El módulo también genera
datos de entorno, es decir, datos para la máquina y el entorno que la
rodea. Por ejemplo, este sensor podría estar en una sala de servidores,
una planta de producción o una turbina eólica. El mensaje incluye la
temperatura y la humedad ambiental, la temperatura y la presión de la
máquina, y una marca de tiempo.
30
Limpieza de los recursos
Para evitar cambios, elimine los recursos de Azure según sea
necesario, incluido el dispositivo que ha creado, el grupo de recursos.
Asegúrese de que los recursos eliminados no se volverán a necesitar.
Ejercicio: Implementación
de un módulo
precompilado en IoT Edge
Para implementar el módulo del sensor de temperatura simulado
desde Azure Marketplace, siga estos pasos:
1. En Azure Portal, escriba Sensor de temperatura simulado en la
búsqueda y abra el resultado de Marketplace.
31
2. Elija un dispositivo IoT Edge para recibir este módulo. En la
página Dispositivos de destino para el módulo de IoT Edge,
proporcione la información siguiente: Suscripción: seleccione la
suscripción que contiene la instancia de IoT Hub que usa; IoT
Hub: seleccione el nombre del centro de IoT que usa; Nombre
del dispositivo IoT Edge: el que haya seleccionado antes
3. Seleccione Crear.
4. Mediante el asistente de tres pasos, defina exactamente cómo
implementar el módulo. En el paso Agregar módulos del
asistente, el módulo SimulatedTemperatureSensor debe estar
completado de forma automática. En el paso Especificar
rutas del asistente, defina cómo se transmiten los mensajes
entre los módulos y a IoT Hub. Si este valor no se rellena
automáticamente en $upstream, agregue el código siguiente:
"routes": {
32 "route": "FROM /messages/* INTO $upstream"
En el paso Revisar implementación del asistente, puede obtener una
vista previa del archivo JSON que define todos los módulos que se
implementarán en el dispositivo IoT Edge. Asegúrese de que el módulo
SimulatedTemperatureSensor está incluido.
5. Seleccione el dispositivo en la lista de dispositivos IoT Edge para
ver sus detalles. En la página de detalles del dispositivo,
desplácese a la sección Módulos. Deben aparecer tres
módulos: edgeAgent,edgeAgent,edgeHub y
SimulatedTemperatureSensor. Si uno o varios de los módulos
aparecen como especificados en la implementación pero no
informados por el dispositivo, significa que el dispositivo IoT
Edge todavía los está iniciando. Espere unos instantes y
seleccione Actualizar en la parte superior de la página.
33
6. Abra de nuevo el símbolo del sistema en el dispositivo IoT Edge,
o bien la conexión SSH desde la CLI de Azure. Use el comando
sudo iotedge list para confirmar que el módulo implementado
desde la nube se está ejecutando en el dispositivo IoT Edge.
7. Vea los mensajes que se envían desde el módulo del sensor de
temperatura mediante el comando sudo iotedge logs
SimulatedTemperatureSensor -f. Tenga en cuenta que los
comandos de IoT Edge distinguen mayúsculas de minúsculas
en los nombres de los módulos.
8. Limpieza de los recursos
1
Evaluación de los requisitos
para implementar las API de
Custom Vision
BIENVENIDA
Evalúe los requisitos de una solución que implementa Custom Vision
Prediction API y Training API. Los planes de diseño completados serán
compatibles con los requisitos del flujo de trabajo, y estará mejor
preparado para trabajar con desarrolladores y arquitectos.
En este módulo aprenderá a:
Evaluar los requisitos de la autorización del servicio
Examinar la API para la predicción de imagen
Examinar la API para el entrenamiento de los modelos
predictivos
2 Requisitos previos
Entender los conceptos de la nube
Conocer los servicios principales de Azure
Conocer las funcionalidades de seguridad, privacidad,
cumplimiento y confianza
Conocer el soporte técnico y los precios de Azure
Introducción 4 min
API de Custom Vision 6 min
Investigación de la autorización del servicio 5 min
Examinar Custom Vision Prediction API 10 min
Examinar Custom Vision Training API 10 min
Prueba de conocimientos 8 min
Resumen 3 min
3
INTRODUCCIÓN
Imagine que dirige un negocio de embalaje que distribuye productos
por todo el mundo. Su empresa ha realizado una fuerte inversión en la
automatización del empaquetado de las cajas y la optimización del
tamaño de cada caja enviada. Pero ha recibido algunas quejas sobre
embalajes rasgados o dañados. Los miembros del equipo de seguridad
de productos están valorando cómo inspeccionar productos
4 empaquetados antes del envío. Quieren automatizar el proceso de
inspección e implicar solo a una persona si se determina que el
embalaje es defectuoso.
El servicio cognitivo Azure Custom Vision combina la inteligencia
artificial y el aprendizaje automático para ofrecer un servicio sofisticado
de detección y clasificación de imágenes.
Estas capacidades se pueden usar directamente desde el portal web
del servicio Custom Vision para crear y entrenar un modelo, probar su
precisión y, después, usarlo para evaluar y aplicar etiquetas a las
imágenes. Pero este proceso no es suficiente para su caso de uso.
Por ello, en su lugar, el equipo de desarrollo quiere utilizar las API REST
que permiten a las aplicaciones y los scripts personalizados aprovechar
las mismas capacidades del servicio Custom Vision que se
proporcionan en el portal web. Con las API de Custom Vision, su
empresa puede integrar este servicio cognitivo directamente en el
proceso de automatización existente para identificar de forma rápida y
precisa los paquetes defectuosos antes de que se envíen a los clientes.
En este módulo, aprenderá a:
• Evaluar los requisitos de la autorización del servicio
• Examinar la API para la predicción de imagen
• Examinar la API para el entrenamiento de los modelos
predictivos
5
API DE CUSTOM VISION
Las API de Custom Vision usan algoritmos integrados que
proporcionan los servicios con "inteligencia". Puede usar estos
algoritmos para crear y personalizar sus propios modelos de Computer
Vision de última generación con solo unas pocas líneas de código.
Los algoritmos de Custom Vision API se exponen como llamadas de
servicio simples basadas en REST. Los desarrolladores pueden usar las
llamadas de REST para crear proyectos (clasificadores), cargar y
etiquetar imágenes, realizar el entrenamiento, administrar iteraciones
del modelo e incluso realizar predicciones.
Sugerencia
Este módulo se centra en los servicios REST que se pueden usar en
cualquier lenguaje. Microsoft también publica SDK de código abierto
para .NET, Python, Java, [Link], y Go que encapsulan las API REST
subyacentes en objetos y métodos específicos de la plataforma.
Consulte la documentación para obtener más información sobre los
SDK disponibles.
API de Custom Vision
Las API de Custom Vision son una manera perfecta de usar la potencia
de la inteligencia artificial para:
Crear modelos de Computer Vision de última generación.
Cargar y etiquetar imágenes de entrenamiento.
Entrenar clasificadores para el aprendizaje activo.
Realizar predicción de imágenes para identificar las
coincidencias probables con un modelo entrenado.
Realizar detección de objetos para buscar elementos dentro de
7 una imagen y devolver un rectángulo de selección.
En general, los métodos proporcionados por las API de Custom Vision
se dividen en las siguientes categorías:
Entrenamiento. Administre proyectos (clasificadores) y cargue
etiquete y administre las imágenes de entrenamiento.
Predicción. Realice predicciones basadas en los modelos de
clasificación.
Al igual que con la Computer Vision API relacionada, para llamar a las
API de Custom Vision, solo tiene que hacer una solicitud web segura.
Por ejemplo, aquí se muestra una versión simplificada del aspecto que
tendría una llamada a una Custom Vision API en Python:
Python
conn =
[Link]('[Link]')
[Link]("POST", serviceEndpointUrl, body)
response = [Link]()
data = [Link]()
La misma llamada API en C# es similar:
C#Copiar
HttpClient client = new HttpClient();
StringContent content = new StringContent(body);
8
response = await [Link](serviceEndpointUrl, content);
string data = await [Link]();
INVESTIGACIÓN DE LA
AUTORIZACIÓN DEL
SERVICIO
Las API de Custom Vision usan un par de claves de suscripción para
controlar el acceso a las dos API del servicio:
La clave de entrenamiento para acceder a los miembros de la
API utilizados a fin de entrenar el modelo.
La clave de predicción para acceder a los miembros de la API
utilizados para clasificar las imágenes con un modelo
entrenado.
9
La separación de las claves de suscripción de Custom Vision API facilita
la entrega de las claves en función de los requisitos técnicos, de la
aplicación o del negocio. Por ejemplo, un servicio que solo requiere
tareas de predicción solo podrá usar esa API, y solo se le cobrará por
la cuota de predicción. Ambas claves están disponibles en el portal al
crear la instancia del servicio Custom Vision.
Sugerencia
Las claves también pueden encontrarse en la página de Azure Portal
correspondiente al recurso de Azure de Custom Vision asociado con el
proyecto, en la hoja Claves.
Suministro de una clave de suscripción
Cada llamada mediante programación a las API de Custom Vision
requiere que se pase una de estas claves de suscripción al servicio
como un valor de encabezado de solicitud. Por ejemplo, si el código
llamara a Prediction API en C#, usaría la
colección DefaultRequestHeaders para agregar la clave de predicción
a la solicitud con la clave Prediction-Key:
C#Copiar
string predictionKey = "...";
HttpClient client = new HttpClient();
[Link]("Prediction-Key", predictionKey)
El mismo código en Ruby tendría un aspecto similar a este ejemplo:
10
RubyCopiar
request['Prediction-Key'] = '{prediction key}'
Dado que las API de Custom Vision se dividen en distintas API de
predicción y entrenamiento, echemos un vistazo a cada API con más
detalle, empezando por Custom Vision Prediction.
EXAMINAR CUSTOM
VISION PREDICTION API
La tarea más común que realizará una aplicación o un script con el
servicio Custom Vision es solicitar predicciones de imágenes con
Prediction API. Esta tarea implica el envío de una solicitud web
autorizada al punto de conexión de la suscripción y el procesamiento
de la información devuelta por la llamada.
Sugerencia
Con fines de prueba, los suscriptores pueden practicar con el uso de
Prediction API mediante la consola de pruebas de Custom Vision
11
Prediction API. Asegúrese de seleccionar la consola de pruebas
asociada a la región en la que se implementa el servicio.
Llamada a Prediction API
A Prediction API se accede a través del punto de conexión web público
específico del servicio registrado de Custom Vision. Hay dos API
disponibles en función del tipo de proyecto: clasificación de imágenes
y detección de objetos.
Clasificación de imágenes
La clasificación de imágenes analiza una imagen suministrada y
devuelve una lista de etiquetas identificadas en la imagen. Se
proporcionan varios puntos de conexión. Aquí se muestran los dos
puntos de conexión que se usan con más frecuencia:
ClassifyImage acepta una carga útil binaria
("application/octet-stream") como una matriz de bytes que
contiene los datos de la imagen.
ClassifyImageUrl acepta una carga útil de JSON
("application/json") que especifica una dirección URL de la
imagen disponible públicamente.
Detección de objetos
La detección de objetos es similar a la clasificación de imágenes, pero
también devuelve las coordenadas (rectángulo de selección) de dónde
se ha ubicado la etiqueta dentro de la imagen. Al igual que con la
clasificación, hay dos puntos de conexión de uso frecuente disponibles:
DetectImage acepta una carga útil binaria ("application/octet-
12 stream") como una matriz de bytes que contiene los datos de
la imagen.
DetectImageUrl acepta una carga útil de JSON
("application/ejson") que especifica una dirección URL de la
imagen disponible públicamente.
Ambos puntos de conexión de la API usan la misma estructura para
formar la dirección URL:
text
[Link]
pe}/iterations/{iterationName}/{imageType}
En esta dirección URL:
{endpoint} es el punto de conexión de ubicación en el que se
ha creado el servicio, por
ejemplo, [Link].
{projectId} es un identificador de proyecto único que se usa
para especificar el servicio de Custom Vision.
{projectType} es classify para la clasificación de imágenes
o detect para la detección de objetos.
{iterationName} es el nombre de la iteración del modelo
entrenado que se usa.
{imageType} es url cuando la imagen se pasa como una
dirección URL o image cuando la imagen se pasa como datos
binarios en el cuerpo de la solicitud.
Importante
13
La API a la que se llama, Detect frente a Classify, se basa en el tipo de
proyecto creado en el servicio Custom Vision. Si no llama a la API
adecuada, el servicio devolverá 400 Bad Request - Invalid project type
for operation.
Búsqueda de la dirección URL del proyecto
Los detalles específicos del punto de conexión están disponibles en el
portal del servicio Custom Vision. Si selecciona el botón Ver punto de
conexión en la pestaña Predicciones o la opción Dirección URL de
Prediction en la pestaña Rendimiento, se mostrará un cuadro de
diálogo similar al siguiente:
Construcción de la solicitud HTTP
14 Después de identificar la dirección URL correcta, se invoca mediante
una solicitud HTTP PUT. Recuerde que es necesario pasar una clave de
predicción con la solicitud. Esta llave se proporciona como un
encabezado de solicitud con el nombre Prediction-Key.
Por ejemplo, el código de C# siguiente envía una dirección URL de la
imagen a Prediction API con el punto de conexión y la clave de
predicción especificados:
C#
public async Task<string> MakePredictionRequestAsync(string url,
string predictionKey, string imageUrl)
var client = new HttpClient();
[Link]("Prediction-Key", predictionKey);
using (var content = new StringContent("{\"Url\":\"" + imageUrl +
"\"}", Encoding.UTF8, "application/json");)
var response = await [Link](url, content);
return await [Link]();
En Python 3, el mismo código podría ser similar al de este ejemplo:
PythonCopiar
15
import [Link], [Link], [Link], [Link], base64
headers = {
'Content-Type': 'application/json',
'Prediction-Key': '{prediction key}',
body = "{'Url' : '" + url + "' }"
try:
conn =
[Link]('[Link].c
om')
[Link]("POST",
"/customvision/v3.0/Prediction/{projectId}/classify/iterations/{iteration
Name}/url", body, headers)
response = [Link]()
data = [Link]()
print(data)
[Link]()
16
except Exception as e:
print("[Errno {0}] {1}".format([Link], [Link]))
Nota
Los métodos de Prediction API también aceptan un parámetro de cadena
de consulta opcional llamado application para identificar la aplicación
que invoca el servicio. Este valor se puede utilizar para realizar el
seguimiento de las aplicaciones que utilizan el servicio
Custom Vision.
Pasar archivos de imagen directamente
Si va a usar la carga de archivo binario ClassifyImage o DetectImage,
el cuerpo de la solicitud debe contener los datos de la imagen
codificados en una matriz de bytes. Esta es la misma llamada que usa
el punto de conexión ClassifyImage en su lugar. En este caso, el
encabezado Content-Type debe establecerse en "application/octet-
stream".
C#
public async Task<string> MakePredictionRequestAsync(string url,
string predictionKey, string imageFile)
var fileStream = new FileStream(imageFile, [Link],
[Link]);
17
var binaryReader = new BinaryReader(fileStream);
var bytes = [Link]((int)[Link]);
var client = new HttpClient();
[Link]("Prediction-Key", predictionKey);
using (var content = new ByteArrayContent(bytes))
[Link] = new
MediaTypeHeaderValue("application/octet-stream");
var response = await [Link](url, content);
return await [Link]();
Procesamiento de la respuesta
Prediction API devuelve un objeto JSON que incluye varios bits de
información. La información más importante aquí es una matriz
de predicciones que indica la probabilidad de que la imagen
proporcionada contuviera ese elemento entrenado. Por ejemplo, si el
modelo se ha entrenado para reconocer los tipos de animales que se
encuentran en el Círculo Polar Ártico y se proporciona una imagen de
18 un oso polar, ClassifyImage podría devolver un objeto como el
siguiente:
JSON
"id":"71b145f7-8533-4cf4-9821-f31a4293508a",
"project":"586008f5-2d8e-4e4a-abb4-66127e96a4f4",
"iteration":"f118e60f-5e25-40ad-89a2-3b6b1cdd5dac",
"created":"2019-06-19T[Link].240Z",
"predictions":[
{
"probability":1.0,
"tagId":"8b2ada4d-1d0f-4b07-af19-dfd643043e1f",
"tagName":"Polar bear"
},
"probability":3.3948698E-11,
"tagId":"56fe8dca-2849-454a-8aa0-5897b1c30009",
"tagName":"Arctic fox"
},
19 {
"probability":1.96249064E-13,
"tagId":"ae6f7ccb-46ac-44af-9b70-8d91f4951122",
"tagName":"walrus"
Cada predicción contiene un elemento tagId que identifica la etiqueta
coincidente, un atributo tag que proporciona un nombre descriptivo
de la etiqueta y un valor probability de 0 a 1 que indica el nivel de
confianza del servicio en la identificación de la etiqueta especificada en
la imagen.
20
EXAMINAR CUSTOM
VISION TRAINING API
El portal web del servicio Custom Vision es una forma sencilla de
entrenar un modelo mediante la carga de imágenes etiquetadas. Este
enfoque es la forma más común de entrenar, probar y publicar un
modelo. Sin embargo, a veces una necesidad empresarial podría
requerir que un modelo se prepare o se vuelva a entrenar en función
de los datos entrantes disponibles para las aplicaciones que usan el
servicio. En estos casos, la aplicación puede usar Training API para
agregar y etiquetar nuevas imágenes y publicar una nueva iteración del
servicio Custom Vision.
21
De forma similar a Prediction API, Training API proporciona métodos
HTTP para agregar imágenes de entrenamiento en un proyecto y
etiquetarlas. El proceso de llamada y uso de la respuesta es idéntico al
de Prediction API. Simplemente usa puntos de conexión diferentes.
CreateImages es el método subyacente de Custom Vision que se usa
para enviar imágenes de entrenamiento etiquetadas. Al igual que
Prediction API, Custom Vision Training API proporciona métodos
independientes para cargar archivos binarios y proporcionar
direcciones URL de imagen disponibles públicamente:
CreateImagesFromFiles incluye uno o varios archivos de
imagen codificados y etiquetas opcionales para crear imágenes.
Hay un límite de 64 imágenes y 20 etiquetas.
CreateImagesFromUrls especifica una o varias direcciones
URL y etiquetas opcionales para crear imágenes. Hay un límite
de 64 imágenes y 20 etiquetas.
Nota
Hay varios métodos adicionales disponibles en la Training API que
permiten crear y buscar proyectos, crear y eliminar etiquetas, entrenar
proyectos y mucho más. Todo lo que puede hacer en el portal,
normalmente puede hacerlo con la API REST.
Todos los puntos de conexión tienen el mismo formato básico que los
de Prediction API:
text
22 [Link]
ges/{imageType}
En esta dirección URL:
{endpoint} es el punto de conexión de ubicación en el que se
ha creado el servicio, por
ejemplo, [Link].
{projectId} es un identificador de proyecto único que se usa
para especificar el servicio de Custom Vision.
{imageType} se corresponde con urls, cuando las imágenes se
pasan como direcciones URL o con files cuando las imágenes
se pasan como datos codificados en el cuerpo de la solicitud.
Compilación de una solicitud
El punto de conexión de Training API está disponible en el
panel Configuración del proyecto del servicio Custom Vision en el
portal web. También puede encontrar la clave de entrenamiento en esta
página. Necesita la clave de entrenamiento para autorizar llamadas a
los servicios de Training API. Una vez que tenga estos dos fragmentos
de información, está listo para usar los métodos CreateImages.
Una vez identificada la dirección URL correcta, se invoca con una
solicitud HTTP PUT que pasa la solicitud en el cuerpo y la clave de
entrenamiento como un encabezado de solicitud con el
nombre Training-Key.
Puede usar la mayoría de los tipos de elementos multimedia
23 disponibles para estructurar el cuerpo de la
solicitud: "application/json", "application/xml", "text/xml" o "applicatio
n/x-www-form-urlencoded". Puede elegir el tipo con el que le resulte
más fácil trabajar en su lenguaje o marco. El valor de
encabezado Content-Type determinará el tipo de carga útil del
contenido que proporcione.
Cada solicitud CreateImages toma una lista de imágenes o direcciones
URL y un conjunto opcional de etiquetas. Este es un ejemplo de un
cuerpo de solicitud válido para CreateImagesFromUrls (en JSON):
JSON
"images": [
{
"url": "{url to image #1}",
"tagIds": [ "{tag-id}" ]
],
"tagIds": [
"{tag-id}"
24 Las colecciones tagIds son opcionales. Puede obviarlas si no las está
usando. Puede proporcionar etiquetas por imagen (si son diferentes
para cada imagen) o para toda la colección de imágenes con la
segunda colección de etiquetas. Debe proporcionar el identificador
único para la etiqueta. Puede recuperar este identificador desde el
portal web o mediante HTTP GET para invocar el
método {endpoint}/customvision/v3.0/training/projects/{projectId}/ta
gs. Este es un ejemplo de respuesta:
JSON
"id":"56fe8dca-2849-454a-8aa0-5897b1c30009",
"name":"Arctic fox",
"description":null,
"type":"Regular",
"imageCount":130
},
"id":"ae6f7ccb-46ac-44af-9b70-8d91f4951122",
"name":"Walrus",
"description":null,
25 "type":"Regular",
"imageCount":138
},
"id":"8b2ada4d-1d0f-4b07-af19-dfd643043e1f",
"name":"Polar bear",
"description":null,
"type":"Regular",
"imageCount":141
}
Llamada al servicio
Después de compilar la solicitud, puede usar un método HTTP PUT para
invocar la API. Este es un ejemplo en C#:
C#
public async Task<string> AddTrainingImageAsync(string url, string
trainingKey, string[] imageUrls, string[] tags)
string jsonData = ...; // Build the JSON request from imageUrls and
26 tags.
var client = new HttpClient();
[Link]("Training-Key", trainingKey);
using (var content = new StringContent(jsonData, Encoding.UTF8,
"application/json");)
var response = await [Link](url, content);
return await [Link]();
}
}
En Python, el código debería tener un aspecto parecido al siguiente:
PythonCopiar
import [Link], [Link], [Link], [Link], base64
headers = {
'Content-Type': 'application/json',
'Training-Key': '{training key}',
27
body = "{json-data}"
try:
conn = [Link]("{endpoint}")
[Link]("POST",
"/customvision/v3.0/training/projects/{projectId}/images/urls", body,
headers)
response = [Link]()
data = [Link]()
print(data)
[Link]()
except Exception as e:
print("[Errno {0}] {1}".format([Link], [Link]))
Procesamiento del resultado
La respuesta procedente del servicio tendrá el mismo formato que la
solicitud. (Puede influir en este comportamiento mediante el valor de
encabezado Accepts). El objeto devuelto tendrá un resultado general
(isBatchSuccessful) y una entrada para cada imagen pasada, a fin de
indicar si se ha procesado. Este es un resultado de ejemplo del
método CreateImagesFromUrls:
28
JSON
"isBatchSuccessful": true,
"images": [
"sourceUrl":
"[Link]
[Link]",
"status": "OK",
"image": {
"id": "955651c9-0ba3-40a0-b33f-a46d39feb3ee",
"created": "2019-06-19T[Link].8757957",
"width": 1555,
"height": 900,
"resizedImageUri":
"[Link]
586008f52d8e4e4aabb466127e96a4f4/i-
955651c90ba340a0b33fa46d39feb3ee?sv=2017-04-
17&sr=b&sig=JfzNzS3%2B1qKKHLnfDK%2Fcuh5FDPFPxRSHZsSnz%2
Bri4II%3D&se=2019-06-20T23%3A02%3A39Z&sp=r",
"thumbnailUri":
29 "[Link]
586008f52d8e4e4aabb466127e96a4f4/t-
955651c90ba340a0b33fa46d39feb3ee?sv=2017-04-
17&sr=b&sig=3udivyZu%2BGtgT5%2BqX6iCDTYT8TxvBiAzKk2WJV3d
FzU%3D&se=2019-06-20T23%3A02%3A39Z&sp=r",
"originalImageUri":
"[Link]
586008f52d8e4e4aabb466127e96a4f4/o-
955651c90ba340a0b33fa46d39feb3ee?sv=2017-04-
17&sr=b&sig=bWJjIM5aBcAdx3LS5EsZGLdRmK5B%2BE%2BShzSbJD7
LZLU%3D&se=2019-06-20T23%3A02%3A39Z&sp=r",
"tags": [
{
"tagId": "8b2ada4d-1d0f-4b07-af19-dfd643043e1f",
"tagName": null,
"created": "2019-06-19T[Link].9019664"
30
1
Clasificación de imágenes
con Microsoft Custom Vision
Service
BIENVENIDA
Cree, entrene y pruebe un modelo de clasificación de imágenes
personalizado mediante Custom Vision Service para identificar con
precisión las pinturas de artistas famosos.
En este módulo, aprenderá a:
Crear un proyecto de Custom Vision Service
Entrenará un modelo de Custom Vision Service con imágenes
etiquetadas
Probar un modelo de Custom Vision Service
Llamada al punto de conexión de predicción del modelo
personalizado a través de HTTP
2
Requisitos previos
Para completar estos ejercicios, necesita una suscripción a Azure. Si no
tiene ninguna, cree una cuenta gratuita y agregue una suscripción
antes de empezar. Si es alumno, puede aprovechar la
oferta Microsoft Azure for Students.
Introducción 5 min
Ejercicio: Creación de un proyecto de Custom Vision Service 5
min
Ejercicio: Carga de las imágenes etiquetadas 5 min
Ejercicio: Entrenamiento del modelo 5 min
Ejercicio: Prueba del modelo 5 min
Ejercicio: Llamada al punto de conexión de predicción de un
modelo a través de HTTP 5 min
Resumen y comprobación de conocimientos 10 min
3
INTRODUCCIÓN
Microsoft Cognitive Services Microsoft Cognitive Services es un
conjunto de servicios y API con el respaldo del aprendizaje automático
que permite que los desarrolladores incorporen en sus aplicaciones
características inteligentes, como el reconocimiento facial en fotos y
vídeos, el análisis de opinión en texto y la comprensión del
lenguaje. Custom Vision Service de Microsoft está entre los miembros
4 más recientes del conjunto de productos Cognitive Services. Su
finalidad es crear modelos de clasificación de imágenes que
"aprenden" a partir de las imágenes etiquetadas que proporciona.
¿Quiere saber si una foto contiene la imagen de una flor? Use una
colección de imágenes de flores para entrenar a Custom Vision Service
con el fin de que le pueda indicar si la siguiente imagen incluye una
flor o, incluso, de qué tipo de flor se trata.
Objetivos de aprendizaje
En este módulo, aprenderá a:
• Crear un proyecto de Custom Vision Service
• Entrenará un modelo de Custom Vision Service con imágenes
etiquetadas
• Probar un modelo de Custom Vision Service
• Llamar al punto de conexión de predicción del modelo
personalizado a través de HTTP
• Comprender las garantías de directivas y la privacidad de
Microsoft
• Supervisar los recursos
5
EJERCICIO: CREACIÓN DE
UN PROYECTO DE
CUSTOM VISION SERVICE
El primer paso para crear un modelo de clasificación de imágenes con
Custom Vision Service es crear un proyecto. En esta unidad, usará el
portal de Custom Vision Service para crear un proyecto de Custom
Vision Service.
1. Abra el portal de Custom Vision Service en el explorador.
Después, seleccione Iniciar sesión.
6 2. Si se le pide que inicie sesión, hágalo con las credenciales de su
cuenta Microsoft. Si se le pide permitir que esta aplicación
acceda a su información, haga clic en Yes (Sí) y, si se le solicita,
acepte los términos del servicio.
3. Haga clic en Nuevo proyecto para crear un proyecto.
4. En el cuadro de diálogo Crear proyecto nuevo, ponga el
nombre Ilustraciones al proyecto.
5. Seleccione el grupo de recursos que quiera usar para el
proyecto. Si no dispone de ningún grupo de recursos,
seleccione Crear nuevo para crear uno.
6. Tras seleccionar el grupo de recursos, se mostrarán las
secciones siguientes:
Tipos de proyecto: seleccione la clasificación.
Tipos de clasificación: seleccione Multietiqueta.
Dominios: seleccione General.
Un dominio optimiza un modelo para determinados tipos de imagen.
Por ejemplo, si su objetivo consiste en clasificar imágenes de alimentos
7
por los tipos de alimentos que contienen o el origen étnico de los
platos, puede resultar útil seleccionar el dominio Food (Comida). Para
los escenarios en los que no coincide ninguno de los dominios
ofrecidos, o si no está seguro de qué dominio elegir, seleccione el
dominio General.
7. Para crear el proyecto, haga clic en Crear proyecto.
8
El paso siguiente es cargar imágenes al proyecto y asignar etiquetas a
esas imágenes para clasificarlas.
EJERCICIO: CARGA DE
LAS IMÁGENES
ETIQUETADAS
En esta unidad, agregará imágenes de cuadros famosos de Picasso,
Pollock y Rembrandt al proyecto Artworks. Etiquetará las imágenes, de
modo que Custom Vision Service pueda aprender a diferenciar a un
artista de otro.
1. En el proyecto Artworks que hemos creado, haga clic en el
signo más (+) a la derecha de Etiquetas, en el panel lateral.
9
10
2. Se muestra un cuadro de diálogo denominado Crear una
etiqueta nueva. Escriba cuadro en el nombre de campo de la
etiqueta y seleccione Guardar. Esta operación crea la
etiqueta cuadro en la lista de etiquetas. Vamos a agregar algo
más.
3. Repita los pasos 1 y 2 para agregar etiquetas con los
valores Picasso, Pollock y Rembrandt. Cuanto termine, la
etiqueta debería tener el siguiente aspecto.
Como puede ver, el número de imágenes en el proyecto que se
etiquetan con cada una de estas etiquetas es cero. Vamos a agregar
11 algunas imágenes al proyecto y a asignar etiquetas.
4. Descargue [Link] que contiene recursos de imagen
para este módulo y descomprímalo en el equipo local.
5. De vuelta en el portal, haga clic en Agregar imágenes para
agregar imágenes al proyecto.
6. En la carpeta cvs-resources que ha descargado localmente en
el paso 4, vaya a la carpeta "Artists\Picasso".
7. Seleccione todos los archivos de "Artists\Picasso" y, después,
haga clic en Abrir.
12
8. El cuadro de diálogo Image upload (Carga de imágenes)
aparece y muestra vistas en miniatura de todas las imágenes
que se van a cargar. Seleccione el campo My Tags (Mis
etiquetas), que abre un menú desplegable de las etiquetas que
puede asignar estas imágenes.
13
9. Seleccione las etiquetas cuadros y Picasso, y, a continuación,
seleccione Upload 7 files (Cargar siete archivos) para finalizar
la carga.
10. Confirme que las imágenes que cargó ahora están en el
proyecto Artworks y que la lista de etiquetas se ha actualizado
para mostrar que hemos etiquetado siete imágenes
con Picasso y cuadros.
11. Con siete imágenes de Picasso, Custom Vision Service puede
hacer un buen trabajo de identificación de los cuadros de
Picasso. Pero, si acabara de entrenar al modelo ahora mismo,
solo entendería la apariencia de un Picasso y no sería capaz de
identificar los cuadros de otros pintores. El paso siguiente es
cargar algunos cuadros de otro pintor.
14
12. Seleccione Add images (Agregar imágenes) y seleccione todas
las imágenes de la carpeta "Artists\Rembrandt" en los recursos
del módulo. Etiquételas con las etiquetas "cuadros" y
"Rembrandt" (no "Picasso") y seleccione Upload 6 files (Cargar
seis archivos) para cargarlas al proyecto.
15
13. Confirme que las imágenes de Rembrandt aparecen junto a las
de Picasso en el proyecto y que "Rembrandt" aparece en la lista
de etiquetas.
14. Ahora agregue cuadros del enigmático pintor Jackson Pollock
para que Custom Vision Service pueda reconocer también sus
cuadros. Seleccione todas las imágenes de la carpeta
"Artists\Pollock" en los recursos del módulo, etiquételas con los
16
términos "cuadro" y "Pollock", y cárguelas al proyecto.
Con las imágenes etiquetadas cargadas, el paso siguiente es entrenar
el modelo con estas imágenes, para que pueda distinguir entre los
cuadros de Picasso, Rembrandt y Pollock, así como determinar si un
cuadro es obra de uno de estos pintores famosos.
EJERCICIO:
ENTRENAMIENTO DEL
MODELO
En esta unidad, entrenará el modelo con las imágenes cargadas y
etiquetadas en el ejercicio anterior. Después de entrenar un modelo,
puede perfeccionarlo si se cargan imágenes etiquetadas adicionales y
se vuelve a entrenar.
1. Haga clic en el botón Train (Entrenar) situado en la parte
superior de la página para entrenar el modelo. Cada vez que
entrene el modelo, se crea una nueva iteración. Custom Vision
17
Service mantiene varias iteraciones, lo que le permite comparar
su progreso a lo largo del tiempo.
2. Espere a que se complete el proceso de entrenamiento. (Solo
debería tardar unos segundos). Luego, revise las estadísticas de
entrenamiento que se le presentan para la iteración 1.
Los resultados muestran dos medidas de precisión del
modelo, Precision (Precisión) y Recall (Recuerdo). Supongamos que
se le han presentado al modelo tres imágenes de Picasso y tres de
Gogh Van. Supongamos que se identifican correctamente dos de los
ejemplos de Picasso como imágenes de "Picasso", pero dos de los
ejemplos de Van Gogh se identifican incorrectamente también como
de Picasso. En este caso, la precisión sería del 50 %, ya que se
identifican correctamente dos de cada cuatro imágenes. La puntuación
de Coincidencia sería del 67 %, ya que se identificaron correctamente
dos de las tres imágenes de Picasso.
18
En el siguiente ejercicio, vamos a probar el modelo con la característica
Quick Test (Prueba rápida) del portal, que permite enviar imágenes al
modelo y ver cómo las clasifica con los conocimientos adquiridos a
partir de las imágenes de entrenamiento.
Sugerencia
Además de entrenar el modelo con la interfaz de usuario del portal de
Custom Vision, también puede hacerlo si llama al
método TrainProject en Custom Vision Training API.
EJERCICIO: PRUEBA DEL
MODELO
Ahora que se ha entrenado el modelo, es momento de probarlo.
Proporcionaremos imágenes nuevas al modelo y veremos cómo las
clasifica.
1. Haga clic en Quick Test en la parte superior de la página.
2. Haga clic en Examinar archivos locales y vaya a la carpeta
"Quick Tests" en la carpeta de recursos del módulo que
19 descargó antes. Seleccione PicassoTest_01.jpg y haga clic
en Abrir.
3. Examine los resultados de la prueba en el cuadro de diálogo
"Quick Test" (Prueba rápida). ¿Cuál es la probabilidad de que el
cuadro sea un Picasso? ¿Cuál es la probabilidad de que sea un
Rembrandt o Pollock?
20
4. Cierre el cuadro de diálogo de "Quick Test" (Prueba rápida). A
continuación, haga clic en Predictions (Predicciones) en la
parte superior de la página.
5. Haga clic en la imagen de prueba que ha cargado para
mostrarla en detalle. Luego, etiquete la imagen como un
"Picasso" seleccionando Picasso en la lista desplegable lista y
haga clic en Guardar y cerrar.
Al etiquetar las imágenes de prueba de este modo, puede redefinir el
modelo sin cargar imágenes de entrenamiento adicionales.
6. Realice otra prueba rápida, esta vez con el archivo
denominado [Link] de la carpeta "Quick Test"
21
(Prueba rápida). Confirme que esta imagen se asigna a poca
probabilidad de ser un Picasso, un Rembrandt o un Pollock.
El modelo está entrenado y preparado para usarse, y parece ser un
experto en identificar cuadros de determinados pintores. Vamos a
llamar al punto de conexión de predicción a través de HTTP y veremos
qué ocurre.
EJERCICIO: LLAMADA AL
PUNTO DE CONEXIÓN DE
PREDICCIÓN DE UN
MODELO A TRAVÉS DE
HTTP
En el ejercicio anterior, se probó el modelo entrenado con la
característica Quick Test (Prueba rápida) del portal de Custom Vision
Service. Se trata de una excelente manera de comprobar rápidamente
la precisión del modelo con algunas imágenes de prueba. Vayamos un
22
poco más lejos y hagamos llamadas al punto de conexión de predicción
del modelo a través de HTTP.
1. Vuelva al proyecto Artworks* en el portal de Custom Vision
Service y seleccione la pestaña Rendimiento.
2. Seleccione Publicar para publicar la iteración más reciente.
3. Seleccione Dirección URL de predicción. Se muestra un
cuadro de diálogo de la información que necesitamos para
realizar nuestras llamadas.
Como se muestra en el cuadro de diálogo, podemos llamar al punto de
23
conexión de predicción y pasarle una dirección URL de imagen.
También podemos pasar una imagen sin procesar al punto de conexión
en el cuerpo de la solicitud.
Tome nota de tres fragmentos de información de este cuadro de
diálogo.
Prediction-Key (Clave de predicción): Esta clave tiene que
establecerse como un encabezado en todas las solicitudes. Es
lo que da acceso al punto de conexión.
URL de la solicitud: El cuadro de diálogo muestra dos
direcciones URL diferentes. Si se está publicando una dirección
URL de imagen, use la primera, que termina en /url. Si se quiere
publicar una imagen sin formato en el cuerpo de la solicitud, se
usa la segunda dirección URL, que termina en /image.
Tipo de contenido: Si se va a publicar una imagen sin formato,
se establece el cuerpo de la solicitud como la representación
binaria de la imagen y el tipo de contenido
como application/octet-stream. Si se va a publicar una
dirección URL de imagen, se incluye como JSON en el cuerpo y
se establece el tipo de contenido como application/json.
4. Copie y guarde la primera dirección URL y el valor
de Prediction-Key del cuadro de diálogo How to use the
Prediction API (Cómo usar Prediction API).
Sugerencia
cURL es una herramienta de línea de comandos que se puede usar para
enviar o recibir archivos. Se incluye con Linux, macOS y Windows 10 y
puede descargarse para la mayoría de los demás sistemas operativos.
24
cURL admite numerosos protocolos como HTTP, HTTPS, FTP, FTPS,
SFTP, LDAP, TELNET, SMTP, POP3, etc. Para obtener más información,
consulte los vínculos siguientes:
[Link]
[Link]
cURL ya está instalado en Azure Cloud Shell en el espacio aislado, de
modo que lo usaremos aquí para realizar llamadas HTTP a nuestro
punto de conexión.
2. En Cloud Shell, ejecute el comando siguiente.
Reemplace [endpoint-URL] con la dirección URL que guardó
en el último paso. Reemplace [Prediction-Key] con el valor
de Prediction-Key que guardó en el último paso.
CLI de Azure
curl [endpoint-URL] \
-H "Prediction-Key: [Prediction-Key]" \
-H "Content-Type: application/json" \
-d "{'url' : '[Link]
classify-images-with-the-custom-vision-service/master/test-
images/VanGoghTest_02.jpg'}" \
| jq '.'
Cuando se complete el comando, verá una respuesta JSON similar a la
captura de pantalla siguiente. La API devuelve una probabilidad para
cada etiqueta en el modelo. Como puede ver, con una probabilidad
25
cercana a 1 para el valor tagName "painting", esta imagen es
definitivamente un cuadro. Pero no es de ninguno de los artistas con
los que hemos entrenado nuestro modelo.
Imagen URL
[Link]
earn-classify-images-with-the-custom-vision-
service/master/test-images/PicassoTest_02.jpg
[Link]
earn-classify-images-with-the-custom-vision-
service/master/test-images/RembrandtTest_01.jpg
[Link]
earn-classify-images-with-the-custom-vision-
service/master/test-images/PollockTest_01.jpg
3. Para probar más predicciones, reemplace la dirección URL en el
cuerpo de la solicitud anterior por las direcciones URL de la
tabla siguiente.
Nuestro punto de conexión de predicción funciona según lo previsto.
26
Llamar a la API es tan sencillo como realizar una solicitud HTTP al punto
de conexión con una clave de predicción y una dirección URL de
imagen.
RESUMEN Y
COMPROBACIÓN DE
CONOCIMIENTOS
La clasificación de imágenes desempeña un papel cada vez más
importante en el sector como un medio para automatizar tareas como
la comprobación de contenido ofensivo en las imágenes que se cargan
en los sitios web y la inspección de componentes que salen de las líneas
de montaje en busca de defectos. Crear manualmente un modelo de
clasificación de imágenes, es decir, programarlo desde cero en Python,
R o en otro lenguaje, resulta costoso y requiere experiencia. Custom
27
Vision Service permite crear modelos de clasificación de imágenes
sofisticadas prácticamente a cualquier persona. Y después de crear y
entrenar un modelo, una aplicación que lo use solo está a unas líneas
de código de distancia.
1
Traducción de voz en tiempo
real con Azure Cognitive
Services
BIENVENIDA
Obtenga información sobre cómo traducir y convertir voz en texto
mediante la transcripción en tiempo real con Speech Translation API de
Azure Cognitive Services.
En este módulo aprenderá a:
• Reconocer en qué consiste la traducción de voz
• Explorar Speech Translation API
Requisitos previos
2
Ninguno
Introducción 1 min
Información general de conversión de voz en texto 3 min
Ejercicio: Creación de un recurso de servicio de Voz 5 min
Ejercicio: Visualización de las claves de suscripción y los puntos
de conexión 5 min
Ejercicio: Conversión de voz de un archivo de audio a texto 20
min
Vista de idiomas de voz admitidos 4 min
Ejercicio opcional: Escucha de datos de traducción entrantes 5
min
Prueba de conocimientos 7 min
Resumen 2 min
3
INTRODUCCIÓN
El aspecto de conversión de voz en texto del servicio de Voz transcribe
transmisiones de audio en texto. La aplicación puede mostrar este texto
al usuario o actuar sobre él como entrada de comandos. Se puede usar
este servicio con una biblioteca cliente del SDK (para las plataformas y
los lenguajes admitidos), o bien con una API de transferencia de estado
representacional (REST).
4
Con el servicio de Voz, se puede realizar lo siguiente:
• Ampliar el alcance de las aplicaciones en dispositivos móviles,
de escritorio y en la web para proporcionar transcripción de voz
a texto.
• Traducir con facilidad hacia y desde varios idiomas compatibles
a través de la interfaz REST abierta del SDK de Voz. Esta API es
un servicio automático de traducción de voz basado en la nube
(también conocido como traducción automática).
• Realizar operaciones de texto a voz que puedan aceptar la
entrada de texto y, después, generar una versión hablada de
ese texto mediante voz sintetizada.
• Realización del reconocimiento de entidades mediante la
integración con Language Understanding (LUIS)
Nota
Este módulo requiere una suscripción de Azure. Es posible que muchos
de los servicios que se creen y usen sean gratuitos, pero necesitará una
suscripción activa o una versión de prueba para completar los
ejercicios. Si no tiene una suscripción a Azure, cree una cuenta
gratuita antes de empezar.
Objetivos de aprendizaje
Objetivos de este módulo:
• Obtener información sobre algunas de las capacidades de
5 conversión de voz en texto.
• Explorar el servicio de conversión de voz en texto para convertir
un archivo de audio en una salida de texto.
• Explorar la capacidad de convertir la voz de un micrófono a una
salida de texto.
INFORMACIÓN GENERAL
DE CONVERSIÓN DE VOZ
EN TEXTO
El aspecto de conversión de voz en texto de los servicios de Voz, en
Azure Cognitive Services, proporciona transcripción en tiempo real de
transmisiones de audio basada en inteligencia artificial y aprendizaje
automático. Las Speech Services API permiten a los desarrolladores
agregar transcripciones de voz de un extremo a otro en tiempo real a
sus aplicaciones o servicios.
Los servicios de conversión de voz en texto se exponen a través de API
6
basadas en REST independientes de la plataforma o del SDK de Voz.
Estas API permiten integrar estos servicios en cualquier solución que
requiera traducción de voz de varios idiomas. La forma en que se tiene
acceso a estos servicios variará en función de si se usa la API REST o el
SDK de Voz. Los ejercicios de este módulo utilizarán el SDK de Voz.
Los servicios de Voz están diseñados para realizar conversión de voz
en texto en tiempo real en escenarios como los siguientes:
• Traducción de presentaciones en directo
• Comunicaciones traducidas en persona o remotas
• Asistencia al cliente
• Inteligencia empresarial
• Subtitulado de elementos multimedia
• Interacciones con inteligencia artificial multilingüe
Nota
Es posible que conozca un servicio similar de Azure: Translator Speech
API. Translator Speech es una API heredada que se va a reemplazar por
la nueva Speech Translation API. Translator Speech API estará
disponible hasta octubre de 2019. Obtenga más información sobre
cómo migrar de Translator Speech API a Speech Translation
API antes de que se deshabilite. Tenga en cuenta también que, en caso
de que lo haya estado usando, a partir del 15 de octubre de 2019 Bing
Speech ya no está disponible. Vea las guías de migración en
[Link] para mover sus soluciones a los servicios de Voz.
7
De forma predeterminada, el servicio de conversión de voz en texto usa
el modelo de lenguaje universal. Este modelo se ha entrenado con
datos propiedad de Microsoft y se implementa en la nube. Es óptimo
para escenarios de conversación y dictado. Al usar conversión de voz
en texto para el reconocimiento y la transcripción en un entorno único,
se pueden crear y entrenar modelos acústicos, de idioma y de
pronunciación personalizados. La personalización es útil para abordar
el ruido ambiente o el vocabulario específico del sector.
Este módulo no tratará la personalización. Es posible que los módulos
futuros traten este asunto. También puede visitar la página de Voz
personalizada para obtener más información.
EJERCICIO: CREACIÓN DE
UN RECURSO DE
SERVICIO DE VOZ
Antes de empezar a realizar la traducción de voz a texto, debe crear
un recurso de voz de Azure. Puede hacerlo mediante Azure Portal, la
CLI de Azure o Cloud Shell. En este ejercicio se usará Azure Portal.
1. Inicie sesión en Azure Portal .
2. Haga clic en + Crear un recurso. En el cuadro de texto Buscar
en Marketplace, escriba voz y presione Entrar.
8
3. En la lista Resultados, seleccione Voz. En el panel de Voz,
seleccione Crear.
4. Escriba un nombre único para el recurso de servicio de Voz.
5. Seleccione una suscripción adecuada.
6. Elija una ubicación para hospedar el recurso. Esta suele ser la
región donde se utilizará el recurso.
7. Como Plan de tarifa, seleccione un nivel de servicio. Los niveles
de servicio pueden cambiar, pero actualmente puede
seleccionar F0 o S0. Para las pruebas, hemos seleccionado F0.
8. Cree un grupo de recursos denominado mslearn-
speechapi para almacenar los recursos. También puede elegir
un grupo de recursos existente si lo desea.
9. Haga clic en Crear para crear una suscripción a Speech
Translation API.
Tras una breve demora, la nueva suscripción de Speech Translation API
estará disponible, y se generarán claves de API nuevas para su uso
mediante programación.
Sugerencia
Si se pierde la notificación que indica que el recurso se ha publicado,
haga clic en el icono de notificación de la barra superior del portal y,
después, haga clic en Ir al recurso, como se muestra en la imagen
9
siguiente:
Después de crear un recurso de servicio de Voz, ya se puede acceder
al punto de conexión y las claves de suscripción de la API.
EJERCICIO:
VISUALIZACIÓN DE LAS
CLAVES DE SUSCRIPCIÓN
Y LOS PUNTOS DE
CONEXIÓN
Para acceder al servicio de Voz desde una aplicación, necesita obtener
dos datos en Azure Portal:
• Una clave de suscripción, que se pasa con cada solicitud para
10 autenticar la llamada.
• El punto de conexión que expone el servicio en la red.
Se necesitará la clave de suscripción al usar el SDK de Voz o las API
REST, pero el punto de conexión solo será necesario para el acceso a la
API REST. El uso del SDK de Voz en una aplicación utiliza la clave, pero
también requiere una región. Verá el uso de la información de la clave
y la región en el ejercicio más adelante en el módulo.
Visualización de las claves de suscripción y el punto de conexión
1. En el menú de la izquierda del portal, seleccione Grupos de
recursos y después el grupo de recursos mslearn-
speechapi que ha creado para Speech Translation API.
2. Seleccione el nombre de la suscripción de Speech Translation
API (por ejemplo, SpeechTranslation).
3. Hay dos ubicaciones que mostrarán el punto de conexión y, por
lo menos, una clave.
4. En el grupo ADMINISTRACIÓN DE RECURSOS, seleccione la
opción Inicio rápido para mostrar valores de Clave1 y Punto
de conexión.
5. La segunda opción se usa para ver una segunda clave del
servicio. En el grupo ADMINISTRACIÓN DE RECURSOS,
seleccione Claves y punto de conexión para ver el nombre del
servicio, el punto de conexión y dos claves de API.
6. Copie el valor de CLAVE 1 o CLAVE 2 en el Portapapeles para
11
usarlo en una aplicación.
EJERCICIO: CONVERSIÓN
DE VOZ DE UN ARCHIVO
DE AUDIO A TEXTO
En este ejercicio, usará el servicio de Voz que se ha creado
anteriormente. En este ejercicio no se requiere ninguna configuración
en el equipo local para un entorno de desarrollo, ya que se utilizará
Visual Studio Code en línea. En los pasos se detallará lo que se necesita
para que el entorno en línea esté configurado correctamente y las
tareas que serán necesarias para que cada ejercicio funcione
correctamente. Todos los recursos se almacenan en un repositorio de
12 GitHub al que se vinculará durante los pasos del ejercicio.
1. Para empezar, abra una pestaña o ventana del explorador y
vaya a Visual Studio Code en línea.
[!NOTE] En este momento, Safari no es un explorador compatible con
la versión preliminar de VS Code en línea.
2. Necesitará una suscripción de Azure para crear un entorno para
Visual Studio Code en línea.
3. Seleccione el botón Primeros pasos.
4. Inicie sesión con la cuenta de Microsoft que esté vinculada a su
suscripción de Azure.
5. Si es la primera vez que usa Visual Studio Code en línea, se le
pedirá que cree un plan nuevo, el cual se debe seleccionar en
la lista desplegable de la parte superior de la página.
6. Seleccione Crear entorno.
7. Seleccione la Suscripción en el panel Seleccionar facturación y
elija una ubicación para el servicio.
8. Seleccione Crear.
9. Una vez que se haya creado el plan, se podrá crear el primer
entorno.
10. Si el panel Crear entorno no se abre automáticamente,
seleccione Crear entorno.
13
11. Escriba el nombre del entorno que prefiera, por
ejemplo, SpeechToTextCS.
12. Copie la siguiente dirección URL y péguela en el área de
repositorio de Git en el panel Crear
entorno, [Link]
CS.
13. Deje el resto de opciones con sus valores predeterminados y
seleccione Crear.
14. El entorno tardará unos minutos en crearse, así que, mientras
espera, vaya al servicio Voz en Azure Portal y copie una de sus
claves y anote también la región en la que se ha creado el
servicio.
15. Una vez que el entorno indica que está disponible, seleccione
el título o los tres puntos verticales en la parte inferior derecha
del cuadro de entorno y elija Conectar.
16. Usaremos C# y .Net Core para este ejercicio, así que, una vez
que se abra la ventana de VS Code, seleccione el menú de
hamburguesa, Ver y Terminal para iniciar el terminal.
17. Cuando empiece a escribir un comando, recibirá un mensaje
que indica que el terminal es de solo lectura. Seleccione el
botón para abrir un terminal nuevo.
18. Compruebe que Bash está seleccionado en la lista desplegable
de la derecha Seleccionar shell predeterminado.
19. Escriba el comando dotnet new console y presione Entrar.
14
20. Se configura una nueva estructura de proyecto de C# dotnet
core para que se complete con un archivo [Link], un
archivo [Link] y la carpeta obj.
21. Abra el archivo [Link] y reemplace el contenido por el
código siguiente.
C#Copiar
//
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See [Link] file in the project
root for full license information.
//
using System;
using [Link];
using [Link];
using [Link];
namespace HelloWorld
15 class Program
// It's always a good idea to access services in an async fashion
static async Task Main()
await RecognizeSpeechAsync();
static async Task RecognizeSpeechAsync()
{
// Configure the subscription information for the service to
access.
// Use either key1 or key2 from the Speech Service resource you
have created
var config =
[Link]("YourSubscriptionKey",
"YourServiceRegion");
// Setup the audio configuration, in this case, using a file that is
in local storage.
16
using (var audioInput =
[Link]("YourAudioFileName"))
// Pass the required parameters to the Speech Service which
includes the configuration information
// and the audio file name that you will use as input
using (var recognizer = new SpeechRecognizer(config,
audioInput))
[Link]("Recognizing first result...");
var result = await [Link]();
switch ([Link])
case [Link]:
// The file contained speech that was recognized and
the transcription will be output
// to the terminal window
[Link]($"We recognized: {[Link]}");
break;
17
case [Link]:
// No recognizable speech found in the audio file that
was supplied.
// Out an informative message
[Link]($"NOMATCH: Speech could not be
recognized.");
break;
case [Link]:
// Operation was cancelled
// Output the reason
var cancellation =
[Link](result);
[Link]($"CANCELED:
Reason={[Link]}");
if ([Link] == [Link])
[Link]($"CANCELED:
ErrorCode={[Link]}");
18 [Link]($"CANCELED:
ErrorDetails={[Link]}");
[Link]($"CANCELED: Did you update the
subscription info?");
break;
}
}
22. En la ventana de terminal, escriba el comando siguiente dotnet
add package [Link] y presione
Entrar.
23. En la ventana de terminal, escriba el siguiente comando para
agregar también el paquete de audio, dotnet add package
[Link], y presione Entrar.
24. Visual Studio Code instala el paquete para su uso con la clase
AudioConfig que se usará en el código.
25. Escriba la instrucción using siguiente para incluir el paquete en
19 [Link].
C#Copiar
using [Link];
26. En el archivo [Link], pegue la clave del servicio de Voz en
la que el texto YourSubscriptionKey es lo siguiente:
27. Escriba la ubicación como, por ejemplo, westus en la
opción YourServiceRegion de esa misma línea.
28. Busque el texto YourAudioFileName y reemplácelo
por [Link].
29. En la ventana de terminal, escriba dotnet run y, si se ha escrito
correctamente, debería ver el resultado de la traducción en la
ventana de terminal.
20
VISTA DE IDIOMAS DE
VOZ ADMITIDOS
Los servicios de traducción de voz están diseñados para escenarios de
traducción de idioma específicos del destino. Los idiomas de voz
admitidos se describen mediante los siguientes tipos: conversión de voz
en texto, traducción de voz y texto a voz. La compatibilidad con el
idioma varía según la capacidad del servicio de Voz.
Por ejemplo, en conversión de voz en texto, encontrará compatibilidad
con el inglés en seis configuraciones regionales:
• Inglés (Australia): en-AU
21
• Inglés (Canadá): en-CA
• Inglés (Reino Unido): en-GB
• Inglés (India): en-IN
• Inglés (Nueva Zelanda): en-NZ
• Inglés (Estados Unidos): en-US
A la hora de decidir cuáles son los servicios que usará para sus
necesidades, visite la página de idiomas y regiones admitidos para
obtener información actualizada sobre los idiomas admitidos. También
se puede detectar mediante programación la compatibilidad con
idiomas mediante una cadena de
consulta, [Link]
h,text,tts&api-version=3.0, que devuelve los idiomas admitidos en
formato JSON que se pueden analizar. Aquí se muestra un fragmento
de código de los resultados devueltos:
JSONCopiar
"translation": {
"af": {
"name": "Afrikaans",
"nativeName": "Afrikaans",
"dir": "ltr"
22
},
"ar": {
"name": "Arabic",
"nativeName": ""اﻟﻌﺮﺑﻴﺔ,
"dir": "rtl"
},
"bg": {
"name": "Bulgarian",
"nativeName": "Български",
"dir": "ltr"
},
"bn": {
"name": "Bangla",
"nativeName": "বাংলা",
"dir": "ltr"
},
"bs": {
"name": "Bosnian",
23 "nativeName": "bosanski (latinica)",
"dir": "ltr"
},
"ca": {
"name": "Catalan",
"nativeName": "Català",
"dir": "ltr"
}
}
En la página de idiomas admitidos se muestran los idiomas admitidos
por el SDK de Voz y la API REST, por lo que puede tener compatibilidad
con su método preferido de acceso a los servicios. También puede
realizar alguna personalización, para un subconjunto de idiomas, a fin
de ayudar a mejorar la precisión. Se ofrece la personalización para un
subconjunto de los idiomas a través de la carga de Transcripciones
etiquetadas de audio y voz humana o Texto relacionado: Oraciones. La
personalización de la pronunciación solo está disponible actualmente
para en-US y de-DE. Obtenga más información sobre la
personalización aquí.
24
EJERCICIO OPCIONAL:
ESCUCHA DE DATOS DE
TRADUCCIÓN ENTRANTES
Otro uso potencial de Conversión de voz en texto es realizar la
operación de traducción en la voz entrante que se escucha desde un
micrófono. Este escenario puede producirse en una sala de
presentaciones en la que el servicio de Voz proporciona la traducción
de voz a texto de las personas que hablan y, después, lo muestra como
subtítulos en una pantalla de proyección. En este ejercicio, verá un
ejemplo de la escucha de voz desde un micrófono y su traducción a la
25 salida de texto.
Nota
Este es un ejercicio opcional, ya que requiere el uso de un equipo local
y la instalación de software para que los pasos del ejercicio se realicen
correctamente.
Para probar este escenario, el entorno en línea creará incidencias con
el acceso al micrófono, por lo que en este caso usaremos el equipo
local. Como consecuencia, deberá tener instalado Visual Studio o
Visual Studio Code. Dado que Visual Studio Code es una herramienta
de desarrollo gratuita compatible con Windows, Mac y Linux, será la
herramienta que usaremos. Visite la página de Visual Studio Code para
descargar e instalar la aplicación en el equipo local. Una vez que se
haya finalizado la instalación, inicie el ejercicio.
1. Para este ejercicio, cree una carpeta local en la que se va a
almacenar el proyecto.
2. Inicie Visual Studio Code y abra la carpeta que se ha creado en
el paso 1.
3. Abra una ventana de terminal en VS Code mediante la
combinación de teclas CTRL+` (Control más la tilde aguda).
Opcionalmente, puede optar por el menú Ver y, después,
Terminal.
4. Escriba el comando dotnet new console y presione Entrar.
5. Dotnet Core crea una estructura de proyecto en su carpeta y
agrega un archivo [Link].
26 6. En la ventana de terminal, escriba el comando siguiente, dotnet
add package [Link] y presione
Entrar.
7. El paquete necesario se agregará al proyecto y se requerirá para
tener acceso al SDK de Voz.
8. Pegue el código siguiente en [Link] y reemplace el código
existente.
C#Copiar
//
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See [Link] file in the project
root for full license information.
//
using System;
using [Link];
using [Link];
namespace helloworld
{
27
class Program
public static async Task RecognizeSpeechAsync()
var config =
[Link]("YourSubscriptionKey",
"YourServiceRegion");
using (var recognizer = new SpeechRecognizer(config))
{
var result = await [Link]();
if ([Link] == [Link])
[Link]($"We recognized: {[Link]}");
else if ([Link] == [Link])
28 [Link]($"NOMATCH: Speech could not be
recognized.");
else if ([Link] == [Link])
var cancellation = [Link](result);
[Link]($"CANCELED:
Reason={[Link]}");
if ([Link] == [Link])
{
[Link]($"CANCELED:
ErrorCode={[Link]}");
[Link]($"CANCELED:
ErrorDetails={[Link]}");
[Link]($"CANCELED: Did you update the
subscription info?");
29 }
static void Main()
[Link]("Begin speaking....");
RecognizeSpeechAsync().Wait();
[Link]("Please press <Return> to continue.");
[Link]();
}
}
9. Reemplace "YourSubscriptionKey" por la clave del servicio de
Voz que se ha creado en este módulo.
10. Reemplace "YourServiceRegion" por la región en la que se ha
creado el servicio de Voz, como westus.
11. Asegúrese de que tiene un micrófono conectado al equipo local
y que funciona.
12. En el terminal, escriba dotnet run para iniciar la aplicación.
13. Empiece a hablar para que la aplicación pueda recopilar el
audio de streaming.
30
14. Cuando termine, debería ver la salida de texto transcrito en el
terminal.
15. Cuando se le solicite, presione Entrar para salir de la aplicación.
1
Principales servicios en la
nube: arquitectura de Azure
y garantías de servicio
BIENVENIDA
Azure proporciona una red mundial de centros de datos seguros en los
que puede implementar sus servicios. Obtenga información sobre la
arquitectura física de Azure, cómo se proporciona redundancia y qué
tipo de garantías de servicio ofrece Microsoft.
En este módulo, aprenderá a:
• Explorar la estructura física de la infraestructura de Azure
• Obtendrá información sobre los contratos de nivel de servicio
proporcionados por Azure
• Aprenderá a proporcionar sus propios acuerdos de nivel de
2
servicio para las aplicaciones
Requisitos previos
Ninguno
Introducción 3 min
Descripción de los centros de datos y las regiones en Azure 5
min
Descripción de las zonas geográficas en Azure 3 min
Descripción de las zonas de disponibilidad en Azure 5 min
Descripción de los pares de regiones en Azure 5 min
Descripción de los Acuerdos de Nivel de Servicio para Azure 6
min
Composición de Acuerdo de Nivel de Servicio entre servicios 5
min
Mejora de la confiabilidad de la aplicación en Azure 8 min
Resumen 5 min
3
INTRODUCCIÓN
Posee un pequeño negocio con un amplio conjunto de servicios
basados en web con los que los clientes están encantados. La única
dificultad es que algunos clientes experimentan un retraso de red
cuando acceden a los servicios desde ubicaciones lejanas. Este
problema solía ser costoso de resolver: se necesitaban nuevos centros
de datos y costosas redes para conectarse a ellos. Para esto, el
4 surgimiento de la informática en la nube ha facilitado la solución.
Microsoft Azure proporciona una infraestructura confiable, con
redundancia y de bajo consumo que abarca más de 100 instalaciones
de alta seguridad a nivel mundial, vinculadas por una de las mayores
redes del planeta. Azure le permite obtener un alcance
global con presencia local, mantener sus datos seguros y conforme a
las leyes locales, y reducir la contaminación gracias a los centros de
datos de Microsoft que son respetuosos con el medio ambiente.
Objetivos de aprendizaje
En este módulo, aprenderá a:
• Explorar la estructura física de la infraestructura de Azure
• Entender los contratos de nivel de servicio proporcionados por
Azure
• Aprenderá a proporcionar acuerdos de nivel de servicio para las
aplicaciones
5
DESCRIPCIÓN DE LOS
CENTROS DE DATOS Y
LAS REGIONES EN AZURE
Microsoft Azure está formado por centros de datos ubicados en todo
el mundo. Al aprovechar un servicio o crear un recurso como una
máquina virtual o una base de datos SQL, usa equipamiento físico en
una o varias de estas ubicaciones.
Los centros de datos específicos no se exponen directamente a los
usuarios finales, sino que Azure los organiza en regiones.
6 ¿Qué es una región?
Una región es un área geográfica del planeta que contiene al menos
un centro de datos, aunque podrían ser varios centros de datos
cercanos y conectados mediante una red de baja latencia. Azure asigna
y controla los recursos de forma inteligente dentro de cada región para
garantizar que las cargas de trabajo están bien compensadas.
Al implementar un recurso en Azure, es habitual tener que elegir la
región en la que quiere que se implemente el recurso.
Algunos ejemplos de regiones son: Oeste de EE. UU., Centro de
Canadá, Europa Occidental, Este de Australia y Japón Occidental. A
continuación puede ver todas las regiones disponibles a fecha de
febrero de 2020:
Importante
Algunos servicios o características de las máquinas virtuales solo están
disponibles en determinadas regiones, por ejemplo, determinados tipos
de almacenamiento o tamaños de máquinas virtuales. También hay
algunos servicios globales de Azure que no requieren que seleccione una
región concreta, como Microsoft Azure Active Directory, Microsoft Azure
Traffic Manager o Azure DNS.
¿Por qué es importante?
Azure tiene más regiones globales que cualquier otro proveedor de
servicios en la nube. Esto le da la flexibilidad necesaria para acercar las
aplicaciones a los usuarios estén donde estén. También proporciona
una mejor escalabilidad, redundancia y conserva un mejor alojamiento
7 de datos de sus servicios.
Regiones de Azure especiales
Azure tiene regiones especializadas que se pueden usar al crear las
aplicaciones, en lo referente al cumplimiento normativo o a aspectos
legales. Entre ellas se incluyen las siguientes:
• US DoD (centro), US Gov Virginia, US Gov Iowa y más: son
instancias físicas y lógicas con aislamiento de red de Azure para
asociados y agencias de la administración pública de EE. UU.
Estos centros de datos están operados por personas
estadounidenses sometidas a evaluación e incluyen
certificaciones de cumplimiento adicionales.
• Este de China, Norte de China y más: estas regiones están
disponibles gracias a una exclusiva asociación entre Microsoft y
21Vianet, por el cual Microsoft no mantiene directamente los
centros de datos.
Las regiones se utilizan para identificar la ubicación de los recursos,
pero hay otros dos términos que también debe conocer: zonas
geográficas y zonas de disponibilidad.
8
DESCRIPCIÓN DE LAS
ZONAS GEOGRÁFICAS EN
AZURE
Azure divide el mundo en zonas geográficas que se definen mediante
límites geopolíticos o fronteras de países. Una zona geográfica de
Azure es un mercado diferenciado que normalmente contiene dos o
más regiones que conservan los límites de cumplimiento y residencia
de datos. Esta división tiene varias ventajas.
Las zonas geográficas permiten a los clientes con necesidades
específicas de residencia de datos y cumplimiento normativo
9
mantener sus datos y aplicaciones cerca.
Una zona geográfica garantiza que se cumplan los requisitos de
residencia, soberanía, cumplimiento normativo y resistencia de
los datos dentro de las fronteras geográficas.
Las zonas geográficas son tolerantes a errores hasta el punto
de resistir una interrupción total del funcionamiento de una
región gracias a su conexión con nuestra infraestructura de red
dedicada de alta capacidad.
Sugerencia
La residencia de datos hace referencia a la ubicación geográfica o física
de los datos o la información de una organización. Define los requisitos
legales o normativos impuestos a los datos según el país o región en la
que residen y es una consideración importante a la hora de planificar el
almacenamiento de datos de su aplicación.
La zonas geográficas se dividen en las siguientes áreas:
• América
• Europa
• Asia Pacífico
• Oriente Medio y África
Cada región pertenece a una sola zona geográfica y se le aplican reglas
de disponibilidad del servicio, cumplimiento y soberanía o residencia
de datos específicas. Consulte la documentación para obtener más
información (hay un vínculo disponible en la unidad de resumen).
10
DESCRIPCIÓN DE LAS
ZONAS DE
DISPONIBILIDAD EN
AZURE
A fin de proteger la información en caso de error, deberá asegurarse
de que los servicios y datos son redundantes. Si hospeda su
infraestructura, esto requiere la creación de entornos de hardware
duplicados. Azure puede ayudar a que la aplicación tenga alta
disponibilidad a través de zonas de disponibilidad.
11 ¿Qué es una zona de disponibilidad?
Las zonas de disponibilidad son centros de datos separados
físicamente dentro de una región de Azure.
Cada zona de disponibilidad consta de uno o varios centros de datos
equipados con alimentación, refrigeración y redes independientes.
Cada una se configura para constituir un límite de aislamiento. Si una
zona deja de funcionar, la otra continúa trabajando. Las zonas de
disponibilidad están conectadas a través de redes de fibra óptica de
alta velocidad privadas.
12
Regiones admitidas
No todas las regiones son compatibles con las zonas de disponibilidad.
Para garantizar la resistencia, hay tres zonas independientes como
mínimo en las siguientes regiones.
Centro de EE. UU.
Este de EE. UU. 2
Oeste de EE. UU. 2
Oeste de Europa
Centro de Francia
Norte de Europa
Sudeste Asiático
Sugerencia
Esta lista de regiones admitidas está aumentando: consulte la
documentación para obtener la información más reciente.
Uso de zonas de disponibilidad en sus aplicaciones
Si quiere usar zonas de disponibilidad para ejecutar aplicaciones
críticas y conseguir una alta disponibilidad en la arquitectura de sus
aplicaciones, coloque sus recursos de proceso, almacenamiento, red y
datos dentro de una zona y replíquelos en otras. Tenga en cuenta que
la duplicación de los servicios y la transferencia de datos entre zonas
13 podrían suponer un costo.
Las zonas de disponibilidad son principalmente para las máquinas
virtuales, los discos administrados, los equilibradores de carga y las
bases de datos SQL. Los servicios de Azure que admiten zonas de
disponibilidad se dividen en dos categorías:
Servicios de zona: ancle el recurso a una zona específica (por
ejemplo, máquinas virtuales, discos administrados, direcciones
IP).
Servicios de redundancia de zona: la plataforma se replica
automáticamente entre zonas (por ejemplo, almacenamiento
con redundancia de zona, SQL Database).
Consulte la documentación para determinar qué elementos de la
arquitectura puede asociar a una zona de disponibilidad.
14
DESCRIPCIÓN DE LOS
PARES DE REGIONES EN
AZURE
Las zonas de disponibilidad se crean con uno o varios centros de
datos, y dentro de cada región hay un mínimo de tres zonas. Pero es
posible que un desastre lo suficientemente grande provoque una
interrupción tan grave como para afectar incluso a dos centros de
datos. Por eso Azure también crea pares de regiones.
¿Qué es un par de regiones?
15 Cada región de Azure se empareja siempre con otra región de la misma
zona geográfica (por ejemplo, EE. UU., Europa o Asia) que se encuentre
como mínimo a 500 km de distancia. Este enfoque permite la
replicación de recursos, como el almacenamiento en la máquina virtual,
en una zona geográfica, lo que ayuda a reducir la probabilidad de que
se produzcan interrupciones provocadas por eventos como desastres
naturales, disturbios civiles, cortes del suministro eléctrico o
interrupciones de la red física que afecten de forma simultánea a ambas
regiones. Si una región de un par se ve afectada por un desastre
natural, por ejemplo, los servicios conmutarán por error
automáticamente a la otra región de su par de regiones.
Algunos pares de regiones de ejemplo en Azure son Oeste de EE. UU.
y Este de EE. UU., o Sudeste Asiático y Asia Oriental.
Puesto que las dos regiones están directamente conectadas y lo
suficientemente lejos como para estar aisladas contra desastres
regionales, puede usarlas para proporcionar redundancia de datos y
servicios de confianza. Algunos servicios ofrecen un almacenamiento
con redundancia geográfica automática utilizando los pares de
regiones.
Entre las ventajas adicionales de los pares de región se incluyen las
16
siguientes:
Si hay una gran interrupción de Azure, se da prioridad a una
región de cada par para asegurarse de que al menos una se
restaure lo más rápido posible para las aplicaciones
hospedadas en ese par de regiones.
Las actualizaciones planeadas de Azure se implementan una a
una en regiones emparejadas para minimizar el tiempo de
inactividad y el riesgo de interrupción de la aplicación.
Los datos siguen residiendo en la misma zona geográfica que
su pareja (excepto Sur de Brasil) con fines de jurisdicción fiscal
y de aplicación de la ley.
Tener un conjunto ampliamente distribuido de centros de datos
permite a Azure proporcionar una alta garantía de disponibilidad.
Veamos lo que significa.
17
DESCRIPCIÓN DE LOS
ACUERDOS DE NIVEL DE
SERVICIO PARA AZURE
Microsoft mantiene su compromiso de ofrecer a los clientes servicios
y productos de alta calidad mediante la adhesión a prácticas,
estándares y directivas operativas completas. Los documentos formales
llamados Acuerdos de Nivel de Servicio (SLA) capturan las condiciones
específicas que definen los estándares de rendimiento que se aplican a
Azure.
Los Acuerdos de Nivel de Servicio describen el compromiso de
18
Microsoft a la hora de proporcionar a los clientes de Azure
estándares de rendimiento específicos.
Hay Acuerdos de Nivel de Servicio para los servicios y
productos individuales de Azure.
Los Acuerdos de Nivel de Servicio también especifican qué
ocurre si un servicio o producto no puede cumplir la
especificación de un Acuerdo de Nivel de Servicio que lo
controla.
Importante
Azure no proporciona contratos de nivel de servicio para la mayoría de
los servicios en los niveles Gratis o Compartido. Además, los productos
gratuitos como Azure Advisor normalmente carecen de Acuerdo de Nivel
de Servicio.
Acuerdos de Nivel de Servicio para productos y servicios de Azure
Hay tres características clave del Acuerdo de Nivel de Servicio para
servicios y productos de Azure:
1. Objetivos de rendimiento
2. Tiempo de actividad y garantías de conectividad
3. Créditos de servicio
Objetivos de rendimiento
Un Acuerdo de Nivel de Servicio define los objetivos de rendimiento
19 para un servicio o producto de Azure. Los objetivos de rendimiento que
define un Acuerdo de Nivel de Servicio son específicos para cada
producto y servicio de Azure. Por ejemplo, los objetivos de rendimiento
para algunos servicios de Azure se expresan como garantías de tiempo
de actividad o tasas de conectividad.
Tiempo de actividad y garantías de conectividad
Un Acuerdo de Nivel de Servicio típico especifica los compromisos de
objetivo de rendimiento comprendidos entre 99,9 % ("tres 9") y
99,999 % ("cinco 9"), para cada producto o servicio de Azure
correspondiente. Estos objetivos se pueden aplicar a dichos criterios de
rendimiento como el tiempo de actividad o los tiempos de respuesta
para los servicios.
En la siguiente tabla se indica el tiempo de inactividad acumulativo
potencial para varios niveles del Acuerdo de Nivel de Servicio a lo largo
de varias duraciones:
Porcentaje de Tiempo de Tiempo de Tiempo de
Acuerdo de inactividad inactividad inactividad
Nivel de por semana por mes por año
Servicio
99 1,68 horas 7,2 horas 3,65 días
99,9 10,1 minutos 43,2 minutos 8,76 horas
99,95 5 minutos 21,6 minutos 4,38 horas
20
99,99 1,01 minutos 4,32 minutos 52,56 minutos
99,999 6 segundos 25,9 segundos 5,26 minutos
Por ejemplo, las operaciones de escritura del Acuerdo de Nivel de
Servicio para el servicio de Azure Cosmos DB (base de datos) ofrece un
tiempo de actividad del 99,999 %, lo que incluye los compromisos de
baja latencia de menos de 10 milisegundos en operaciones de lectura
y escritura de la base de datos.
Créditos de servicio
Los Acuerdos de Nivel de Servicio también describen cómo responderá
Microsoft si un producto o servicio de Azure no cumple las
especificaciones de su Acuerdo de Nivel de Servicio.
Por ejemplo, los clientes pueden recibir un descuento en su factura de
Azure como compensación por el bajo rendimiento de un servicio o
producto de Azure. En la siguiente tabla se explica este ejemplo con
más detalle.
La primera columna de la siguiente tabla muestra los objetivos del
Acuerdo de Nivel de Servicio de porcentaje de tiempo mensual para
una instancia única de máquina virtual de Azure. La segunda columna
muestra el importe del crédito de servicio correspondiente que recibe
si el tiempo de actividad real es menor que el objetivo especificado en
el Acuerdo de Nivel de Servicio durante ese mes.
PORCENTAJE DE TIEMPO DE PORCENTAJE DE CRÉDITO DE
ACTIVIDAD MENSUAL SERVICIO
21 < 99,9 10
< 99 25
< 95 100
COMPOSICIÓN DE
ACUERDO DE NIVEL DE
SERVICIO ENTRE
SERVICIOS
Al combinar los Acuerdos de Nivel de Servicio entre distintas ofertas
de servicio, el acuerdo resultante se denomina Acuerdo de Nivel de
Servicio compuesto. El Acuerdo de Nivel de Servicio compuesto
resultante puede proporcionar valores de tiempo de actividad
superiores o inferiores, dependiendo de la arquitectura de la aplicación.
22 Calcular el tiempo de inactividad
Considere una aplicación web de App Service que escribe en Azure SQL
Database. Estos servicios de Azure actualmente tienen los siguientes
Acuerdos de Nivel de Servicio:
En este ejemplo, si se produce un error en cualquiera de los servicios,
se producirá un error en toda la aplicación. En general, los valores de
probabilidad individual para cada servicio son independientes. Pero el
valor de Acuerdo de Nivel de Servicio compuesto para esta aplicación
es:
99.95 percent × 99.99 percent = 99.94 percent
Nota
Para el cálculo del Acuerdo de Nivel de Servicio y el tiempo de
inactividad, tenga en cuenta que, cada vez que vea un número con la
etiqueta o el símbolo de "por ciento" (%), dicho número debe dividirse
por 100. Si tuviera que especificar el cálculo de Acuerdo de Nivel de
Servicio arriba, los valores reales serían 0.9995 * 0.9999 = 0.9994.
Esto significa que la probabilidad de error combinada es mayor que
los valores individuales de Acuerdo de Nivel de Servicio. Esto no es
23
sorprendente, porque una aplicación que depende de varios servicios
tiene más puntos de error posibles.
Por otra parte, puede mejorar el Acuerdo de Nivel de Servicio
compuesto mediante la creación de rutas de reserva independientes.
Por ejemplo, si la instancia de SQL Database no está disponible, puede
colocar transacciones en una cola para procesarlas más adelante.
24
Con este diseño, la aplicación sigue estando disponible, aunque no
pueda conectarse a la base de datos. Pero se produce un error si la
base de datos y la cola fallan al mismo tiempo.
Si el porcentaje de tiempo previsto para un error simultáneo es 0,0001
X 0,001, el Acuerdo de Nivel de Servicio compuesto para esta ruta
combinada de una base de datos o una cola sería:
1.0 − (0.0001 × 0.001) = 99.99999 percent
Por lo tanto, si agregamos la cola a nuestra aplicación web, el Acuerdo
de Nivel de Servicio compuesto total es:
99.95 percent × 99.99999 percent = ~99.95 percent
Tenga en cuenta que hemos mejorado nuestro comportamiento de
Acuerdo de Nivel de Servicio. Pero este enfoque tiene ventajas e
inconvenientes: la lógica de la aplicación es más complicada, tendrá
que pagar más para agregar compatibilidad con la cola y pueden darse
problemas de coherencia de datos que tendrá que afrontar debidos al
comportamiento de reintento.
25
MEJORA DE LA
CONFIABILIDAD DE LA
APLICACIÓN EN AZURE
Puede usar los Acuerdos de Nivel de Servicio para evaluar cómo las
soluciones de Azure cumplen los requisitos empresariales y las
necesidades de sus clientes y usuarios. Al crear sus propios Acuerdos
de Nivel de Servicio, puede establecer objetivos de rendimiento que se
adapten a su aplicación de Azure específica. Este enfoque se conoce
como un Acuerdo de Nivel de Servicio de aplicación.
Comprender los requisitos de aplicación
26
La creación de una solución eficaz y de confianza de Azure requiere
conocer los requisitos de carga de trabajo. Después puede seleccionar
servicios, productos de Azure y aprovisionar los recursos según esos
requisitos. Es importante comprender los Acuerdos de Nivel de Servicio
de Azure que definen los objetivos de rendimiento de los productos y
servicios de Azure dentro de la solución. Este conocimiento le ayudará
a crear Acuerdos de Nivel de Servicio de la aplicación factibles.
En un sistema distribuido, se pueden producir errores. Pueden
producirse errores de hardware. La red puede tener errores transitorios.
En raras ocasiones, todo un servicio o toda una región pueden
experimentar interrupciones, pero incluso estas deben planificarse.
Resistencia
Resistencia es la capacidad de un sistema de recuperarse de los errores
y seguir funcionando. No se trata de evitar los errores, sino de
responder a ellos de manera que se evite el tiempo de inactividad o la
pérdida de datos. El objetivo de la resistencia es devolver la aplicación
a un estado plenamente operativo después de un error. Dos aspectos
importantes de la resistencia son la alta disponibilidad y la
recuperación ante desastres.
Cuando diseñe la arquitectura, hágalo buscando la resistencia y realice
un Análisis del modo de error (FMA). El objetivo del análisis del modo
de error es identificar los posibles puntos de error y definir cómo
responderá la aplicación a esos errores.
27 Costo y complejidad frente a alta disponibilidad
La disponibilidad se refiere al tiempo que un sistema es funcional y está
en funcionamiento. Maximizar la disponibilidad requiere implementar
medidas para evitar posibles errores en el servicio. Pero puede ser difícil
y caro desarrollar medidas preventivas y a menudo da como resultado
soluciones complejas.
A medida que aumenta la complejidad de la solución, tendrá más
servicios que dependen entre sí. Por tanto, podría omitir posibles
puntos de error en la solución si tiene varios servicios
interdependientes.
Sugerencia
Por ejemplo: Una carga de trabajo que requiere un tiempo de actividad
del 99,99 % no debe depender de un servicio con un Acuerdo de Nivel
de Servicio del 99,9 %.
La mayoría de proveedores prefieren maximizar la disponibilidad de
sus soluciones de Azure, ya que minimiza el tiempo de inactividad. Pero
a medida que aumente la disponibilidad, también aumentará el costo
y la complejidad de la solución.
Sugerencia
Por ejemplo: Un Acuerdo de Nivel de Servicio que define un tiempo de
actividad del 99,999 % solo permite aproximadamente 5 minutos de
inactividad total por año.
28
El riesgo del tiempo de inactividad potencial es acumulativo entre
distintos niveles de Acuerdo de Nivel de Servicio, lo que significa que
las soluciones complejas pueden afrontar mayores desafíos de
disponibilidad. Por lo tanto, la importancia de la alta disponibilidad
para sus requisitos determinará cómo controla la adición de
complejidad y costo con su Acuerdo de Nivel de Servicio de aplicación.
Consideraciones para definir los Acuerdos de Nivel de Servicio de
aplicación
Si su Acuerdo de Nivel de Servicio de aplicación define
objetivos de rendimiento de cuatro 9 (99,99 %), recuperarse de
errores mediante la intervención manual puede no ser
suficiente para cumplir el Acuerdo de Nivel de Servicio. En su
lugar, la solución de Azure debe autodiagnosticarse y
recuperarse automáticamente.
Es difícil responder a errores con la rapidez suficiente para
satisfacer los objetivos de rendimiento de Acuerdos de Nivel de
Servicio que superen los cuatro 9.
Considere detenidamente el período de tiempo en el que se
miden los objetivos de rendimiento de Acuerdo de Nivel de
Servicio de la aplicación. Cuanto menor sea la ventana de
tiempo, más estrictas serán las tolerancias. Si define su Acuerdo
de Nivel de Servicio de la aplicación como el tiempo de
actividad por hora o diario, deberá comprender que estas
tolerancias más estrictas podrían no permitir objetivos de
rendimiento factibles.
29
RESUMEN
Microsoft proporciona más presencia global que cualquier otro
proveedor en la nube, con más de 54 regiones distribuidas en todo el
mundo. Esta infraestructura le ofrece la escala necesaria para acercar
las aplicaciones a los usuarios en todo el mundo. Azure también ha
dedicado regiones para admitir el uso de la administración pública y
las aplicaciones que deben implementarse en China para que pueda
asegurar la residencia y seguridad de los datos y cumplir los requisitos
de resistencia para los clientes independientemente del tipo de
requisitos empresariales que tenga.
Más información
Visite los siguientes vínculos para obtener más información sobre
30
algunos de los temas analizados en este módulo.
• Regiones de Azure
• Zonas geográficas de Azure
• Acuerdos de Nivel de Servicio de Azure
• Diseño de aplicaciones resistentes de Azure
• Criterios para elegir un servicio de proceso de Azure
1
Introducción a IoT de Azure
BIENVENIDA
Explique la importancia de IoT de Azure y los problemas que resuelve.
Describa los componentes de IoT de Azure y explique cómo se
combinan para resolver soluciones de IoT, que crean valor para las
empresas.
En este módulo, aprenderá a:
Evaluar si IoT de Azure puede resolver los problemas asociados
a la implementación de IoT a gran escala
2 Describir cómo colaboran los componentes de IoT de Azure
para compilar una solución de IoT basada en la nube
Requisitos previos
Ninguno
Introducción 3 min
¿Qué es IoT de Azure? 4 min
Funcionamiento de IoT de Azure 10 min
Cuándo usar IoT de Azure 7 min
Prueba de conocimientos 5 min
Resumen 2 min
INTRODUCCIÓN
El Internet de las cosas (IoT) es una prometedora tecnología que está
transformando a las empresas. En el mundo empresarial, IoT sigue
creciendo, especialmente en algunos sectores industriales básicos
como la fabricación, la venta al por menor, el transporte, la
administración pública y la atención sanitaria. La eficacia, la
productividad y la seguridad son las principales razones para que las
empresas adopten IoT.
A pesar de las promesas de la tecnología, muchas implementaciones
de IoT no progresan más allá de la fase de prueba de concepto (POC).
3
Por lo general, los clientes no ven el valor empresarial de IoT. No
entienden cómo se puede escalar IoT. A los clientes les preocupa la
seguridad. Y, por último, a los clientes les confunden las diferencias
entre las ventajas para las empresas y los consumidores. Por ejemplo,
el tostador y el frigorífico conectado llegan a los titulares de los medios.
Pero no está claro cómo estas aplicaciones de consumidor se traducen
en ventajas para la empresa.
4
Imagine que dirige una empresa de logística responsable de
transportar frutas y otros productos alimenticios perecederos de los
productores a los distribuidores. En el proceso de transporte, la fruta
se debe mantener a las condiciones correctas de temperatura,
humedad y exposición a la luz. En los camiones, hay sensores
individuales que realizan el seguimiento de la temperatura, la humedad
y la exposición a la luz. El distribuidor tiene estrictos requisitos de
calidad. Del mismo modo, el productor se quiere asegurar de que su
fruta permanezca fresca. Los clientes son cada vez más estrictos en
cuanto a sus especificaciones. Los clientes quieren ver una pista de
auditoría de la fruta del "árbol a la mesa". En este escenario, las
soluciones de IoT garantizan que la fruta es fresca durante el viaje. En
5 el caso más simple, se realiza el seguimiento del estado de producto
(por ejemplo, la temperatura) mediante sensores. Pero para
proporcionar valor empresarial al cliente se necesita una solución más
completa.
6
Este módulo forma parte de la ruta de aprendizaje de ingeniería de
inteligencia artificial y dispositivos perimetrales. En este módulo, se
pueden explorar varios temas de ingeniería, especialmente el impacto
de IoT en otros dominios como la logística. Desde el punto de vista de
la ingeniería, se describe el proceso completo desde el productor al
distribuidor como un solo sistema holístico. A través de IoT, se capturan
datos para comprender, supervisar y predecir el comportamiento de
los componentes individuales, y de todo el sistema. Para compilar
correctamente esta solución, es necesario tener en cuenta el diseño, la
seguridad, la estética y la escala.
Objetivos de aprendizaje
En este módulo, aprenderá a:
Evaluar si IoT de Azure puede resolver los problemas asociados
a la implementación de IoT a gran escala
Describir cómo colaboran los componentes de IoT de Azure
para compilar un solución de IoT basada en la nube
7
Requisitos previos
Ninguno
¿Qué es IoT de Azure?
Internet de las cosas (IoT) de Azure es un conjunto de servicios en la
nube administrados por Microsoft que permiten conectar, supervisar y
controlar millones de recursos de IoT. En términos más sencillos, una
solución IoT se compone de uno o varios dispositivos IoT y uno o varios
servicios de back-end que se ejecutan en la nube y se comunican entre
sí. Se describen los tres componentes siguientes.
Dispositivos IoT: los dispositivos IoT se componen de una placa de
circuitos electrónicos con sensores o accionadores conectados que se
conectan a Internet. Los dispositivos IoT incluyen algún tipo de
8 mecanismo de radio para conectarse a Internet (por ejemplo, Bluetooth
o Wi-Fi). Los sensores de presión, temperatura y humedad, y los
acelerómetros son ejemplos de dispositivos IoT. Capturan información
sobre un entorno específico en el que se encuentran. Por ejemplo, un
acelerómetro podría indicar si un ascensor está detenido o en
movimiento.
Comunicación: el dispositivo se puede comunicar con los servicios de
back-end en ambas direcciones. El dispositivo puede enviar datos al
servicio. También puede recibir una indicación del servicio para
aumentar la frecuencia de recopilación de datos. La comunicación con
los dispositivos IoT tiene algunas consideraciones adicionales. Por
ejemplo, los dispositivos IoT pueden tener una potencia limitada y la
conectividad puede ser lenta o intermitente.
Servicios de back-end: los servicios de back-end reciben datos de
telemetría a escala de los dispositivos y determinan cómo procesar y
almacenar esos datos. También se comunican con el dispositivo y
administran su ciclo de vida mediante el control y la supervisión del
estado del dispositivo.
9
IoT de Azure le permite:
Reimaginar los procesos empresariales mediante la reducción de los
silos de datos entre los clientes, las operaciones, los productos o
recursos, y los empleados.
Implementar software administrado como servicio para IoT con una
experiencia mínima en la nube (soluciones de SaaS) mediante Azure
IoT Central.
Personalizar soluciones de IoT específicas del sector para escenarios
de IoT comunes: soluciones de PaaS a través de aceleradores de
soluciones de IoT de Azure.
10
Extender la inteligencia de la nube a los dispositivos perimetrales
mediante Azure IoT Edge.
Conectar, supervisar y controlar miles de millones de recursos de IoT
mediante Azure IoT Hub.
Crear un modelo digital del espacio físico o los recursos mediante
Azure Digital Twins.
Explorar y obtener conclusiones a partir de datos de IoT de series
temporales en tiempo real mediante Azure Time Series Insights.
Crear y conectar dispositivos con tecnología MCU altamente seguros
mediante Azure Sphere.
Proporcionar contexto geoespacial a los datos mediante Azure
Maps.
Navegar por el arte de lo posible más allá de las aplicaciones
tradicionales, como el mantenimiento predictivo.
Generar un bucle de realimentación automatizado entre el
dispositivo y la nube para aumentar la eficacia de la solución.
11
Funcionamiento de IoT de
Azure
Antes de explorar el funcionamiento de IoT de Azure, se resumirán los
servicios básicos de informática en la nube.
La informática en la nube implica la entrega de servicios hospedados a
través de Internet. Los servicios en la nube hospedados se dividen en
tres categorías: infraestructura como servicio (IaaS), plataforma como
servicio (PaaS) y software como servicio (SaaS). IaaS proporciona
12 recursos informáticos virtualizados a través de Internet. Normalmente,
se trata de recursos de hardware implementados en centros de
recursos. Algunos ejemplos de recursos de IaaS son los servicios de
almacenamiento, copia de seguridad y recuperación. Los servicios de
PaaS se centran en la simplificación del desarrollo de software. PaaS
podría proporcionar servicios como la administración de versiones y las
pruebas. PaaS proporciona un marco para que los desarrolladores
creen e implementen aplicaciones basadas en la nube rápidamente. En
el caso de SaaS, el software se hospeda y administra de forma
centralizada mediante el proveedor de la nube. El usuario final usa el
software como servicio. IaaS, PaaS y SaaS se crean unas sobre las otras.
IaaS es la que más administración necesita por parte del usuario final y
SaaS la que menos.
La cartera de productos de IoT de Azure presenta dos rutas para la
creación de soluciones, es decir, soluciones de PaaS y soluciones de
SaaS. También tiene acceso a las tecnologías de PaaS subyacentes
para desarrollar una solución granular.
Soluciones de PaaS
Los aceleradores de soluciones de IoT de Azure son soluciones de
PaaS personalizables para segmentos industriales específicos. Los
aceleradores de soluciones de IoT proporcionan soluciones
pregeneradas que se pueden implementar rápidamente dentro de un
segmento industrial. Ejemplos de aceleradores de soluciones de IoT
13
son supervisión remota, fábrica conectada, mantenimiento predictivo y
simulación de dispositivos.
Soluciones de SaaS
Las soluciones de SaaS son adecuadas para organizaciones con menos
modelos de dispositivo, escenarios más predecibles y funciones de IoT
o TI limitadas. Azure IoT Central es una solución de SaaS administrada
que le permite empezar a trabajar rápidamente aunque su experiencia
con IoT sea mínima. IoT Central es adecuado cuando las necesidades
de IoT son sencillas y apenas se necesita experiencia en el desarrollo
en la nube.
Tecnologías de PaaS
Las tecnologías de plataforma como servicio (PaaS) proporcionan una
opción granular para controlar todos los aspectos de la solución de IoT,
lo que permite crear una solución totalmente personalizada. Puede
clasificar las tecnologías de PaaS de Azure en cuatro categorías:
compatibilidad con dispositivos; IoT; datos y análisis; visualización e
integración. A continuación se describe cada una de estas cuatro
categorías y sus subcomponentes.
1) Compatibilidad con dispositivos
IoT de Azure proporciona varios medios para admitir una variedad de
14 dispositivos. Esto incluye el SDK de dispositivo IoT de Azure, los
dispositivos IoT de Azure certificados, el programa de seguridad para
IoT de Azure y Windows 10 IoT.
2) IoT
El conjunto de tecnologías de IoT incluye lo siguiente:
Azure IoT Hub: Azure IoT Hub es un servicio administrado que permite
establecer comunicaciones bidireccionales entre millones de
dispositivos IoT y un back-end de soluciones. IoT Hub le permite
conectar, administrar y escalar miles de millones de dispositivos IoT
desde el perímetro a la nube.
Azure Time Series Insights: Azure Time Series Insights permite
almacenar, visualizar y consultar grandes cantidades de datos de series
temporales generados por los dispositivos IoT para obtener
información procesable.
Azure Sphere: Azure Sphere es una solución de un extremo a otro para
proteger los dispositivos con tecnología de microcontroladores (MCU).
Azure Sphere consta de tres partes: el sistema operativo de Azure
Sphere, MCU certificados de Azure Sphere y el servicio de seguridad
de Azure Sphere.
15
Cómo encajan los
componentes de IoT de
Azure para resolver el
escenario
Considere el escenario que se ha presentado antes para garantizar la
entrega de alimentos frescos.
La aplicación de telemetría básica no satisface requisitos más
complejos. El registro de la temperatura de la fruta solo indica los
problemas de forma retrospectiva. Si hay un problema con una fruta
16
concreta, debe conocer la ubicación exacta y asegurarse de que la otra
fruta del pallet todavía es segura para el consumo. Necesita la
capacidad de inspeccionar visualmente la fruta de forma remota
mediante una cámara e indicar la que pueda tener algún problema. En
caso de que se produzcan daños, debe saber a qué distancia del
destino se encuentra el camión, para poder informar al distribuidor y al
productor. Si es posible, también debe notificar a los vehículos
cercanos que sirvan al distribuidor si el pedido es urgente.
Por último, debe mantener los datos sobre la entrega para el seguro y
las auditorías. Mediante el análisis de los datos, puede prever
problemas en el futuro antes de que se produzcan. Ahora se pueden
proporcionar datos sobre la fruta a los clientes; por ejemplo, la huella
de carbono.
IoT de Azure ayuda a solucionar los problemas descritos en este
escenario proporcionando un conjunto de productos que facilitan la
implementación de IoT a escala. Todos los mensajes se reciben y
administran de forma centralizada. Se pueden aprovisionar y
administrar dispositivos nuevos para permitir que otros tipos de
productores y distribuidores se conecten al sistema. Los datos de los
sensores se pueden capturar en varios formatos (por ejemplo, datos de
serie temporal, imagen y vídeo). Si es necesario, los datos se pueden
administrar en dispositivos perimetrales. Los datos se pueden visualizar
en la nube. El análisis se puede aplicar en la nube para calcular métricas
empresariales como la huella de carbono. También se pueden usar los
análisis para calcular anomalías en las lecturas del sensor y aplicar
algoritmos predictivos para prever problemas en función de los datos
pasados. Podría correlacionar los datos y el análisis con la información
17
geográfica.
Pero puede adoptar un enfoque incluso más innovador. Puede
reformular los procesos empresariales existentes desde la perspectiva
de la nube inteligente y la inteligencia perimetral. Según el
escenario anterior, la implementación de la nube inteligente y la
inteligencia perimetral puede transformar los procesos existentes de
cuatro maneras:
Impacto en el personal: los conductores de los camiones (que son
principalmente móviles) ahora tienen información y soporte técnico
más actualizados basados en el uso compartido de datos y la
información de mapas.
Impacto en los clientes: los clientes (distribuidores) ahora
obtienen información más actualizada y se les asegura una
mejor calidad del producto.
Compromiso de los clientes: la huella de carbono y otras
métricas crean clientes comprometidos.
Optimización de las operaciones: todo el proceso de entrega
de productos frescos se puede optimizar a través de un bucle
de comentarios de la implementación de IoT mediante la
eliminación de los silos de datos.
El nuevo proceso podría generar un bucle de comentarios
automatizado entre el dispositivo y la nube para aumentar la eficacia
de la solución.
18
Cuándo usar IoT de Azure
En esta sección se explicará cómo puede decidir si IoT de Azure es la
elección correcta para la aplicación.
La decisión de cómo puede usar IoT de Azure para compilar la
solución de IoT se determina en última instancia mediante:
Los requisitos empresariales
El tipo de solución que quiere desarrollar desde el punto de
vista de la nube
El conjunto de aptitudes de la organización en las tecnologías
PaaS de IoT de Azure
Una lista más completa de consideraciones incluye lo siguiente:
19
¿Planea usar IoT para realinear los procesos empresariales de
Realineación de los la organización a través de clientes, operaciones, productos
procesos empresariales o recursos, y empleados?
Experiencia en la nube ¿Su equipo tiene una experiencia mínima en la nube?
Descarga del ¿Tiene previsto descargar el procesamiento en dispositivos
procesamiento en perimetrales?
dispositivos IoT Edge
Escala ¿Tiene que administrar millones de recursos de IoT?
Modelado de espacios ¿Necesita modelar un espacio físico mediante sensores?
físicos
Datos de series ¿Tiene datos de series temporales a gran escala?
temporales
Protección de ¿Tiene que administrar dispositivos seguros?
dispositivos IoT
Aplicación de los criterios
de decisión
A continuación se presenta un resumen de las instrucciones para elegir
un enfoque de IoT a fin de solucionar los problemas de la empresa.
Resumen de instrucciones
La cartera de productos de IoT de Azure presenta dos rutas para la
creación de soluciones, es decir, soluciones de PaaS y de SaaS. También
tiene acceso a las tecnologías de PaaS subyacentes para desarrollar una
solución granular.
20
Si tiene un problema específico del sector en un segmento industrial
concreto, considere la posibilidad de una solución PaaS, como los
aceleradores de soluciones de IoT de Azure.
Si tiene menos modelos de dispositivo y escenarios de predicción, elija
soluciones de SaaS.
Si quiere mantener todos los aspectos de la solución, elija las
tecnologías PaaS subyacentes, como Azure Sphere, Azure IoT Edge, etc.
21
1
Introducción a Azure IoT Hub
BIENVENIDA
Evalúe las características de Azure IoT Hub y determine los
escenarios en los que se debe usar.
Evaluar si IoT Hub puede resolver de forma eficaz los problemas
asociados a la implementación de IoT a gran escala
Describir cómo colaboran los componentes de IoT Hub para
compilar aplicaciones de IoT administradas a través de la nube
Requisitos previos
2
Conocimientos básicos de las aplicaciones de IoT e
implementación de aplicaciones en la nube
Introducción 3 min
¿Qué es IoT Hub? 4 min
Funcionamiento de IoT Hub 7 min
Cuándo se debe usar IoT Hub 7 min
Prueba de conocimientos 5 min
Resumen 2 min
INTRODUCCIÓN
Muchas organizaciones se enfrentan a presiones de la competencia y
a las necesidades de los clientes en constante evolución. Como
respuesta, se embarcan en organizaciones de transformación digital
que reformulan su negocio mediante la combinación de personas,
datos y procesos. En este contexto, IoT (Internet de las cosas) es el
elemento que aglutina y permite la transformación digital en una
organización.
Según el informe IoT Signals 2019 realizado por Microsoft, la adopción
3
de IoT abarca varios sectores. El 85 % de los responsables de la toma
de decisiones de IoT tienen al menos un proyecto de IoT en su
canalización y otros ya en fase de implementación. La adopción de IoT
es global y está impulsada por algunos sectores industriales básicos
como los de la fabricación, venta al por menor, transporte,
administración pública y atención sanitaria. Las tres razones principales
por las que las empresas usan IoT son la optimización de las
operaciones, la mejora de la productividad de los empleados y
seguridad.
Pero para que las grandes empresas aprovechen las ventajas de la
transformación digital, puede ser difícil implementar y administrar
dispositivos IoT en diversas ubicaciones geográficas. Tendrá que
asegurarse de que distintos dispositivos contribuyan de forma eficaz a
crear una solución que resuelva un problema empresarial a gran escala.
Los requisitos de IoT de una gran empresa van más allá de la telemetría
básica (es decir, el proceso de grabación y transmisión de los valores
de datos registrados por un dispositivo IoT). Como empresa que
ejecuta soluciones basadas en la nube, ¿cómo se realiza el seguimiento
y el mantenimiento de los datos procedentes de todos estos
dispositivos? ¿Cómo se asegura de que solo se comuniquen entre sí los
dispositivos correctos? ¿Cómo se protege la solución? ¿Cómo se puede
4
escalar la solución y hacer que esté disponible según los requisitos de
nivel de servicio? Además, es necesario conectarse a una serie de
dispositivos a través de diferentes tipos de protocolos de
comunicación. También tendrá que administrar el ciclo de vida de los
dispositivos desde el aprovisionamiento hasta la administración
continua y, por último, la retirada.
IoT Hub es un servicio administrado, hospedado en la nube, que actúa
como centro de mensajes para la comunicación bidireccional entre las
soluciones de IoT y los dispositivos que administra.
oT Hub permite la comunicación de alta seguridad y confiable entre la
solución de IoT y los dispositivos que administra. Azure IoT Hub
proporciona un back-end de soluciones hospedado en la nube para
conectar dispositivos IoT. IoT Hub permite extender la solución desde
la nube hasta el perímetro con la autenticación por dispositivo, la
administración de dispositivos integrada y el aprovisionamiento
escalado.
Imagine que el ayuntamiento de su ciudad ha presupuestado la
instalación de sensores y cámaras en la ciudad para administrar el
tráfico. Se le ha asignado la función de desarrollador jefe para este
proyecto. En concreto, la nueva solución de administración del tráfico
se basa en la implementación de análisis y aprendizaje automático para
5
administrar el tráfico de manera óptima. La congestión del tráfico está
aumentando y contribuye a problemas como combustible
desperdiciado, el aumento del costo del transporte, las emisiones de
gas de efecto invernadero y la seguridad. Como parte de la nueva
solución de administración de tráfico, se han identificado tres áreas: En
primer lugar, desarrollar sistemas coordinados de control de tiempo de
las señales de tráfico basados en datos en tiempo real (incluido el uso
de intersecciones de tráfico inteligente). En segundo lugar, la capacidad
de administrar y compartir datos de tráfico de sensores y vídeo con
varias agencias de forma segura. Por último, usar el sistema de
administración del tráfico para innovaciones futuras, incluidos
vehículos conectados y automóviles autónomos.
La solución se debe extender más allá del servicio de telemetría básico.
Para administrar estos dispositivos, necesita un centro de mensajería
centralizado para la comunicación bidireccional en la nube. Tendrá que
autenticar, administrar y aprovisionar millones de dispositivos de forma
confiable y segura. Además, necesitará supervisar el estado de estos
dispositivos en el tiempo para garantizar un tiempo de actividad
constante. Puede usar la solución basada en Azure IoT Hub para
implementar, administrar y escalar estos dispositivos en la nube a fin
de abordar de forma eficaz el escenario del problema indicado. La
6 solución es escalable a las necesidades de la ciudad a través de
características de IoT Hub como la autenticación por dispositivo, la
administración de dispositivos integrada y el aprovisionamiento
escalado.
Los datos administrados por Azure IoT Hub de un conjunto diverso de
sensores se pueden usar como base para la solución de análisis en la
nube.
7
Este módulo forma parte de la ruta de aprendizaje de ingeniería de
inteligencia artificial y dispositivos perimetrales. En este módulo, se
exploran los enfoques de diseño de sistemas para solucionar
problemas complejos con varias facetas. El diseño de sistemas se basa
en la idea de que los componentes de un sistema actuarán de forma
diferente cuando se analicen por sí solos. El enfoque de diseño de
sistemas estudia el sistema de forma holística mediante el examen de
las interrelaciones y las interacciones entre los componentes de todo
el sistema. El enfoque se puede usar para modelar problemas
complejos como la administración del tráfico, donde cada actor (por
ejemplo, un vehículo) puede actuar de forma autónoma y evoluciona
en funcionalidad.
Objetivos de aprendizaje
En este módulo, aprenderá a:
Saber cómo IoT Hub puede resolver de forma eficaz los
problemas asociados a la implementación de IoT a gran escala
8 Detectar los componentes principales y los primitivos de Azure
IoT Hub
Requisitos previos
Conocimientos básicos de las aplicaciones de IoT e
implementación de aplicaciones en la nube
¿Qué es IoT Hub?
Azure IoT Hub permite la comunicación segura y confiable entre la
solución de IoT y los dispositivos que administra. IoT Hub proporciona
un back-end de soluciones hospedado en la nube para conectar
dispositivos con la autenticación por dispositivo, la administración de
dispositivos y el aprovisionamiento escalado.
Primero se realizará un paseo rápido por algunas definiciones, lo que
le ayudará a explorar la idoneidad de IoT Hub para los problemas
empresariales.
9
Telemetría: la telemetría es el proceso de registrar y transmitir de los
valores recibidos por un dispositivo IoT. Es una función esencial de una
solución de IoT.
Aprovisionamiento: la acción de aprovisionar un dispositivo en la
nube lo identifica de forma única en la nube. El aprovisionamiento
también establece los protocolos de seguridad para el dispositivo y sus
derechos de acceso y privilegios.
Enrutamiento: el enrutamiento de mensajes le permite enviar
mensajes desde los dispositivos a los servicios en la nube de forma
automatizada, escalable y confiable. Puede enviar mensajes o eventos
de telemetría de dispositivo (por ejemplo, eventos de ciclo de vida del
dispositivo).
Escalado: para las soluciones en la nube, el escalado implica la
necesidad de incrementar o reducir el ámbito de la solución. La
capacidad de escalar o reducir verticalmente una solución ofrece al
desarrollador la flexibilidad de implementar diferentes tipos de
soluciones.
Disponibilidad del servicio: la disponibilidad del servicio intenta
garantizar un nivel de rendimiento operativo concreto (normalmente,
el tiempo de actividad) para un servicio en la nube. La disponibilidad
del servicio se define mediante el acuerdo de nivel de servicio (SLA).
IoT Hub permite lo siguiente:
Proteger las comunicaciones: IoT Hub permite comunicaciones
seguras para que los dispositivos envíen datos mediante la
10
autenticación por dispositivo con varios tipos de autenticación.
Escalado de la solución: IoT Hub permite escalar a millones de
dispositivos conectados de manera simultánea y a millones de eventos
por segundo para admitir las cargas de trabajo de IoT. La escala de la
solución se determina en función de dos consideraciones: las
características que piensa usar y la cantidad de datos que planea
trasladar a diario.
Azure IoT Hub ofrece dos niveles: Básico y Estándar. Para desarrollar
funciones de comunicación completa y bidireccional, debe usar el nivel
Estándar. El nivel Básico proporciona un subconjunto de características
y está pensado para las soluciones que solo necesitan comunicación
unidireccional de los dispositivos a la nube. Los dos niveles (Básico y
Estándar) ofrecen las mismas características de seguridad y
autenticación.
El rendimiento de los datos es la segunda consideración a la hora de
determinar cómo escalar la solución. Cada nivel de IoT Hub está
disponible en tres tamaños, identificados numéricamente como 1, 2 y
3. Cada unidad de un centro de IoT de nivel 1 puede controlar
400 000 mensajes al día, mientras que una unidad de nivel 3 puede
controlar 300 millones.
Enrutamiento de datos del dispositivo: IoT Hub permite enviar
mensajes basados en reglas automatizadas para optimizar el tráfico de
datos.
Envío de comandos a un dispositivo: IoT Hub también puede enviar
11
mensajes de la nube al dispositivo. Los mensajes de la nube al
dispositivo le permiten enviar comandos y notificaciones a los
dispositivos conectados.
Supervisión del estado de la solución de IoT: IoT Hub permite
realizar el seguimiento de eventos, como la creación de dispositivos,
los errores de comunicación de dispositivos y las conexiones de
dispositivos.
Integración con otros servicios: puede integrar IoT Hub sin
problemas con otros servicios de Azure para compilar una solución de
un extremo a otro. Por ejemplo, puede incorporar IoT Hub con Azure
Logic Apps y Event Grid para automatizar procesos empresariales.
Administración y configuración de los dispositivos: con IoT Hub,
puede administrar los dispositivos conectados a escala. Puede
establecer y consultar el estado del dispositivo y responder de forma
automática a un cambio del estado de los dispositivos.
Creación de soluciones resistentes y de alta disponibilidad: cree
soluciones de alta disponibilidad según un contrato de nivel de servicio
especificado y benefíciese de las funciones integradas de conmutación
por error.
Conexión de prácticamente cualquier dispositivo: con los SDK de
dispositivo de código abierto de IoT de Azure, puede crear soluciones
que se ejecuten en dispositivos conectados e interactúen con IoT Hub.
También puede conectar dispositivos de forma nativa a IoT Hub
12 mediante protocolos como MQTT, HTTPS 1.1 o AMQP.
Funcionamiento de IoT
Hub
Azure IoT Hub es la PaaS (plataforma como servicio) principal de
Azure que permite la comunicación bidireccional entre dispositivos IoT
y una solución en la nube. IoT Hub es el punto de partida para cualquier
solución de IoT e implementa algunas funciones esenciales que son
comunes a las implementaciones de IoT. Entre ellas se incluyen
funciones de red, proceso, almacenamiento y seguridad. A
continuación se describen estas características.
Protocolos admitidos: IoT Hub permite que los dispositivos usen los
protocolos de comunicaciones de dispositivo siguientes: MQTT, MQTT
13 sobre WebSockets, AMQP, AMQP sobre WebSockets y HTTP
Registro de identidades de dispositivo: IoT Hub contiene un registro
de identidades. En el registro de identidades se almacena información
sobre los dispositivos y módulos que se pueden conectar a IoT Hub.
Debe existir una entrada de registro de identidades para el dispositivo
o el módulo antes de que la entidad se pueda conectar a IoT Hub.
También se debe autenticar un dispositivo o un módulo en IoT Hub en
función de las credenciales almacenadas en el registro de identidades.
Autenticación: Azure IoT Hub concede acceso a los puntos de
conexión mediante la comprobación de un token con las directivas de
acceso compartido y las credenciales de seguridad del registro de
identidades. Puede usar cualquier certificado X.509 para autenticar
dispositivos con IoT Hub. Entre los certificados admitidos se incluyen
un certificado X.509 existente, un certificado X.509 firmado por una
entidad de certificación y un certificado X-509 autofirmado y generado
automáticamente.
Dispositivos gemelos: los dispositivos gemelos son documentos
JSON que almacenan información sobre el estado del dispositivo,
incluidos metadatos, configuraciones y condiciones. Azure IoT Hub
mantiene un dispositivo gemelo para cada dispositivo que se conecta
a IoT Hub. Los dispositivos gemelos almacenan información
relacionada con el dispositivo que el dispositivo y los back-end pueden
usar para sincronizar la configuración y las condiciones del dispositivo.
Puntos de conexión expuestos por IoT Hub: para cada dispositivo
del registro de identidades, IoT Hub muestra un conjunto de puntos de
conexión: envío de mensajes enviar; recepción de mensajes de la nube
14
al dispositivo; inicio de cargas de archivos; recuperación y actualización
de las propiedades del dispositivo gemelo; recepción de solicitudes de
método directo. En la actualidad, IoT Hub admite los siguientes
servicios de Azure como puntos de conexión adicionales
(personalizados): contenedores de Azure Storage, Event Hubs, colas de
Service Bus, y temas de Service Bus.
Aprovisionamiento de dispositivos con el servicio IoT Hub Device
Provisioning de Azure: IoT Hub Device Provisioning es un servicio
auxiliar para IoT Hub. El servicio de aprovisionamiento de dispositivos
ofrece aprovisionamiento just-in-time, sin intervención del usuario, en
la instancia apropiada de IoT Hub, que permite a los clientes
aprovisionar millones de dispositivos de forma segura y escalable.
La función de telemetría es el componente esencial de IoT Hub. La
función de telemetría implica la grabación y transmisión de los valores
recibidos por un dispositivo IoT. Pero IoT Hub es mucho más que la
función de telemetría básica. La característica de escalado de IoT Hub
permite aumentar (o reducir) el ámbito de la solución. La capacidad de
escalar una solución depende de dos consideraciones: las
características que piensa usar y la cantidad de datos que planea
trasladar a diario. Una vez que tenga previsto implementar dispositivos
a escala, tendrá que administrarlos. La función de
aprovisionamiento de IoT Hub le permite administrar dispositivos
durante el ciclo de vida de un dispositivo. El aprovisionamiento
también establece los protocolos de seguridad para el dispositivo, sus
derechos de acceso y sus privilegios. Los requisitos de seguridad se
pueden considerar como parte de una función de seguridad, que
15
administra los requisitos de acceso y autenticación por dispositivo con
varios tipos de autenticación. Según las funciones de seguridad,
la función de enrutamiento determina el flujo de mensajes y los
destinatarios del mensaje. Por último, se puede conectar a dispositivos
externos de forma nativa con la funcionalidad del SDK e integrarlos
con otros servicios mediante la funcionalidad de integración de
servicios.
Si considera el escenario descrito antes sobre desarrolladores de
soluciones que trabajan con varios sensores en la ciudad, el prototipo
se habría iniciado con una función de telemetría básica. Pero para la
implementación en toda la ciudad, se necesitan muchos más
elementos. Esto incluye la capacidad de implementar y aprovisionar
dispositivos a escala, implementar la seguridad de nivel de dispositivo
y garantizar el enrutamiento de nivel de mensaje. Debido a la
diversidad de dispositivos de una ciudad, la capacidad de conectarse
de forma nativa con un SDK expandirá la base de usuarios de la
solución. Sin la funcionalidad de IoT Hub, la solución sería difícil de
implementar más allá de una función de telemetría básica.
Azure IoT Hub ofrece dos niveles. Si la solución de IoT se basa en
la recopilación de datos de los dispositivos y en su análisis de
forma centralizada, seleccione el nivel Básico. Para configuraciones
más avanzadas o para usar el procesamiento distribuido, use el
nivel Estándar. El nivel Estándar de IoT Hub permite todas las
características y es necesario para cualquier solución de IoT que
16 quiera hacer uso de las funcionalidades de comunicación
bidireccional. El nivel Básico permite un subconjunto de las
características y está pensado para las soluciones de IoT que solo
necesitan comunicación unidireccional de los dispositivos a la
nube. Los dos niveles ofrecen las mismas características de
Complejidad de la aplicación seguridad y autenticación. Las características del nivel Estándar son
la telemetría del dispositivo a la nube, la identidad por dispositivo,
el enrutamiento de mensajes, las mejoras de mensajes, la
integración de Event Grid, la compatibilidad con el protocolo HTTP,
AMQP y MQTT, el servicio de aprovisionamiento de dispositivos, la
supervisión y el diagnóstico, la mensajería de la nube al dispositivo,
los dispositivos y módulos gemelos, y la administración de
dispositivos, flujos de dispositivo, Azure IoT Edge e IoT Plug and
Play Preview.
Los datos dependen de la cantidad de datos que tiene previsto
migrar a diario. Cada nivel de IoT Hub está disponible en tres
tamaños, identificados numéricamente como 1, 2 y 3. Cada unidad
Rendimiento de los datos
de un centro de IoT de nivel 1 puede controlar 400 000 mensajes
al día y una unidad de nivel 3 puede controlar 300 millones.
IoT Hub usa permisos para conceder acceso a cada uno de los
Protección de una solución de puntos de conexión de IoT Hub. Los permisos limitan el acceso a
un extremo a otro para permitir
una instancia de IoT Hub según la funcionalidad.
la autenticación por dispositivo
Azure IoT Hub se puede usar para establecer la comunicación
bidireccional con miles de millones de dispositivos IoT. Puede usar
datos de telemetría enviados del dispositivo a la nube listos para
entender el estado de los dispositivos y definir rutas de mensajes
hacia otros servicios de Azure, sin necesidad de escribir código. En
17 los mensajes enviados de la nube al dispositivo, envíe comandos y
Comunicación bidireccional notificaciones de forma confiable a los dispositivos conectados y
realice el seguimiento de la entrega de los mensajes con acuses de
recibo. Reenvíe de forma automática los mensajes de los
dispositivos según sea necesario para ajustarse a una conectividad
intermitente.
Una lista más completa de consideraciones incluye lo siguiente:
Telemetría ¿La solución solo necesita servicios de telemetría básicos?
Cobertura ¿La solución necesita cobertura geográfica completa?
geográfica
Compatibilidad ¿Necesita admitir varios dispositivos para la solución?
con dispositivos
Administración ¿Necesita realizar el seguimiento de los datos y
de una serie de administrarlos para diferentes tipos de dispositivos?
18
dispositivos
Protocolos de ¿La solución necesita conectarse a través de diferentes tipos
comunicación de protocolos de comunicación?
Enrutamiento de ¿Cómo se asegura de que solo se comuniquen entre sí los
mensajes dispositivos correctos?
Seguridad ¿Cómo se protege la solución?
1
Identificación de caras y
expresiones con Computer
Vision API en Azure
Cognitive Services
BIENVENIDA
Obtenga información sobre el uso de Computer Vision API en Azure
para identificar detalles faciales en imágenes.
En este módulo aprenderá a:
Conocer mejor en qué consiste Face API
Entender los conceptos relacionados con Face API
Requisitos previos
Ninguno
Introducción 1 min
2
Información general sobre Face API 3 min
Tipos de datos faciales 3 min
Información general sobre el reconocimiento facial 3 min
Introducción a las listas de caras 3 min
Suscripción a Face API 3 min
Ejercicio: Obtención de las claves de suscripción 10 min
Ejercicio: Prueba de la API de Detección de caras 7 min
Comprobación de conocimientos: uso de Face API de Computer
Vision 7 min
Resumen 7 min
3
INTRODUCCIÓN
Hay caras por todas partes. La Tierra está poblada por más de
[Link] caras, todas y cada una de ellas única. Aunque las caras
cambian a lo largo del tiempo debido a la edad y a otras condiciones,
la capacidad de detectarlas, identificarlas y reconocerlas es uno de los
aspectos más increíbles del cerebro humano.
Antes de contar con los algoritmos de inteligencia artificial que están
disponibles en Azure Cognitive Services, los procesos de
reconocimiento facial eran complicados o incluso imposibles. Ahora se
pueden hacer cosas extraordinarias si se agregan unas líneas de código
en Face API de Cognitive Services.
Nota
Este módulo requiere una suscripción de Azure. Los servicios que cree
y use son gratuitos, pero necesitará una suscripción activa o una
versión de prueba para completar los ejercicios. Si no tiene una
suscripción a Azure, cree una cuenta gratuita antes de empezar.
Objetivos de aprendizaje
En este módulo, aprenderá a:
• Conocer en qué consiste Face API.
• Obtener conceptos relacionados con Face API.
5
INFORMACIÓN GENERAL
SOBRE FACE API
Face API proporciona algoritmos, que se exponen como llamadas de
servicio web basadas en REST, para detectar, comprobar, identificar y
analizar caras. El servicio puede proporcionar coincidencia de caras,
atributos de la cara y análisis de características. Face API también puede
organizar personas y definiciones faciales en grupos para localizar
caras similares.
Las tareas de Face API se dividen en cinco categorías:
Comprobación: se comprueba la probabilidad de que dos
caras pertenezcan a la misma persona.
Detección: se detectan las caras humanas en una imagen.
Identificación: se buscan y se identifican caras.
Similitud: se buscan caras similares.
Agrupación: se organizan caras no identificadas en grupos,
según su similitud visual.
Face API usa la inteligencia artificial para:
Detectar actividad humana en imágenes.
Intentar la coincidencia de las caras con bases de datos de
imágenes existentes.
Detectar caras humanas y devolver sus coordenadas.
Administrar perfiles según los atributos de la cara.
Analizar e identificar caras en fotogramas de vídeo.
7
TIPOS DE DATOS
FACIALES
Face API proporciona métodos para detectar rostros humanos en
imágenes y puede devolver ubicaciones, puntos de referencia y
atributos de las caras:
Ubicaciones: en la imagen que incluya una cara, Face API busca
las coordenadas de la parte superior, parte izquierda, ancho y
alto de la región de cara.
Puntos de referencia: Face API busca la posición de elementos
comunes de la cara, como las pupilas, la nariz y los labios.
8 Atributos: Face API realiza la estimación de los atributos de una
cara, como la edad, el sexo, el color de pelo, la sonrisa, el vello
facial, las gafas y las emociones.
Ubicaciones
Una ubicación de la cara es otro término para referirse a una colección
de coordenadas faciales. La ubicación es un área de píxeles rectangular
en la imagen en la que se ha identificado una cara.
Puntos de referencia
Los puntos de
referencia de la
cara son una colección
de puntos detallados
en un rostro. Mediante
coordenadas de píxeles, estos puntos identifican elementos faciales
comunes, como las pupilas, la nariz o las cejas. Face API puede devolver
hasta 27 puntos de referencia para cada cara identificada que se
pueden usar para el análisis.
Atributos
Los atributos de la cara son propiedades predefinidas de una cara o de
una persona representada por una cara. Opcionalmente Face API
puede identificar y devolver los siguientes tipos de atributos para una
cara detectada:
Edad
Sexo
Intensidad de la sonrisa
Vello facial
Posición de la cabeza (3D)
Emoción
10
INFORMACIÓN GENERAL
SOBRE EL
RECONOCIMIENTO
FACIAL
La API de detección de caras proporciona información sobre las caras
detectadas en una imagen, pero no está diseñada para identificar ni
reconocer una cara específica. Pero Face API ofrece esta funcionalidad
a través de una API de reconocimiento facial.
El reconocimiento facial se usa en numerosos ámbitos, como la
11 seguridad, las interfaces de usuario naturales, el análisis de imágenes,
las aplicaciones móviles y la robótica.
La capacidad de usar la inteligencia artificial para reconocer y comparar
caras es uno de los aspectos más eficaces de Face API.
Diferencias entre la detección de caras y el reconocimiento facial
El reconocimiento facial se basa en la API de detección facial mediante
el análisis de los puntos de referencia de dos o más imágenes para
determinar si existe la misma cara. A través de este análisis se pueden
determinar cuatro aspectos.
1. ¿Dos imágenes de una cara pertenecen a la misma persona?
Esto define la comprobación.
2. ¿Esta persona se parece a otra? Esto define la similitud.
3. ¿Están relacionadas entre sí todas estas caras? Esto define
la agrupación.
4. ¿Quién es esta persona en este grupo de personas? Esto define
la identificación.
12
INTRODUCCIÓN A LAS
LISTAS DE CARAS
En sentido estricto, una lista de caras es un grupo de caras. Cree y
administre listas de caras para encontrar caras similares en una
colección fija de caras. Por ejemplo, podría usar una lista de caras para
buscar una cara similar en un conjunto de imágenes de famosos,
amigos o familiares.
Una lista de caras se relaciona con varios conceptos:
Cara: una sola cara
Lista de caras: una lista o colección de caras
13
Persona: una sola persona
Grupo de personas: una lista o colección de personas
Las relaciones entre estos términos pueden llegar a ser algo confuso,
por lo que es útil visualizarlas:
Las listas de caras son útiles cuando se trabaja en la identificación de
caras y la similitud facial.
Identificación de caras
Se puede usar Face API para identificar a una persona mediante la
comparación de una cara detectada con un grupo de personas.
Recuerde que un grupo de personas es como una base de datos de
personas. Por ejemplo, podría crear un grupo de personas
denominado myInnerCircle (mi círculo de allegados):
14
Puede usar otra cara para realizar la identificación en el grupo de
personas. Si la cara se identifica como una persona en el grupo, el
objeto de persona se devuelve como una coincidencia.
Similitud facial
Las listas de caras son una excelente manera de determinar la similitud
facial. Por ejemplo, si compara una cara de destino con una lista de
caras, es posible que Face API devuelva una pequeña colección de caras
que se parecen a la cara de destino. Face API admite dos modos de
funcionamiento: coincidencia de cara y coincidencia de persona.
Coincidencia de persona devuelve caras similares después de
aplicar un umbral de la misma persona derivado de la
comprobación de caras.
Coincidencia de cara devuelve caras parecidas ignorando el
umbral de la misma persona.
En la imagen siguiente, la similitud facial encontraría que la primera
cara y la segunda son la misma persona. Encontraría que las caras
tercera y cuarta son similares.
15
Capacidad de colección
Aunque probablemente no alcance un umbral de colección, es posible
que quiera conocer las capacidades de las colecciones de
almacenamiento de Face API:
Lista de caras: hasta 1000 caras diferentes
Grupo de personas: hasta 10 000 personas
Persona: hasta 248 caras
Eso es mucho para digerir. Pero probablemente comprobará que
trabajar con Face API es muy sencillo una vez asimilados estos
conceptos.
16
SUSCRIPCIÓN A FACE API
Para acceder a una API de Cognitive Services, debe suscribirse a un
servicio específico. Normalmente, se hace a través de Azure Portal.
Como las API se exponen a través de servicios web basados en REST,
cualquier lenguaje capaz de generar y enviar un mensaje HTTP puede
usar los servicios. Se necesitan dos elementos: una clave de
suscripción y el punto de conexión.
La mayoría de servicios de Cognitive Services, incluido Computer
Vision, requieren autorización con una clave de suscripción. En todas las
llamadas de servicio web a Computer Vision API es necesario pasar una
clave de suscripción al servicio a través de un valor en la cadena de
17
consulta o el encabezado de solicitud.
El punto de conexión es la dirección URL de Internet para el servicio. Las
aplicaciones que usan los servicios deben apuntar a la dirección URL
que se especifica en el punto de conexión del servicio.
La combinación del punto de conexión y la clave de suscripción permite
que la aplicación use los servicios.
EJERCICIO: OBTENCIÓN
DE LAS CLAVES DE
SUSCRIPCIÓN
En este ejercicio, creará una suscripción de Face API y accederá a su
clave y punto de conexión.
Creación de una suscripción de Face API
Para suscribirse a Face API:
1. Inicie sesión en Azure Portal .
18 2. Haga clic en + Crear un recurso > IA + Machine
Learning > Face (Cara) > Crear.
3. Escriba un nombre único para la suscripción de Face API y elija
la Ubicación más cercana.
4. Seleccione el plan de tarifa más económico o gratuito.
5. Cree un grupo de recursos denominado mslearn-faceapi. Más
adelante eliminará estos recursos.
6. Haga clic en Crear para suscribirse a Face API.
Tras una breve demora, la suscripción nueva de Face API estará
aprovisionada y disponible, y se generarán claves de API nuevas para
su uso mediante programación.
Nota
En la documentación de Cognitive Services, los términos clave de
suscripción y clave de API a menudo se usan como sinónimos.
Para ver la nueva suscripción de Face, haga clic en Grupos de
recursos en la barra lateral de la izquierda. Después, seleccione el
grupo de recursos que ha creado para Face API.
Acceso a la clave de suscripción y el punto de conexión
Después de crear una suscripción, ya está casi listo para comenzar a
experimentar con Face API.
Como todas las Computer Vision API se basan en REST, puede usar el
lenguaje que prefiera para proporcionar una clave de suscripción (o
19 clave de API) al punto de conexión (o dirección URL) de Computer
Vision API.
Para ver la clave de suscripción y el punto de conexión de la suscripción
a Computer Vision:
1. En la barra lateral de la izquierda, haga clic en Grupos de
recursos y después en el que haya creado para Computer
Vision API.
2. Para ver las claves de suscripción nuevas, haga clic en el nombre
de la suscripción de Face API (como Face). Después,
en Administración de recursos, haga clic en Claves.
3. Copie el valor de CLAVE 1.
4. En el grupo de menús, haga clic en Información general.
Después, copie el valor de Punto de conexión.
20
Ahora que conoce la ubicación y los valores de la clave de suscripción
y el punto de conexión de Face API, está listo para comenzar a escribir
código o probar la API con una imagen.
EJERCICIO: PRUEBA DE LA
API DE DETECCIÓN DE
CARAS
Ahora se va a usar la suscripción a Face API que acaba de crear para
detectar caras en imágenes de un sitio web.
Se usará la consola de pruebas de Cognitive Services. La consola de
pruebas es un sitio web integrado desde el que se pueden generar y
enviar solicitudes REST a cualquiera de los servicios de inteligencia
artificial.
21 1. Abra la suscripción de Face API.
2. Copie una de las claves de suscripción con el
botón Copiar situado a la derecha del valor de la clave.
3. Abra la página del servicio de Face API .
4. En la sección Face Detect (Detección de caras), haga clic en el
botón de Open API testing console (Abrir la consola de
pruebas de API) asociado a la ubicación en la que se ha creado
el servicio de Azure. Por ejemplo, si ha usado WestUS, haga clic
en West US (Oeste de EE. UU.) de la sección de la consola de
pruebas. En la página de pruebas que se abre, puede especificar
los parámetros que quiere enviar al servicio, enviar la solicitud
y después ver la respuesta directamente en el explorador.
5. Desplácese hasta la sección Headers (Encabezados) y pegue la
clave de suscripción en el cuadro de texto Ocp-Apim-
Subscription-Key.
6. Busque una imagen que incluya una cara. Puede usar una
dirección URL de imagen propia o esta:
22
7. En la sección Request body (Cuerpo de la solicitud) de la
herramienta de prueba, pegue la dirección URL como un
bloque JSON. Aquí se usa la dirección URL de imagen del paso
anterior. Si quiere usar una imagen propia, reemplace el
valor url que se muestra aquí:
JSON
"url": "[Link]
with-computer-vision/media/clo19_ubisoft_azure_068.png"
8. Haga clic en Send (Enviar).
La respuesta HTTP debería ser similar a la siguiente:
23
1
Incorporación de inteligencia
conversacional a las
aplicaciones mediante
Language Understanding
Intelligent Service (LUIS)
BIENVENIDA
En este módulo se presenta Language Understanding Intelligent
Service(LUIS) y se muestra cómo crear una aplicación de LUIS.
En este módulo, aprenderá a:
Podrá conocer qué es LUIS.
Obtendrá información sobre las características clave de
Language Understanding, tales como las intenciones y las
expresiones.
Compilará y publicará un modelo de Machine Learning de
lenguaje natural.
2 Requisitos previos
Ninguno
Introducción 1 min
Información general de Language Understanding Intelligent
Service (LUIS) 4 min
Creación de un recurso de servicio de LUIS 10 min
Ejercicio: Incorporación de entidades e intenciones 15 min
Entrenamiento del modelo de LUIS 15 min
Prueba de conocimientos 7 min
Resumen 2 min
INTRODUCCIÓN
Un factor clave para las aplicaciones de inteligencia artificial es la
capacidad de interactuar de forma inteligente con el usuario. Algunas
de las interacciones de inteligencia artificial más comunes se producen
a través de los bots. Puede integrar inteligencia conversacional en el
bot mediante Language Understanding Intelligent Service (LUIS) de
3 Azure.
LUIS es una API de Azure Cognitive Service que aplica inteligencia
personalizada de Machine Learning a un texto de lenguaje natural de
un usuario. LUIS usa ciertos aspectos del texto para predecir el
significado global del usuario y extraer información pertinente y
detallada. Las aplicaciones pueden usar esta información para
interactuar con el usuario.
Nota
Este módulo requiere una suscripción de Azure. Los servicios que cree
y use son gratuitos, pero necesitará una suscripción activa o una
versión de prueba para completar los ejercicios. Si no tiene una
suscripción a Azure, cree una cuenta gratuita antes de empezar.
Objetivos de aprendizaje
En este módulo:
• Entenderá mejor en qué consiste LUIS.
• Obtendrá información sobre características clave de LUIS, como
las intenciones y las expresiones.
• Compilará y publicará un modelo de LUIS.
4
INFORMACIÓN GENERAL
DE LANGUAGE
UNDERSTANDING
INTELLIGENT SERVICE
(LUIS)
Comprender el lenguaje es algo que incluso los seres humanos hacen
mal de vez en cuando. Un buen ejemplo es el uso de términos propios
del argot o expresiones locales. Imagine que se encuentra en un lugar
público de Indonesia, como un centro comercial o un restaurante, y
5
que busca el aseo. Es posible que en las lecciones de indonesio le hayan
enseñado a utilizar la frase "¿Di mana kamar kecil?".
Aunque esta frase es técnicamente correcta, se aplica principalmente a
la búsqueda del baño en la casa de alguien. "Kamar kecil" significa
literalmente "sala" (kamar) "pequeña" (kecil). En un lugar público es
más correcto preguntar "¿Di mana WC?" o "¿Di mana toilette?". Pero si
usa "¿Di mana kamar kecil?" en un lugar público, prácticamente todos
los indonesios lo entenderán sin ningún problema.
¿Pero qué sucede si hace esa pregunta a un equipo? ¿Le dará la
respuesta correcta? ¿O le dirigirá a una "sala pequeña" que no es un
baño?
Del mismo modo, un hablante nativo de inglés puede entender una
frase cuyo significado no esté claro para alguien no nativo, o incluso
para algunos hablantes nativos de inglés. ¿Cuántas personas
entenderían sin problemas la frase "entornar la puerta"? Significa lo
mismo que "cerrar un poco la puerta" o "no cerrar la puerta del todo",
pero puede que no quede claro para todos.
Para que la inteligencia artificial entienda el lenguaje, hay una serie de
aspectos fundamentales que ayudan al algoritmo a establecer
comparaciones y distinciones. Aquí es donde entra en escena
Language Understanding Intelligent Service (LUIS).
LUIS usa tres aspectos clave para entender el lenguaje:
Expresiones: Una expresión es información proporcionada por
el usuario que la aplicación necesita interpretar.
Intenciones: Una intención representa una tarea o acción que
6 el usuario quiere realizar. Se trata de una finalidad o un objetivo
que se manifiesta en la expresión de un usuario.
Entidades: Una entidad representa una palabra o frase dentro
de la expresión que se quiere extraer.
Aquí tiene un ejemplo. Imagine que usa LUIS en un bot para ayudar a
un usuario a reservar un vuelo. Un usuario podría usar la expresión
siguiente: "Reservar 2 billetes de avión a Nueva York para Nochevieja".
Si evaluamos los aspectos clave de esta expresión, podemos
determinar la intención del usuario. El usuario quiere reservar un vuelo.
Podemos afirmar que la intención es BookFlight, es decir, reservar un
vuelo.
Las entidades no son solo palabras o frases, sino también simplemente
datos. Estos datos contribuyen a proporcionar contexto específico para
la expresión y ayudan al algoritmo a identificar la intención con mayor
precisión. Aunque no todas las expresiones contienen entidades.
En la expresión de ejemplo usada anteriormente, podemos identificar
entidades tales como:
Nueva York: Esta entidad se puede clasificar
como [Link].
Nochevieja: Esta entidad se puede clasificar como Event.
Número 2: Este número se asigna a una entidad integrada. En
LUIS, dicha entidad se conoce como entidad creada
previamente, concretamente, un número creado previamente.
Ahora que sabemos todo esto, veamos cómo se crea una aplicación de
LUIS.
7
CREACIÓN DE UN
RECURSO DE SERVICIO DE
LUIS
Veamos cómo se puede usar LUIS para agregar algunas
funcionalidades de lenguaje natural a un bot de administración de
imágenes. LUIS permite asignar expresiones de lenguaje natural
a intenciones. En otras palabras, LUIS asigna palabras, frases u
oraciones del usuario a las tareas o acciones que el usuario quiere
realizar.
Nuestra aplicación podría tener varias intenciones: buscar imágenes,
8
compartir imágenes y encargar copias impresas de fotografías. Le
daremos a LUIS algunas expresiones de ejemplo de formas en las que
los usuarios pueden pedir cada una de estas cosas. Luego, LUIS
asignará nuevas expresiones adicionales a cada intención según lo que
aprenda con el tiempo.
Nota
Este ejercicio es opcional. Si quiere usar un servicio de LUIS que esté
vinculado a su cuenta de Azure, puede seguir estos pasos para crear el
servicio de LUIS. Si solo quiere usar un entorno de prueba, vaya al
ejercicio "Creación de una aplicación de LUIS" más adelante en esta
página.
1. Inicie sesión en Azure Portal .
2. En el panel izquierdo, seleccione + Crear un recurso.
3. En el cuadro Buscar en Marketplace, escriba LUIS y presione
la tecla ENTRAR.
4. En los resultados de la búsqueda, seleccione Language
Understanding.
5. Seleccione Crear.
6. Deje las opciones de Creación establecidas en Ambas
7. Escriba un nombre único para el servicio LUIS.
8. Elija una suscripción.
9
9. Cree un nuevo grupo de recursos denominado LearnRG.
10. Como Ubicación de creación, elija la que le quede más cerca.
11. Para Plan de tarifa de creación, seleccione F0
12. Establezca la Ubicación del tiempo de ejecución en la misma
región que eligió para Ubicación de creación
13. Para plan de tarifa de runtime, seleccione F0.
14. Seleccione Crear.
Cuando la implementación haya finalizado correctamente, vaya a la
página de recursos del servicio. Necesitará una de las claves de
suscripción que se muestran para su uso en ejercicios posteriores.
Puede usar la opción "Obtener las claves" en la sección Inicio rápido,
o bien cambiar a la sección Claves para ver las dos claves creadas.
Creación de una aplicación de LUIS
Azure exige que la aplicación de LUIS se cree en la misma ubicación
geográfica en la que se haya creado el servicio. Si no ha creado el
servicio en el anterior ejercicio opcional, se recomienda que use la
ubicación que le quede más cerca.
1. Seleccione una de las siguientes direcciones URL y ábrala en
una nueva ventana del explorador.
Norteamérica: [Link]
Europa: [Link]
Australia: [Link]
10
Nota
Hay tres sitios web de LUIS, en función de la región. Debe crear y
publicar el contenido en la misma región. Seleccione la más cercana.
2. Seleccione el vínculo Iniciar sesión de la esquina superior
derecha.
3. Inicie sesión con la cuenta de Microsoft.
4. En la página principal, haga clic en Crear ahora una
aplicación de LUIS.
5. Seleccione + Crear nueva aplicación.
6. Asigne un nombre a la aplicación de LUIS, por
ejemplo, PictureBotLUIS.
7. Como Referencia cultural, seleccione la opción más adecuada.
8. Proporcione una descripción de la aplicación para que resulte
evidente cuál es la finalidad de la aplicación de LUIS.
9. Seleccione Listo.
La aplicación recién creada se mostrará en la página Intenciones con
una única intención llamada Ninguna.
11
EJERCICIO:
INCORPORACIÓN DE
ENTIDADES E
INTENCIONES
El siguiente paso de la aplicación PictureBotLUIS consiste en crear
intenciones que se asignan a solicitudes de usuario. El objetivo es que
el bot de administración de imágenes comprenda lo siguiente:
Cómo buscar imágenes
Cómo compartir imágenes en redes sociales
12 Cómo encargar copias impresas de fotografías
Cómo saludar al usuario
Vamos a crear intenciones para cada uno de estos elementos.
Nota
Hay una intención que ya está presente, denominada None. Las
expresiones aleatorias que no se asignen a ninguna de las intenciones
pueden asignarse a esta.
1. Seleccione + Crear nueva intención.
2. Asigne a la primera intención el nombre Greeting y
seleccione Listo.
Dado que el escenario para esta aplicación consiste en la integración
con un bot, proporcionará ejemplos de expresiones que podrían decir
los usuarios al saludar inicialmente al bot.
3. Escriba una expresión de saludo, como hola, y presione
ENTRAR.
4. Repita el paso anterior para crear valores para cada una de las
siguientes expresiones: buenas, aló, cómo va, qué
tal y saludos.
Sugerencia
Siempre debe proporcionar al menos cinco expresiones de ejemplo a
cada intención.
13 5. Las expresiones de la intención Greeting deben tener un
aspecto similar al de la siguiente imagen:
6. Cree otra intención con el nombre SearchPics.
7. Agregue los valores siguientes como expresiones para la
intención SearchPics:
Buscar imágenes al aire libre
¿Hay imágenes de trenes?
Buscar imágenes de comida
Buscar fotos de niños jugando
Quiero imágenes coloridas
Quiero ver imágenes de playas
Quiero ver fotos de perros
Buscar imágenes de pastores alemanes
Buscar imágenes de hombres en espacios de interior
Quiero ver imágenes de hombres con gafas
Quiero ver imágenes de personas sonriendo
Quiero ver imágenes de bebés
Creación de entidades
14
A continuación, vamos a crear las entidades que necesitamos para
capturar solicitudes específicas de los usuarios. Por ejemplo, cuando
los usuarios quieran buscar las imágenes, podrían especificar lo que
buscan.
1. En la columna de la izquierda, seleccione Entidades y,
luego, Crear nueva entidad.
2. Asigne el nombre faceta a la entidad (para representar una
manera de identificar una imagen).
3. Para el valor Tipo de entidad, seleccione Simple. Después,
seleccione Listo.
Asignación de temas de búsqueda a la entidad "faceta"
15
Después, tenemos que mostrar a LUIS cómo seleccionar el tema de la
búsqueda como entidad faceta. Lo que la aplicación buscará es lo que
indique la entidad faceta.
1. Vuelva a las intenciones y seleccione la intención SearchPics.
2. Desplace el puntero sobre la expresión, haga clic en la palabra
clave que especifica el tema de la búsqueda y, luego, seleccione
la entidad faceta. Por ejemplo, si la expresión es "Quiero ver
imágenes de bebés", el asunto sería "bebé".
Sugerencia
Utilizar palabras clave de varias palabras, como "pastores alemanes", es
un poco complicado.
16
Haga clic en la primera palabra de la palabra clave, mueva el cursor a
la segunda palabra y vuelva a hacer clic. Después, mueva el cursor a la
lista emergente de selección de entidades. Asegúrese de no mover el
cursor fuera de los bordes o perderá la selección.
3. El progreso debe tener un aspecto similar a la siguiente imagen:
4. Agregue dos intenciones más con expresiones relacionadas, tal
y como se muestra en la tabla siguiente:
17
Nombre
de
intención Expresiones
SharePic Compartir esta imagen, ¿Puedes publicarla en un tweet?, Publicar en Twitter
OrderPic Imprimir esta foto, Quiero encargar copias impresas de la foto, ¿Puedo conseguir
una copia de 8 × 10?, Encargar copias tamaño carné
5. Para terminar el ejercicio, agregue algunas expresiones a la
intención existente None. Asegúrese de que estas expresiones
no coincidan con el contexto de esta aplicación de LUIS.
Ejemplos:
Me apetece una pizza
Buscar vídeos
Aprender a conducir
18
ENTRENAMIENTO DEL
MODELO DE LUIS
Ya estamos a punto para entrenar el modelo.
1. En la barra superior, seleccione Entrenar. Durante el
entrenamiento, LUIS compilará un modelo que asignará
expresiones a intenciones según los datos de entrenamiento
facilitados.
Sugerencia
El entrenamiento no siempre es inmediato. A veces, se queda en la cola
19 y puede tardar varios minutos.
Creación de un punto de conexión público para el servicio LUIS
1. Una vez finalizado el entrenamiento,
seleccione Administrar en la barra superior. Se mostrarán las
opciones siguientes a la izquierda de la ventana:
Información de la aplicación
Claves y puntos de conexión
Configuración de publicación
Versiones
Colaboradores
2. Seleccione Claves y puntos de conexión. Esta pantalla se usa
para administrar los puntos de conexión de las direcciones URL
que se utilizan para acceder al servicio LUIS.
Nota
Se creará un punto de conexión denominado Starter_Key de forma
automática para realizar pruebas. Puede usarlo aquí, pero para usar el
servicio en un entorno de producción o como parte de una aplicación
le interesará asociarlo a un recurso real de Language Understanding
creado en Azure.
3. Seleccione + Asignar recurso. Seleccione el inquilino, la
suscripción y el recurso que creó en Azure Portal y, luego,
seleccione Asignar recurso para conectar el recurso de
20 Language Understanding con el servicio LUIS.
Publicación de la aplicación
1. Establezca el espacio del punto de conexión en Producción.
2. En la barra superior, seleccione Publicar.
Nota
Puede realizar la publicación en su punto de
conexión Producción o Almacenamiento provisional.
Seleccione Producción y conozca los motivos de usar cada uno de los
puntos de conexión.
3. En Publicar esta aplicación, seleccione Publicar.
La publicación crea un punto de conexión para llamar al modelo de
LUIS. Se mostrará la dirección URL del punto de conexión. Copie la
dirección URL del punto de conexión y agréguela a la lista de claves
para usarla más adelante.
21
4. En la barra superior, seleccione Probar. Pruebe a escribir
algunas expresiones y vea las intenciones que se devuelven.
Estos son algunos ejemplos que puede probar:
Significado de la
Expresión Resultado puntuación
Mostrarme imágenes Devuelve la intención SearchPics con Coincidencia positiva
de una playa local una puntuación de 0,989.
Hola Devuelve la intención Greeting con una Coincidencia bastante
puntuación de 0,970. positiva
Significado de la
Expresión Resultado puntuación
Enviar a Tom Devuelve la intención SearchPics con Necesidad de
una puntuación de 0,113. reentrenamiento
Para volver a entrenar el modelo para expresiones con puntuaciones
bajas, realice los pasos siguientes:
1. Junto a la expresión de baja de puntuación (en este caso, Enviar
a Tom), seleccione Inspeccionar.
2. Junto a Intención de puntuación superior, seleccione Editar.
22
3. En la lista Asignar a intención, seleccione SharePic.
4. Haga clic en el botón Entrenar para volver a entrenar el
modelo.
5. Pruebe de nuevo la expresión Enviar a Tom. Ahora se debería
devolver la intención SharePic con una puntuación de 0,901.
La aplicación de LUIS ya está lista para que la utilicen las aplicaciones
cliente, se pruebe en un explorador a través del punto de conexión
indicado o se integre en un bot.
1
Creación de un experimento
en Azure Machine Learning
Studio
BIENVENIDA
Obtenga información sobre cómo usar Microsoft Azure Machine
Learning Studio para crear un experimento, probarlo y publicarlo como
servicio web.
En este módulo aprenderá a:
Crear un experimento
Preparar y publicar un servicio web para el experimento
Probar el servicio web
Ver los encabezados y el código de ejemplo del servicio web
publicado
2 Requisitos previos
Ninguno
Introducción 1 min
Ejercicio: creación de un experimento 10 min
Ejercicio: compilación del experimento 10 min
Ejercicio: preparación e implementación del experimento 10 min
Ejercicio: visualización de los encabezados y el código de
ejemplo 5 min
Comprobación de conocimientos 3 min
Resumen 2 min
3
INTRODUCCIÓN
Microsoft Azure Machine Learning Studio es una interfaz de arrastrar
y colocar que permite crear experimentos para el consumo de
aplicaciones de inteligencia artificial como servicios web. En Machine
Learning Studio se proporcionan numerosas estadísticas y funciones
integradas para experimentos de aprendizaje automático.
Objetivos de aprendizaje
4
En este módulo aprenderá a:
• Crear un experimento.
• Preparar y publicar un servicio web para el experimento.
• Probar el servicio web.
• Ver los encabezados y el código de ejemplo del servicio web
publicado.
Requisitos previos
Si no tiene una cuenta de Machine Learning Studio, complete el
módulo de Microsoft Learn Create an Azure Machine Learning Studio
Account (Creación de una cuenta de Azure Machine Learning
Studio) antes de empezar.
5
EJERCICIO: CREACIÓN DE
UN EXPERIMENTO
Comenzará en Azure Machine Learning Studio con la creación de un
experimento. En el experimento se usa un conjunto de datos creado
previamente relacionados con consideraciones energéticas en la
construcción.
En este ejercicio, importará un conjunto de datos a Machine Learning
Studio. Después, experimentará con él para publicar un servicio web.
En este sencillo experimento se muestra cómo crear un modelo de
Machine Learning que se puede publicar y consumir como un servicio
6 web.
Para importar un conjunto de datos a Machine Learning Studio:
1. Descargue y extraiga el archivo Building [Link]. Este es el
conjunto de datos.
2. Vaya al portal de Machine Learning Studio .
3. Inicie sesión con la cuenta de Microsoft asociada a la cuenta de
Azure.
4. En la barra de navegación de la izquierda de Machine Learning
Studio, haga clic en el icono Datasets (Conjuntos de datos).
5. En la esquina inferior izquierda, haga clic en el
botón New (Nuevo) para cargar el conjunto de datos.
6. Seleccione DataSet > From Local File (Conjunto de
datos>Desde archivo local).
7. Haga clic en Choose File (Elegir archivo) y después seleccione
el archivo que acaba de descargar.
8. En la esquina inferior derecha, haga clic en la marca de
verificación para cargar el conjunto de datos.
9. Compruebe que Building
[Link] aparece como conjunto de
datos.
10. En Machine Learning
Studio, haga clic en el
icono Experiments (Experimentos).
7
11. Seleccione New > Blank
Experiment (Nuevo>Experimento
en blanco).
12. Seleccione Saved
Datasets > My Datasets > Building [Link] (Conjuntos de
datos guardados>Mis conjuntos de datos>Building [Link]).
13. Arrastre este conjunto de datos a la superficie del diseñador.
EJERCICIO: COMPILACIÓN
DEL EXPERIMENTO
A continuación se compilará y ejecutará el experimento.
1. Expanda Data Transformation > Sample and
Split (Transformación de datos>Muestra y división).
2. Arrastre una operación de tipo Split Data (Dividir datos) a la
superficie del diseñador.
3. En la derecha, establezca la fracción de filas del primer conjunto
8
de datos de salida en 0,7 para dividir los datos en 70/30.
4. Conecte el conjunto de datos con la operación de división de
datos. Para ello, arrastre el manipulador del conjunto de datos
a la operación de división de datos.
5. En el lado izquierdo, expanda Machine Learning > Initialize
Model > Regression (Machine Learning>Inicializar
modelo>Regresión).
6. Arrastre la entrada Decision Forest Regression (Regresión del
bosque de decisión) a la superficie del diseñador.
7. En el lado izquierdo, expanda la
subcategoría Score (Puntuación) y busque Score
Model (Puntuar modelo).
8. Arrastre la operación Score Model al diseñador.
9. En el panel izquierdo, expanda Train (Entrenar) y arrastre una
operación Train Model (Entrenar el modelo) al diseñador.
10. En el panel izquierdo, expanda la
subcategoría Evaluate (Evaluar) de Machine Learning y arrastre
una operación Evaluate Model (Evaluar modelo) al diseñador.
9 Sugerencia
Si se queda sin espacio en la superficie del diseñador, puede
desplazarse por el área expuesta de diseñador o usar la rueda del
mouse para acercarse o alejarse.
La ventana del experimento debería tener ahora un aspecto similar al
siguiente:
11. Conecte la salida 1 de la operación Split Data con la
operación Train Model.
10 12. Seleccione la operación Train Model.
13. En el lado derecho, haga clic en Launch Column
Selector (Iniciar el Selector de columnas).
14. Haga clic en la entrada With Rules (Con reglas). Después, haga
clic dentro de la lista de columnas vacías y seleccione el nombre
de columna Wall Area (Superficie de la pared).
15. Haga clic en la marca de verificación para aceptar la selección.
16. Conecte la operación Decision Forest Regression (Regresión
de bosque de decisión) con la entrada que queda, que es la
operación Train Model.
17. Conecte la segunda salida de la operación Split Data
18. (Dividir datos) con la operación Score Model (Puntuar
modelo).
19. Conecte la salida de la operación Score Model (Puntuar
modelo) con la entrada izquierda de la operación Evaluate
Model (Evaluar modelo).
20. Conecte la salida de la operación Entrenar el modelo con la
entrada que queda, que es Score Model (Puntuar modelo). El
experimento debería tener ahora un aspecto similar al
siguiente:
11
21. En la parte inferior de la ventana del diseñador, haga clic en el
botón Run (Ejecutar) para ejecutar el experimento.
22. Asegúrese de que en todas las casillas de las operaciones se
muestran marcas de verificación de color verde y que en la
esquina superior derecha del diseñador aparece Finished
running (Ejecución finalizada) con una marca de verificación de
color verde.
23. Guarde el experimento con el nombre Regresión de eficiencia
energética.
En este momento, no dude en examinar los datos del archivo CSV para
saber sobre qué actúa el experimento.
12
EJERCICIO: PREPARACIÓN
E IMPLEMENTACIÓN DEL
EXPERIMENTO
Ha creado y entrenado un experimento en Azure Machine Learning
Studio. Ahora es momento de publicarlo como un servicio web al que
los clientes puedan acceder.
El experimento se va a preparar y publicar como servicio web, y
después se evaluarán los resultados.
Ya debería haber creado el experimento de eficiencia energética que
13 va a publicar como un servicio web. Estos son los pasos siguientes:
1. En la barra de navegación de la izquierda de Machine Learning
Studio, haga clic en el icono Experiments (Experimentos).
2. Seleccione el experimento completado Regresión de
eficiencia energética para abrirlo.
3. Según el estado del servicio web, es posible que no tenga que
ejecutarlo otra vez. Si en la esquina superior derecha del
diseñador se muestra Finished running (Ejecución finalizada) y
en las fases se muestran marcas de verificación de color verde,
estará listo para el paso siguiente. En caso contrario, haga clic
en el botón Run (Ejecutar).
Configuración del servicio web
1. Después de ejecutar el experimento de eficiencia energética, en
la parte inferior del diseñador, mantenga el puntero sobre el
botón Set Up Web Service (Configurar servicio web).
2. Seleccione Predictive Web Service (Servicio web predictivo)
(recomendado).
Sugerencia
Si la opción Predictive Web Service no está disponible, vuelva a
ejecutar el experimento. Compruebe si aparece la nota que indica que
ha acabado de ejecutarse.
3. Compruebe que se abre la pestaña Predictive
experiment (Experimento predictivo). En el diseñador se
debería mostrar una operación de entrada y de salida del
14
servicio web.
4. Haga clic en el botón Run (Ejecutar).
5. Para comprobar que se ha completado de forma correcta,
busque una marca de verificación de color verde en la
operación Score Model (Modelo de puntuación). Busque
también un ejecución finalizada nota en la esquina superior
derecha.
Implementación del servicio web
Haga clic en el botón Deploy Web Service (Implementar servicio web).
Machine Learning Studio crea el servicio web y abre una ventana nueva
en la que se indica que la operación es correcta. Observará que aparece
la clave de API del servicio web. Las aplicaciones usarán esta clave para
acceder al servicio web.
Prueba del servicio web
Ahora que el servicio web está implementado, se probará para ver los
resultados de la salida.
1. Junto a la opción Request/Response (Solicitud/Respuesta),
haga clic en el botón Test (Probar) para abrir el cuadro de
diálogo de entrada de datos.
15
2. En el cuadro de diálogo de entrada de datos, escriba los valores
siguientes de los datos del modelo de entrenamiento:
Superficie de la pared: 296
Superficie del techo: 110,25
Altura total: 7
Superficie acristalada: 0
Carga de calefacción: 15,55
3. En la esquina superior derecha, haga clic en la marca de
verificación.
Verá la salida en la barra de estado, justo encima del
botón New (Nuevo) en la parte inferior de la ventana de Machine
Learning Studio.
Para ver un ejemplo del código JSON devuelto, haga clic en el
botón Details (Detalles). Verá los valores que ha escrito y dos valores
adicionales. Se trata de las evaluaciones del modelo de la eficiencia
energética para los valores especificados.
16
EJERCICIO:
VISUALIZACIÓN DE LOS
ENCABEZADOS Y EL
CÓDIGO DE EJEMPLO
Los clientes consumen el servicio web del experimento mediante
llamadas a la API RESTful. Azure Machine Learning Studio proporciona
información de encabezado de ejemplo en la que se muestra cómo
llamar al servicio web.
Visualización de los encabezados de solicitud y respuesta
17
1. En API Help Page for the Default Endpoint (Página de Ayuda
de API del punto de conexión predeterminado), haga clic en el
vínculo Request/Response. Azure Machine Learning Studio
abre otra pestaña o ventana del explorador para mostrar la
documentación de API de este servicio web.
2. Desplácese hacia abajo hasta Request Headers (Encabezados
de solicitud) y Request Body (Cuerpo de la solicitud) para
hacerse una idea de cómo se formará la solicitud. Esta solicitud
se enviará al servicio web para su evaluación. Está en formato
JSON.
3. Desplácese más abajo y evalúe el ejemplo de Response
Headers y Response Body. En esta sección se muestra el
formato de los datos que se devolverán junto con un ejemplo
de respuesta de JSON. Use este ejemplo para obtener
información sobre cómo analizar el código JSON de los datos
que quiere usar en la aplicación.
4. Desplácese más abajo para encontrar información sobre los
parámetros de entrada y salida. Estos parámetros incluyen los
tipos de datos y nombres esperados. Si crea una clase para
representar la información devuelta, puede usar estos
parámetros a fin de crear los tipos de datos adecuados para las
variables miembro. Los dos últimos elementos devueltos
asignan un valor Media de etiqueta puntuada a un
valor Desviación estándar de etiqueta puntuada.
Evaluación del código de ejemplo
18 Usará el código de ejemplo como una referencia o base para crear una
aplicación cliente en la que se consumirá el servicio web para el
experimento. Revise el código para ver cómo crear la solicitud y
consumir la respuesta de la aplicación.
Sugerencia
La entrada Sample Code (Código de ejemplo) contiene ejemplos en
C#, Python y R.
Para ver el código de ejemplo:
1. Desplácese hasta la parte inferior de la ventana de
documentación de la API del servicio web.
2. Haga clic en la pestaña del lenguaje con el que esté más
familiarizado. Después, revise el código para ver lo que hace.
3. Observe el marcador de posición de la clave de API. Tiene que
reemplazar el valor abc123 por una clave de API válida.
19
Ventajas del uso de Azure para almacenar datos
Estas son algunas de las principales ventajas del almacenamiento de
datos de Azure:
• Copia de seguridad y recuperación automatizadas: reduce el
riesgo de perder datos si se produce algún error o interrupción
imprevistos.
• Replicación en todo el mundo: copia los datos para
protegerlos contra cualquier evento planeado o no planeado,
como el mantenimiento programado o errores de hardware.
Los datos se pueden replicar en varias ubicaciones del mundo.
• Compatibilidad con el análisis de datos: admite el análisis del
1 consumo de datos.
• Capacidades de cifrado: los datos se cifran para dotarlos de
una seguridad muy elevada; también se tiene un control
estricto sobre quién puede acceder a ellos.
• Varios tipos de datos: Azure puede almacenar prácticamente
cualquier tipo de datos que necesite. Puede controlar archivos
de vídeo, archivos de texto e incluso grandes archivos binarios,
como discos duros virtuales. También tiene muchas opciones
para los datos relacionales y NoSQL.
• Almacenamiento de datos en discos virtuales: Azure también
tiene la capacidad de almacenar hasta 32 TB de datos en sus
discos virtuales, lo que resulta de gran ayuda al almacenar
grandes cantidades de datos, como simulaciones y vídeos.
• Niveles de almacenamiento: niveles de almacenamiento para
dar prioridad al acceso a los datos en función de la frecuencia
de uso.
Tipos de datos
Azure Storage está diseñado para contener tres tipos principales de
datos.
1. Datos estructurados. Los datos estructurados son datos que
se ajustan a un esquema, por lo que todos los datos tienen los
mismos campos o propiedades. Los datos estructurados se
pueden almacenar en una tabla de base de datos con filas y
columnas. Los datos estructurados se basan en claves para
indicar cómo se relaciona una fila de una tabla con los datos de
2 otra fila de otra tabla. Los datos estructurados también se
conocen como datos relacionales, ya que el esquema define la
tabla de datos, los campos de la tabla y la relación inequívoca
entre los dos. Los datos estructurados son sencillos porque son
fáciles de escribir, consultar y analizar. Todos los datos siguen
el mismo formato. Algunos ejemplos de datos estructurados
son los datos de sensor o los datos financieros.
2. Datos semiestructurados. Los datos semiestructurados no
encajan fácilmente en tablas, filas ni columnas. Por el contrario,
los datos semiestructurados usan etiquetas o claves que los
organizan y les proporcionan una jerarquía. Los datos
semiestructurados también se conocen como datos no
relacionales o NoSQL.
3. Datos no estructurados. Los datos no estructurados abarcan
aquellos sin una estructura designada. Esta falta de estructura
también significa que no hay ninguna restricción sobre los tipos
de datos que pueden contener. Por ejemplo, un blob puede
contener un documento PDF, una imagen JPG, un archivo JSON,
contenido de vídeo, etc. Por lo tanto, los datos no estructurados
cobran más importancia a medida que las empresas intentan
aprovechar los nuevos orígenes de datos.
3
CÓMO PUEDE EL
ALMACENAMIENTO DE
DATOS DE AZURE
SATISFACER LAS
NECESIDADES
EMPRESARIALES DE
ALMACENAMIENTO
Al examinar las ventajas del almacenamiento de datos de Azure, se
4
puede observar que ofrece las mejores opciones para almacenar el
portal de aprendizaje. Ahora vamos a explorar en detalle las ventajas y
las opciones para ver cómo se adapta a sus necesidades empresariales.
Cómo puede el almacenamiento de datos de Azure satisfacer sus
necesidades empresariales de almacenamiento
Azure ofrece varias opciones de almacenamiento que se adaptan a
tipos concretos de necesidades de almacenamiento de datos.
Azure SQL Database
Azure SQL Database es una base de datos como servicio (DaaS)
relacional basada en la última versión estable del motor de base de
5
datos de Microsoft SQL Server. SQL Database es una base de datos de
alto rendimiento, confiable, totalmente administrada y segura. Puede
usarla para compilar aplicaciones y sitios web controlados por datos en
el lenguaje de programación que prefiera sin necesidad de administrar
infraestructura.
Puede migrar las bases de datos existentes de SQL Server con un
tiempo de inactividad mínimo mediante Azure Database Migration
Service. El servicio usa Microsoft Data Migration Assistant para generar
informes de evaluación que proporcionan recomendaciones para
ayudarlo a través de los cambios necesarios anteriores a la ejecución
de una migración. Una vez evaluada y aplicada cualquier corrección
necesaria, está listo para comenzar el proceso de migración. Azure
Database Migration Service realiza todos los pasos necesarios. El
usuario solo tiene que cambiar la cadena de conexión en las
aplicaciones.
La ilustración siguiente muestra los tipos de datos del escenario del
portal de aprendizaje en línea que se almacenarían en una instancia de
Azure SQL Database.
6
Azure Cosmos DB
Azure Cosmos DB es un servicio de base de datos distribuido
globalmente. Es compatible con los datos sin esquema que permiten
compilar aplicaciones Always On con una gran capacidad de respuesta
para admitir datos en continuo cambio. Puede usar esta característica
para almacenar datos actualizados y mantenidos por usuarios de todo
el mundo. En la siguiente ilustración se muestra una base de datos de
Azure Cosmos DB de ejemplo que se usa para almacenar datos a los
que acceden personas de todo el mundo.
7
Azure Blob Storage
Azure Blob Storage es no estructurado, lo que significa que no hay
ninguna restricción en cuanto a los tipos de datos que puede contener.
8
Los blobs son altamente escalables y las aplicaciones trabajan con ellos
prácticamente de la misma manera en que lo hacen con los archivos
de un disco, como al leer y escribir datos. Blob Storage puede
administrar miles de cargas simultáneas, cantidades enormes de datos
de vídeo, archivos de registro en constante crecimiento y es accesible
desde cualquier lugar con conexión a Internet.
Los blobs no están limitados a formatos de archivo comunes. Un blob
podría contener gigabytes de datos binarios transmitidos desde un
instrumento científico, un mensaje cifrado para otra aplicación o datos
en un formato personalizado para una aplicación que se está
desarrollando.
Azure Blob Storage permite transmitir archivos grandes de vídeo o
audio directamente al explorador del usuario desde cualquier lugar del
mundo. Blob Storage también se usa para almacenar datos de copia
de seguridad, recuperación ante desastres y archivado. Tiene la
capacidad de almacenar hasta 8 TB de datos de máquinas virtuales. En
la siguiente ilustración se muestra un ejemplo de uso de Azure Blob
Storage.
Azure Data Lake Storage
La característica Data Lake permite realizar análisis sobre el uso de los
datos y preparar informes. Data Lake es un repositorio de gran tamaño
que almacena datos estructurados y no estructurados.
Azure Data Lake Storage combina la escalabilidad y la rentabilidad
del almacenamiento de objetos con la confiabilidad y el rendimiento
de las funcionalidades del sistema de archivos de macrodatos. En la
siguiente ilustración se muestra cómo Azure Data Lake almacena todos
los datos empresariales y hace que estén disponibles para el análisis.
10
Azure Files
Azure Files ofrece recursos compartidos de archivos totalmente
administrados en la nube a los que se puede acceder mediante el
protocolo estándar del sector Bloque de mensajes del servidor (SMB).
Los recursos compartidos de Azure se pueden montar
simultáneamente en implementaciones de Windows, Linux y macOS en
la nube o locales. Las aplicaciones que se ejecutan en máquinas
virtuales o servicios en la nube de Azure pueden montar un recurso
compartido de almacenamiento de archivos para acceder a datos de
archivos, del mismo modo que una aplicación de escritorio montaría
un recurso compartido SMB normal. Cualquier número de roles o
máquinas virtuales de Azure puede montar y acceder simultáneamente
al recurso compartido de almacenamiento de archivos. Los escenarios
de uso típicos serían el uso compartido de archivos en cualquier lugar
del mundo, los datos de diagnóstico o el uso compartido de datos de
aplicación.
La siguiente ilustración muestra el uso de Azure Files para compartir
datos entre dos ubicaciones geográficas. Azure Files usa el protocolo
de bloque de mensajes del servidor (SMB), que garantiza que los datos
11 se cifran en reposo y en tránsito.
Azure Queue
Azure Queue Storage es un servicio para almacenar grandes cantidades
de mensajes a los que se puede acceder desde cualquier lugar del
12
mundo.
Azure Queue Storage puede usarse para compilar aplicaciones flexibles
y funciones independientes con el fin de mejorar la durabilidad de las
cargas de trabajo grandes. Cuando se desacoplan los componentes de
la aplicación, se pueden escalar de forma independiente. Queue
Storage proporciona una puesta en cola de mensajes asincrónica para
la comunicación entre los componentes de las aplicaciones,
independientemente de si se ejecutan en la nube, en el escritorio, de
forma local o en dispositivos móviles.
Normalmente, hay uno o varios componentes de remitente y de
receptor. Los componentes de remitente agregan mensajes a la cola,
mientras que los componentes de receptor recuperan mensajes de la
parte delantera de la cola para procesarlos. En la ilustración siguiente
se muestran varias aplicaciones de remitente que agregan mensajes a
Azure Queue y una aplicación de receptor que recupera los mensajes.
Puede usar Queue Storage para:
Crear un trabajo pendiente y pasar mensajes entre distintos
servidores web de Azure.
Distribuir la carga entre diferentes servidores o infraestructuras
web y administrar picos de tráfico.
13
Aumentar la resistencia frente a errores de componentes
cuando varios usuarios acceden a los datos al mismo tiempo.
Disk Storage
Disk Storage proporciona discos para máquinas virtuales, aplicaciones
y otros servicios para que se acceda a ellos y se usen cuando sea
necesario, igual que se haría en escenarios locales. Disk Storage
permite que los datos se almacenen de forma persistente y que se
acceda a ellos desde un disco duro virtual conectado. Los discos
pueden ser administrados o no por Azure y, por lo tanto, administrados
y configurados por el usuario. Los escenarios típicos de uso de Disk
Storage son si quiere desplazar aplicaciones que leen y escriben datos
a discos persistentes o si va a almacenar los datos a los que no es
necesario acceder desde fuera de la máquina virtual a la que está
conectado el disco.
Los discos tienen diferentes tamaños y niveles de rendimiento, desde
14
unidades de estado sólido (SSD) a unidades de disco duro (HDD)
giratorias tradicionales, con diferentes capacidades de rendimiento.
Cuando se trabaja con máquinas virtuales, se pueden usar discos SSD
y HDD estándar para cargas de trabajo menos críticas y discos SSD
Premium para aplicaciones de producción críticas. Los discos de Azure
ofrecen durabilidad de nivel empresarial, con una tasa de error
anualizada del 0 %. En la siguiente ilustración se muestra una máquina
virtual de Azure con discos independientes para almacenar datos
diferentes.
15
Niveles de almacenamiento
Azure ofrece tres niveles de almacenamiento para el almacenamiento
de objetos de blob:
1. Nivel de almacenamiento de acceso frecuente: optimizado
para almacenar datos a los que se accede con frecuencia.
2. Nivel de almacenamiento de acceso esporádico: optimizado
para datos a los que se accede con poca frecuencia y que se
almacenan al menos durante 30 días.
3. Nivel de almacenamiento de archivo: para datos a los que
raramente se accede y que se almacenan durante al menos 180
días con requisitos de latencia flexibles.
16
Cifrado y replicación
Azure proporciona seguridad y alta disponibilidad para los datos
mediante características de cifrado y replicación.
Cifrado de servicios de almacenamiento
Los siguientes tipos de cifrado están disponibles para los recursos:
1. Azure Storage Service Encryption (SSE) para datos en reposo
ayuda a proteger los datos para satisfacer el cumplimiento de
seguridad y normativo de la organización. Cifra los datos antes
de almacenarlos y los descifra antes de recuperarlos. El cifrado
y descifrado son transparentes para el usuario.
2. Cifrado de cliente es donde los datos ya están cifrados
mediante las bibliotecas de cliente. Azure almacena los datos
en estado cifrado en reposo y luego los descifra durante la
recuperación.
Replicación para disponibilidad de almacenamiento
Se configura un tipo de replicación al crear una cuenta de
almacenamiento. La característica de replicación garantiza que los
datos sean duraderos y que estén siempre disponibles. Azure
proporciona replicaciones regionales y geográficas para proteger los
datos frente a desastres naturales y otros desastres locales, como
incendios o inundaciones.
17
COMPARACIÓN ENTRE EL
ALMACENAMIENTO DE
DATOS DE AZURE Y EL
ALMACENAMIENTO
LOCAL
Ahora que conoce las ventajas y las características del almacenamiento
de datos de Azure, veamos en qué se diferencia del almacenamiento
local.
18 El término "local" hace referencia al almacenamiento y mantenimiento
de los datos en servidores y hardware locales. Hay varios factores que
se deben tener en cuenta al comparar el almacenamiento de datos de
forma local con el de Azure.
Rentabilidad
Una solución de almacenamiento local necesita hardware dedicado
que se debe comprar, instalar, configurar y mantener. Este requisito
puede suponer un gasto inicial importante (o inversión de capital). Un
cambio de requisitos puede exigir la inversión en hardware nuevo. El
hardware debe ser capaz de controlar la máxima demanda, lo que
significa que puede permanecer inactivo o estar infrautilizado en horas
de poca actividad.
El almacenamiento de datos de Azure proporciona un modelo de
precios de pago por uso que suele resultar atractivo para las empresas
como un gasto operativo en lugar de una inversión de capital inicial.
También es escalable, lo que permite escalar horizontal o verticalmente
en función de lo que dicte la demanda y revertir el escalado cuando la
19
demanda sea baja. Los servicios de datos se cobran únicamente
cuando se necesitan.
Confiabilidad
El almacenamiento local necesita estrategias de copia de seguridad de
datos, equilibrio de carga y recuperación ante desastres. Estos
requisitos pueden ser complicados y costosos, ya que normalmente
cada uno necesita servidores dedicados que requieren una
considerable inversión en hardware y recursos de TI.
El almacenamiento de datos de Azure proporciona copia de seguridad
de datos, equilibrio de carga, recuperación ante desastres y replicación
de datos como servicios para garantizar la alta disponibilidad y la
seguridad de los datos.
20
Tipos de almacenamiento
En ocasiones, una solución requiere varios tipos de almacenamiento
diferentes, como el almacenamiento de archivos y bases de datos. Un
enfoque local a menudo requiere numerosos servidores y herramientas
administrativas para cada tipo de almacenamiento.
El almacenamiento de datos de Azure proporciona una serie de
opciones de almacenamiento diferentes, incluido el acceso distribuido
y el almacenamiento en niveles. Esta variedad permite integrar una
combinación de tecnologías de almacenamiento y proporciona la
mejor opción de almacenamiento para cada elemento de la solución.
21
Agilidad
Los requisitos y las tecnologías cambian. En una implementación local,
estos cambios pueden significar aprovisionar e implementar servidores
nuevos y elementos de infraestructura, una actividad costosa y que
puede llevar mucho tiempo.
El almacenamiento de datos de Azure ofrece la flexibilidad de crear
servicios en cuestión de minutos. Esta flexibilidad permite cambiar
rápidamente los back-end de almacenamiento sin necesidad de una
inversión considerable en hardware.
Comparación del almacenamiento local con el almacenamiento de
datos de Azure
La tabla siguiente describe las diferencias entre el almacenamiento
local y el almacenamiento de datos de Azure.
Necesidades Local Almacenamiento
de datos de Azure
Cumplimiento y Se necesitan Cifrado del lado
seguridad servidores dedicados cliente y cifrado en
para la privacidad y reposo
la seguridad
Almacenamiento de Se necesitan recursos Azure Data Lake y el
datos estructurados de TI adicionales con portal analizan y
22
y no estructurados servidores dedicados administran todos
los tipos de datos
Replicación y alta Se necesitan más Características de
disponibilidad recursos, licencias y replicación y
servidores redundancia
integradas
disponibles
Uso compartido de El uso compartido de Opciones de uso
aplicaciones y acceso archivos requiere compartido de
a recursos recursos de archivos disponibles
compartidos administración sin licencia adicional
adicionales
Almacenamiento de Necesita un servidor Ofrece opciones de
datos relacional de bases de datos base de datos como
con el rol de servicio
administrador de
base de datos
Almacenamiento Se necesitan recursos Azure Cosmos DB
distribuido y acceso de proceso, redes y proporciona acceso
a datos almacenamiento distribuido
caros
Mensajería y La redundancia de La cola de Azure
equilibrio de carga hardware afecta al proporciona un
presupuesto y a los equilibrio de carga
23 recursos eficaz
Almacenamiento en La administración del Azure ofrece
capas almacenamiento en almacenamiento de
capas necesita una datos en capas
tecnología y un automatizado
conjunto de
aptitudes del
personal
RESUMEN
En este módulo, se han explorado las ventajas de usar Azure para
almacenar los datos. Azure proporciona las siguientes características:
• Almacenamiento de datos estructurados y no estructurados
• Alta seguridad compatible con los estándares de cumplimiento
globales
• Funcionalidades de equilibrio de carga, alta disponibilidad y
redundancia
• Posibilidad de enviar grandes volúmenes de datos
directamente en el explorador mediante características como
Azure Blob Storage
24
Por último, las funcionalidades de almacenamiento de datos de Azure
la convierten en una plataforma ideal para hospedar cualquier
aplicación o portal grande de ámbito global.
Nube pública
Este es el modelo de implementación más común. En este caso, no
tiene que administrar ni mantener actualizado ningún hardware local,
todo se ejecuta en el hardware de su proveedor de servicios en la nube.
En algunos casos, puede ahorrar costos adicionales mediante el uso
compartido de los recursos informáticos con otros usuarios de la nube.
Las empresas pueden usar varios proveedores de servicios en la nube
pública de diferentes escalas. Microsoft Azure es un ejemplo de
proveedor de servicios en la nube pública.
Ventajas
• Alta escalabilidad y agilidad: no tiene que comprar un servidor
1
nuevo cuando sea necesario escalar.
• Precios de pago por uso: solo paga por lo que usa, sin costos
de gastos de capital.
• No debe ocuparse del mantenimiento ni de las actualizaciones
del hardware.
• Conocimientos técnicos mínimos para la configuración y el uso:
puede aprovechar las aptitudes y la experiencia del proveedor
de servicios en la nube para asegurarse de que las cargas de
trabajo sean seguras, estén protegidas y tengan alta
disponibilidad.
Un escenario de caso de uso común es la implementación de una
aplicación web o de un blog sobre hardware y recursos que son
propiedad de un proveedor de servicios en la nube. Usar una nube
pública en este escenario permite a los usuarios de servicios en la nube
poner en marcha rápidamente su sitio web o blog para poder pasar a
centrarse en el mantenimiento del sitio sin tener que preocuparse por
la compra, la administración o el mantenimiento del hardware en el
que se ejecuta.
Desventajas
No todos los escenarios se ajustan a la nube pública. También hay
algunas desventajas que hay que tener en cuenta:
• Puede haber requisitos de seguridad específicos que el uso de
la nube pública no puede satisfacer.
• Puede haber directivas gubernamentales, estándares del sector
o requisitos legales que el uso de la nube pública no puede
2 cumplir.
• El hardware o los servicios no son de su propiedad y no puede
administrarlos como querría.
• Puede ser difícil cumplir requisitos exclusivos de una empresa,
como mantener una aplicación heredada.
Nube privada
En una nube privada, se crea un entorno de nube en su propio centro
de datos y se proporciona acceso de autoservicio a los recursos de
proceso a los usuarios de la organización. Esto ofrece una simulación
de una nube pública a los usuarios, pero sigue siendo completamente
responsable de la compra y del mantenimiento de los servicios de
hardware y software que proporciona.
Ventajas
Este enfoque tiene varias ventajas:
• Puede garantizar que la configuración pueda admitir cualquier
escenario o aplicación heredada.
• Tiene el control y la responsabilidad de la seguridad.
• Las nubes privadas pueden satisfacer estrictos requisitos de
seguridad, cumplimiento o normativas.
Desventajas
Algunos motivos por los que los equipos se alejan de la nube privada
son:
• El usuario tiene que hacerse cargo de los costos incluidos en los
3 gastos de capital y debe comprar el hardware para la puesta en
marcha y el mantenimiento.
• Ser propietario del equipo limita la agilidad; para escalar debe
comprar, instalar y configurar nuevo hardware.
• Para utilizar nubes privadas se requieren aptitudes y
conocimientos de TI difíciles de obtener.
Un caso de uso en el que convendría utilizar una nube privada sería el
de una organización con datos que no se pudieran subir a la nube
pública, por posibles cuestiones legales. Otro ejemplo sería el de una
directiva gubernamental que exige conservar determinados datos
dentro del país o de forma privada.
Una nube privada también puede proporcionar funcionalidad en la
nube a clientes externos o a departamentos internos específicos, como
Contabilidad o RR. HH.
Nube híbrida
Una nube híbrida combina las nubes pública y privada, lo que permite
ejecutar las aplicaciones en la ubicación más adecuada. Por ejemplo,
podría hospedar un sitio web en la nube pública y vincularlo a una base
de datos muy segura hospedada en la nube privada (o el centro de
datos local).
Esto resulta útil cuando tiene algunas cosas que no se pueden poner
en la nube, posiblemente por motivos legales. Por ejemplo, puede ser
4
que tenga información concreta que no se pueda exponer
públicamente (como datos médicos) y que deba conservarse en su
centro de datos privado. Otro ejemplo es una o varias aplicaciones que
se ejecutan en hardware antiguo que no se puede actualizar. En este
caso, puede mantener el sistema antiguo ejecutándose de forma local
y conectarlo a la nube pública para la autorización o el
almacenamiento.
Ventajas
Estas son algunas de las ventajas de la nube híbrida:
• Cualquier sistema que use hardware desactualizado o un
sistema operativo desactualizado se puede mantener en
funcionamiento y accesible.
• Tiene la flexibilidad de escoger lo que se ejecuta localmente y
lo que se ejecuta en la nube.
• Puede aprovechar las economías de escala de los proveedores
de servicios en la nube pública para servicios y recursos siempre
que sea más económico, y complementar con su propio
equipamiento cuando no lo sea.
• Puede usar su propio equipamiento para cumplir con los
requisitos de seguridad, cumplimiento o normativa necesarios
para controlar completamente el entorno.
Desventajas
Algunos problemas con los que debe tener cuidado son los siguientes:
• Puede ser más costoso que seleccionar un modelo de
5 implementación, ya que implica los costos por adelantado de
los gastos de capital.
• Puede ser más complicado de configurar y administrar.
• Resumen
La informática en la nube es flexible y le ofrece la posibilidad
de elegir cómo quiere implementarla. El modelo de
6 implementación en la nube que elija depende del presupuesto
y de las necesidades de seguridad, escalabilidad y
mantenimiento..
TIPOS DE SERVICIOS EN
LA NUBE
Cuando hablamos de la informática en la nube, existen tres categorías
principales. Es importante conocerlas, ya que se usan en la
conversación, la documentación y el aprendizaje.
Exploración de las tres categorías de informática en la nube
Comparación entre IaaS, SaaS y PaaS
Infraestructura como servicio (IaaS)
7 Infraestructura como servicio es la categoría más flexible de servicios
en la nube. Su objetivo es ofrecerle un control completo sobre el
hardware que ejecuta su aplicación (servidores de infraestructura de TI
y máquinas virtuales (VM), almacenamiento, redes y sistemas
operativos). En vez de comprar hardware, con IaaS, se alquila. Se trata
de una infraestructura informática que se aprovisiona y administra a
través de Internet.
Nota
Al utilizar IaaS, garantizar que un servicio está activo y en
funcionamiento es una responsabilidad compartida: el proveedor de
servicios en la nube es el responsable de garantizar que la
infraestructura en la nube funcione correctamente; el cliente del
servicio en la nube es responsable de garantizar que el servicio que
está utilizando esté bien configurado, actualizado y disponible para sus
clientes. Esto se conoce como el modelo de responsabilidad
compartida.
IaaS se acostumbra a usar en las situaciones siguientes:
Migración de cargas de trabajo. Normalmente, las instalaciones
de IaaS se administran de forma similar a la infraestructura local
y proporcionan una ruta de migración sencilla para trasladar las
aplicaciones existentes a la nube.
Pruebas y desarrollo. Los equipos pueden configurar y
desmantelar rápidamente los entornos de desarrollo y pruebas,
lo que les permite introducir aplicaciones nuevas al mercado
con mayor rapidez. IaaS facilita el desarrollo del escalado y los
entornos de pruebas de una forma rápida y económica.
8
Almacenamiento, copia de seguridad y recuperación. Las
organizaciones evitan el desembolso de capital y la
complejidad que supone la administración de almacenamiento,
para la que normalmente se requiere personal capacitado que
administre los datos y cumpla los requisitos legales y de
cumplimiento. IaaS es útil para administrar la demanda
impredecible y las necesidades de almacenamiento en
constante crecimiento. IaaS también puede simplificar la
planificación y administración de sistemas de copia de
seguridad y recuperación.
Plataforma como servicio (PaaS)
PaaS proporciona un entorno para compilar, probar e implementar
aplicaciones de software. El objetivo de PaaS es ayudarle a crear una
aplicación rápidamente sin tener que administrar la infraestructura
subyacente. Por ejemplo, al implementar una aplicación web con PaaS,
no tiene que instalar un sistema operativo o un servidor web, ni
tampoco actualizaciones del sistema.
PaaS es un entorno de desarrollo e implementación completo en la
nube, con recursos que permiten a las organizaciones ofrecerlo todo,
desde sencillas aplicaciones basadas en la nube hasta sofisticadas
aplicaciones empresariales habilitadas para la nube. Puede adquirir los
recursos de un proveedor de servicios en la nube con el método de
pago por uso y acceder a ellos a través de una conexión segura a
Internet.
PaaS se acostumbra a usar en las situaciones siguientes:
9 Plataforma de desarrollo. PaaS ofrece una plataforma que los
desarrolladores pueden usar para desarrollar o personalizar
aplicaciones basadas en la nube. Al igual que una macro de
Microsoft Excel, PaaS permite que los desarrolladores creen
aplicaciones a través de componentes de software integrados.
Se incluyen características de la nube, como escalabilidad, alta
disponibilidad y funcionalidad multiinquilino, lo que permite
reducir la cantidad de codificación que deben realizar los
desarrolladores.
Analytics o inteligencia empresarial. Las herramientas que se
proporcionan como un servicio con PaaS permiten a las
organizaciones analizar y extraer sus datos. Así, pueden
encontrar información y patrones, y predecir resultados para
mejorar las decisiones empresariales, como las previsiones, el
diseño de productos y el retorno de la inversión.
Software como servicio (SaaS)
SaaS es software que se hospeda y administra de forma centralizada
para el cliente final. Normalmente se basa en una arquitectura donde
se usa una versión de la aplicación para todos los clientes y la licencia
se obtiene a través de una suscripción mensual o anual. Office 365,
Skype y Dynamics CRM Online son ejemplos perfectos de software de
SaaS.
Costo y propiedad
IaaS PaaS SaaS
Costos No hay costos No hay costos Los usuarios no
10 iniciales iniciales. Los iniciales. Los tienen ningún
usuarios solo usuarios solo costo inicial, sino
pagan por lo pagan por lo que pagan una
que consumen que suscripción,
consumen. normalmente de
forma mensual o
anual.
Propiedad El usuario es El usuario es Los usuarios solo
del responsable de responsable usan el software de
usuario la compra, del desarrollo la aplicación, pero
instalación, de sus propias no son
configuración y aplicaciones, responsables de la
administración pero no es administración o
de sus propios responsable
software, de administrar del mantenimiento
sistemas la de dicho software.
operativos, infraestructura
middleware y ni el servidor.
aplicaciones. Esto permite al
usuario
centrarse en la
aplicación o
carga de
trabajo que
quiere
ejecutar.
Propiedad El proveedor de El proveedor El proveedor de
11 del servicios en la de servicios en servicios en la
proveedor nube es la nube es nube es
de responsable de responsable responsable del
servicios garantizar que el de la aprovisionamiento,
en la nube usuario tiene a administración la administración y
su disposición la del sistema el mantenimiento
infraestructura operativo y de del software de la
en la nube la aplicación.
subyacente (por configuración
ejemplo, las de red y del
máquinas servicio. Los
virtuales, el proveedores
almacenamiento de servicios en
y las redes). la nube
acostumbran a
ser los
responsables
de todo, a
excepción de
la aplicación
que el usuario
quiere
ejecutar.
Proporcionan
una completa
plataforma
administrada
en la que se va
12
a ejecutar la
aplicación.
Responsabilidades de administración
Un aspecto que debe entender es que estas categorías son capas,
superpuestas unas sobre otras. Por ejemplo, PaaS agrega una capa
sobre IaaS, al proporcionar un nivel de abstracción. La abstracción tiene
la ventaja de ocultar los detalles sobre los cuales no es necesario
preocuparse, para poder empezar a codificar más rápido. Pero un
aspecto de la abstracción es que se tiene menos control sobre el
hardware subyacente. La siguiente ilustración muestra una lista de
recursos que usted administra y que administra el proveedor de
servicios en cada categoría de servicio en la nube.
Ilustración en la que se muestra el nivel de abstracción en cada
categoría de servicio en la nube.
IaaS es la infraestructura que requiere una mayor
administración por parte de los usuarios de todos los
servicios en la nube. El usuario es responsable de
administrar los sistemas operativos, datos y aplicaciones.
PaaS requiere menos administración por parte del usuario.
El proveedor de servicios en la nube administra los sistemas
operativos y el usuario es responsable de las aplicaciones y
los datos que ejecuta y almacena.
SaaS es la infraestructura que requiere una menor
administración por parte del usuario. El proveedor de
servicios en la nube es responsable de administrarlo todo y
13 el usuario final simplemente usa el software.
Combinación de servicios en la nube para satisfacer sus
necesidades
IaaS, PaaS y SaaS contienen distintos niveles de servicios
administrados. Puede usar fácilmente una combinación de estos tipos
de infraestructura. Podría usar Office 365 en los equipos de la empresa
(SaaS), hospedar en Azure las máquinas virtuales (IaaS) y usar Azure
SQL Database (PaaS) para almacenar los datos. Con la flexibilidad de la
nube, puede usar cualquier combinación que le proporcione el máximo
resultado.
1
Compilación de un bot de
chat de Preguntas más
frecuentes con QnA Maker y
Azure Bot Service
BIENVENIDA
Información sobre QnA Maker y su integración con un bot
En este módulo:
• Aprenderá lo que es QnA Maker.
• Obtendrá información sobre las características clave de QnA
Maker y sobre cómo crear una base de conocimiento.
• Publicará una base de conocimiento de QnA Maker.
• Integrará una base de conocimiento con un bot.
2 Requisitos previos
Ninguno
Introducción 1 min
Información general sobre QnA Maker 4 min
Ejercicio: Creación de una base de conocimientos de QnA 15
min
Ejercicio: Publicación de una base de conocimientos 5 min
Ejercicio: Integración de QnA con un bot 15 min
Prueba de conocimientos 7 min
Resumen 1 min
INTRODUCCIÓN
Un bot es un programa autónomo que interactúa con personas o con
equipos de forma previsible. El creador del bot diseña y programa la
lógica subyacente, a menudo con la ayuda de herramientas como
Microsoft Bot Framework. Microsoft también dispone de otros servicios
de inteligencia artificial, incluidos en Azure Cognitive Services, que
pueden mejorar las funcionalidades de los bots.
3
QnA Maker es uno de los servicios de inteligencia artificial que ayudan
a un bot a responder a preguntas en el lenguaje natural de los usuarios,
para lo que las hace coincidir con la mejor respuesta posible de la base
de conocimientos.
Nota
Este módulo requiere una suscripción de Azure. Los servicios que cree
y use son gratuitos, pero necesitará una suscripción activa o una
versión de prueba para completar los ejercicios. Si no tiene una
suscripción a Azure, cree una cuenta gratuita antes de empezar.
Objetivos de aprendizaje
En este módulo hará lo siguiente:
• Aprenderá lo que es QnA Maker.
• Obtendrá información sobre las características clave de QnA
Maker y sobre cómo crear una base de conocimiento.
• Publicará una base de conocimiento de QnA Maker.
• Integrará una base de conocimiento con un bot.
Siguiente unidad: Información general sobre QnA Maker
4
INFORMACIÓN GENERAL
SOBRE QNA MAKER
Una forma de mejorar la satisfacción de los clientes consiste en
ayudarles a encontrar rápidamente una respuesta a sus preguntas. La
información que buscan puede encontrarse en las Preguntas más
frecuentes (P+F), en la documentación de soporte técnico o en los
manuales de productos.
Las páginas de búsqueda pueden ser útiles, pero muchas
organizaciones prefieren un sistema que ofrezca una interacción más
personal con los clientes, pero sin dejar de usar mecanismos
5 automatizados. El servicio QnA Maker busca en la base de
conocimientos la respuesta que mejor se ajuste a la pregunta
formulada por el usuario en lenguaje natural. Para encontrar la
información que necesitan, los clientes pueden mantener una
conversación natural e interactiva con el servicio automatizado.
Para crear una base de conocimientos de QnA Maker, debe usar un
portal web. En el portal puede crear, administrar, entrenar y publicar su
servicio sin necesidad de tener ninguna experiencia como
desarrollador. Una vez que el servicio se publica en un punto de
conexión, una aplicación cliente como un bot de chat puede usar el
servicio para procesar una conversación con un usuario a fin de
determinar la pregunta que se ha hecho y ofrecer la mejor respuesta.
Arquitectura
Para entender los servicios que brinda QnA Maker, podemos observar
la arquitectura subyacente. Como ya se ha mencionado, se debe usar
un portal basado en web para crear la base de conocimientos. Este
portal forma parte de los servicios de administración de QnA Maker.
Los servicios de administración también proporcionan funciones para
la actualización, el entrenamiento y la publicación de la base de
conocimientos para su uso. También se pueden utilizar API basadas en
REST para administrar la base de conocimientos.
Después de crear y publicar la base de conocimientos, los datos de QnA
Maker y el runtime harán que el servicio esté disponible. Para acceder
al servicio, se usará la suscripción de Microsoft Azure en la región que
eligió durante el proceso de creación. El contenido que ha agregado a
la base de conocimientos se almacena en Azure Search y el punto de
6 conexión de acceso para las aplicaciones cliente se implementa como
un Azure App Service. Azure también permite la integración de
Application Insights en el servicio para fines de análisis.
Siguiente unidad: Creación de una base de conocimientos de QnA
7
EJERCICIO: CREACIÓN DE
UNA BASE DE
CONOCIMIENTOS DE
QNA
Vamos a crear una base de conocimientos (KB) de QnA Maker.
1. Vaya al portal de QnA Maker .
2. Haga clic en Iniciar sesión en la esquina superior derecha e
inicie sesión con sus credenciales de Azure.
8
3. A menos que ya tenga una base de conocimientos, el portal le
indicará que no tiene ninguna.
Hospedaje de una base de conocimientos
Una base de conocimientos es una colección de preguntas y respuestas
donde se pueden realizar búsquedas. Las bases de conocimientos se
hospedan en un servicio QnA, que se crea en Azure y determina la
región en la que colocará la base de conocimientos, así como
su facturación y rendimiento.
Nota
Se recomienda crear el servicio bot y el servicio QnA en la misma región
para conseguir un mayor rendimiento.
Creación de una base de conocimientos y un servicio QnA
1. En el menú ubicado en la parte superior del portal,
seleccione Create a knowledge base (Crear una base de
conocimiento).
2. Haga clic en Create a QnA service (Crear un servicio QnA). Al
seleccionar este botón, se abre Azure Portal e inicia la sesión
con las credenciales que usó anteriormente. Debe crear el
servicio QnA Maker y el servicio asociado de aplicación de
Azure que lo hospedará en este portal.
9
Nota
Antes de crear una base de conocimientos, cree también un servicio de
QnA Maker en Azure Portal.
Especificación de los detalles del servicio QnA Maker
Proporcione estos detalles para crear el servicio QnA Maker:
1. Escriba un nombre único global para el servicio QnA Maker,
como nombre-qna. Anote este nombre porque lo usará más
adelante.
2. Seleccione la suscripción de Azure.
3. Seleccione el plan de tarifa F0 para el servicio, que es el nivel
Gratis.
4. Seleccione una ubicación para el servicio, que debe estar en la
misma región que el servicio bot y cerca de su ubicación física.
5. Cree un grupo de recursos denominado LearnRG.
6. Seleccione F (tres índices), el nivel Gratis, en el plan de tarifa
de búsqueda.
7. Para la ubicación de búsqueda, seleccione la ubicación que usó
anteriormente.
8. Compruebe que el nombre de la aplicación es único en Azure.
(Si lo es, se indicará mediante una marca de verificación verde).
10
9. Seleccione la ubicación para el sitio web, que debe coincidir con
la ubicación que usó anteriormente.
10. Deshabilite App Insights, ya que no lo usará para esta prueba.
11. Haga clic en Crear.
Después de un breve proceso de implementación, se creará el recurso
para el servicio.
Conexión del servicio QnA Maker a la base de conocimientos
1. Vuelva a la pestaña del portal web de QnA Maker y actualice la
página.
2. La página se actualizará. Vaya al paso 2.
3. Las entradas del paso 2 no se habrán rellenado, pero aparecerá
un vínculo a la información de la cuenta.
4. Seleccione el identificador de directorio, el nombre de la
suscripción de Azure, así como el nombre del nuevo servicio
QnA que creó antes.
5. En el paso 3, asigne un nombre a la base de conocimientos.
Usaremos las Preguntas más frecuentes de Microsoft Bot, por
lo que puede asignarle el nombre BotFAQ.
Rellenar la base de conocimientos
Necesitamos algunos datos para nuestra base de conocimientos. Como
ejemplo, vamos a usar una página existente de Preguntas más
frecuentes.
11
1. Descargue el archivo ZIP de Preguntas más frecuentes de
Microsoft Bot y extráigalo en el equipo local.
2. En el paso 4 del proceso del portal web de QnA, haga clic
en Add file (Agregar archivo), busque el documento de Word
extraído en el paso anterior y agréguelo como origen para
rellenar la base de conocimientos.
3. En Chit-chat (Charla), seleccione The
Professional (Profesional) para agregar una personalidad
predefinida a la base de conocimientos. Chit-chat agrega
respuestas a mensajes como hola y adiós.
4. Haga clic en Create your KB (Crear la base de conocimientos).
Tras un breve tiempo, se creará la base de conocimientos y se cargará
la página de edición.
Probar la base de conocimientos
1. Para hacerse una idea de la manera en que un bot puede
responder a las preguntas, seleccione Probar en la esquina
superior derecha.
2. Se abre un panel de prueba, listo para la pregunta.
3. Escriba Hello y seleccione la tecla Entrar. QnA responderá con
un "Hello".
4. Escriba when will v3 retire? (¿Cuándo se retirará la versión 3?)
y pulse Entrar. QnA responderá con un mensaje sobre las
12 versiones y las actualizaciones de esa versión.
5. Escriba what is included in v4? (¿Qué incluye la versión 4?) y
presione Entrar. Lea la respuesta.
Para seguir probando la interacción, realice más preguntas y evalúe las
respuestas para hacerse una idea de cómo se sondea la base de
conocimientos de QnA en busca de respuestas.
Siguiente unidad: Ejercicio: Publicación de una base de conocimientos
EJERCICIO: PUBLICACIÓN
DE UNA BASE DE
CONOCIMIENTOS
Ahora que ya ha creado una base de conocimientos de QnA, es el
momento de publicarla para poder tener acceso a ella desde una
aplicación cliente.
1. En la página de la base de conocimientos de QnA Maker en la
que realizó las pruebas en el ejercicio anterior, haga clic
en PUBLICAR en el menú situado en la parte superior de la
página.
13
2. Lea el mensaje en la página siguiente. Indica que la base de
conocimientos pasará de pruebas a producción. También
señala que la base de conocimientos estará disponible como un
punto de conexión que puede usar en bots y aplicaciones.
3. Haga clic en Publicar.
4. Al poco tiempo aparecerá un mensaje de confirmación (si no se
producen errores).
5. Anote la información de la dirección URL que se muestra. Puede
usar la información proporcionada para probar la base de
conocimientos con Postman o Curl.
En caso necesario, puede hacer clic en Editar servicio para volver a la
base de conocimientos y realizar modificaciones.
Siguiente unidad: Ejercicio: Integración de QnA con un bot
14
EJERCICIO: INTEGRACIÓN
DE QNA CON UN BOT
Ahora que ha creado y publicado una base de conocimientos de QnA,
es el momento de aprender a integrarla con un bot. En este ejercicio,
creará un bot de chat en Azure Portal para integrarlo con la base de
conocimientos de QnA Maker que creó anteriormente.
1. En el portal de QnA Maker, vaya a la página Publish (Publicar) y
publique la base de conocimiento si no se ha publicado todavía.
2. Seleccione Create Bot (Crear bot). Se abre Azure Portal con la
configuración de la creación del bot.
15
3. Especifique la configuración para crear el bot:
1. Asigne un nombre adecuado a su bot.
2. Elija el servicio de suscripción que ha usado en este
curso.
3. Seleccione el grupo de recursos apropiado.
4. Elija la ubicación del bot. Recuerde que es mejor usar la
misma ubicación que el resto de los servicios.
5. Seleccione el plan de tarifa F0.
6. El nombre de la aplicación debería rellenarse de forma
automática.
7. Elija C# como lenguaje del SDK.
8. Deje los campos restantes con el valor predeterminado.
4. Haga clic en Crear. En unos minutos, debería crearse el bot.
Chat con el bot
1. En Azure Portal, abra el nuevo recurso de bot desde la
notificación.
2. Desde Bot management (Administración de bots), seleccione
Test in web chat (Probar en chat web) y pruebe el QnA haciendo
preguntas al bot.
16 Siguiente unidad: Prueba de conocimientos
RESUMEN
Ha hecho un gran avance en este módulo. QnA Maker es una manera
fácil de proporcionar respuestas a preguntas habituales mediante el
uso de documentos existentes o listas de preguntas más frecuentes. La
integración del servicio QnA Maker con un bot de chat puede ayudar
a los usuarios a interactuar más fácilmente con las listas de preguntas
más frecuentes de manera conversacional. De este modo, se evitan
tener que realizar búsquedas en documentos largos en un explorador.
Limpieza
Para evitar costes inesperados en la cuenta de Azure, elimine el grupo
de recursos LearnRG. De este modo, se eliminarán los recursos que ha
creado en este módulo. Estos son los pasos que se deben seguir:
17
1. Busque el grupo de recursos LearnRG. Haga clic en Grupos de
recursos en la barra lateral de Azure para encontrarlo
rápidamente.
2. Seleccione el grupo de recursos y haga clic con el botón
derecho en la fila, o bien use el botón de puntos suspensivos
(…) situado en el extremo derecho de la fila para abrir el menú.
3. Haga clic en Eliminar grupo de recursos.
4. Escriba el nombre del grupo de recursos y haga clic
en Eliminar. Azure quitará todos los recursos.
1
Creación de una cuenta de
Azure
BIENVENIDA
El primer paso para usar Azure es registrarse. Puede registrarse
directamente a través de [Link], con la ayuda de un representante
de Microsoft o a través de un partner. Si no está familiarizado con
Azure, puede registrarse para obtener una cuenta gratuita de Azure y,
de este modo, empezar a explorar con 200 USD de crédito gratuito,
además de poder acceder a servicios gratis.
En este módulo, aprenderá a:
2 Obtener información sobre las opciones de registro de Azure,
incluida la cuenta gratuita de Azure.
Crear una cuenta gratuita de Azure.
Comprender cómo funciona la facturación en Azure.
Obtener información sobre las distintas opciones de soporte
técnico.
Requisitos previos
Conocimiento de términos y conceptos básicos de informática
en la nube
Una tarjeta de crédito válida a fin de registrarse para obtener
una cuenta gratuita de Azure (opcional).
Introducción 2 min
Creación de una cuenta de Azure 4 min
Ejercicio: Creación de una cuenta de Azure 10 min
Descripción de la facturación de Azure 8 min
Opciones de soporte técnico de Azure 8 min
Prueba de conocimientos 2 min
Resumen 5 min
3
INTRODUCCIÓN
Para crear y usar los servicios de Azure, necesita una suscripción de
Azure. Al registrarse, se crea una suscripción de Azure para usted. Esta
permite compilar e implementar aplicaciones basadas en la nube, usar
sofisticados servicios de inteligencia artificial y extraer información
esencial de los datos.
Objetivos de aprendizaje
4
En este módulo, aprenderá a:
Obtener información sobre las opciones de registro de Azure,
incluida la cuenta gratuita de Azure.
Crear una cuenta gratuita de Azure.
Comprender cómo funciona la facturación en Azure.
Obtener información sobre las distintas opciones de soporte
técnico.
Requisitos previos
Conocimiento de términos y conceptos básicos de informática
en la nube. Una tarjeta de crédito válida a fin de registrarse para
obtener una cuenta gratuita de Azure (opcional).
CREACIÓN DE UNA
CUENTA DE AZURE
Para comprar Azure directamente desde Microsoft, regístrese en el
sitio web de Azure o hágalo a través de un representante de Microsoft.
También puede comprar Azure a través de un partner de Microsoft. Los
partners del Proveedor de soluciones en la nube ofrecen una amplia
gama de soluciones en la nube administradas y completas para Azure.
Si no está familiarizado con Azure, puede registrarse para obtener una
cuenta gratuita en el sitio web de Azure y, de este modo, empezar a
5
explorar sin costo alguno. Cuando esté listo, puede optar por actualizar
y comenzar a pagar por los servicios de Azure que superen las
cantidades gratuitas.
¿Qué es la cuenta gratuita de Azure?
La cuenta gratuita de Azure incluye acceso gratuito a productos
populares de Azure durante 12 meses, un crédito de 200 USD para
gastar durante los primeros 30 días y acceso a más de 25 productos
que siempre son gratuitos. Esta es una manera excelente para que los
nuevos usuarios empiecen y exploren. Para registrarse, necesita un
número de teléfono, una tarjeta de crédito y una cuenta de Microsoft
o de GitHub. La información de la tarjeta de crédito solo se usa para
comprobar su identidad. No se le cobrará por ningún servicio hasta
que actualice.
Opciones de compra de Azure
Con las opciones de compra flexibles, puede elegir la opción que mejor
funcione en su caso. Para comprar Azure, utilice una de las tres
opciones siguientes:
[Link]: comprar directamente a través de [Link] es la
forma más rápida y fácil que tienen las organizaciones de todos
los tamaños para empezar a usar Azure. Puede administrar las
implementaciones y el uso de Azure usted mismo y obtener una
factura mensual de Microsoft por los servicios usados.
Representante de Microsoft: la compra de Azure a través de un
representante de Microsoft está pensada para organizaciones
6 de gran tamaño o clientes que ya trabajan con uno. También
administrará las implementaciones y el uso de Azure usted
mismo y obtendrá una factura mensual de Microsoft por los
servicios usados.
Partner de Microsoft: si compra Azure como servicio
administrado a través de su partner, este le proporcionará
acceso a Azure, administrará la facturación y proporcionará
soporte técnico.
EJERCICIO: CREACIÓN DE
UNA CUENTA DE AZURE
Para crear y usar los servicios de Azure, en primer lugar necesita
registrarse. Si nunca ha probado o pagado Azure antes, puede
registrarse para obtener la cuenta gratuita de Azure.
Para crear la cuenta gratuita de Azure necesitará una tarjeta de crédito
válida. Esta tarjeta se usa solo para validar la identidad. Hasta que
decida actualizar no se le cobrará en la tarjeta.
Registro para obtener una cuenta gratuita
7
1. En un explorador web, vaya a [Link]
2. Desplácese hacia abajo por la página para obtener más
información sobre las ventajas y los servicios gratuitos
disponibles.
3. Seleccione Comenzar gratis.
4. Inicie sesión con sus credenciales de Microsoft o de GitHub, o
cree una cuenta gratuita de Microsoft.
5. En la página Acerca de usted, seleccione su país o región
correctos. Escriba su nombre y apellido, dirección de correo
electrónico y número de teléfono. En función del país, es
posible que aparezcan otros campos, como un número de IVA.
Seleccione Siguiente para continuar.
6. En la pantalla Verificación de identidad mediante teléfono,
seleccione el código de país y escriba un número de teléfono al
que tenga acceso inmediato.
7. Tiene dos opciones para obtener un código de verificación:
mediante el envío de un SMS o con una devolución de llamada.
Seleccione el botón apropiado, escriba el código en el
cuadro Código de verificación y seleccione Comprobar
código.
8. Si el código de verificación es correcto, se le pedirá que escriba
los detalles de una tarjeta de crédito válida. Escriba la
información de la tarjeta y seleccione Siguiente.
9. El último paso es revisar el contrato y la declaración de
8 privacidad y seleccionar Registrarse.
Enhorabuena. Ha configurado correctamente una cuenta gratuita y
debería estar en la página principal de Azure Portal.
DESCRIPCIÓN DE LA
FACTURACIÓN DE AZURE
Con Azure, solo paga por lo que usa. Recibirá una factura mensual con
las instrucciones de pago proporcionadas. Puede organizar la factura
en elementos de línea que tengan sentido para usted y cumplan sus
necesidades de presupuesto y de seguimiento de costos. También
puede realizar la configuración para varias facturas. Veamos cómo
funciona esto.
Suscripción de Azure
Al registrarse, se crea una suscripción de Azure de forma
9
predeterminada. Una suscripción de Azure es un contenedor lógico
que se usa para aprovisionar recursos en Azure. Contiene los detalles
de todos los recursos, como máquinas virtuales, bases de datos, etc.
Cuando se crea un recurso de Azure como una máquina virtual, se
identifica la suscripción a la que pertenece. A medida que se usa la
máquina virtual, el uso de esta se agrega y se factura mensualmente.
Creación de una suscripción de Azure adicional
Es posible que quiera crear suscripciones adicionales para fines de
administración de facturación o de recursos. Por ejemplo, puede optar
por crear suscripciones adicionales para separar lo siguiente:
Entornos: cuando administra sus recursos, puede optar por
crear suscripciones con el fin de configurar entornos
independientes para el desarrollo y las pruebas, para seguridad
o para aislar los datos por motivos de cumplimiento. Esto es
especialmente útil porque el control de acceso a los recursos se
produce en el nivel de suscripción.
Estructuras organizativas: puede crear suscripciones para
reflejar las distintas estructuras organizativas. Por ejemplo,
podría limitar un equipo a recursos de bajo costo, al tiempo que
permite que el departamento de TI tenga un alcance completo.
Este diseño permite administrar y controlar el acceso a los
recursos que los usuarios aprovisionan en cada suscripción.
Facturación: es posible que también quiera crear suscripciones
adicionales para fines de facturación. Dado que los costos se
agregan primero en el nivel de suscripción, es posible que
quiera crear suscripciones para administrar y realizar un
10
seguimiento de los costos en función de sus necesidades. Por
ejemplo, puede que quiera crear una suscripción para las cargas
de trabajo de producción y otra suscripción para las cargas de
trabajo de desarrollo y pruebas.
Es posible que también necesite suscripciones adicionales debido a lo
siguiente:
Límites de suscripción: las suscripciones se enlazan a algunas
limitaciones de hardware. Por ejemplo, el número máximo de
circuitos ExpressRoute por cada suscripción es de 10. Esos
límites se deben tener en consideración al crear suscripciones
en la cuenta. Si en escenarios concretos hay que superar esos
límites, es posible que se necesiten suscripciones adicionales.
Personalización de la facturación para satisfacer sus necesidades
Si tiene varias suscripciones, puede organizarlas en secciones de la
factura. Cada sección de la factura es un elemento de línea en la factura
que muestra los cargos en los que se incurre ese mes. Por ejemplo,
puede que necesite una única factura para la organización, pero quiere
organizar los cargos por departamento, equipo o proyecto.
En función de sus necesidades, se pueden configurar varias facturas
dentro de la misma cuenta de facturación. Para ello, cree perfiles de
facturación adicionales. Cada perfil de facturación contiene su propia
factura mensual y método de pago.
En el diagrama siguiente se muestra información general sobre cómo
se estructura la facturación. Si ya se ha suscrito a Azure o si su
11 organización tiene un Contrato Enterprise, la facturación podría estar
configurada de forma distinta.
OPCIONES DE SOPORTE
TÉCNICO DE AZURE
Si tiene preguntas sobre los servicios de Azure o tiene curiosidad
sobre sus capacidades, tenemos una serie de recursos que le ayudarán
a encontrar respuestas a sus preguntas. Echemos un vistazo a estos
recursos de soporte técnico.
Recursos gratuitos de soporte técnico de Azure
Tiene acceso ininterrumpido a la documentación en línea, el soporte
técnico de la comunidad y los nuevos vídeos de demostración de
capacidades de Azure en el canal de YouTube. Estos vídeos de
12
demostración, creados por ingenieros de Azure, están disponibles en
Azure Friday, Microsoft Mechanics y en las listas de reproducción de
vídeos de procedimientos de Azure Portal. Como cliente de Azure,
también están disponibles los siguientes recursos gratuitos de soporte
técnico.
Soporte técnico de administración de facturas y suscripciones
El Centro de inicio rápido de Azure es una experiencia guiada
en Azure Portal disponible para cualquier usuario que quiera
mejorar sus conocimientos de Azure.
Azure Service Health ofrece información sobre las incidencias
relacionadas con los servicios de Azure.
Azure Advisor ofrece recomendaciones personalizadas sobre
cómo optimizar el costo y el rendimiento.
Planes de soporte técnico de Azure
Azure ofrece a los clientes soporte técnico reactivo y proactivo. Elija el
plan de soporte técnico que mejor se adapte a sus necesidades. Puede
comprar el plan de soporte técnico en el sitio web de Azure o en
Azure Portal. Si trabaja con un asociado o representante de Microsoft,
puede comprar a través de ellos un plan de soporte técnico. Microsoft
también proporciona planes de soporte técnico que abarcan Azure,
Office 365 y Dynamics 365. Póngase en contacto con su representante
o asociado de Microsoft para que le proporcione información más
detallada.
13
Developer Standard Professional
Direct
Más Cargas de Cargas de Cargas de
adecuado trabajo no trabajo de trabajo
para críticas producción críticas para
la empresa
Soporte Respuesta en Respuesta en Respuesta en
técnico un día una hora una hora y
reactivo laborable para casos seguimiento
críticos prioritario de
casos críticos
Soporte No aplicable No aplicable Acceso a un
14
técnico grupo de
proactivo expertos
técnicos
Para obtener la lista completa, vea Planes de Soporte técnico de Azure.
Soporte técnico de la comunidad de Azure
Formule preguntas, obtenga respuestas y póngase en contacto con
ingenieros de Microsoft y expertos de la comunidad.
Canal Descripción
Centro de conocimientos de El Centro de conocimientos de
Azure Azure es una base de datos que
permite búsquedas y que
contiene respuestas a preguntas
comunes de soporte técnico.
Microsoft Tech Community Lea las respuestas a preguntas
técnicas sobre Azure de
desarrolladores y evaluadores de
Microsoft para recibir ayuda.
Stack Overflow Puede revisar las respuestas a
preguntas de la comunidad de
desarrollo.
Server Fault Revise las respuestas de la
comunidad a preguntas sobre
administración de sistemas y
15 redes de Azure.
Foro de comentarios de Azure Lea las ideas y sugerencias para
mejorar Azure realizadas por
usuarios de Azure.
Twitter Publique un tweet con
@AzureSupport para obtener
respuestas y soporte técnico del
canal oficial de Microsoft Azure
en Twitter.
1
Introducción a Azure IoT
Edge
BIENVENIDA
Explique las características esenciales de IoT Edge y la funcionalidad de
sus componentes (módulos, entorno de ejecución e interfaz en la
nube). Caracterice los tipos de problemas que puede resolver con IoT
Edge. Describa cómo se pueden combinar los elementos de IoT Edge
para solucionar el problema de la implementación de aplicaciones de
IoT en la nube.
En este módulo, aprenderá a:
2 Evaluar situaciones en las que IoT Edge puede ayudar en la
implementación de aplicaciones de IoT en la nube
Describir los componentes de IoT Edge
Enumerar las funciones de IoT Edge para las soluciones de IoT
en la nube
Requisitos previos
Conocimientos básicos de las aplicaciones IoT e IoT Hub
Introducción 2 min
¿Qué es IoT Edge? 5 min
Funcionamiento de IoT Edge 7 min
Cuándo se debe usar IoT Edge 8 min
Prueba de conocimientos 5 min
Resumen 2 min
3
INTRODUCCIÓN
La nube ha hecho que los costos de almacenamiento y proceso sean
asequibles para los desarrolladores de IoT. En el caso más simple, los
dispositivos IoT se conectan a la nube, donde conservan los datos de
IoT. Pero no siempre se pueden administrar todos los datos de IoT en
la nube. A menudo se necesitan tiempos de respuesta rápidos,
especialmente para aplicaciones críticas. Si almacena todos los datos
en la nube, el recorrido de ida y vuelta a la nube provocaría una latencia
alta y el aumento de los tiempos de respuesta.
Azure IoT Edge acerca la capacidad de proceso al origen de los datos,
4
es decir, a los dispositivos perimetrales. IoT Edge proporciona la
capacidad de trasladar las cargas de trabajo de la nube al perímetro. Al
hacerlo, IoT Edge supera los problemas de latencia y tiempos de
respuesta.
La capacidad de trasladar cargas de trabajo de procesos a dispositivos
perimetrales proporciona otras ventajas, como la implementación de
aplicaciones de inteligencia artificial en dispositivos perimetrales. Los
modelos de aprendizaje automático se pueden entrenar en la nube y
luego implementarse en dispositivos perimetrales. IoT Edge también
proporciona la capacidad de ejecutarse en modo sin conexión y
proporciona la seguridad subyacente para las operaciones confiables
en estos casos.
Imagine que es un médico especializado en el tratamiento de la
diabetes. Quiere supervisar el nivel de glucosa en sangre del paciente
y avisarle cuando los cambios sean preocupantes para su salud. En este
caso, el dispositivo IoT Edge supervisa el nivel de glucosa del paciente
y almacena los datos en el propio dispositivo. El dispositivo inserta los
datos resumidos del perímetro a la nube. Los algoritmos que se
ejecutan en el dispositivo ayudan a supervisar los cambios en los
niveles de glucosa, lo que podría dar lugar a un problema. Si los niveles
de glucosa son preocupantes, el médico recibe una alerta del algoritmo
que se ejecuta en el dispositivo IoT Edge. La alarma se puede generar
rápidamente en respuesta al cambio de los niveles de glucosa porque
el algoritmo se ejecuta en el dispositivo perimetral. Por tanto, no
5 necesita conectarse a la nube, con lo que se evita el recorrido de ida y
vuelta de los datos a la nube, es decir, el tiempo de latencia. Esta
notificación permite al médico responder al paciente de forma
inmediata. El dispositivo también se encarga de situaciones en las que
la conectividad es deficiente. Los datos se almacenan de forma segura
en el dispositivo.
6
Este módulo forma parte de la ruta de aprendizaje de ingeniería de
inteligencia artificial y dispositivos perimetrales. En este módulo se
exploran temas basados en ingeniería como la informática perimetral,
la seguridad y la implementación y administración a gran escala de
tiempos de respuesta en función de las restricciones del sistema y los
dispositivos.
Objetivos de aprendizaje
En este módulo, aprenderá a:
valuar situaciones en las que IoT Edge puede ayudar en la
implementación de aplicaciones de IoT en la nube
Describir los componentes de IoT Edge
Enumerar las funciones de IoT Edge para las soluciones de IoT
7
en la nube
Requisitos previos
Conocimientos básicos de las aplicaciones IoT e IoT Hub
¿Qué es IoT Edge?
Azure IoT Edge es una combinación de un servicio en la nube que se
ejecuta en la nube y un entorno de ejecución que se ejecuta en el
dispositivo. El entorno de ejecución inicia y administra los flujos de
trabajo en el dispositivo. El flujo de trabajo consta de un conjunto de
contenedores vinculados en un orden específico para crear un
escenario de un extremo a otro. La instancia de IoT Hub administra IoT
Edge. Azure IoT Edge permite ejecutar cargas de trabajo en el
dispositivo perimetral, que se desarrollan mediante servicios en la
nube. La carga de trabajo es un módulo implementado mediante
contenedores compatibles con Docker. Los módulos pueden ser
8
aplicaciones de inteligencia artificial, servicios de Azure y de terceros,
o la lógica de negocios.
IoT Edge le permite:
Reaccionar casi en tiempo real a los cambios locales: como puede
implementar algunas funcionales en el perímetro, el dispositivo dedica
menos tiempo a comunicarse con la nube. Por tanto, el dispositivo
puede reaccionar rápidamente a los cambios locales mediante el
procesamiento de los datos en el dispositivo y la reducción de la
latencia. Además, cuando los módulos se ejecutan de forma local,
pueden tener la opción de usar hardware especializado, como una
matriz de puerta programable de campo.
Administrar dispositivos perimetrales: IoT Edge proporciona una
interfaz en la nube y un módulo de entorno de ejecución, que permite
administrar de forma remota e implementar cargas de trabajo en
dispositivos perimetrales a través de la instancia de IoT Hub.
Implementar mediante contenedores: IoT Edge le permite usar
contenedores compatibles con Docker para ejecutar la lógica de
negocios en el perímetro.
Implementar con hardware seguro y certificado: IoT Edge permite
acceder a hardware de IoT Edge certificado en dispositivos Linux o
Windows que admiten motores de contenedor.
Distribuir cargas de trabajo de inteligencia artificial y análisis en el
perímetro: IoT Edge le permite implementar modelos creados y
9
entrenados en la nube y ejecutarlos en dispositivos perimetrales. IoT
Edge usa el modelo para procesar los datos de forma local y responder
al evento rápidamente.
Usar conjuntos de aptitudes y código de desarrollador
existentes: el código de IoT Edge admite lenguajes como C, C#, Java,
[Link] y Python.
Administrar datos para reducir costos: los dispositivos IoT Edge
capturan una gran cantidad de datos, pero normalmente solo necesita
una pequeña parte de esos datos para su análisis posterior. Si envía
todos los datos a la nube, el usuario incurrirá en costos de transporte
y almacenamiento. IoT Edge reduce los costos, ya que solo le permite
enviar un segmento de los datos según sea necesario. También puede
enviar datos agregados a la nube. El envío de datos agregados a la
nube reduce los costos generales de administración y transporte de los
datos mediante costos reducidos de almacenamiento y ancho de
banda.
Operar de forma confiable sin conexión o en modo intermitente: a
menudo, los dispositivos IoT necesitan trabajar con conectividad
intermitente o sin conexión con la nube. La funcionalidad de
administración de dispositivos IoT Edge sincroniza automáticamente el
estado más reciente de los dispositivos una vez que se han
reconectado a la nube para garantizar el funcionamiento sin
problemas.
Proporcionar seguridad para las implementaciones
perimetrales: IoT Edge proporciona seguridad de varias maneras. Al
10 trabajar con IoT Hub, se puede garantizar que solo los dispositivos
correctos se puedan comunicar entre sí y tengan instalado el software
adecuado. IoT Edge puede proporcionar seguridad adicional mediante
la integración con Azure Security Center. Además, IoT Edge puede
hacer uso de los módulos de seguridad de hardware disponibles para
proporcionar conexiones autenticadas seguras para la informática
confidencial.
Garantizar la privacidad para las implementaciones de IoT: IoT
Edge puede proteger los datos relacionados con las personas. Los
datos relacionados con las personas se pueden limpiar antes de
enviarlos a la nube, para ofrecer una mejor protección de la privacidad.
Al almacenar los datos de forma local, puede cumplir mejor las
regulaciones de seguridad, confidencialidad y privacidad.
Actuar como puerta de enlace: IoT Edge puede funcionar como
puerta de enlace de protocolo y, por tanto, proporcionar conectividad
y análisis perimetral a dispositivos IoT que, de lo contrario, no tendrían
estas funcionalidades.
Disponibilidad de módulos de terceros: puede usar módulos de
terceros de Azure Marketplace para reducir el tiempo de
comercialización y mejorar la solidez de la solución de software en el
perímetro.
11
Funcionamiento de IoT
Edge
Azure IoT Edge consta de tres componentes:
Los módulos de IoT Edge son unidades de ejecución implementadas
como contenedores compatibles con Docker. Los módulos de IoT Edge
pueden ejecutar lógica de negocios en los dispositivos perimetrales.
Los módulos de IoT Edge pueden ejecutar servicios de Azure, de
terceros o código propio. Se implementan en dispositivos IoT Edge y
se ejecutan de forma local en ellos. Puede configurar los módulos para
12
que se comuniquen entre sí a fin de crear una canalización para el
procesamiento de los datos. Si es necesario, los módulos se pueden
ejecutar sin conexión.
El entorno de ejecución de Azure IoT Edge se ejecuta en todos los
dispositivos IoT Edge y administra el entorno de ejecución y la
comunicación de los módulos implementados en cada dispositivo. El
entorno de ejecución de Azure IoT Edge garantiza que los módulos
siempre están en ejecución y notifica el estado del módulo a la nube.
El entorno de ejecución realiza varias funciones:
Instalación y actualización de cargas de trabajo
Mantenimiento de los estándares de seguridad de IoT Edge
Administración de la comunicación entre los dispositivos de
hoja de nivel inferior y el dispositivo IoT Edge
Administración de la comunicación entre los módulos de un
dispositivo IoT Edge y de las comunicaciones entre un
dispositivo IoT Edge y la nube.
La interfaz en la nube de IoT Edge permite supervisar y administrar
los dispositivos IoT Edge de forma remota. Si la solución ejecuta un
conjunto diverso de dispositivos a escala, puede crear y configurar una
carga de trabajo para que se ejecute en un tipo específico de
dispositivo. Después, tendrá que implementar la carga de trabajo en
un conjunto de dispositivos de ese tipo. Una vez que se ejecuten los
dispositivos, debe supervisar las cargas de trabajo de forma
13
centralizada. La interfaz en la nube de IoT Edge le permite administrar
este ciclo de vida global a escala para un conjunto diverso de
dispositivos, que podrían estar dispersos geográficamente.
Resulta difícil administrar el ciclo de vida de software de millones de
dispositivos IoT que, con frecuencia, tienen marcas y modelos
diferentes, o se encuentran en distintas ubicaciones. Las cargas de
trabajo se crean y configuran para un determinado tipo de dispositivo,
se implementan en todos los dispositivos y se supervisan para detectar
los comportamientos incorrectos de los dispositivos. Estas actividades
no se pueden realizar en cada dispositivo y deben realizarse a escala.
Considere el caso de la implementación de procesamiento de eventos
complejos o aprendizaje automático en dispositivos perimetrales. Si
quiere implementar aprendizaje automático en dispositivos
perimetrales, primero debe entrenar el modelo en la nube. Después de
entrenar el modelo, tendrá que implementar el modelo entrenado en
una amplia gama de dispositivos perimetrales a menudo separados
geográficamente. Una vez implementados, estos modelos se suelen
ejecutar sin conexión en el dispositivo. También tendrá que actualizar
el modelo de manera periódica. Al encapsular los modelos en
contenedores compatibles con Docker, IoT Edge puede administrar el
ciclo de implementación de un extremo a otro para el aprendizaje
automático en IoT. El entorno de ejecución de Azure IoT Edge y la
interfaz en la nube pueden supervisar el estado de los módulos de
aprendizaje automático.
Sin IoT Edge, el desarrollador tendría que crear la funcionalidad
agregada para el mantenimiento del módulo.
14
Cuándo se debe usar IoT
Edge
En esta sección, se explica cómo puede decidir si IoT Edge es la
solución adecuada para usted. El enfoque de la elección se realizará
desde la perspectiva de una gran empresa que planea una
implementación de IoT.
¿La aplicación necesita reaccionar rápidamente a
15
los cambios locales casi en tiempo real? IoT Edge
Respuesta casi en puede ejecutar módulos de forma local en
tiempo real a los dispositivos IoT Edge para permitir una respuesta
cambios locales más rápida a los cambios locales.
¿Es necesario implementar la aplicación en
contenedores compatibles con Docker en
dispositivos IoT Edge? IoT Edge permite usar
contenedores para ejecutar la lógica en IoT Edge.
Implementación y Los contenedores facilitan la administración de las
administración dependencias de software como los entornos de
mediante contenedores ejecución y las bibliotecas, lo que garantiza que la
para dispositivos IoT aplicación se ejecute de forma coherente donde se
Edge implemente.
La falta de seguridad para los dispositivos IoT es
una barrera importante para la entrada de muchas
empresas. IoT Edge proporciona seguridad de
varias maneras. Entre ellas se incluye la integración
Seguridad para las
con Azure Security Center y el uso de módulos de
implementaciones de
seguridad de hardware para proporcionar
IoT Edge
conexiones autenticadas seguras para la
informática confidencial.
¿La aplicación necesita funcionar con conectividad
intermitente o sin conexión? Los dispositivos IoT
Edge sincronizan automáticamente el estado más
Funcionamiento sin reciente de los dispositivos una vez que se han
16 conexión o en modo reconectado a la nube para garantizar el
intermitente funcionamiento sin problemas.
¿Necesita ejecutar algoritmos de aprendizaje
Cargas de trabajo de
automático en dispositivos IoT Edge? IoT Edge le
inteligencia artificial y
permite implementar modelos creados y
análisis en IoT Edge
entrenados en la nube y ejecutarlos en dispositivos
IoT Edge.
La administración de los costos en la
implementación de recursos en la nube es
fundamental. Puede diseñar el sistema de forma
que los datos enviados a la nube se reduzcan
Optimización de los mediante el procesamiento previo en los
costos de datos dispositivos IoT Edge.
¿Necesita garantizar el cumplimiento de las normas
Privacidad para las
de privacidad? IoT Edge puede proteger los datos
implementaciones de
de identificación personal y mantener los datos
IoT Edge
locales para de ese modo mejorar el cumplimiento
normativo.
17
1
Introducción a Azure IoT
Edge
BIENVENIDA
Explique las características esenciales de IoT Edge y la funcionalidad de
sus componentes (módulos, entorno de ejecución e interfaz en la
nube). Caracterice los tipos de problemas que puede resolver con IoT
Edge. Describa cómo se pueden combinar los elementos de IoT Edge
para solucionar el problema de la implementación de aplicaciones de
IoT en la nube.
En este módulo, aprenderá a:
2 Evaluar situaciones en las que IoT Edge puede ayudar en la
implementación de aplicaciones de IoT en la nube
Describir los componentes de IoT Edge
Enumerar las funciones de IoT Edge para las soluciones de IoT
en la nube
Requisitos previos
Conocimientos básicos de las aplicaciones IoT e IoT Hub
Introducción 2 min
¿Qué es IoT Edge? 5 min
Funcionamiento de IoT Edge 7 min
Cuándo se debe usar IoT Edge 8 min
Prueba de conocimientos 5 min
Resumen 2 min
3
INTRODUCCIÓN
La nube ha hecho que los costos de almacenamiento y proceso sean
asequibles para los desarrolladores de IoT. En el caso más simple, los
dispositivos IoT se conectan a la nube, donde conservan los datos de
IoT. Pero no siempre se pueden administrar todos los datos de IoT en
la nube. A menudo se necesitan tiempos de respuesta rápidos,
especialmente para aplicaciones críticas. Si almacena todos los datos
en la nube, el recorrido de ida y vuelta a la nube provocaría una latencia
alta y el aumento de los tiempos de respuesta.
Azure IoT Edge acerca la capacidad de proceso al origen de los datos,
4
es decir, a los dispositivos perimetrales. IoT Edge proporciona la
capacidad de trasladar las cargas de trabajo de la nube al perímetro. Al
hacerlo, IoT Edge supera los problemas de latencia y tiempos de
respuesta.
La capacidad de trasladar cargas de trabajo de procesos a dispositivos
perimetrales proporciona otras ventajas, como la implementación de
aplicaciones de inteligencia artificial en dispositivos perimetrales. Los
modelos de aprendizaje automático se pueden entrenar en la nube y
luego implementarse en dispositivos perimetrales. IoT Edge también
proporciona la capacidad de ejecutarse en modo sin conexión y
proporciona la seguridad subyacente para las operaciones confiables
en estos casos.
Imagine que es un médico especializado en el tratamiento de la
diabetes. Quiere supervisar el nivel de glucosa en sangre del paciente
y avisarle cuando los cambios sean preocupantes para su salud. En este
caso, el dispositivo IoT Edge supervisa el nivel de glucosa del paciente
y almacena los datos en el propio dispositivo. El dispositivo inserta los
datos resumidos del perímetro a la nube. Los algoritmos que se
ejecutan en el dispositivo ayudan a supervisar los cambios en los
niveles de glucosa, lo que podría dar lugar a un problema. Si los niveles
de glucosa son preocupantes, el médico recibe una alerta del algoritmo
que se ejecuta en el dispositivo IoT Edge. La alarma se puede generar
rápidamente en respuesta al cambio de los niveles de glucosa porque
el algoritmo se ejecuta en el dispositivo perimetral. Por tanto, no
5 necesita conectarse a la nube, con lo que se evita el recorrido de ida y
vuelta de los datos a la nube, es decir, el tiempo de latencia. Esta
notificación permite al médico responder al paciente de forma
inmediata. El dispositivo también se encarga de situaciones en las que
la conectividad es deficiente. Los datos se almacenan de forma segura
en el dispositivo.
6
Este módulo forma parte de la ruta de aprendizaje de ingeniería de
inteligencia artificial y dispositivos perimetrales. En este módulo se
exploran temas basados en ingeniería como la informática perimetral,
la seguridad y la implementación y administración a gran escala de
tiempos de respuesta en función de las restricciones del sistema y los
dispositivos.
Objetivos de aprendizaje
En este módulo, aprenderá a:
valuar situaciones en las que IoT Edge puede ayudar en la
implementación de aplicaciones de IoT en la nube
Describir los componentes de IoT Edge
Enumerar las funciones de IoT Edge para las soluciones de IoT
7
en la nube
Requisitos previos
Conocimientos básicos de las aplicaciones IoT e IoT Hub
¿Qué es IoT Edge?
Azure IoT Edge es una combinación de un servicio en la nube que se
ejecuta en la nube y un entorno de ejecución que se ejecuta en el
dispositivo. El entorno de ejecución inicia y administra los flujos de
trabajo en el dispositivo. El flujo de trabajo consta de un conjunto de
contenedores vinculados en un orden específico para crear un
escenario de un extremo a otro. La instancia de IoT Hub administra IoT
Edge. Azure IoT Edge permite ejecutar cargas de trabajo en el
dispositivo perimetral, que se desarrollan mediante servicios en la
nube. La carga de trabajo es un módulo implementado mediante
contenedores compatibles con Docker. Los módulos pueden ser
8
aplicaciones de inteligencia artificial, servicios de Azure y de terceros,
o la lógica de negocios.
IoT Edge le permite:
Reaccionar casi en tiempo real a los cambios locales: como puede
implementar algunas funcionales en el perímetro, el dispositivo dedica
menos tiempo a comunicarse con la nube. Por tanto, el dispositivo
puede reaccionar rápidamente a los cambios locales mediante el
procesamiento de los datos en el dispositivo y la reducción de la
latencia. Además, cuando los módulos se ejecutan de forma local,
pueden tener la opción de usar hardware especializado, como una
matriz de puerta programable de campo.
Administrar dispositivos perimetrales: IoT Edge proporciona una
interfaz en la nube y un módulo de entorno de ejecución, que permite
administrar de forma remota e implementar cargas de trabajo en
dispositivos perimetrales a través de la instancia de IoT Hub.
Implementar mediante contenedores: IoT Edge le permite usar
contenedores compatibles con Docker para ejecutar la lógica de
negocios en el perímetro.
Implementar con hardware seguro y certificado: IoT Edge permite
acceder a hardware de IoT Edge certificado en dispositivos Linux o
Windows que admiten motores de contenedor.
Distribuir cargas de trabajo de inteligencia artificial y análisis en el
perímetro: IoT Edge le permite implementar modelos creados y
9
entrenados en la nube y ejecutarlos en dispositivos perimetrales. IoT
Edge usa el modelo para procesar los datos de forma local y responder
al evento rápidamente.
Usar conjuntos de aptitudes y código de desarrollador
existentes: el código de IoT Edge admite lenguajes como C, C#, Java,
[Link] y Python.
Administrar datos para reducir costos: los dispositivos IoT Edge
capturan una gran cantidad de datos, pero normalmente solo necesita
una pequeña parte de esos datos para su análisis posterior. Si envía
todos los datos a la nube, el usuario incurrirá en costos de transporte
y almacenamiento. IoT Edge reduce los costos, ya que solo le permite
enviar un segmento de los datos según sea necesario. También puede
enviar datos agregados a la nube. El envío de datos agregados a la
nube reduce los costos generales de administración y transporte de los
datos mediante costos reducidos de almacenamiento y ancho de
banda.
Operar de forma confiable sin conexión o en modo intermitente: a
menudo, los dispositivos IoT necesitan trabajar con conectividad
intermitente o sin conexión con la nube. La funcionalidad de
administración de dispositivos IoT Edge sincroniza automáticamente el
estado más reciente de los dispositivos una vez que se han
reconectado a la nube para garantizar el funcionamiento sin
problemas.
Proporcionar seguridad para las implementaciones
perimetrales: IoT Edge proporciona seguridad de varias maneras. Al
10 trabajar con IoT Hub, se puede garantizar que solo los dispositivos
correctos se puedan comunicar entre sí y tengan instalado el software
adecuado. IoT Edge puede proporcionar seguridad adicional mediante
la integración con Azure Security Center. Además, IoT Edge puede
hacer uso de los módulos de seguridad de hardware disponibles para
proporcionar conexiones autenticadas seguras para la informática
confidencial.
Garantizar la privacidad para las implementaciones de IoT: IoT
Edge puede proteger los datos relacionados con las personas. Los
datos relacionados con las personas se pueden limpiar antes de
enviarlos a la nube, para ofrecer una mejor protección de la privacidad.
Al almacenar los datos de forma local, puede cumplir mejor las
regulaciones de seguridad, confidencialidad y privacidad.
Actuar como puerta de enlace: IoT Edge puede funcionar como
puerta de enlace de protocolo y, por tanto, proporcionar conectividad
y análisis perimetral a dispositivos IoT que, de lo contrario, no tendrían
estas funcionalidades.
Disponibilidad de módulos de terceros: puede usar módulos de
terceros de Azure Marketplace para reducir el tiempo de
comercialización y mejorar la solidez de la solución de software en el
perímetro.
11
Funcionamiento de IoT
Edge
Azure IoT Edge consta de tres componentes:
Los módulos de IoT Edge son unidades de ejecución implementadas
como contenedores compatibles con Docker. Los módulos de IoT Edge
pueden ejecutar lógica de negocios en los dispositivos perimetrales.
Los módulos de IoT Edge pueden ejecutar servicios de Azure, de
terceros o código propio. Se implementan en dispositivos IoT Edge y
se ejecutan de forma local en ellos. Puede configurar los módulos para
12
que se comuniquen entre sí a fin de crear una canalización para el
procesamiento de los datos. Si es necesario, los módulos se pueden
ejecutar sin conexión.
El entorno de ejecución de Azure IoT Edge se ejecuta en todos los
dispositivos IoT Edge y administra el entorno de ejecución y la
comunicación de los módulos implementados en cada dispositivo. El
entorno de ejecución de Azure IoT Edge garantiza que los módulos
siempre están en ejecución y notifica el estado del módulo a la nube.
El entorno de ejecución realiza varias funciones:
Instalación y actualización de cargas de trabajo
Mantenimiento de los estándares de seguridad de IoT Edge
Administración de la comunicación entre los dispositivos de
hoja de nivel inferior y el dispositivo IoT Edge
Administración de la comunicación entre los módulos de un
dispositivo IoT Edge y de las comunicaciones entre un
dispositivo IoT Edge y la nube.
La interfaz en la nube de IoT Edge permite supervisar y administrar
los dispositivos IoT Edge de forma remota. Si la solución ejecuta un
conjunto diverso de dispositivos a escala, puede crear y configurar una
carga de trabajo para que se ejecute en un tipo específico de
dispositivo. Después, tendrá que implementar la carga de trabajo en
un conjunto de dispositivos de ese tipo. Una vez que se ejecuten los
dispositivos, debe supervisar las cargas de trabajo de forma
13
centralizada. La interfaz en la nube de IoT Edge le permite administrar
este ciclo de vida global a escala para un conjunto diverso de
dispositivos, que podrían estar dispersos geográficamente.
Resulta difícil administrar el ciclo de vida de software de millones de
dispositivos IoT que, con frecuencia, tienen marcas y modelos
diferentes, o se encuentran en distintas ubicaciones. Las cargas de
trabajo se crean y configuran para un determinado tipo de dispositivo,
se implementan en todos los dispositivos y se supervisan para detectar
los comportamientos incorrectos de los dispositivos. Estas actividades
no se pueden realizar en cada dispositivo y deben realizarse a escala.
Considere el caso de la implementación de procesamiento de eventos
complejos o aprendizaje automático en dispositivos perimetrales. Si
quiere implementar aprendizaje automático en dispositivos
perimetrales, primero debe entrenar el modelo en la nube. Después de
entrenar el modelo, tendrá que implementar el modelo entrenado en
una amplia gama de dispositivos perimetrales a menudo separados
geográficamente. Una vez implementados, estos modelos se suelen
ejecutar sin conexión en el dispositivo. También tendrá que actualizar
el modelo de manera periódica. Al encapsular los modelos en
contenedores compatibles con Docker, IoT Edge puede administrar el
ciclo de implementación de un extremo a otro para el aprendizaje
automático en IoT. El entorno de ejecución de Azure IoT Edge y la
interfaz en la nube pueden supervisar el estado de los módulos de
aprendizaje automático.
Sin IoT Edge, el desarrollador tendría que crear la funcionalidad
agregada para el mantenimiento del módulo.
14
Cuándo se debe usar IoT
Edge
En esta sección, se explica cómo puede decidir si IoT Edge es la
solución adecuada para usted. El enfoque de la elección se realizará
desde la perspectiva de una gran empresa que planea una
implementación de IoT.
¿La aplicación necesita reaccionar rápidamente a
15
los cambios locales casi en tiempo real? IoT Edge
Respuesta casi en puede ejecutar módulos de forma local en
tiempo real a los dispositivos IoT Edge para permitir una respuesta
cambios locales más rápida a los cambios locales.
¿Es necesario implementar la aplicación en
contenedores compatibles con Docker en
dispositivos IoT Edge? IoT Edge permite usar
contenedores para ejecutar la lógica en IoT Edge.
Implementación y Los contenedores facilitan la administración de las
administración dependencias de software como los entornos de
mediante contenedores ejecución y las bibliotecas, lo que garantiza que la
para dispositivos IoT aplicación se ejecute de forma coherente donde se
Edge implemente.
La falta de seguridad para los dispositivos IoT es
una barrera importante para la entrada de muchas
empresas. IoT Edge proporciona seguridad de
varias maneras. Entre ellas se incluye la integración
Seguridad para las
con Azure Security Center y el uso de módulos de
implementaciones de
seguridad de hardware para proporcionar
IoT Edge
conexiones autenticadas seguras para la
informática confidencial.
¿La aplicación necesita funcionar con conectividad
intermitente o sin conexión? Los dispositivos IoT
Edge sincronizan automáticamente el estado más
Funcionamiento sin reciente de los dispositivos una vez que se han
16 conexión o en modo reconectado a la nube para garantizar el
intermitente funcionamiento sin problemas.
¿Necesita ejecutar algoritmos de aprendizaje
Cargas de trabajo de
automático en dispositivos IoT Edge? IoT Edge le
inteligencia artificial y
permite implementar modelos creados y
análisis en IoT Edge
entrenados en la nube y ejecutarlos en dispositivos
IoT Edge.
La administración de los costos en la
implementación de recursos en la nube es
fundamental. Puede diseñar el sistema de forma
que los datos enviados a la nube se reduzcan
Optimización de los mediante el procesamiento previo en los
costos de datos dispositivos IoT Edge.
¿Necesita garantizar el cumplimiento de las normas
Privacidad para las
de privacidad? IoT Edge puede proteger los datos
implementaciones de
de identificación personal y mantener los datos
IoT Edge
locales para de ese modo mejorar el cumplimiento
normativo.
17
1
Clasificación y moderación
de texto con Azure Content
Moderator
BIENVENIDA
En este módulo, se presentará Azure Content Moderator y se mostrará
cómo usarlo para la moderación de texto.
En este módulo, aprenderá a:
• Conocer en qué consiste la moderación de contenido de texto.
• Obtener información sobre las características clave de Azure
Content Moderator para la moderación de texto.
• Probar la moderación de texto con la consola de prueba de API
basada en web.
2
Requisitos previos
Ninguno
Introducción 1 min
Introducción a la moderación de texto 4 min
Creación de un recurso de Content Moderator y suscripción a
este 7 min
Ejercicio: Moderación de texto de prueba mediante la consola
de prueba de API 10 min
Comprobación de conocimientos 7 min
Resumen 2 min
INTRODUCCIÓN
La moderación de contenido para aspectos problemáticos puede
llevar mucho tiempo. Microsoft Azure Content Moderator proporciona
moderación asistida automáticamente de imágenes, texto y vídeo. Este
módulo abarca los conceptos clave relacionados con el uso de Content
Moderator para llevar a cabo la moderación de texto.
Nota
3
Este módulo requiere una suscripción de Azure. Los servicios que cree
y use son gratuitos, pero necesitará una suscripción activa o una
versión de prueba para completar los ejercicios. Si no tiene una
suscripción a Azure, cree una cuenta gratuita antes de empezar.
Objetivos de aprendizaje
En este módulo aprenderá a hacer lo siguiente:
• Conocer en qué consiste la moderación de contenido de texto.
• Obtener información sobre las características clave de Azure
Content Moderator para la moderación de texto.
• Probar la moderación de texto con la consola de prueba de API.
INTRODUCCIÓN A LA
MODERACIÓN DE TEXTO
Al usar la moderación de contenido asistida automáticamente, el
contenido se bloquea, aprueba o revisa en función de las directivas y
los umbrales. Esta asistencia automática se usa para aumentar la
moderación humana de los entornos donde socios, empleados y
consumidores generan contenido de texto. Entre estos entornos se
incluyen los siguientes:
Salas de chat
Paneles de discusión
4 Bots de chat
Catálogos de comercio electrónico
Documentos
La respuesta de Text Moderation API incluye la información siguiente:
Una lista de palabras potencialmente no deseadas que se
encuentran en el texto.
El tipo de palabras potencialmente no deseadas.
La posible información de identificación personal que se ha
encontrado.
Palabras soeces
Al pasar texto a la API, se identifican los posibles términos soeces en el
texto y se devuelven en una respuesta JSON. El elemento soez se
devuelve como un Term en la respuesta JSON, junto con un valor de
índice en el que se muestra la ubicación del término en el texto
proporcionado.
También se pueden usar listas de términos personalizadas con esta API.
En ese caso, si se identifica un término soez en el texto, también se
devuelve un valor ListId para identificar la palabra personalizada
específica que se ha encontrado. Aquí se muestra un ejemplo de una
respuesta JSON:
JSON
"Terms": [
"Index": 118,
5
"OriginalIndex": 118,
"ListId": 0,
"Term": "crap"
Clasificación
Esta característica de la API puede colocar texto en categorías
específicas según las especificaciones siguientes:
Categoría 1: posible presencia de lenguaje que se puede
considerar sexualmente explícito o para adultos en ciertas
situaciones.
Categoría 2: posible presencia de lenguaje que se puede
considerar sexualmente insinuante o para adultos en ciertas
situaciones.
Categoría 3: posible presencia de lenguaje que se puede
considerar ofensivo en ciertas situaciones.
Cuando se devuelve la respuesta JSON, proporciona un valor booleano
para una revisión recomendada del texto. Si es true, debe revisar el
contenido de forma manual para determinar posibles problemas.
Cada categoría también se devuelve con una puntuación entre 0 y 1
para indicar la categoría predicha para el texto evaluado. Cuanto mayor
sea la puntuación, más probable es que se aplique la categoría en
cuestión. Aquí se muestra una respuesta JSON de ejemplo:
6 JSON
"Classification": {
"ReviewRecommended": true,
"Category1": {
"Score": 1.5113095059859916E-06
},
"Category2": {
"Score": 0.12747249007225037
},
"Category3": {
"Score": 0.98799997568130493
Información de identificación personal
La información de identificación personal es de vital importancia en
muchas aplicaciones. Esta característica de la API puede ayudarle a
detectar si algún valor del texto se considera información de
identificación personal antes de publicarlo. Entre los aspectos clave que
se detectan se incluyen los siguientes:
Direcciones de correo electrónico
Direcciones de correo postal de EE. UU.
7 Direcciones IP
Números de teléfono de EE. UU.
Números de teléfono de Reino Unido
Números del seguro social
Si se encuentran valores que podrían ser información de identificación
personal, la respuesta JSON incluirá la información pertinente sobre el
texto y la ubicación de índice dentro del texto. Aquí se muestra un
ejemplo de una respuesta JSON:
JSON
"PII": {
"Email": [{
"Detected": "abcdef@[Link]",
"SubType": "Regular",
"Text": "abcdef@[Link]",
"Index": 32
}],
"IPA": [{
"SubType": "IPV4",
"Text": "[Link]",
"Index": 72
}],
8 "Phone": [{
"CountryCode": "US",
"Text": "5557789887",
"Index": 56
}, {
"CountryCode": "UK",
"Text": "+44 123 456 7890",
"Index": 208
}],
"Address": [{
"Text": "1 Microsoft Way, Redmond, WA 98052",
"Index": 89
}],
"SSN": [{
"Text": "999-99-9999",
"Index": 267
}]
9
CREACIÓN DE UN
RECURSO DE CONTENT
MODERATOR Y
SUSCRIPCIÓN A ESTE
Antes de empezar a probar la moderación de contenido o integrarla
en aplicaciones personalizadas, tendrá que crear un recurso de Content
Moderator, suscribirse a este y obtener la clave de suscripción para
tener acceso al servicio.
En este ejercicio, creará un recurso de Content Moderator en Azure
10 Portal.
Creación de un recurso de Content Moderator y suscripción a este
1. Inicie sesión en Azure Portal .
2. En el panel izquierdo, seleccione Crear un recurso.
3. En el cuadro de búsqueda, escriba Content Moderator y
presione ENTRAR.
4. Seleccione Content Moderator en los resultados de la
búsqueda.
5. Haga clic en Crear.
6. Escriba un nombre único para el recurso, elija una suscripción y
seleccione una ubicación cercana a usted.
7. Seleccione el plan de tarifa para este recurso y, después,
seleccione S0.
8. Cree un grupo de recursos denominado LearnRG.
9. Haga clic en Crear.
11
El recurso tardará unos minutos en implementarse. Una vez que lo haya
hecho, vaya al nuevo recurso.
Copia de la clave de suscripción
Para tener acceso al recurso de Content Moderator, necesitará una
clave de suscripción:
1. En el panel de la izquierda, en ADMINISTRACIÓN DE
RECURSOS, seleccione Claves.
2. Copie uno de los valores de las claves de suscripción para usarlo
posteriormente.
12
EJERCICIO: MODERACIÓN
DE TEXTO DE PRUEBA
MEDIANTE LA CONSOLA
DE PRUEBA DE API
Ahora que tiene un recurso disponible en Azure para la moderación
de contenido y que dispone de una clave de suscripción para ese
recurso, ejecutaremos algunas pruebas mediante la consola de prueba
de API basada en web.
1. Vaya a la página de Referencia de Content Moderator API. Esta
13 página está disponible en diferentes regiones para realizar
pruebas en la consola de API.
2. Seleccione el botón con la ubicación adecuada para la región
geográfica más cercana para abrir la consola.
3. Observe los parámetros de consulta que puede seleccionar
para la prueba. Mantenga las opciones predeterminadas para
la primera serie de pruebas.
4. Pegue la clave de suscripción en el cuadro Ocp-Apim-
Subscription-Key.
5. Mantenga el texto de ejemplo y haga clic en Enviar.
14
Evaluación de la respuesta
Desplácese hacia abajo en la página y evalúe la respuesta de la
consola de pruebas.
En esta primera prueba se usó classification porque el
parámetro classify estaba establecido en true en la parte superior de la
página. La respuesta contiene la información siguiente:
Se recomienda una revisión.
El texto se ha clasificado como Categoría 3 (posible presencia
de lenguaje que se podría considerar ofensivo en ciertas
situaciones).
El término que podría resultar ofensivo es "crap" (porquería).
Ejecución de pruebas adicionales
1. Para ejecutar la segunda prueba, desplácese hasta la parte
superior de la página y establezca el parámetro PII en true.
2. Haga clic en Enviar.
15
Observe que se muestra el contenido de información de identificación
personal. Ahora se considera que la dirección de correo electrónico, la
dirección IP, el número de teléfono, la dirección de correo postal y el
número del seguro social podrían ser información de identificación
personal.
3. Si quiere ejecutar otras pruebas, escriba algunos valores de
texto propios de un documento existente y vuelva a ejecutar las
pruebas para ver los resultados devueltos.
4. Evalúe la respuesta JSON y la sintaxis de la dirección URL de la
solicitud para analizar la manera en que las aplicaciones
personalizadas pueden llamar a esta API.
Sugerencia
Para probar esta API mediante una aplicación de C#, vea Guía de inicio
rápido: Análisis de contenido de textos para detectar material
inapropiado en C#.
16
1
Compilación de un bot de
chat de Preguntas más
frecuentes con QnA Maker y
Azure Bot Service
BIENVENIDA
Información sobre QnA Maker y su integración con un bot
En este módulo:
Aprenderá lo que es QnA Maker.
Obtendrá información sobre las características clave de QnA
Maker y sobre cómo crear una base de conocimiento.
Publicará una base de conocimiento de QnA Maker.
Integrará una base de conocimiento con un bot.
Requisitos previos
Ninguno
2
Introducción 1 min
Información general sobre QnA Maker 4 min
Ejercicio: Creación de una base de conocimientos de QnA 15
min
Ejercicio: Publicación de una base de conocimientos 5 min
Ejercicio: Integración de QnA con un bot 15 min
Prueba de conocimientos 7 min
Resumen 1 min
INTRODUCCIÓN
Un bot es un programa autónomo que interactúa con personas o con
equipos de forma previsible. El creador del bot diseña y programa la
lógica subyacente, a menudo con la ayuda de herramientas como
Microsoft Bot Framework. Microsoft también dispone de otros servicios
de inteligencia artificial, incluidos en Azure Cognitive Services, que
pueden mejorar las funcionalidades de los bots.
3 QnA Maker es uno de los servicios de inteligencia artificial que ayudan
a un bot a responder a preguntas en el lenguaje natural de los usuarios,
para lo que las hace coincidir con la mejor respuesta posible de la base
de conocimientos.
Nota
Este módulo requiere una suscripción de Azure. Los servicios que cree
y use son gratuitos, pero necesitará una suscripción activa o una
versión de prueba para completar los ejercicios. Si no tiene una
suscripción a Azure, cree una cuenta gratuita antes de empezar.
Objetivos de aprendizaje
En este módulo hará lo siguiente:
• Aprenderá lo que es QnA Maker.
• Obtendrá información sobre las características clave de QnA
Maker y sobre cómo crear una base de conocimiento.
• Publicará una base de conocimiento de QnA Maker.
• Integrará una base de conocimiento con un bot.
4
INFORMACIÓN GENERAL
SOBRE QNA MAKER
Una forma de mejorar la satisfacción de los clientes consiste en
ayudarles a encontrar rápidamente una respuesta a sus preguntas. La
información que buscan puede encontrarse en las Preguntas más
frecuentes (P+F), en la documentación de soporte técnico o en los
manuales de productos.
Las páginas de búsqueda pueden ser útiles, pero muchas
organizaciones prefieren un sistema que ofrezca una interacción más
personal con los clientes, pero sin dejar de usar mecanismos
5 automatizados. El servicio QnA Maker busca en la base de
conocimientos la respuesta que mejor se ajuste a la pregunta
formulada por el usuario en lenguaje natural. Para encontrar la
información que necesitan, los clientes pueden mantener una
conversación natural e interactiva con el servicio automatizado.
Para crear una base de conocimientos de QnA Maker, debe usar un
portal web. En el portal puede crear, administrar, entrenar y publicar su
servicio sin necesidad de tener ninguna experiencia como
desarrollador. Una vez que el servicio se publica en un punto de
conexión, una aplicación cliente como un bot de chat puede usar el
servicio para procesar una conversación con un usuario a fin de
determinar la pregunta que se ha hecho y ofrecer la mejor respuesta.
Arquitectura
Para entender los servicios que brinda QnA Maker, podemos observar
la arquitectura subyacente. Como ya se ha mencionado, se debe usar
un portal basado en web para crear la base de conocimientos. Este
portal forma parte de los servicios de administración de QnA Maker.
Los servicios de administración también proporcionan funciones para
la actualización, el entrenamiento y la publicación de la base de
conocimientos para su uso. También se pueden utilizar API basadas en
REST para administrar la base de conocimientos.
Después de crear y publicar la base de conocimientos, los datos de QnA
Maker y el runtime harán que el servicio esté disponible. Para acceder
al servicio, se usará la suscripción de Microsoft Azure en la región que
eligió durante el proceso de creación. El contenido que ha agregado a
la base de conocimientos se almacena en Azure Search y el punto de
6 conexión de acceso para las aplicaciones cliente se implementa como
un Azure App Service. Azure también permite la integración de
Application Insights en el servicio para fines de análisis.
EJERCICIO: CREACIÓN DE
UNA BASE DE
CONOCIMIENTOS DE
QNA
Vamos a crear una base de conocimientos (KB) de QnA Maker.
1. Vaya al portal de QnA Maker .
2. Haga clic en Iniciar sesión en la esquina superior derecha e
inicie sesión con sus credenciales de Azure.
7
3. A menos que ya tenga una base de conocimientos, el portal le
indicará que no tiene ninguna.
Hospedaje de una base de conocimientos
Una base de conocimientos es una colección de preguntas y respuestas
donde se pueden realizar búsquedas. Las bases de conocimientos se
hospedan en un servicio QnA, que se crea en Azure y determina la
región en la que colocará la base de conocimientos, así como
su facturación y rendimiento.
Nota
Se recomienda crear el servicio bot y el servicio QnA en la misma región
para conseguir un mayor rendimiento.
Creación de una base de conocimientos y un servicio QnA
1. En el menú ubicado en la parte superior del portal,
seleccione Create a knowledge base (Crear una base de
conocimiento).
2. Haga clic en Create a QnA service (Crear un servicio QnA). Al
seleccionar este botón, se abre Azure Portal e inicia la sesión
con las credenciales que usó anteriormente. Debe crear el
servicio QnA Maker y el servicio asociado de aplicación de
Azure que lo hospedará en este portal.
8
Nota
Antes de crear una base de conocimientos, cree también un servicio de
QnA Maker en Azure Portal.
Especificación de los detalles del servicio QnA Maker
Proporcione estos detalles para crear el servicio QnA Maker:
1. Escriba un nombre único global para el servicio QnA Maker,
como nombre-qna. Anote este nombre porque lo usará más
adelante.
2. Seleccione la suscripción de Azure.
3. Seleccione el plan de tarifa F0 para el servicio, que es el nivel
Gratis.
4. Seleccione una ubicación para el servicio, que debe estar en la
misma región que el servicio bot y cerca de su ubicación física.
5. Cree un grupo de recursos denominado LearnRG.
6. Seleccione F (tres índices), el nivel Gratis, en el plan de tarifa
de búsqueda.
7. Para la ubicación de búsqueda, seleccione la ubicación que usó
anteriormente.
8. Compruebe que el nombre de la aplicación es único en Azure.
(Si lo es, se indicará mediante una marca de verificación verde).
9
9. Seleccione la ubicación para el sitio web, que debe coincidir con
la ubicación que usó anteriormente.
10. Deshabilite App Insights, ya que no lo usará para esta prueba.
11. Haga clic en Crear.
Después de un breve proceso de implementación, se creará el recurso
para el servicio.
Conexión del servicio QnA Maker a la base de conocimientos
1. Vuelva a la pestaña del portal web de QnA Maker y actualice la
página.
2. La página se actualizará. Vaya al paso 2.
3. Las entradas del paso 2 no se habrán rellenado, pero aparecerá
un vínculo a la información de la cuenta.
4. Seleccione el identificador de directorio, el nombre de la
suscripción de Azure, así como el nombre del nuevo servicio
QnA que creó antes.
5. En el paso 3, asigne un nombre a la base de conocimientos.
Usaremos las Preguntas más frecuentes de Microsoft Bot, por
lo que puede asignarle el nombre BotFAQ.
Rellenar la base de conocimientos
Necesitamos algunos datos para nuestra base de conocimientos. Como
ejemplo, vamos a usar una página existente de Preguntas más
frecuentes.
10
1. Descargue el archivo ZIP de Preguntas más frecuentes de
Microsoft Bot y extráigalo en el equipo local.
2. En el paso 4 del proceso del portal web de QnA, haga clic
en Add file (Agregar archivo), busque el documento de Word
extraído en el paso anterior y agréguelo como origen para
rellenar la base de conocimientos.
3. En Chit-chat (Charla), seleccione The
Professional (Profesional) para agregar una personalidad
predefinida a la base de conocimientos. Chit-chat agrega
respuestas a mensajes como hola y adiós.
4. Haga clic en Create your KB (Crear la base de conocimientos).
Tras un breve tiempo, se creará la base de conocimientos y se cargará
la página de edición.
Probar la base de conocimientos
1. Para hacerse una idea de la manera en que un bot puede
responder a las preguntas, seleccione Probar en la esquina
superior derecha.
2. Se abre un panel de prueba, listo para la pregunta.
3. Escriba Hello y seleccione la tecla Entrar. QnA responderá con
un "Hello".
4. Escriba when will v3 retire? (¿Cuándo se retirará la versión 3?)
y pulse Entrar. QnA responderá con un mensaje sobre las
11 versiones y las actualizaciones de esa versión.
5. Escriba what is included in v4? (¿Qué incluye la versión 4?) y
presione Entrar. Lea la respuesta.
Para seguir probando la interacción, realice más preguntas y evalúe las
respuestas para hacerse una idea de cómo se sondea la base de
conocimientos de QnA en busca de respuestas.
EJERCICIO: PUBLICACIÓN
DE UNA BASE DE
CONOCIMIENTOS
Ahora que ya ha creado una base de conocimientos de QnA, es el
momento de publicarla para poder tener acceso a ella desde una
aplicación cliente.
1. En la página de la base de conocimientos de QnA Maker en la
que realizó las pruebas en el ejercicio anterior, haga clic
en PUBLICAR en el menú situado en la parte superior de la
página.
12
2. Lea el mensaje en la página siguiente. Indica que la base de
conocimientos pasará de pruebas a producción. También
señala que la base de conocimientos estará disponible como un
punto de conexión que puede usar en bots y aplicaciones.
3. Haga clic en Publicar.
4. Al poco tiempo aparecerá un mensaje de confirmación (si no se
producen errores).
5. Anote la información de la dirección URL que se muestra. Puede
usar la información proporcionada para probar la base de
conocimientos con Postman o Curl.
En caso necesario, puede hacer clic en Editar servicio para volver a la
base de conocimientos y realizar modificaciones.
13
EJERCICIO: INTEGRACIÓN
DE QNA CON UN BOT
Ahora que ha creado y publicado una base de conocimientos de QnA,
es el momento de aprender a integrarla con un bot. En este ejercicio,
creará un bot de chat en Azure Portal para integrarlo con la base de
conocimientos de QnA Maker que creó anteriormente.
1. En el portal de QnA Maker, vaya a la página Publish (Publicar) y
publique la base de conocimiento si no se ha publicado todavía.
2. Seleccione Create Bot (Crear bot). Azure Portal se abre con la
configuración de creación del bot.
14
3. Especifique la configuración para crear el bot:
1. Asigne un nombre adecuado a su bot.
2. Elija el servicio de suscripción que ha usado en este
curso.
3. Seleccione el grupo de recursos apropiado.
4. Elija la ubicación del bot. Recuerde que es mejor usar la
misma ubicación que el resto de los servicios.
5. Seleccione el plan de tarifa F0.
6. El nombre de la aplicación debería rellenarse de forma
automática.
7. Elija C# como lenguaje del SDK.
8. Deje los campos restantes con el valor predeterminado.
4. Haga clic en Crear. En unos minutos, debería crearse el bot.
Chat con el bot
1. En Azure Portal, abra el nuevo recurso de bot desde la
notificación.
2. Desde Bot management (Administración de bots), seleccione
Test in web chat (Probar en chat web) y pruebe el QnA haciendo
preguntas al bot.
15
1
Servicios principales Cloud
Services: Opciones de
proceso de Azure
BIENVENIDA
Revise los servicios de proceso de Azure y explore cómo pueden
resolver necesidades empresariales comunes.
En este módulo, aprenderá a:
Identificar las opciones de proceso de Azure
Seleccionar las opciones de proceso que resolverán sus
necesidades empresariales específicas
Requisitos previos
Ninguno
2
Introducción 1 min
Conceptos esenciales de proceso de Azure 7 min
Explorar Azure Virtual Machines 5 min
Explorar contenedores en Azure 10 min
Explorar Azure App Service 5 min
Explorar informática sin servidor en Azure 7 min
Resumen 3 min
INTRODUCCIÓN
Imagine que ha conseguido el trabajo de sus sueños como
desarrollador en una nueva empresa de tecnología espacial. En su
primer día, debe ayudar a los investigadores a analizar un gran
conjunto de datos que se genera para un innovador proyecto de
investigación destinado a detectar la presencia de agua en Marte — y
el tiempo es fundamental. Pero hay un problema: no tiene ningún
3 servidor disponible para realizar el trabajo. Incluso si lo tuviera,
necesitaría dedicar mucho tiempo a configurarlo e instalar software.
Lógicamente, podría solicitar la compra de nuevos equipos, pero el
presupuesto de su departamento es reducido. Además, no quiere
comprar más hardware del necesario, no solo porque quiere dar una
buena impresión a sus superiores, sino también porque no sabe
cuántos datos se generarán en el proyecto.
Idealmente obtendría los recursos que necesita para este trabajo sin
demasiada administración — y simplemente los configuraría para
realizar el trabajo. Y pagaría solo por los recursos de proceso que
necesite mientras los usa.
Eso es exactamente lo que podemos hacer en Azure. Podemos crear
recursos de proceso, configurarlos para hacer el trabajo que
necesitamos y pagar solo por lo que usamos.
Objetivos de aprendizaje
En este módulo, aprenderá a:
• Identificar las opciones de proceso en Azure
• Seleccionar las opciones de proceso adecuadas para la empresa
4
CONCEPTOS ESENCIALES
DE PROCESO DE AZURE
Su equipo de investigación ha recopilado grandes cantidades de datos
de imágenes que podrían conducir a un descubrimiento en Marte.
Deben realizar un procesamiento de datos con gran complejidad de
cálculo, pero no tienen las herramientas para hacer el trabajo. Vamos a
ver por qué Azure es una buena elección para realizar el análisis de
datos.
¿Qué es Azure Compute?
Azure Compute es un servicio de informática a petición para ejecutar
5
aplicaciones basadas en la nube. Proporciona recursos informáticos,
como procesadores de varios núcleos y superequipos a través de
máquinas virtuales y contenedores. También proporciona informática
sin servidor para ejecutar aplicaciones sin necesidad de configurar o
instalar infraestructura. Los recursos están disponibles a petición y
normalmente se pueden crear en minutos o incluso en segundos. Solo
se paga por los recursos que se usan y solo durante el tiempo que se
usan.
Existen cuatro técnicas comunes para realizar el proceso en Azure:
Máquinas virtuales
Contenedores
Azure App Service
Informática sin servidor
¿Qué son las máquinas virtuales?
Las máquinas virtuales, o VM, son emulaciones de software de
equipos físicos. Incluyen un procesador virtual, memoria,
almacenamiento y recursos de red. Hospedan un sistema operativo
(SO) y permiten instalar y ejecutar software, al igual que en un equipo
físico. Además, si se emplea un cliente de escritorio remoto, puede usar
y controlar la máquina virtual como si se estuviera sentado delante de
ella.
¿Qué son los contenedores?
Los contenedores son un entorno de virtualización para ejecutar
aplicaciones. Al igual que las máquinas virtuales, los contenedores se
6
ejecutan sobre un sistema operativo host. Pero, a diferencia de las
máquinas virtuales, los contenedores no incluyen un sistema operativo
para las aplicaciones que se ejecutan dentro del contenedor. En su
lugar, los contenedores agrupan las bibliotecas y los componentes
necesarios para ejecutar la aplicación y usan el SO host del contenedor.
Por ejemplo, si cinco contenedores se están ejecutando en un servidor
con un kernel de Linux determinado, los cinco contenedores y las
aplicaciones que se ejecuten en ellos compartirán ese mismo kernel de
Linux.
¿Qué es Azure App Service?
Azure App Service es una oferta de plataforma como servicio (PaaS) en
Azure que está diseñada para hospedar aplicaciones empresariales
orientadas a la Web. Puede satisfacer los exigentes requisitos de
rendimiento, escalabilidad, seguridad y cumplimiento mientras usa una
plataforma totalmente administrada para realizar el mantenimiento de
la infraestructura.
¿Qué es la informática sin servidor?
La informática sin servidor es un entorno de ejecución hospedado en
la nube que ejecuta el código pero abstrae por completo el entorno de
hospedaje subyacente. El usuario crea una instancia del servicio y
agrega el código; no se necesita ninguna configuración ni
mantenimiento de la infraestructura, incluso ni se permite.
¿Qué estrategia de informática es adecuada para mí?
No es necesario adoptar un enfoque de "todo o nada" al elegir una
estrategia de informática en nube. Las máquinas virtuales, los
7
contenedores, App Service y la informática sin servidor proporcionan
ventajas, así como inconvenientes, cuando se comparan con otras
opciones.
Por ejemplo, aunque la informática sin servidor elimina la necesidad de
administrar la infraestructura, espera que el trabajo se complete con
rapidez, normalmente en cuestión de segundos o menos. Por lo tanto,
puede ejecutar la aplicación principal en una máquina virtual o un
contenedor pero descargar parte del procesamiento de datos en una
aplicación sin servidor.
Examinemos cada opción más detenidamente para ayudarle a decidir
cuándo usar cada servicio.
EXPLORAR AZURE
VIRTUAL MACHINES
Azure Virtual Machines permite crear y utilizar máquinas virtuales en
la nube. Estas máquinas virtuales proporcionan una infraestructura
como servicio (IaaS) en forma de un servidor virtualizado y se pueden
usar de muchas formas. Al igual que sucede en un equipo físico, se
puede personalizar todo el software que se ejecuta en la máquina
virtual. Las máquinas virtuales son una opción ideal cuando se necesita
lo siguiente:
Control total sobre el sistema operativo (SO).
8
Capacidad de ejecutar software personalizado.
Usar configuraciones de hospedaje personalizadas.
Una máquina virtual de Azure le ofrece la flexibilidad de la
virtualización sin necesidad de adquirir y mantener el hardware físico
que ejecuta la máquina virtual. Sin embargo, sí necesita mantener la
máquina virtual, es decir, configurar, actualizar y mantener el software
que se ejecuta en la máquina virtual.
Al seleccionar una imagen de máquina virtual preconfigurada, podrá
crear y aprovisionar una máquina virtual en cuestión de minutos. La
selección de una imagen es una de las decisiones más importantes que
tomará al crear una máquina virtual. Una imagen es una plantilla que
se usa para crear una máquina virtual. Estas plantillas ya incluyen un
sistema operativo y, a menudo, otro software, como herramientas de
desarrollo o entornos de hospedaje web.
Ejemplos de cuándo usar máquinas virtuales
Durante las pruebas y el desarrollo. Las máquinas virtuales
proporcionan una manera rápida y sencilla de crear distintas
configuraciones de sistema operativo y de aplicación. El
personal encargado de las pruebas y del desarrollo puede
eliminar fácilmente las máquinas virtuales cuando ya no las
necesite.
Al ejecutar aplicaciones en la nube. La capacidad de ejecutar
determinadas aplicaciones en la nube pública, en lugar de crear
una infraestructura tradicional para ejecutarlas, puede
9 proporcionar importantes beneficios económicos. Por ejemplo,
si una aplicación necesita controlar las fluctuaciones en la
demanda, el hecho de poder apagar las máquinas virtuales
cuando no las necesite o iniciarlas rápidamente para satisfacer
un aumento repentino de la demanda implica que solo paga
por los recursos que usa.
A la hora de extender el centro de recursos a la nube. Una
organización puede extender las capacidades de su propia red
local mediante la creación de una red virtual en Azure y al
agregar máquinas virtuales a esa red virtual. De este modo, las
aplicaciones como SharePoint se pueden ejecutar en una
máquina virtual de Azure en lugar de ejecutarse de forma local,
lo que facilita o abarata la implementación en un entorno local.
Durante la recuperación ante desastres. Igual que con la
ejecución de ciertos tipos de aplicaciones en la nube y con la
extensión de una red local a la nube, puede ahorrar costos de
manera significativa mediante el uso de un enfoque basado en
IaaS para la recuperación ante desastres. Si se produce un error
en un centro de datos principal, puede crear máquinas virtuales
que se ejecuten en Azure para ejecutar las aplicaciones críticas
y, después, puede apagarlas cuando el centro de datos principal
vuelva a estar operativo.
Traslado a la nube con máquinas virtuales
Las máquinas virtuales también son una opción excelente para
trasladarse de un servidor físico a la nube. Puede crear una imagen del
servidor físico y hospedarla en una máquina virtual con pocos o ningún
10
cambio. Al igual que un servidor físico local, las máquinas virtuales
requieren mantenimiento. Por tanto, debe actualizar el sistema
operativo y su software.
Escalado de máquinas virtuales en Azure
Puede ejecutar máquinas virtuales individuales para pruebas,
desarrollo o tareas secundarias, o agrupar máquinas virtuales para
proporcionar alta disponibilidad, escalabilidad y redundancia. Azure
cuenta con varias características para que, independientemente de
cuáles sean los requisitos de tiempo de actividad, pueda cumplirlos.
Estas características son las siguientes:
Conjuntos de disponibilidad
Virtual Machine Scale Sets
Azure Batch
¿Qué son los conjuntos de disponibilidad?
Un conjunto de disponibilidad es una agrupación lógica de dos o
más máquinas virtuales que contribuyen a que la aplicación siga
estando disponible durante el mantenimiento planeado o no planeado.
Un evento de mantenimiento planeado es cuando Microsoft actualiza el
tejido de Azure subyacente que hospeda máquinas virtuales. Un evento
de mantenimiento planificado sirve para aplicar revisiones a
vulnerabilidades de seguridad, mejorar el rendimiento y agregar o
actualizar características. En la mayoría de las ocasiones, estas
actualizaciones no afectan a las máquinas virtuales invitadas. Pero, a
veces, las máquinas virtuales deben reiniciarse para poder completar
11 una actualización. Cuando una máquina virtual forma parte de un
conjunto de disponibilidad, las actualizaciones del tejido de Azure se
ordenan secuencialmente, por lo que no todas las máquinas virtuales
asociadas se reinician al mismo tiempo. Las máquinas virtuales se
colocan en dominios de actualización diferentes. Los dominios de
actualización indican grupos de máquinas virtuales y hardware físico
subyacente que se pueden reiniciar al mismo tiempo. Los dominios de
actualización son una parte lógica de cada centro de datos y se
implementan con software y lógica.
Los eventos de mantenimiento no planeado implican un error de
hardware en el centro de datos, como un corte en el suministro
eléctrico o un error de disco. Las máquinas virtuales que forman parte
de un conjunto de disponibilidad cambian de forma automática a un
servidor físico que funcione para que la máquina virtual continúe
ejecutándose. El grupo de máquinas virtuales que comparten el
hardware común se encuentra en el mismo dominio de error. Un
dominio de error es esencialmente un bastidor de servidores. Ofrece la
separación física de la carga de trabajo en elementos de hardware de
alimentación, refrigeración y redes diferentes que admiten servidores
físicos en los bastidores de servidores del centro de datos. Si el
hardware que da servicio a un bastidor de servidores deja de estar
disponible, la interrupción solo afectará a ese bastidor de servidores.
Con un conjunto de disponibilidad, obtendrá:
Hasta tres dominios de error con un bastidor de servidores
individual que cuenta con alimentación y recursos de red
dedicados
12 Cinco dominios de actualización lógica que se pueden
aumentar hasta un máximo de 20
Después, las máquinas virtuales se reparten secuencialmente en los
dominios de error y de actualización. En el siguiente diagrama se
muestra un ejemplo: se dispone de seis máquinas virtuales en un
conjunto de disponibilidad repartido entre dos dominios de error y
cinco dominios de actualización.
Los conjuntos de disponibilidad no representan ningún costo. Solo
13
pagará las máquinas virtuales que formen parte del conjunto de
disponibilidad en cuestión. Le recomendamos que coloque cada carga
de trabajo en un conjunto de disponibilidad para evitar tener un único
punto de error en la arquitectura de la máquina virtual.
¿Qué son los conjuntos de escalado de máquinas virtuales?
Azure Virtual Machine Scale Sets permite crear y administrar un grupo
de máquinas virtuales idénticas con equilibrio de carga. Imagine que
está ejecutando un sitio web que permite a los científicos cargar
imágenes de astronomía que deben procesarse. Si ha duplicado la
máquina virtual, normalmente necesitará configurar un servicio
adicional para enrutar las solicitudes entre varias instancias del sitio
web. Virtual Machine Scale Sets puede encargarse de ello.
Los conjuntos de escalado le permiten administrar, configurar y
actualizar de forma centralizada un gran número de máquinas virtuales
en cuestión de minutos para proporcionar aplicaciones altamente
disponibles. El número de instancias de máquina virtual puede
aumentar o disminuir automáticamente según la demanda, o de
acuerdo con una programación definida. Con
Virtual Machine Scale Sets, puede crear servicios a gran escala para
áreas tales como proceso, macrodatos y cargas de trabajo de
contenedor.
¿Qué es Azure Batch?
Azure Batch permite la administración de procesos y programación de
trabajos a gran escala con la capacidad de escalar a decenas, cientos o
miles de máquinas virtuales.
14
Cuando esté listo para ejecutar un trabajo, Batch:
Iniciará un grupo de máquinas virtuales de proceso por usted.
Instalará aplicaciones y datos de ensayo.
Ejecutará trabajos con tantas tareas como tenga.
Identificará errores.
Reordenará la cola de trabajo.
Reducirá verticalmente el grupo a medida que se complete el
trabajo.
Puede haber situaciones en las que necesite potencia informática sin
procesar o potencia de cálculo a nivel de superequipo. Azure
proporciona estas capacidades.
15
EXPLORAR
CONTENEDORES EN
AZURE
Los contenedores son una excelente opción si quiere ejecutar varias
instancias de una aplicación en un solo host de máquina virtual. El
orquestador de contenedores puede iniciar, detener y escalar
horizontalmente las instancias de la aplicación, según sea necesario.
Un contenedor es un entorno de ejecución modificado y basado en un
sistema operativo host que ejecuta la aplicación. Los contenedores no
usan la virtualización, por lo que no consumen recursos para simular
16
hardware virtual con un sistema operativo redundante. Normalmente,
esto hace que los contenedores sean más ligeros que las máquinas
virtuales. Este diseño permite responder rápidamente a cambios a
petición o por error. Otra ventaja de los contenedores es que puede
ejecutar varias aplicaciones aisladas en un único host de contenedor.
Puesto que los contenedores están protegidos y aislados, no necesita
servidores independientes para cada aplicación.