Cursos de "Introducción al Internet de las Cosas” y Analítica web.
CURSO#1
"Introduccion al Internet de las Cosas"
Capítulo 1:
Práctica de términos y conceptos
Esta actividad se diseñó para practicar términos y conceptos que
se presentaron en todo el capítulo. Hay varios modos de estudio y opciones
disponibles para la práctica. Los modos de estudio se pueden seleccionar del
cuadro en la esquina inferior derecha de la actividad. Utilice el modo que le
resulte más cómodo.
El curso Introducción a Internet de las
cosas (I2IoT) explica qué es IoT, qué hace, y de qué modo forma parte de la
transformación digital y cómo puede usted participar en ella. Aprenderá sobre
el aumento exponencial de los dispositivos inteligentes conectados a Internet y
aprenderá a programar uno de estos dispositivos inteligentes. El curso explica la
inteligencia artificial y el impacto de automatización en nuestro futuro. Por
último, comprenderá la importancia cada vez mayor de la privacidad y seguridad.
La evolución de la
transformación digital
¿Cuántos de ustedes podrían, en realidad,
pasar el día sin su Smartphone?
En la actualidad, hay más dispositivos inteligentes que
personas. Cada vez más personas están conectadas a Internet de una forma o de
otra, las 24 horas del día. Una cantidad cada vez mayor de personas posee y
depende de tres, cuatro o más dispositivos inteligentes. Pueden incluir los
Smartphone, monitores ejercicio y de salud, lectores de libros electrónicos y
tablets. Como se muestra en la figura 1, para el año 2020, se prevé que cada
consumidor tendrá un promedio de 6,58 dispositivos inteligentes.
¿Cómo es posible que tantos dispositivos estén conectados?
Las redes digitales modernas hacen que todo esto sea posible. El
mundo rápidamente se cubre por redes que permiten que los dispositivos
digitales se interconecten y transmitan. Piense en la malla de redes como una
piel digital que rodea el planeta, tal como se ilustra en la figura 2. Con esta
piel digital, pueden conectarse dispositivos móviles, sensores electrónicos,
dispositivos electrónicos de medición, dispositivos médicos y medidores. Estos
dispositivos supervisan, comunican, evalúan y en algunos casos se ajustan
automáticamente a los datos que se recopilan y transmiten.
Conforme la sociedad adopte estos dispositivos digitales, a
medida que las redes digitales sigan creciendo en todo el mundo y según los
beneficios económicos de la digitalización continuen en aumento, seremos
testigos de una transformación digital. La transformación digital es la
aplicación de la tecnología digital para proporcionar el entorno adecuado para
la innovación de las empresas y la industria. Esta innovación digital ahora se
aplica a todos los aspectos de la sociedad humana.
Práctica de
laboratorio: ¿qué tan conectado está?
Es importante comprender que la mayoría de las personas nacidas
en la década de 1990 han crecido en un mundo principalmente digital. Esta
encuesta lo ayudará a reconocer cuánto tiempo del día las personas realmente
están “conectadas”. Esto nos permitirá analizar el impacto que esta generación
tendrá en la economía y las empresas.
Introducción a Packet Tracer
Cisco Packet Tracer es una herramienta innovadora de simulación y visualización. Este software gratuito lo ayuda a practicar la configuración de la red y las habilidades de resolución de problemas. Puede utilizar su computadora de escritorio o un dispositivo móvil con Android o iOS. Packet Tracer está disponible para entornos de escritorio Linux y Windows.
Por
lo general, los estudiantes usan Packet Tracer para lo siguiente:
·
Preparase para un examen de
certificación.
·
Practicar lo aprendido en los cursos de
redes.
·
Refinar sus habilidades para una
entrevista laboral.
·
Examinar el impacto de agregar nuevas
tecnologías a los diseños de red existentes.
·
Desarrollar sus habilidades para
realizar trabajos en Internet de las cosas.
·
Competir en desafíos globales de diseño
(consulte 2017 PT 7 Desafío de diseño en Facebook).
Packet
Tracer es una herramienta esencial de aprendizaje que se utiliza en muchos
cursos de Cisco Networking Academy.
Haga
clic en Reproducir en el video para realizar un recorrido detallado del proceso
de descarga e instalación de Packet Tracer.
Para
obtener e instalar Cisco Packet Tracer siga estos pasos simples:
1.
Iniciar sesión en la página de "Estoy aprendiendo" de Cisco
Networking Academy.
2.
Seleccione Recursos en el menú en la parte superior derecha de la pantalla.
3.
Seleccione Descargar Packet Tracer.
4.
Seleccione la versión de Packet Tracer que necesita.
5.
Guarde el archivo en la computadora.
6.
Inicie el programa de instalación de Packet Tracer.
7.
Después de la instalación, cierre y reinicie el navegador web.
8.
Inicie Cisco Packet Tracer seleccionando el icono correspondiente.
9.
Cuando se le solicite, use la información de inicio de sesión de Netacad para
realizar la autenticación.
Packet Tracer:
implementación y cableado de dispositivos
Dado que Packet Tracer simula las redes y el tráfico de red, los
aspectos físicos de estas redes también deben simularse. Esto incluye encontrar
e implementar efectivamente dispositivos físicos, personalizarlos y cablearlos
de forma adecuada. Después de realizar la implementación física y se han
cableado los dispositivos, es momento de la configuración de las interfaces que
se utilizan para conectar los equipos.
Encontrar un dispositivo para implementar requiere una búsqueda
en el cuadro de selección Tipo de dispositivo. El cuadro de selección Tipo de
dispositivo funciona según el concepto de categorías y subcategorías como se
muestra en la figura.
La fila superior de íconos representa la lista de categorías que
consta de: [Dispositivos de red], [Dispositivos de extremo], [Componentes],
[Conexiones], [Varios] y [Multiusuario]. Cada categoría contiene al menos un
grupo de subcategorías.
Las redes son la base
Treinta mil millones de objetos proporcionan billones de
gigabytes de datos. ¿Cómo pueden trabajar en conjunto para mejorar nuestra toma
de decisiones y mejorar nuestras vidas y negocios? Las redes que utilizamos a
diario son las que permiten estas conexiones. Estas redes proporcionan la base
para Internet y el mundo digitalizado.
Los métodos que utilizamos para comunicarnos continúan
evolucionando. Si bien una vez estuvimos limitados por cables y enchufes, las
innovaciones en tecnología digital e inalámbrica han ampliado considerablemente
el alcance de nuestras comunicaciones.
Las redes componen la base del mundo digitalizado. Hay redes de
todo tamaño. Pueden ir desde redes simples, compuestas por dos PC, hasta redes
que conectan millones de dispositivos.
Las redes domésticas simples permiten la conectividad a
Internet. También permiten compartir recursos, por ejemplo: impresoras,
documentos, imágenes y música, entre algunas computadoras locales.
En las empresas y las grandes organizaciones, las redes pueden
proporcionar productos y servicios a los clientes a través de su conexión a
Internet. Las redes también se pueden utilizar en una escala aun mayor para
proporcionar consolidación, almacenamiento y acceso a la información en los
servidores de red. Las redes permiten el envío de correo electrónico, la
mensajería instantánea y la colaboración entre empleados. Asimismo, la red
permite la conectividad a nuevos lugares, lo que le da más valor a las máquinas
en entornos industriales.
Internet es la red más grande que existe, y proporciona “la capa
electrónica” que rodea al planeta de manera eficaz. De hecho, el término
Internet significa "red de redes". Internet es, literalmente, una
colección de redes privadas y públicas interconectadas. Las empresas, las redes
de oficinas pequeñas y las redes domésticas se conectan a Internet.
Tipos de redes
Las redes modernas pueden ser un poco confusas. Existen muchos
tipos que se caracterizan por su tamaño geográfico, por la cantidad de
dispositivos o las redes que conectan y por si admiten dispositivos móviles o
no. Las redes también se pueden caracterizar por su función y el propósito.
Red de área personal (PAN)
Las redes de área personal son redes pequeñas en las que los
dispositivos inalámbricos conectados están dentro de alcance personal (Figura
1). Conectar el smartphone a su automóvil utilizando Bluetooth es un ejemplo de
una PAN.
Red de área local (LAN)
Las LAN normalmente son redes de un área geográfica pequeña o
local, como una vivienda, una pequeña empresa o un departamento dentro de una
gran corporación (Figura 2). Las LAN pueden conectar dos o más dispositivos,
como computadoras, impresoras y dispositivos inalámbricos. Las LAN proporcionan
acceso a redes de área extensa (WAN) más grandes y a Internet.
Redes de área extensa (WAN)
El término WAN, por lo general, se refiere a un conjunto de
redes LAN que proporciona conectividad entre redes LAN e Internet para empresas
y gobiernos.
Internet Internet es un sistema de red
global multicapa que conecta cientos de millones de computadoras (Figura 3).
Internet no es propiedad de ninguna persona ni organización. Este enorme
sistema se compone de múltiples redes locales y globales que prestan servicios
con fines privados, públicos, empresariales, académicos y gubernamentales.
Permite el intercambio de datos entre más de cien países vinculados con
Internet en todo el mundo. Esto hace que Internet sea un enorme transportador
de diversos servicios y recursos de información. Algunos de estos incluyen
texto y datos multimedia, correo electrónico, chat en línea, VoIP,
transferencia de archivos y uso compartido de archivos, comercio electrónico y
juegos en línea.
Redes inalámbricas
Las redes inalámbricas son redes de computadoras que usan ondas
electromagnéticas en lugar de los cables para transportar señales por las
diversas partes de la red. Las redes inalámbricas pueden describirse como PAN,
LAN o WAN, según su alcance.
Debido a que navegar por Internet se considera una actividad
diaria normal, los puntos de acceso inalámbricos se han vuelto un lugar común
en la infraestructura de comunicaciones de la actualidad. Lugares conectados a
Internet pública incluyen bibliotecas, aeropuertos, cafeterías, hoteles y
cibercafés especializados. Gracias a la tecnología Wi-Fi, ahora cualquier
persona con una computadora portátil, tablet o Smartphone puede acceder
Internet. La figura 4 muestra las distintas categorías de redes inalámbricas
disponibles.
La nube
El término "en la nube" se usa en muchas formas
diferentes. La nube no es tanto un tipo de red sino una colección de centros de
datos o grupos de servidores conectados que se utilizan para almacenar y
analizar datos, proporcionar acceso a aplicaciones en línea y proporcionar
servicios de respaldo para uso personal y corporativo (Figura 5). Los servicios
en la nube son proporcionados por diferentes organizaciones.
Perímetro
Perímetro se refiere al "perímetro" físico de una red
corporativa.
Computación en la niebla
Con la cantidad cada vez mayor de sensores que utiliza Internet
de las cosas, a menudo existe la necesidad de almacenar los datos de los
sensores de manera segura y más cercana a donde se pueda analizar la
información generada. Estos datos analizados luego se pueden usar de manera
rápida y efectiva para actualizar o modificar los procesos dentro de la
organización. La figura 6 muestra un ejemplo de una ciudad inteligente y la
forma en que se procesa los datos de los sensores. La niebla se encuentra en el
perímetro de una red empresarial o corporativa. Los servidores y los programas
permiten que los datos se procesen previamente para su uso de inmediato. Luego
los datos procesados anteriormente se pueden enviar a la nube para obtener un
análisis informático más exhaustivo si es necesario.
1.1.2.El crecimiento de los dispositivo de loT
¿Qué es IoT?

Internet de las cosas (IoT) es la conexión de millones de
dispositivos inteligentes y sensores conectados a Internet. Estos dispositivos
y sensores conectados recopilan y comparten datos para que muchas organizaciones
las usen y evalúen. Estas organizaciones incluyen empresas, ciudades,
gobiernos, hospitales y personas. IoT ha sido posible, en parte, debido a la
llegada de procesadores asequibles y a las redes inalámbricas. Los objetos
previamente inanimados, como picaportes o lámparas, ahora pueden contar con un
sensor inteligente que puede recopilar y transferir datos a una red.
Los investigadores estiman que más de 3 millones de nuevos
dispositivos se conectan a Internet todos los meses. Los investigadores también
estiman que en los próximos cuatro años habrá más de 30 mil millones los
dispositivos conectados en todo el mundo.
Tal vez un tercio de los dispositivos conectados serán
computadoras, Smartphone, tablets y televisores inteligentes. Los restantes
dos tercios serán otros tipos de las "cosas": sensores, actuadores y
dispositivos inteligentes recientemente inventados que supervisen, controlen,
analicen y optimicen el mundo.
Algunos ejemplos de sensores inteligentes conectados son:
timbres inteligentes, puertas de garaje, termostatos, equipos portátiles
deportivos, marcapasos, semáforos, lugares de estacionamiento y muchos más. El
límite de los diferentes objetos que podrían volverse sensores inteligentes
está fijado solo por nuestra imaginación.
¿Cómo se conectan los
dispositivos de IoT a la red?
Un sensor debe estar conectado a una red para que los datos
recopilados puedan guardarse y compartirse. Esto requiere una conexión Ethernet
cableada o una conexión inalámbrica a un controlador. Los controladores son
responsables de recopilar datos de los sensores y proporcionar conectividad
hacia la red o Internet. Los controladores pueden tener la capacidad de tomar
decisiones inmediatas o de enviar datos a una computadora más potente para su
análisis. Esta computadora más potente puede estar en la misma LAN que el
controlador, o bien puede ser accesible únicamente por medio de una conexión a
Internet.
Los sensores a menudo funcionan junto con un dispositivo
denominado actuador. Los actuadores toman la entrada eléctrica y transforman la
entrada en acción física. Por ejemplo, si un sensor detecta calor excesivo en
una sala, el sensor envía la lectura de temperatura al microcontrolador. El
microcontrolador puede enviar los datos a un actuador, que a su vez encendería el
aire acondicionado.
La mayoría de los nuevos dispositivos, tales como equipos
portátiles para entrenamiento físico, marcapasos implantados, medidores de aire
en una mina y medidores de agua en el campo de un establecimiento agrícola,
requieren conectividad inalámbrica. Debido a que muchos sensores están "en
el campo" y son impulsados por baterías o paneles solares, se debe tener
en cuenta el consumo de energía. Se deben utilizar opciones de conexión de baja
potencia para optimizar y ampliar la disponibilidad del sensor.
Explore un hogar
inteligente
Packet Tracer tiene una amplia variedad de sensores y
dispositivos inteligentes que le permitirán diseñar hogares inteligentes,
ciudades inteligentes, fábricas inteligentes y redes eléctricas inteligentes.
Para encontrar los sensores disponibles y los dispositivos
inteligentes, seleccione Dispositivos finales en el cuadro de Selección de
dispositivos en la parte inferior izquierda de la pantalla. A continuación,
seleccione la subcategoría Hogar. En esta subcategoría, verá muchos
dispositivos de IoT, incluido un acondicionador de aire, un ventilador de
techo, una cafetera y un detector de monóxido de carbono. Estos dispositivos se
pueden conectar a su red de forma inalámbrica o con un cable físico.
Para conectar los dispositivos a su red, necesita un Home
Gateway (Gateway residencial) o un servidor de registro. Para encontrar un Home
Gateway (Gateway residencial), seleccione Dispositivos de red de la casilla de
Selección de dispositivos y luego seleccione Wireless Devices (Dispositivos
inalámbricos) a partir de las subcategorías.
Para controlar los dispositivos, tiene dos opciones.
1. Puede interactuar directamente con un dispositivo. Mantenga
presionada la tecla Alt y al mismo tiempo haga clic el dispositivo para
encenderlo o apagarlo.
2. Puede conectarse remotamente a través de la red. A través de
una PC remota, una tablet o un smartphone, use un navegador web para conectarse
al Home Gateway (Gateway residencial) o al servidor de registro. Desde aquí,
puede activar o desactivar los dispositivos mediante las funciones del Home
Gateway (Gateway residencial) o el servidor de registro.
Para configurar dispositivos, haga clic en el dispositivo para
abrirlo. Una vez que se abre, se muestran varias pestañas:
• Especificaciones – describe las funciones, el uso, el control
remoto y local del dispositivo
• Físico – módulos y conexiones de alimentación disponibles
• Config. – muestra el nombre para mostrar, el número de serie,
la configuración de la red y el servidor de IdT
• Atributos – muestra los atributos del dispositivo como MTBF,
consumo de energía y costo
Para configurar el Home Gateway (Gateway residencial), haga clic
en el dispositivo. En el dispositivo, se muestran varias pestañas:
• Físico – módulos y alimentación disponibles
• Config. – muestra el nombre para mostrar, las interfaces
(Internet, LAN y tecnología inalámbrica) que se configurarán
• GUI – muestra servicios que se encenderán/apagarán
Acceso a una red de IoT
y su supervisión
El dispositivo de Home Gateway (Gateway residencial) actúa como
conexión local con sus dispositivos inteligentes de IoT. Este dispositivo se
diseñó para proporcionar acceso a Internet, conectividad inalámbrica y lógica
local para dispositivos inteligentes. El dispositivo de Home Gateway (Gateway
residencial) proporciona un servicio de registro de IoT que siempre está
encendido y un servicio de detección automática de las Cosas en la Ethernet
local y la red inalámbrica. Después de que los dispositivos se conectan al Home
Gateway (Gateway residencial), el usuario puede controlar y supervisar los
dispositivos inteligentes desde su smartphone, tablet o PC.
Una vez que un dispositivo de Home Gateway (Gateway residencial)
se ha agregado al espacio de trabajo lógico, haga clic en el dispositivo. Verá
lo siguiente:
• Ficha Físico – el dispositivo tiene un puerto de Internet,
cuatro puertos LAN y varias antenas.
• Ficha Configuración – muestra las interfaces y la
configuración de red que se pueden configurar.
• Ficha GUI – muestra el servidor de registro dentro del
dispositivo que permite la interacción con los dispositivos de IoT. Está
activado de manera predeterminada, pero puede desactivarse.
• Ficha atributos – está en blanco de manera predeterminada,
pero puede mostrar características y valores como MTBF, costo, fuente de
energía y voltaje.
Después de conectar el Home Gateway (Gateway residencial) a una
red existente, seleccione la pestaña Config (Configuración). Las interfaces
Internet e inalámbricas deben obtener información sobre la asignación de
direcciones IP de la red.
Para conectarse de forma inalámbrica un dispositivo de IoT, como
un ventilador, haga clic en el ventilador y seleccione la pestaña Config
(Configuración). Seleccione el botón Opciones avanzadas en la esquina inferior
derecha para ver más opciones.
Para configurar y registrar el ventilador con Home Gateway
(Gateway residencial):
Paso 1. Seleccione I/O Config (Configuración de E/S) y,
luego, seleccione el adaptador inalámbrico en la lista del menú desplegable de
adaptadores de red.
Paso 2: Seleccione Config (Configuración). para verificar que el
ventilador haya establecido una conexión inalámbrica con el SSID correcto. Esto
también puede hacerse visualmente mirando el ventilador en el espacio de trabajo.
Paso 3: Seleccione Config (Configuración)/Ajustes y seleccione
el Home Gateway (Gateway residencial) como dispositivo de registro del servidor
de IoT.
Para controlar el ventilador de forma remota
Paso 1. Agregue una tablet, PC o Smartphone al espacio de
trabajo y conéctelo al Home Gateway (Gateway residencial). Haga clic en el
dispositivo remoto y seleccione Escritorio/Configuración. IP para verificar la
conectividad.
Paso 2: Vuelva al escritorio y seleccione el navegador web.
Utilice la dirección del gateway predeterminado del dispositivo remoto como
URL. Esta es la dirección del Home Gateway (Gateway residencial). Después de
que esté en el Home Gateway (Gateway residencial), debería ver el ventilador
registrado y poder modificar su configuración.
El futuro de las redes
En la actualidad, las redes conectan miles de millones de
sensores. A través del software, los datos de estos sensores pueden realizar
cambios en entornos físicos sin intervención humana.
Como se mencionó anteriormente, todos los dispositivos digitales
funcionan según los programas informáticos y los datos suministrados. La
inteligencia artificial implica que estos dispositivos son capaces de pensar
por sí mismos. Si se programan de manera correcta, los dispositivos
inteligentes pueden evaluar los datos que reciben, y modificar los procesos o
la configuración de inmediato. Si se les proporcionan los datos suficientes,
pueden “aprender” y modificar sus propios códigos según los nuevos parámetros.
Entonces, ¿Qué es lo siguiente?
Sabemos que se puede escribir software para permitir que los
datos modifiquen parámetros dentro del código a fin de cambiar la configuración
de la temperatura de su hogar o la velocidad con la que su hijo adolescente
puede conducir el automóvil familiar. ¿Por qué no ofreceríamos software con
reglas, pautas o intenciones, de modo que los datos pudieran modificar la red,
las funciones de la infraestructura o las funciones de seguridad dentro de una
red? Esto es, en realidad, ya posible. Se denomina Redes basadas en la
intención (IBN).
El siguiente es un ejemplo simple para comprender mejor el
concepto de IBN: es posible que la empresa establezca que un empleado
contratado reciba acceso a solo un conjunto específico de datos y aplicaciones.
Esta es la intención. En un sistema de redes basadas en la
intención (IBN), todos los dispositivos de red se configurarán automáticamente
para cumplir con este requisito en toda la red, sin importar dónde esté
conectado el empleado. La VLAN, la subred, la ACL y todos los otros detalles se
definen y configuran automáticamente siguiendo las mejores prácticas. La
intención se debe definir una sola vez en una consola de administración
central y luego la red la ratificará continuamente, incluso si hay cambios en
la red.
Resumen
El mundo rápidamente se cubre por redes que permiten que los
dispositivos digitales se interconecten y transmitan. Conforme las redes
digitales sigan creciendo en todo el mundo y conforme los beneficios económicos
de la digitalización sigan aumentando, seremos testigos de una transformación
digital. La transformación digital es la aplicación de la tecnología digital
para proporcionar el entorno adecuado para la innovación de las empresas y la
industria.
Los sensores ahora están en todas partes, y recopilan y
transmiten cantidades enormes de datos. Los datos generados pueden almacenarse
y analizarse en una fecha posterior, o se pueden analizar y utilizar
inmediatamente. Puede haber sensores en el hogar, en los semáforos, en los
campos agrícolas y en nuestros organismos. Los datos analizados son usados por
gobiernos, ciudades, empresas y personas para generar cambios, como el
monitoreo del medioambiente, el pronóstico del crecimiento de la población, el
control de residuos o la protección de una vivienda.
Las redes componen la base del mundo digitalizado. Existen
muchos tipos de redes que se caracterizan por su tamaño geográfico, por la
cantidad de dispositivos o redes que conectan y por si admiten dispositivos
móviles o no. Las redes también se pueden caracterizar por su función y el
propósito.
·
PAN: Bluetooth
·
LAN
·
WAN: Internet, la nube, computación en la niebla
·
Tecnología inalámbrica: Wi-Fi, red celular
Por lo general, un sensor se conecta a un controlador mediante
una conexión inalámbrica. Los controladores recopilan los datos de los
sensores, y envían los datos para su almacenamiento o análisis. Los
controladores pueden tener la capacidad para tomar decisiones inmediatas o
pueden funcionar junto con un dispositivo denominado actuador. Los actuadores
toman la entrada eléctrica y transforman la entrada en acción física.
En la actualidad, las redes conectan miles de millones de
sensores y tienen la capacidad para realizar cambios en entornos físicos sin
intervención humana. El futuro de las redes girará en torno a la inteligencia
artificial (AI) y las redes basadas en la intención (IBN). Si se programan de
manera correcta, los dispositivos inteligentes pueden evaluar los datos que
reciben, y modificar los procesos o la configuración. Si se les proporcionan
los datos suficientes, pueden “aprender” y modificar sus propios códigos según
los nuevos parámetros.
Diagramas de flujo
Los diagramas de flujo se utilizan en diferentes industrias,
entre ellas ingeniería, ciencias físicas y programación de computadoras, en los
cuales se requiere una comprensión completa de los procesos o flujos de
trabajo. Los diagramas de flujo son diagramas que se utilizan para representar
estos procesos o flujos de trabajo.
Los diagramas de flujo ilustran cómo debe funcionar un proceso.
Los diagramas de flujo no requieren terminología ni símbolos complejos y
específicos de la industria. Un diagrama de flujo debe ser fácil de entender
sin tener que ser un experto en el campo elegido.
Los diagramas de flujo deben mostrar los estados de entrada, las
decisiones tomadas y los resultados de dichas decisiones. Es importante mostrar
los pasos que se deben seguir cuando el resultado de una decisión es sí o no.
Es común que los programadores creen el primer borrador de un programa sin ningún lenguaje de programación específico. Estos programas independientes del lenguaje se centran en la lógica en lugar de la sintaxis y se conocen como algoritmos. Un diagrama de flujo es una manera común de representar un algoritmo. En la figura, se muestra un ejemplo de diagrama de flujo.
Software del sistema,
software de aplicación y lenguajes informáticos
Existen dos tipos comunes de software informático: software del
sistema y software de aplicaciones.
Los programas para software de aplicaciones se crean con el fin
de realizar una tarea determinada o un conjunto de tareas. Por ejemplo, Cisco
Packet Tracer es un programa de simulación de red que permite que los usuarios
modelen redes complejas y formulen preguntas hipotéticas sobre el
comportamiento de la red.
El software del sistema funciona entre el hardware de la
computadora y el programa de aplicaciones. Es el software del sistema que
controla el hardware de la computadora y permite que los programas de las
aplicaciones funcionen. Entre los ejemplos comunes de software del sistema se
incluyen Linux, Apple OSX, y Microsoft Windows.
El software del sistema y el software de aplicaciones se crean
con un lenguaje de programación. Un lenguaje de programación es un lenguaje
formal diseñado para crear programas que comunican instrucciones al hardware de
la computadora. Estos programas implementan algoritmos que son conjuntos
autónomos y pormenorizados de las operaciones que se deben realizar.
Algunos lenguajes informáticos compilan sus programas en un
conjunto de instrucciones de lenguaje de máquina. C++ es un ejemplo de lenguaje
informático compilado. Otros interpretan estas instrucciones directamente sin
primero compilarlos en un lenguaje de máquina. Python es un ejemplo de un
lenguaje de programación interpretado o interpretativo. En la figura, se
muestra un ejemplo de código de Python.
Cuando se determina el lenguaje de programación y se diagrama el
proceso en un diagrama de flujo, puede comenzar la creación del programa. La
mayoría de los lenguajes informáticos usan estructuras de programa similares.
Los lenguajes de programación utilizan variables como depósitos
dinámicos para alojar frases, números u otra información importante que pueda
utilizarse en la codificación. En lugar de repetir valores específicos en
varios lugares en todo el código, se puede utilizar una variable. Las variables
pueden contener el resultado de un cálculo, el resultado de una consulta en una
base de datos o algún otro valor. Esto significa que el mismo código funcionará
con diferentes porciones de datos sin que se deban reescribir.
Por ejemplo "x + y = z" es un ejemplo de una expresión
de programación. En esta expresión, "x", "y" y
"z" son las variables que pueden representar caracteres, cadenas de
caracteres, valores numéricos o direcciones de memorias.
Una variable puede referirse a un valor. Por ejemplo, la
expresión "a = 10" asocia el valor de 10 con la variable a.
Una variable también puede representar una ubicación de memoria.
La expresión "a = 10" representa que el valor de 10 se almacena en
algún lugar de la memoria de la computadora, que se denomina "a".
Las variables se pueden clasificar en dos categorías:
·
Variables locales:
estas son variables que se encuentran dentro del alcance de un
programa/función/procedimiento.
·
Variables globales:
estas son variables que se encuentran dentro del alcance en el tiempo de
ejecución del programa. Cualquier parte del programa puede recuperarlas.
Las variables permiten que los programadores creen rápidamente
una amplia variedad de programas simples o complejos que le indiquen a la
computadora que se comporte de manera predefinida.
Estructuras básicas de
programas
Las personas imparten la lógica a las computadoras a través de
programas. Mediante estructuras lógicas específicas, un programador puede
preparar una computadora para tomar decisiones. Las estructuras lógicas más
comunes son las siguientes:
·
IF – THEN: esta
estructura lógica permite que la computadora tome una decisión según el
resultado de una expresión. Un ejemplo de expresión es myVar > 0. Esta
expresión es verdadera si el valor almacenado en la variable myVar es mayor que
cero. Cuando se encuentra una estructura IF-THEN, evalúa la expresión
proporcionada. Si la expresión es falsa, la computadora continúa con la
siguiente estructura, ignorando el contenido del bloque IF - THEN. Si la
expresión es verdadera, la computadora ejecuta la acción asociada antes de
pasar a la siguiente instrucción del programa. (Figura 1).
·
Bucles FOR: se
utilizan para ejecutar un conjunto específico de instrucciones una cantidad de
veces específica según una expresión. El término bucle proviene del hecho de
que el conjunto de instrucciones se ejecuta varias veces. Si bien la sintaxis
del bucle FOR varía de un lenguaje al otro, el concepto sigue siendo igual. Una
variable actúa como un contador dentro de un rango de valores que se identifica
con un valor mínimo y un valor máximo. Cada vez que se ejecuta el bucle,
aumenta la variable del contador. Cuando el contador es igual al valor máximo
definido, se abandona el bucle y la ejecución avanza a la siguiente
instrucción. (Figura 2).
·
Bucles WHILE: se
utilizan para ejecutar un conjunto específico de instrucciones mientras que una
expresión sea verdadera. Observe que a menudo las instrucciones dentro del
bucle eventualmente harán que la expresión se evalúe como falsa.
(Figura 3).
es una herramienta de programación visual creada para ayudar a los principiantes a comprender los conceptos de programación. Mediante el uso de múltiples tipos de bloques, Blockly permite que un usuario cree un programa sin introducir ninguna línea de código. Esto se muestra en la Figura 1.
Blockly implementa la programación visual mediante la asignación de diferentes estructuras de programas a bloques de color. Los bloques también contienen casillas y espacios que permiten que los programadores ingresen los valores requeridos por la estructura. Los programadores pueden unir las estructuras de programación arrastrando y asociando los bloques adecuados. Las estructuras de programación, como condicionales, bucles y variables, están todas disponibles para utilizar.
Crear una nueva variable en Blockly es sencillo: se debe llevar el bloque variable hasta el espacio de trabajo y completar el valor de la casilla. También se puede cambiar el contenido de una variable mientras se ejecuta el programa.
La figura 2 muestra una variable de Blockly.
Blockly también admite funciones. Al igual que las variables, Blockly tiene bloques específicos para representar funciones. Asimismo, los programadores simplemente seleccionan y arrastran los bloques de funciones hasta el área del espacio de trabajo y completan las casillas requeridas.
Observe en las figuras 1 y 2 que el bloque de variables y el bloque de impresión en pantalla tienen una pestaña biselada en la parte inferior y una ranura en la parte superior. Esto significa que los dos bloques pueden conectarse para crear una secuencia de programa. Blockly ejecutará primero el bloque de la parte superior y luego, pasará al bloque debajo de este.
Se encuentran disponibles otros bloques, como el bloque IF-THEN, el bloque WHILE y el bloque FOR. También hay bloques específicos para los sensores y los actuadores.
Blockly se puede utilizar para traducir el código basado en bloques a Python o JavaScript. Esto es muy útil para los programadores principiantes.
¿Qué es Python?
Python es un lenguaje muy común diseñado para ser fácil de leer y escribir. La comunidad de desarrolladores de Python agrega valor al lenguaje creando todo tipo de módulos y poniéndolos a disposición de otros programadores.
La filosofía base del lenguaje se resume en el documento Zen de Python:
- Hermoso es mejor que feo.
- Explícito es mejor que implícito.
- Simple es mejor que complejo.
- Complejo es mejor que complicado.
- La legibilidad es importante
A pesar del hecho de que Python está diseñado para ser simple, aún hay una curva de aprendizaje. Para que sea más fácil aprender Python, un principiante puede utilizar Blockly para mejorar la comprensión de Python.
Si bien los distintos lenguajes de programación tienen diferente semántica y sintaxis, todos comparten la misma lógica de programación. Los principiantes pueden utilizar Blockly para crear fácilmente un programa independiente del lenguaje, exportarlo como código de Python y usar el código recientemente creado para aprender la sintaxis, la estructura y la semántica de Python.
Las Figuras 1 y 2 muestran el programa del Juego de Adivinanzas en formatos de Blockly y Python.
Intérprete de Python
Python es un lenguaje interpretado; por lo tanto, requiere un intérprete para analizar y ejecutar el código de Python. El intérprete de Python comprende y ejecuta el código de Python. El código de Python pueden crearse en cualquier editor de texto y los intérpretes de Python están disponibles para muchos sistemas operativos. Los desarrolladores de Python pueden crear e implementar los programas de Python prácticamente en cualquier sistema operativo. Las herramientas de terceros, como Py2exe y Pyinstaller, también pueden utilizarse para incluir el código fuente de Python en un archivo ejecutable, lo que elimina la necesidad de intérpretes de Python al ejecutar el código de Python.
En las máquinas Linux, el intérprete de Python está instalado generalmente en /usr/bin/python o /usr/bin/python3 (según las versiones de Python disponibles en el sistema). Con el nuevo instalador Windows de Python, Python se instala de manera predeterminada en el directorio de inicio del usuario. En equipos Windows más antiguos, Python se colocaba en C:\PythonXX (donde XX es la versión de Python). Una vez instalado el intérprete de Python, funciona de manera similar al shell de Linux. Esto significa que, cuando se invoca sin argumentos, lee y ejecuta comandos interactivamente. Cuando se invoca con un argumento de nombre de archivo o con un archivo como entrada estándar, lee y ejecuta un script de ese archivo.
Para iniciar el intérprete, simplemente escriba python o python3 en el indicador del shell.
Algunos sistemas heredados todavía se están ejecutando en una versión anterior de Python 2, pero muchos sistemas nuevos están migrando a la nueva versión 3 de Python. La versión de Python está impresa en la primera línea cuando se inicia el intérprete (figura 1). Este curso se basa en el código de Python 3.
Cuando se llama al intérprete de Python sin argumentos y los comandos se ingresan mediante el teclado, el intérprete se dice que está en modo interactivo. En este modo, el intérprete espera los comandos. El indicador principal está representado por tres signos mayor que (>>>). Las líneas de continuación están representadas por tres puntos (...). La línea de seguimiento es el indicador secundario predeterminado.
El indicador >>> indica que el intérprete está listo y espera los comandos.
Las líneas de seguimientos son necesarias al introducir un código multilínea. La Figura 2 muestra el bloque IF - THEN escrito en Python.
Otra forma de utilizar el intérprete es python -c command [arg]... que ejecuta las declaraciones en el comando. Como las declaraciones de Python suelen contener espacios u otros caracteres determinados del shell, se recomienda incluir el comando completo entre comillas simples.
Variables y declaraciones básicas en Python
El intérprete recibe y ejecuta las declaraciones interactivamente.
El intérprete actúa como calculadora simple. Puede ingresar una expresión y escribirá el valor. La sintaxis de la expresión es directa. Los operadores +, -, * y / funcionan al igual que en la mayoría de los otros lenguajes (por ejemplo, Pascal o C). Los paréntesis (()) pueden utilizarse para agrupar, como se muestra en la Figura 1.
Funciones útiles y tipos de datos en Python
Python admite muchas funciones y tipos de datos útiles. Algunos de los más importantes son los siguientes:
Range()
La función de range() genera una lista de números utilizados generalmente para iterar con bucles FOR. La Figura 1 muestra ejemplos de la función range().
- range(stop): es la cantidad de números enteros que se deberán generar a partir de cero.
- range([start], stop[, step]: es el número inicial de la secuencia, el número final de la secuencia y la diferencia entre cada número de la secuencia.
Tuplas
Una tupla es una secuencia de objetos incambiables de Python. Las tuplas son secuencias separadas por paréntesis. La Figura 2 muestra ejemplos de tuplas.
Listas
Las listas son una secuencia de objetos cambiables de Python. Las listas pueden crearse configurando distintos valores separados por comas entre corchetes. La Figura 3 muestra ejemplos de listas y cómo pueden actualizarse.
Conjuntos
Los conjuntos son colecciones no ordenadas de elementos únicos. Las aplicaciones comunes incluyen verificación de pertenencia, la eliminación de duplicados de una secuencia y cálculos de operaciones matemáticas estándar en conjuntos, como la intersección, unión, diferencia y diferencia simétrica. La Figura 4 muestra ejemplos de conjuntos.
Diccionario
Un diccionario es una lista de elementos separados por comas. Cada elemento es una combinación de un valor y una clave única. Cada clave se separa de su valor por dos puntos. El diccionario completo se escribe entre llaves. Se puede acceder a, actualizar o eliminar los elementos del diccionario. También hay muchas funciones integradas en el diccionario, como la función que compara elementos dentro de diferentes diccionarios y la que proporciona un conteo de la cantidad total de elementos de un diccionario. La Figura 5 muestra ejemplos de diccionarios.
Estructuras de programación en Python
Al igual que otros lenguajes, Python implementa la estructura IF - THEN. Los bloques IF-THEN se pueden utilizar para permitir que el código tome decisiones según el resultado de una expresión, como se muestra en la figura 1.
El código realiza algunas pruebas y publica un mensaje conforme a los resultados de la prueba. Observe que Python también implementa dos subestructuras denominadas ELSE y ELIF. ELSE permite al programador especificar instrucciones para ejecutar si la expresión es falsa. La forma abreviada de ELSE IF, ELIF, se usa para realizar una segunda prueba en caso de que la primera expresión sea falsa y se requiera otra prueba. Puede haber cero o más ELIF y la parte ELSE es opcional.
El bucle FOR en Python itera los elementos de cualquier secuencia (una lista o una cadena) en el orden en que aparecen en la secuencia, como se muestra en la figura 2.
El bucle WHILE ejecuta un bloque de códigos si la expresión es verdadera. El programa que se muestra en la figura 3, utiliza un bucle WHILE para calcular y mostrar una subsecuentica inicial de una serie Fibonacci en la que cada número de la serie es la suma de los dos anteriores.
La tercera línea contiene un operador de asignación múltiple. Las variables a y b reciben los nuevos valores de 0 y 1 en una única declaración.
El bucle WHILE calcula el término siguiente en la serie Fibonacci siempre que la condición b < 10 sea verdadera. Como en C, Python asume cualquier valor del número entero que no sea cero como verdadero y cero como falso. La prueba que se utiliza en la figura es una comparación simple.
Observe que el cuerpo del bucle está indentado. La indotación es la forma en que Python agrupa las declaraciones. En el indicador interactivo, debe escribir una tabulación o espacio para cada línea indentada. Las entradas más complejas de Python deben realizarse con un editor de texto. Cuando una declaración compuesta se ingresa interactivamente, debe ir secundada por una línea en blanco para indicar la finalización (porque el analizador no puede adivinar qué línea será la última). Observe que cada línea dentro de un bloque básico se debe indentar por la misma cantidad.
Definición de creación de un prototipo
La creación de prototipos es el proceso de creación de un modelo de trabajo rudimentario de un producto o sistema. Para crear un prototipo en IoT, resulta útil tener habilidades de diseño, eléctricas, físicas y mecánicas (trabajar con las manos para armar cosas) y de programación, así como comprender el funcionamiento de TCP/IP. Pero no necesita ser un experto en ninguna de estas áreas. De hecho, crear un prototipo lo ayuda a mejorar estas aptitudes.
Debido a que IoT aún está en desarrollo, todavía existen tareas desconocidas por descubrir. Este es un gran momento para inventar algo que forme parte de IoT. Debido a que IoT combina personas, procesos, datos y objetos, no hay un límite para los inventos que IoT pueda ayudar a crear y luego incorporar.
Cómo crear un prototipo
¿Cómo se crea un prototipo? Existen algunas formas de comenzar. Un equipo de Google utilizó el “método rápido de creación de un prototipo” para crear Google Glass.
Materiales físicos
Un buen lugar para comenzar es, por supuesto, Internet. Las personas intercambian ideas hace siglos, pero Internet permite el intercambio de ideas en un nivel totalmente nuevo. Personas que nunca se encontraron físicamente ahora puedan colaborar y trabajar juntas. Existen varios sitios web que puede visitar para conectarse con otros creadores.
Maker Media es una plataforma global para conectar a los creadores entre sí a fin de que intercambien proyectos e ideas. La plataforma también proporciona un lugar donde los creadores pueden buscar y adquirir productos para sus proyectos. Para obtener más información.
Es útil estar capacitado para trabajar con ciertos materiales; por ejemplo, la madera y el metal son materiales comunes en la creación de prototipos, pero para un principiante podría ser difícil usarlos. Es posible que se sorprenda con lo que puede llegar a hacer con plástico, arcilla, papel y cables. Realice una búsqueda en Google para obtener más información o ideas sobre cómo trabajar con los diferentes materiales de creación de prototipos.
LEGO Mindstorms tiene una gran comunidad de colaboradores y fanáticos. Con LEGO Mindstorms, puede crear robots de LEGO y controlarlos mediante una aplicación. Los equipos vienen con todo lo que se necesita para que funcione. Visite LEGO Mindstorms.
e modelos que consiste en bandas de metal, placas, vigas angulares, ruedas, ejes y engranajes, todos reutilizables, con tuercas y pernos para conectar las piezas. Le permite armar prototipos funcionales y dispositivos mecánicos.
La impresión en 3D es el proceso por el cual se crea un objeto sólido basado en un archivo informático de un modelo en 3D. Una máquina, denominada “impresora 3D”, se conecta a la computadora. En la actualidad, varias empresas arman y venden impresoras 3D.
Kits de herramientas electrónicas
Los programas informáticos no se pueden ejecutar sin computadora. Aunque es posible crear programas para casi cualquier computadora, algunas plataformas están diseñadas para principiantes. A continuación, se indican algunas de las plataformas más populares.
Arduino es una plataforma informática física de código abierto basada en una simple placa de microcontroladores y un entorno de desarrollo para escribir el software de la placa. Se pueden desarrollar objetos interactivos que recogen información de diversos switches o sensores para controlar luces, motores y otros objetos físicos.
Aunque Arduino no es adecuado para utilizar como computadora, su baja necesidad de energía lo hace capaz de controlar otros dispositivos con eficacia.
Raspberry Pi es una computadora de bajo costo del tamaño de una tarjeta de crédito que se conecta a un monitor de computadora o a un televisor. Se opera mediante un teclado y un mouse estándar. Es capaz de funcionar como una computadora, desde navegar en Internet y reproducir video de alta definición, hasta crear hojas de cálculo, procesar texto y usar juegos.
Beaglebone es muy similar a Raspberry Pi en tamaño, requisitos de energía y aplicación. Beaglebone tiene más capacidad de procesamiento que Raspberry Pi, por lo tanto es una mejor opción para aplicaciones con mayores requisitos de procesamiento.
¿Qué son los datos masivos o Big Data?
Los datos son la información que proviene de una variedad de fuentes, como personas, imágenes, texto, sensores y sitios web. Los datos también provienen de dispositivos tecnológicos, como teléfonos celulares, computadoras, quioscos, tablets y cajas registradoras. Recientemente, se produjo un pico en el volumen de datos generados por los sensores. Los sensores ahora se instalan en una cantidad cada vez mayor de ubicaciones y objetos. Estas incluyen cámaras de seguridad, semáforos, automóviles inteligentes, termómetros e incluso vides y viñedos.
Los datos masivos son una gran cantidad de datos, pero ¿qué es una gran cantidad? Nadie tiene un número exacto que indique cuándo los datos de una organización se consideran "datos masivos". Las siguientes son tres características que indican que una organización puede estar haciendo frente a datos masivos:
- Tienen una gran cantidad de datos que requiere cada vez más espacio de almacenamiento (volumen).
- Tienen una cantidad de datos que crece exponencialmente rápido (velocidad).
- Tienen datos que se generan en diferentes formatos (variedad).
¿Qué cantidad de datos recopilan los sensores? Estos son algunos ejemplos aproximados:
- Los sensores de un automóvil autónomo pueden generar 4000 gigabits (Gb) de datos por día.
- El motor de un Airbus A380 genera 1 petabyte (PB) de datos en un vuelo de Londres a Singapur.
- Los sensores de seguridad en las operaciones de minería pueden generar hasta 2,4 terabits (TB) de datos por minuto.
- Los sensores de un hogar conectado inteligente pueden producir 1 gigabyte (GB) de información por semana.
Actividad
¿Dónde podemos almacenar los datos masivos?
Por lo general, los datos masivos se almacenan en varios servidores normalmente alojados en centros de datos. Para la seguridad, la accesibilidad y la redundancia, los datos se suelen distribuir y/o replicar en diferentes servidores en varios centros de datos diferentes.
Computación en la niebla
La computación en la niebla es una arquitectura que utiliza dispositivos “perimetrales” o de clientes de usuarios finales para ejecutar gran parte del procesamiento previo y almacenamiento requeridos por una organización. La computación en la niebla se diseñó con el fin de mantener los datos más cerca del origen para su procesamiento previo.
Los datos de sensores, en particular, se pueden procesar previamente más cerca de donde se recopilan. La información adquirida a partir de ese análisis de procesamiento previo puede introducirse en los sistemas de las empresas para modificar los procesos, de ser necesario. Dado que los datos del sensor previamente son procesados por terminales dentro del sistema de la empresa, las comunicaciones hacia y desde los servidores y dispositivos serían más rápidas. Esto requiere menos ancho de banda que el que se usa al conectarse constantemente con la nube.
Después de que los datos se hayan procesado previamente, a menudo se envían para su almacenamiento a más largo plazo, para realizar copias de respaldo o análisis más pormenorizados dentro de la nube.
La nube y la computación en la nube
Como se mencionó anteriormente, la nube es una colección de centros de datos o grupos de servidores conectados. El acceso al software, el almacenamiento y los servicios disponibles en los servidores, se obtiene a través de Internet mediante una interfaz de navegador. Los servicios en la nube son proporcionados por grandes empresas como Google, Microsoft y Apple. Los servicios de almacenamiento en la nube son proporcionados por diferentes proveedores, por ejemplo: Google Drive, Apple iCloud, Microsoft OneDrive y Dropbox.
Desde la perspectiva de una persona, mediante los servicios en la nube, usted podrá:
- Almacenar todos sus datos, como imágenes, música, películas y correos electrónicos, y así liberar espacio en el disco duro local
- Acceder a muchas aplicaciones en lugar de descargarlas en su dispositivo local
- Acceder a sus datos y aplicaciones en cualquier lugar, en cualquier momento y en cualquier dispositivo
Una de las desventajas de utilizar la nube es que sus datos podrían caer en las manos equivocadas. Sus datos están a la merced de la solidez de la seguridad de su proveedor de la nube elegida.
Desde la perspectiva de una empresa, los servicios y la computación en la nube permiten resolver una variedad de problemas de administración de datos:
- Permite el acceso a los datos organizacionales en cualquier momento y lugar.
- Optimiza las operaciones de TI de una organización suscribiéndose únicamente a los servicios necesarios..
- Elimina o reduce la necesidad de equipamiento, mantenimiento y administración de TI en el sitio.
- Reduce el costo de los equipos, electricidad, requisitos de planta físicos y las necesidades de capacitación del personal.
- Permite respuestas rápidas a los requisitos de volumen de datos crecientes.
Procesamiento distribuido
Desde una perspectiva de administración de datos, el análisis era sencillo cuando solamente creaban datos los seres humanos. La cantidad de datos era administrable y relativamente fácil de depurar. Sin embargo, con la explosión de los sistemas de automatización empresarial y el crecimiento exponencial de las aplicaciones web y los datos generados por máquinas, el análisis se torna cada vez más difícil de procesar. De hecho, el 90% de los datos que existen actualmente se generó solo en los últimos dos años. Este aumento del volumen dentro de un período breve es una propiedad del crecimiento exponencial. Este alto volumen de datos es difícil de procesar y analizar dentro de una cantidad de tiempo razonable.
En lugar de procesar grandes bases de datos con computadoras centrales grandes y potentes, y almacenarlas en arreglos de discos gigantes (escalabilidad vertical), el procesamiento de datos distribuidos toma el volumen de datos de gran tamaño y lo divide en partes más pequeñas. Estos volúmenes de datos más pequeños se distribuyen en muchas ubicaciones para que los procesen muchas computadoras con procesadores más pequeños. Cada computadora de la arquitectura distribuida analiza su parte del total de datos masivos (escalabilidad horizontal).
La mayoría de los sistemas de archivos distribuidos están diseñados para ser invisibles por los programas del cliente. El sistema de archivos distribuidos localiza los archivos y transfiere datos, pero los usuarios no pueden saber que los archivos están distribuidos entre muchos servidores o nodos diferentes. Los usuarios tienen acceso a estos archivos como si fueran locales en sus propias computadoras. Todos los usuarios tienen la misma vista del sistema de archivos y pueden acceder a los datos simultáneamente a otros usuarios.
Actividad realizada.
¿Por qué las empresas analizan datos?
Cada organización debe volverse más eficiente y más innovadora para mantenerse competitiva y relevante en el mundo digitalizado. IoT es una parte integral para lograr esa eficiencia e innovación.
El objetivo de muchas empresas es recopilar y analizar cantidades masivas de nuevos datos sobre el uso de productos y obtener conocimientos valiosos. El análisis de datos permite que las empresas comprendan mejor el impacto de sus productos y servicios, ajusten sus métodos y objetivos, y proporcionen a sus clientes mejores productos más rápido. La capacidad para obtener nuevas perspectivas a partir de los datos aporta valor a la empresa.
Para los negocios, los datos son el nuevo petróleo. Como el petróleo crudo, tiene valor, pero si está sin refinar no puede utilizarse con facilidad. El petróleo crudo debe transformarse en gasolina, plástico, sustancias químicas y otras sustancias para que sea un producto valioso. Es lo mismo con los datos. Los datos se deben descomponer y analizar para que tengan valor.
Los valores provienen de los dos tipos de datos procesados principales: transaccionales y analíticos. La información transaccional se captura y se procesa a medida que se producen eventos. La información transaccional se utiliza para analizar informes de ventas y planes de fabricación diarios a fin de determinar cuánto inventario transportar. La información analítica permite que se realicen tareas de análisis a nivel gerencial, como determinar si la organización debe instalar una nueva planta de fabricación o contratar personal de ventas adicional.
Fuentes de información
La fuente de los grandes conjuntos de datos es variada. Además de los datos de los sensores, otros datos se originan a partir de todo lo que se ha analizado, introducido y divulgado en Internet de fuentes tales como las siguientes:
- Sitios de redes sociales: Facebook, YouTube, eHarmony y Twitter
- HTTP, páginas web y motores de búsqueda en Internet
- Datos históricos de archivos públicos y privados
- Metadatos que se adjuntan a correos electrónicos, imágenes y documentos transmitidos
- Formularios médicos, formularios de seguros y formularios de impuestos
- Investigación genómica mediante ADN
Los datos recopilados se pueden clasificar como estructurados o no estructurados.
Los datos estructurados se crean mediante aplicaciones que utilizan entradas de formato “fijo”, como hojas de cálculo o formularios médicos. Incluso si los datos se consideran estructurados, diferentes aplicaciones crean archivos en distintos formatos que no necesariamente son compatibles unos con otros. Es posible que los datos estructurados se deban manipular en un formato común como CSV.
Los archivos de valores separados por comas (CSV) son un tipo de archivo de texto simple que usa comas para separar columnas en una tabla de datos, y el carácter de retorno de párrafo para separar filas. Cada fila es un registro. A pesar de ser comúnmente utilizados para importar y exportar en bases de datos y hojas de cálculo tradicionales, no existe un estándar específico. JSON y XML también son tipos de archivo de texto simple que utilizan un modo estándar para representar registros de datos. Estos formatos de archivo son compatibles con una amplia gama de aplicaciones. La conversión de datos en un formato común es una manera valiosa de combinar datos de diferentes orígenes.
Los datos no estructurados se generan en un estilo de “forma libre”, como audio, video, páginas web y tweets. Los datos no estructurados requieren diferentes herramientas para preparar los datos para análisis o procesamiento. Los siguientes son dos ejemplos:
- Los sitios web se crean para proporcionar datos a los seres humanos, no a las máquinas. Las herramientas que «raspan la red» (web scraping) extraen datos de páginas HTML automáticamente. Esto es similar al rastreador o araña web de un motor de búsqueda. Explora la web para extraer datos y crear bases de datos para responder a las consultas de búsqueda. El software de web scraping puede utilizar el Protocolo de transferencia de hipertexto o un explorador web para acceder a la World Wide Web. Por lo general, el proceso de web scraping es un proceso automatizado que utiliza un bot o un rastreador web para obtener datos. Los datos específicos se recopilan y se copian de la web a una base de datos o una hoja de cálculo. Los datos pueden luego analizarse fácilmente.
- Muchos proveedores de servicios web importantes como Facebook proporcionan interfaces estandarizadas para recopilar los datos automáticamente mediante interfaces de programación de aplicaciones (API). El enfoque más habitual es usar API RESTful. Las API RESTFul usan HTTP como el protocolo de comunicación y estructura de JSON para codificar los datos. Las páginas web de Internet como Google y Twitter recopilan grandes cantidades de datos estáticos y de series de tiempo. El conocimiento de API para estos sitios permite que los analistas y los ingenieros de datos tengan acceso a las grandes cantidades de datos que se generan constantemente en Internet.
Visualización de datos
La minería de datos es el proceso que se utiliza para convertir los datos sin procesar en información significativa al detectar patrones y relaciones en los grandes conjuntos de datos.
Para ser de valor, los datos sometidos a minería de datos se deben analizar y presentar a los administradores y las personas responsables de tomar decisiones. Existen muchas visualizaciones diferentes que se pueden utilizar para presentar el valor de los datos. La determinación del mejor gráfico a utilizar variará según lo siguiente:
- Cantidad de variables para mostrar
- Cantidad de puntos de datos en cada variable
- Representan los datos una línea de tiempo
- Los elementos requieren comparaciones
Algunos de los tipos más comunes de gráficos son circulares, de líneas, de columnas, de barras y de dispersión.
¿Qué es la automatización?
La automatización es cualquier proceso impulsado de forma automática que reduce y, a la larga, elimina, la necesidad de intervención humana.
La automatización estuvo una vez limitada a la industria de la fabricación. Las tareas altamente repetitivas como el ensamblaje automotriz se derivó a las máquinas y así nació la línea de montaje moderna. Las máquinas son excelentes para repetir la misma tarea sin fatigarse y sin los errores que los seres humanos son propensos a cometer en estos trabajos. Esto ofrece una mayor producción, debido a que las máquinas pueden trabajar las 24 horas sin interrupciones. Las máquinas también proporcionan un producto más uniforme.
IoT abre un nuevo mundo en el que las tareas que previamente requerían la intervención humana se pueden volver automatizadas. Como hemos visto, IoT permite que la recopilación de grandes cantidades de datos que se pueden analizar rápidamente para proporcionar información que pueda ayudar a guiar un evento o proceso.
Al adoptar los beneficios de IoT, la automatización se torna cada vez más importante. El acceso a una cantidad enorme de datos procesados rápidamente por sensores hizo que las personas comenzaron a pensar de qué manera aplicar los conceptos del aprendizaje automático y la automatización a tareas cotidianas. Muchas tareas de rutina se automatizan para mejorar su precisión y eficacia.
La automatización a menudo se relaciona con el campo de la robótica. Se utilizan robots en condiciones peligrosas como la minería, la lucha contra incendios y la limpieza de accidentes industriales, lo que reduce el riesgo para los seres humanos. También se utilizan en tareas tales como líneas de montaje automatizadas.
Cuando las cosas comienzan a pensar
¿Pueden pensar las cosas? ¿Un dispositivo puede aprender de su entorno? En este contexto, hay muchas definiciones de la palabra "pensar". Una posible definición es la capacidad para conectar una serie de partes relacionadas de información y usarlas para alterar un curso de acción.
Por ejemplo, cuando somos pequeños no tenemos el concepto de que el fuego es caliente y que poner la mano sobre el fuego puede causar dolor. El fuego puede parecer visualmente agradable y en realidad hacer que uno intente tocar las llamas. Rápidamente aprendemos que el fuego puede causar lesiones. Así comenzamos a relacionar la imagen del fuego con el dolor que produce. De ahí en adelante comenzamos a pensar en los resultados de tocar el fuego y basamos nuestras acciones en esta información adquirida.
Muchos dispositivos ahora incorporan la tecnología inteligente para modificar su comportamiento en determinadas circunstancias. Esto puede ser tan simple como cuando un dispositivo inteligente reduce su consumo de energía durante períodos de demanda pico o tan complejo como conducir un auto de manera autónoma.
Actividades realizada
¿Qué es la inteligencia artificial y el aprendizaje automático?
Algunas de las tareas que actualmente se consideran que requieren un grado de AI son los automóviles autónomos, el routing inteligente en redes de distribución de contenido, los juegos estratégicos y las simulaciones militares.
A medida que la tecnología se desarrolla, muchas de las tareas que antes requerían la AI se han convertido en rutina. Muchas de estas tareas migraron de la AI al aprendizaje automático (ML).
El ML es un subconjunto de AI que utiliza técnicas estadísticas para otorgar a las computadoras la capacidad para “aprender” de su entorno. Esto permite que las computadoras mejoren su funcionamiento en una tarea puntual sin que se programe específicamente para esa tarea.
Resulta especialmente útil cuando el diseño y la programación de algoritmos específicos son difíciles o inviables. Entre los ejemplos de dichas tareas en las ciencias informáticas se incluye la detección de código malicioso, la detección de intrusos en las redes, el reconocimiento de caracteres ópticos, el reconocimiento de voz por computadora y la visión por computadora.
Un objetivo de aprender es poder generalizar en función de la experiencia. Para las máquinas, esto implica la capacidad para realizar con precisión tareas nuevas y anteriormente no vistas luego de obtener experiencia con un conjunto de datos de aprendizaje. El conjunto de datos de capacitación debe provenir de datos que resulten representativos del conjunto mayor de datos. Este conjunto de datos permite que la máquina cree un modelo general de estos datos, que la ayudaría a realizar predicciones precisas.
ML en IoT
Una de las características de IoT es que permite la recopilación de conjuntos sumamente grandes de datos que pueden "enseñar" a los programas a responder en determinadas situaciones. Algunos de los usos más comunes de la tecnología de ML incluyen los siguientes:
- Reconocimiento de voz: en la actualidad muchas empresas ofrecen asistentes digitales que le permiten usar la voz para comunicarse con un sistema informático. Apple, Microsoft, Google y Amazon ofrecen este servicio. Estas empresas no solo permiten que se proporcionen comandos de manera oral sino también funciones de software de voz a texto.
- Recomendación del producto: los sistemas crean un perfil del cliente, y recomiendan productos o servicios en función de los patrones anteriores. Los usuarios de Amazon y eBay reciben recomendaciones sobre productos. Organizaciones como LinkedIn, Facebook y GooglePlus recomiendan usuarios con los que posiblemente desee conectarse.
- Reconocimiento de forma: hay programas que permiten que diagramas y notas elaborados a mano de forma rudimentaria se conviertan en diagramas y texto más formales. Esto permite que las formas y las líneas de escritura a mano se conviertan en texto más formal, que posteriormente puede buscarse y analizarse.
- Detección de fraudes de tarjetas de crédito: se crea un perfil sobre los patrones de compra de un cliente. Cualquier desviación de estos patrones activa una alerta y el sistema automáticamente realiza la acción. Esta acción varía desde rechazar la transacción hasta notificar a las autoridades. Algunos de los eventos que se detectan y podrían indicar una transacción fraudulenta incluyen la compra de productos que normalmente no se compran, compras en diferentes áreas geográficas, comprar rápidamente muchos productos diferentes y comprar artículos de valores elevados.
- Reconocimiento facial: las cámaras de seguridad están en todas partes, desde las tiendas, las calles, los aeropuertos hasta los centros de transporte. Estas cámaras analizan continuamente las aglomeraciones de personas, y normalmente buscan actividades peligrosas ilegales, pero también se pueden usar para identificar y rastrear a personas. El sistema crea un patrón de características faciales específicas y luego busca una coincidencia de estos patrones faciales que desencadena algún tipo de acción.
Qué son las redes basadas en la intención (IBN)
Para que una empresa sobreviva, debe ser ágil y responder rápidamente a las necesidades y las demandas de sus clientes. Las empresas dependen cada vez más de sus recursos digitales para satisfacer las demandas de los clientes, por lo que la red de TI subyacente debe también responder adecuadamente para adaptarse de manera rápida a estos requisitos. Esto normalmente implica ajustes a muchos sistemas y procesos. Estos ajustes pueden incluir cambios en las políticas y los procedimientos de seguridad, los servicios y las aplicaciones empresariales, y las políticas operativas.
Con las redes tradicionales, muchos componentes diferentes deben ajustarse manualmente para satisfacer los requisitos empresariales en constante cambio. Esto requiere diferentes técnicos e ingenieros a fin de garantizar que los sistemas cambien de un modo que les permita trabajar en conjunto para alcanzar su meta. En ocasiones esto genera errores y demoras, y a menudo en un desempeño de la red menos óptimo.
La nueva red empresarial debe integrar de manera dinámica y segura los dispositivos de IoT, los servicios basados en la nube y las oficinas remotas de un modo ágil, con capacidad de respuesta, siendo ello relevante para la empresa. Además, la red debe proteger estas nuevas iniciativas digitales del panorama de amenazas en constante cambio.
Para abordar esta necesidad, la industria de TI ha tomado medidas para crear un enfoque sistemático para vincular la administración de infraestructuras con la intención empresarial. Este enfoque se conoce como redes basadas en la intención. La figura ilustra la idea general detrás de las redes basadas en la intención. Con este nuevo paradigma, las necesidades empresariales se traducen de manera automática y continua a ejecución de infraestructuras de TI.
¿Cómo se vinculan el ML, la AI y las IBN?
Las redes basadas en la intención aprovechan el poder de la automatización, la AI y el ML para controlar la función de una red a fin de lograr un propósito o una intención específica.
Las redes basadas en la intención permiten que el equipo de TI especifique, en lenguaje simple, exactamente lo que desea que haga la red y esta lo hace posible. La red es capaz de traducir la intención en políticas y, a continuación, usar la automatización para implementar configuraciones adecuadas necesarias en toda la red.
Las redes basadas en la intención usan la AI y el ML para garantizar que cualquier servicio que se implemente cumpla con el nivel requerido de servicio. Si no cumple con el nivel de servicio, la red basada en la intención puede generar alertas y proporcionar sugerencias para mejorar. En algunos casos, la red basada en la intención puede reconfigurar automáticamente la red para cumplir con los niveles de servicio.
Casos de uso para las redes basadas en la intención
Las redes basadas en el objetivo permiten que la empresa se centre en los objetivos comerciales. Proporciona un sistema automatizado comprende qué necesita la organización y hace que suceda. Haga clic en Reproducir en el video para ver una descripción general de las redes basadas en la intención.
Cisco Digital Network Architecture (Cisco DNA) es un ejemplo de una red basada en la intención. Es una arquitectura abierta, que se puede ampliar y es ejecutada por un software. Acelera y simplifica las operaciones de las redes empresariales, y reduce los costos y los riesgos.
La automatización y el aseguramiento de Cisco DNA tienen como base un controlador de una red definida por software (SDN), el análisis contextual extenso, la virtualización de redes y la escalabilidad ilimitada de la nube.
El modelo de red basada en la intención que se muestra en la figura consta de tres elementos clave:
- Aseguramiento: el elemento de aseguramiento es la verificación de extremo a extremo del comportamiento de toda la red. Predice los resultados de los cambios, realiza un seguimiento del cumplimiento de la intención original, y efectuar recomendaciones o ajustes en los casos en que hay una falta de correspondencia entre la intención y el resultado. Esta etapa depende en gran medida de la AI y el ML. Los sistemas son parte de un ciclo cerrado que supervisa continuamente el rendimiento y la seguridad de la red, y reconfigura la red para garantizar el cumplimiento.
- Traducción: el elemento de traducción es la capacidad para aplicar la intención empresarial a la configuración de la red. La intención es lo que se desea lograr, no la forma en que se logra. La intención se especifica en lenguaje simple y es usada por el sistema para crear políticas en todo dicho sistema. Por ejemplo, una intención podría ser segmentar el tráfico de los invitados del tráfico corporativo, o bien permitir el acceso a los usuarios remotos.
- Activación: el elemento de activación de IBN ocurre después de que se haya especificado la intención y se hayan creado las políticas. Esto sucede cuando los dispositivos individuales se aprovisionan para corresponderse con las políticas basadas en la intención. Puede ser un modo automatizado o semiautomatizado que permita que el equipo de la red verifique la configuración antes de que se implementen los dispositivos.





































Comentarios
Publicar un comentario