Visión general de la plataforma Internet of Things

Utiliza la plataforma Internet of Things de Oracle Cloud Infrastructure (OCI) para transferir datos desde y hacia tus dispositivos y sensores a OCI.

La plataforma Internet of Things permite a los dispositivos con casi cualquier forma y tamaño de datos comunicarse entre sí y con otros sistemas en tiempo real. Los datos que proceden de un dispositivo físico o de un sistema externo se guardan en la base de datos como datos de telemetría normalizada.

Cómo funciona tu Internet of Things

Cómo funciona Internet of Things

Visión General de la Configuración

Después de que un administrador configure políticas y autenticación y, a continuación, siga estos pasos para configurar un Internet of Things.

  1. Cree un grupo de dominios IoT, que aprovisiona automáticamente una base de datos.
  2. Cree un dominio IoT en el grupo de dominios; un esquema de base de datos se aprovisiona automáticamente en la base de datos.
  3. Cree instancias, modelos, adaptadores y relaciones de recursos gemelos digitales en un dominio IoT.
  4. Configure dispositivos IoT o dispositivos en la nube de terceros con un host de destino, un punto final y credenciales.
  5. Los dispositivos o los servidores en una nube de terceros se conectan a la plataforma OCI Internet of Things a través de MQTT, HTTP o MQTT en WebSocket. Puede configurar dispositivos para suscribirse y recibir comandos mediante la plataforma IoT.
  6. Acceda a los datos IoT de la base de datos mediante ORDS, APEX o directamente en la base de datos mediante una cadena de conexión TCPS. También puede crear una conexión a Oracle Analytics Cloud.

Ejemplos de código para escenarios gemelos digitales

Para ejemplos de código y escenarios para configurar gemelos digitales para recopilar datos de telemetría y enviar mensajes bidireccionales mediante la línea de comandos o los lenguajes de programación, consulte GitHub.

Conceptos

Los siguientes conceptos clave describen cómo trabajar con su Internet of Things (IoT).

Grupo de dominios IoT

Un recurso en un compartimento que contiene una recopilación de dominios IoT. Al crear un grupo de dominios IoT, se aprovisiona automáticamente una base de datos a la que pueda acceder su punto final de acceso de datos único. Después de crear un grupo de dominios, puede obtener los detalles del grupo de dominios para ver el host de datos.

data-host:<domain-group-short-id>.data.iot.<region>.oci.oraclecloud.com

Dominio IoT

Un recurso de un compartimento que puede utilizar para gestionar todos sus recursos de gemelos digitales, incluidos sus modelos, adaptadores, instancias y relaciones digitales. Un dominio IoT recibe datos en un punto final de dispositivo único que se conecta a un esquema de base de datos dedicado que está ubicado en un compartimento específico y asociado a un grupo de dominios. Después de crear un dominio IoT, puede obtener los detalles del dominio IoT para ver el host del dispositivo.

device-host:<domain-short-id>.device.iot.<region>.oci.oraclecloud.com

Visión general de cómo los recursos de gemelos digitales se relacionan entre sí.

modelo gemelo digital

Un modelo de gemelo digital define la semántica de un gemelo digital y se basa en las especificaciones de DTDL v3. Un gemelo digital utiliza un identificador de modelo de gemelo digital (DTMI) como identificador único.

Por ejemplo: dtmi:com:yourcompany:iot:example;1

Adaptador doble digital

Un adaptador gemelo digital facilita la integración de datos mediante la interpretación y conversión de cargas útiles de datos raw procedentes de un dispositivo físico o un sistema externo a datos de telemetría normalizados basados en el modelo de gemelo digital. Los datos se transfieren al adaptador de gemelos digitales como un objeto JSON que contiene los datos y la asignación.

instancia gemela digital

Una instancia gemela digital es una representación digital de una entidad física, que se basa en un modelo gemelo digital.

relación gemela digital

Una relación de gemelos digitales describe un enlace a otra instancia de gemelos digitales y permite crear un gráfico de su relación con otras instancias de gemelos digitales.

datos sin procesar

Recopilación de registros que contienen datos no procesados recibidos de un dispositivo IoT. Estos datos incluyen un punto final, un tiempo recibido, el tipo de contenido y el contenido real.

datos rechazados

Recopilación de registros rechazados que contienen datos no procesados recibidos de un dispositivo IoT. Estos datos incluyen código y un mensaje detallado que contiene el motivo del rechazo.

datos normalizados

Recopilación de registros normalizada según la asignación especificada en el adaptador de gemelos digitales. Cada registro incluye el valor de una ruta de contenido para una instancia de gemelo digital y el registro de hora específico cuando se observó.

datos históricos

Si el contenido del modelo de gemelos digitales está marcado para el historial, los datos de serie temporal para las instancias de gemelos digitales se recopilan para cada dominio IoT.

datos de instantánea

Contiene una instantánea del último valor conocido para una instancia de gemelo digital en un dominio IoT.

datos de comandos no procesados

Los comandos de datos raw se envían a una instancia de gemelo digital en un dominio IoT junto con los detalles de respuesta, incluido el estado de entrega.

datos no estructurados

Los datos son opacos a la plataforma IoT y no pasan por ningún proceso de normalización.

datos estructurados

La forma de los datos es conocida por la plataforma IoT como un adaptador de gemelos digitales que traduce datos a modelos de gemelos digitales para instantáneas de datos y, si se configura, captura datos históricos.

Flujo de datos

Los dispositivos IoT y las aplicaciones externas envían datos de telemetría estructurados o sin estructurar en cargas útiles a una base de datos. El siguiente diagrama muestra cómo funciona el flujo de datos bidireccional entre la plataforma IoT y los dispositivos IoT.

Flujo de datos para la plataforma IoT.
Visión general del flujo de datos:
  1. Los datos recibidos de los dispositivos IoT se ponen en cola tal cual en datos sin procesar en cola.
  2. Los datos de una datos no procesados en cola se eliminan de la cola y se insertan en la tabla de datos no procesados, y se almacenan para el período de retención configurado. El valor por defecto es 16 días para los datos raw, los datos rechazados y los datos de comando raw; el valor por defecto para los datos historizados es 30 días. Puede actualizar el período de retención de datos para aumentar el número de días.
  3. Los datos de la cola de datos sin procesar se eliminan de la cola y se ponen en cola en la cola de datos rechazada, si no se pueden normalizar como se describe en la asignación del adaptador gemelo digital.
  4. Los datos de la cola de datos rechazada se eliminan de la cola y se insertan en la tabla de datos rechazada y se almacenan para un período de retención configurado.
  5. Si los datos se pueden normalizar como se describe en la asignación del adaptador de gemelos digitales, los datos de la cola de datos sin procesar se eliminan de la cola y se ponen en cola en la cola de datos normalizada.
  6. Si crea las especificaciones de un modelo gemelo digital con contenido especificado para la historización, los datos de la cola de datos normalizada se eliminan de la cola y se insertan en la tabla de datos histórica.
  7. Los datos de la cola de datos normalizada se eliminan de la cola y corresponden con el último valor conocido que se actualiza en la tabla de datos de instantáneas.
  8. Los comandos invocados por el usuario se insertan en la tabla de datos de comandos raw.
  9. El comando de la tabla de datos de comandos raw se pone en cola en la cola de salida de datos raw.
  10. Los comandos de la cola de datos de comandos raw se eliminan de la cola y se envían al dispositivo IoT de destino suscrito.
  11. Si se recibe una respuesta de comando desde el dispositivo IoT, se pone en cola tal cual en datos sin procesar en cola.
  12. Las respuestas de comandos de datos sin procesar en cola se eliminan de la cola y se insertan en la tabla de datos sin procesar y se almacenan durante un período de retención configurado.
  13. Los comandos de la cola de datos de comandos raw se eliminan de la cola, se correlacionan con el registro de comandos y se almacenan en la tabla de datos de comandos raw.
  14. Los usuarios pueden consultar la tabla de datos de comandos raw para conocer el estado de un comando y recuperar la respuesta del comando si existe.
  15. Los usuarios pueden consultar cualquier tabla de datos directamente en la base de datos o mediante Oracle REST Data Services (ORDS).

    Para obtener más información, consulte el esquema de base de datos de dominio IoT.

Configuración de su Internet of Things

Consumir sus datos

La plataforma IoT normaliza los datos recibidos de diferentes dispositivos según la asignación especificada en el adaptador de gemelos digitales. Utilice cualquiera de las siguientes opciones para consumir sus datos.

IoT Datos en APEX

Para crear aplicaciones APEX con su base de datos IoT, es necesario configurar un dominio IoT para conectarse a APEX.

En este diagrama se explica el flujo de datos para que APEX pueda acceder a sus datos IoT.
En el diagrama anterior y en estos pasos se describe una visión general de la configuración del acceso a APEX.
  1. Configure el acceso a los datos de un dominio IoT definiendo una contraseña inicial para el espacio de trabajo de APEX.
  2. Vaya a APEX en un explorador con https://<data-host-from-domain-group>/ords/apex y conéctese a APEX desde el espacio de trabajo IoT con <domain-short-id-from-device-host>__WKSP con el mismo nombre de usuario.
  3. En APEX, acceda a dos esquemas de base de datos IoT para el dominio IoT. Observe dos guiones bajos:
    • Acceso de solo lectura a <domain-short-id-from-device-host>__IOT que contiene los datos del dispositivo.
    • Acceso de lectura y escritura a <domain-short-id-from-device-host>__WKSP para trabajar con sus datos.
    https://<domain-group-short-id-from-data-host>.data.iot.<region>.oci.oraclecloud.com/ords/apex

IoT Datos del servicio de datos REST de Oracle (ORDS)

Realizar llamadas de API para obtener datos de la base de datos IoT mediante la API de datos IoT o mediante ORDS para crear API de REST personalizadas con los datos IoT requiere configurar el dominio IoT para acceder al servicio de datos REST (ORDS) de Oracle.

ORDS que accede a los datos IoT
El diagrama anterior y estos pasos describen una descripción general para configurar el acceso a ORDS.
  1. El usuario crea una aplicación confidencial integrada en el dominio de identidad, con el público principal definido en <domain-group-short-id> y el ámbito definido en iot/<domain-short-id-from-device-host>.
  2. El usuario configura el acceso a los datos al dominio IoT con la información del host del dominio de identidad, de modo que el host de datos pueda validar el token de acceso para proporcionar acceso ORDS a la API de datos IoT.
  3. El usuario obtiene el token de acceso con la contraseña que otorga el ID de cliente y el secreto de la aplicación integrada y sus credenciales con el ámbito definido en ‘<domain-group-short-id>/iot/<domain-short-id-from-device-host>’
  4. El usuario llama a la API de datos IoT mediante ORDS en el host de datos mediante el token oAuth del paso 3.
https://<domain-group-short-id>.data.iot.<region>.oci.oraclecloud.com/ords/20250531/<domain-short-id-from-device-host>

Puntos finales de la API de datos de Internet of Things

Después de autenticarse en ORDS, puede utilizar la API de datos de Internet of Things para obtener los datos IoT del esquema de base de datos IoT. Todos los puntos finales de datos de ORDS, excepto el punto final de datos de instantánea, soportan GET para obtener todos los datos de un dispositivo o datos específicos con un ID.
https://<iot-domain-group-short-id>.data.iot.<region>.oci.oraclecloud.com/ords/<iot-Domain-short-id>/20250531

IoT Datos de una base de datos

Para trabajar con los datos IoT directamente en la base de datos es necesario configurar el dominio IoT para acceder a la base de datos directamente.

Acceda a los datos de IoT en la base de datos.

El diagrama anterior y estos pasos describen una visión general para configurar una conexión directa a la base de datos.

  1. El usuario recupera el OCID de la red virtual en la nube (VCN) para permitir que se muestre la conectividad directa de la base de datos al host de datos.
  2. El usuario configura el acceso a los datos en el grupo de dominios IoT para incluir en la lista de permitidos el OCID de la VCN para la conectividad directa de la base de datos al host de datos.
  3. El usuario recupera los grupos o grupos dinámicos necesarios para permitir el acceso a los datos del dominio IoT.
  4. El usuario configura el acceso a los datos en el dominio IoT para permitir que los grupos o grupos dinámicos accedan a los datos del dominio IoT.
  5. Tanto el usuario como la aplicación que se ejecutan en las máquinas virtuales, que se encuentran en la VCN incluida en la lista de permitidos, pueden recuperar db-token del servicio Identity and Access Management (IAM) mediante db-token-scope.
  6. Tanto el usuario como la aplicación pueden establecer una conexión al host de datos mediante db-connection-string y el token de OCI para consultar los datos del dominio IoT.

    esquema de base de datos: <domain-short-id-from-device-host>__IOT

    Punto final de datos

    data-host:<domain-group-short-id>.data.iot.<region>.oci.oraclecloud.com

IoT Datos en Analytics Cloud

Utilice Oracle Cloud Analytics para realizar análisis de los datos de IoT. Para ello, debe configurar el acceso para ver los datos de IoT en Oracle Analytics Cloud.

Configurar acceso a Oracle Analytics Cloud

Visión general de los pasos para configurar el acceso a los datos de IoT en Analytics Cloud, como se muestra en el diagrama anterior:

Para obtener una lista completa de los pasos para configurar una conexión a Oracle Analytics Cloud, consulte Escenario: conexión de los datos de IoT a Analytics Cloud

  1. El usuario recupera el OCID de la VCN para permitir que se muestre la conectividad directa de la base de datos al host de datos.
  2. El usuario configura el acceso a los datos para el grupo de dominios IoT para incluir en la lista de permitidos el OCID de la VCN para la conectividad directa de la base de datos al host de datos.
  3. El usuario recupera los grupos necesarios para permitir el acceso a los datos del dominio IoT.
  4. El usuario configura el acceso a los datos en el dominio IoT para permitir que los grupos accedan a los datos del dominio IoT, incluida la definición de la contraseña de base de datos para el registro de usuario desde Oracle Analytics Cloud.
  5. El usuario crea la instancia de Oracle Analytics Cloud para analizar los datos del host de datos IoT.
  6. El usuario configura la instancia de Oracle Analytics Cloud con un canal de acceso privado y una zona DNS que apunta al nombre de host de datos públicos, por ejemplo, adb.<region>oraclecloud.com en la subred de la VCN que aparece en la lista de permitidos.
  7. El usuario crea una conexión de Autonomous Transaction Processing (ATP) en la instancia de Oracle Analytics Cloud con una cadena de conexión.
  8. El usuario ahora puede crear conjuntos de datos con Oracle Analytics Cloud mediante esta conexión.
  9. Oracle Analytics Cloud consulta el host de datos mediante el canal de acceso privado a través del gateway de servicio.

Formas de acceder a Oracle Cloud Infrastructure

You can access Oracle Cloud Infrastructure (OCI) by using the Console (a browser-based interface), the REST API, or the OCI CLI. Para obtener una lista de los SDK disponibles, consulte Software development kits e interfaz de línea de comandos.

En esta versión de la plataforma OCI IoT, puede utilizar la consola para trabajar con dominios IoT y grupos de dominios IoT, y utilizar la API y la CLI para todos los recursos.

Uso de la consola

  1. Utilice un explorador soportado para ir a la página de conexión de la consola:
    https://cloud.oracle.com
    La plataforma IoT está disponible en las siguientes regiones:
    • eu-frankfurt-1

    • uk-london-1

    • us-ashburn-1

    • us-phoenix-1

  2. Introduzca el inquilino en la nube, el nombre de usuario y la contraseña.
  3. Abra el menú de navegación, seleccione Servicios para desarrolladores y, a continuación, en Internet of Things, seleccione Dominios o Grupos de dominios.

Uso de las API

Utilice Cloud Shell u otra herramienta para acceder a la API de REST de Internet of Things mediante el uso de estos puntos finales en las siguientes regiones soportadas. Para obtener más información, consulte Uso de API de REST.

  • https://iot.eu-frankfurt-1.oci.oraclecloud.com
  • https://iot.uk-london-1.oci.oraclecloud.com
  • https://iot.us-ashburn-1.oci.oraclecloud.com
  • https://iot.us-phoenix-1.oci.oraclecloud.com

Uso de la CLI

Para acceder a la plataforma Internet of Things mediante la CLI, use la Referencia de la línea de comandos para Internet of Things.

Puntos finales de dispositivo

El punto final del dispositivo es la URL donde un dispositivo envía y recibe datos. Cada punto final está enlazado a una región específica y requiere autenticación mediante claves de API, secretos de almacén o certificados específicos de la región. Por motivos de seguridad, todos los recursos IoT deben estar en la misma región.

Después de crear un dominio IoT, puede obtener los detalles del dominio IoT para ver el host del dispositivo.

  • Recibir mensajes: los dispositivos IoT generan eventos. Un evento podría ser una parte normal de las operaciones, como un latido o un evento podría informar de un error.
  • Enviar mensajes: envía comandos al punto final del dispositivo.
device-host:<domain-short-id>.device.iot.<region>.oci.oraclecloud.com

En el siguiente diagrama y pasos se muestra cómo funcionan el acceso al dispositivo IoT y los flujos bidireccionales.

Visión general del acceso al dispositivo IoT
Visión general de los pasos del diagrama anterior:
  1. El dispositivo 1 publica la telemetría en la plataforma IoT mediante MQTT y autenticación básica.
  2. Los dispositivos o sensores de una nube de terceros pueden enviar telemetría mediante HTTP a la plataforma IoT mediante autenticación básica.
  3. El dispositivo 2, que es local, detrás de un firewall con un proxy, publica la telemetría en la plataforma IoT mediante MQTT en WebSocket con un certificado de cliente basado en la autenticación mTLS.
  4. El dispositivo 3 se suscribe a un tema para recibir comandos de la plataforma IoT.
  5. El usuario envía un comando a la plataforma IoT con los detalles sobre qué dispositivo y dónde enviar la solicitud, y si se configura, cuándo y dónde recibir la respuesta del dispositivo.
  6. La plataforma IoT publica la solicitud en el dispositivo 3 sobre el tema al que está suscrito.
  7. De manera opcional, el dispositivo 3 si está configurado publica una respuesta a la plataforma IoT.

Requisitos

Un administrador de su organización tiene que configurar grupos, compartimentos y políticas que controlen qué usuarios pueden acceder a determinadas tareas, recursos y tipo de acceso. Para obtener más información, consulte Visión general de la gestión de identidad y acceso, Gestión de dominios de identidad y Creación de una política.

Para administradores:

  1. Las políticas de usuario controlan quién puede crear nuevos dominios IoT, grupos de dominios IoT y quién puede crear y gestionar recursos de gemelos digitales. Para obtener información sobre las políticas IoT, consulte Detalles de las políticas de la plataforma Internet of Things (IoT).

    Por ejemplo, esta política permite al grupo de usuarios gestionar cualquier recurso IoT en un compartimento específico:

    Allow group <group-name> to manage iot-family in compartment <your-compartment-name>
  2. Al crear un dominio IoT, debe tener acceso de lectura al grupo de dominios IoT que asocia al dominio IoT.
  3. Al crear una instancia gemela digital para recopilar datos de dispositivos, se necesita un certificado o un secreto para autenticarse. Cree un secreto o cree un certificado en la misma región que su dominio IoT y los recursos de gemelos digitales asociados para sus dispositivos.

    Agregue las siguientes políticas a su arrendamiento para permitir que la plataforma IoT acceda a sus certificados y secretos de almacén para autenticar sus dispositivos IoT. Sustituya <vault-OCID> por el OCID de almacén para los secretos de instancia de gemelo digital. Sustituya el valor <compartment-name> por el nombre del compartimento en el que residen sus secretos o certificados.

    Allow any-user to {SECRET_BUNDLE_READ, SECRET_READ} where ALL {request.principal.type = 'iotdomain' and target.resource.id = '<vault-OCID>'}
    Allow any-user to {CERTIFICATE_BUNDLE_READ, CERTIFICATE_READ} in compartment <compartment-name> where request.principal.type = 'iotdomain'
    Allow any-user to {CERTIFICATE_AUTHORITY_BUNDLE_READ, CERTIFICATE_AUTHORITY_READ} in compartment <compartment-name> where request.principal.type = 'iotdomain'
    Allow any-user to {CABUNDLE_READ} in compartment <compartment-name> where request.principal.type = 'iotdomain'
  4. If you configure data access for an IoT domain group, then the user must have this policy configured to allow read access to the VCN or VCNs. Un administrador debe crear una política mediante esta request.principal.type para permitir que cualquier usuario que trabaje con un grupo de dominios IoT tenga acceso de lectura a una VCN o a las redes virtuales en un compartimento específico. Esta política proporciona el acceso necesario para configurar el acceso a datos para un grupo de dominios IoT.
    Allow any-user to {VCN_READ} in compartment <compartment-name> where request.principal.type = 'iotdomain'

Para usuarios: si es un usuario distinto de un administrador que necesita utilizar los recursos de OCI, póngase en contacto con el administrador para que configure un ID de usuario. El administrador puede confirmar qué compartimento o compartimentos puede utilizar. Después de que un administrador configure las políticas, puede acceder a los recursos IoT y trabajar con ellos según sus permisos.

Autenticación

Debe configurar la autenticación para que su usuario se conecte a la consola de Oracle Cloud, utilice los SDK o la CLI, o bien utilice la API de REST:

Identificadores de recursos

La mayoría de los tipos de recursos de Oracle Cloud Infrastructure tienen un identificador único asignado por Oracle denominado ID de Oracle Cloud (OCID). Para obtener información sobre el formato del OCID y otras formas de identificar los recursos, consulte Identificadores de Recursos y Localización de Identificadores de Oracle Cloud Infrastructure.

Límites sobre los Recursos IoT

Los siguientes límites de recursos IoT son regionales.

Nota

Oracle restringe la creación de hasta 2 dominios IoT en cada grupo de dominios IoT. El número máximo de grupos de dominios IoT es 5 y el número máximo de dominios IoT es 10 por región en su arrendamiento.
RecursoNombre de límiteCréditos universales de OraclePago por consumo
Número máximo de grupos de dominios IoT.iot-domain-group-count55

Ponte en contacto con nosotros para solicitar una excepción para aumentar el límite IoT de grupos de dominios pagados.

Número máximo de dominios IoT.iot-domain-count1010

Ponte en contacto con nosotros para solicitar una excepción para aumentar el límite del dominio de IoT pagados.

Para obtener una lista de límites aplicables e instrucciones para solicitar un aumento de límite, consulte la sección Límites de servicio.

Límites de recursos de API

Los siguientes límites de recursos de API son regionales.

RecursoNombre de límiteCréditos universales de Oracle
Grupo de dominios IoTNúmero máximo de redes virtuales en la nube permitidas.5
Dominio IoTNúmero máximo de nombres de grupos de dominios de identidad permitidos.5
Dominio IoTPeríodo mínimo de retención (en días) para datos raw, rechazados, normalizados y de comandos. 16
Adaptador doble digitalNúmero máximo de rutas de entrada.128

Asegurar tu Internet of Things

En general, Oracle proporciona seguridad en la infraestructura y las operaciones en la nube, como controles de acceso de operadores en la nube y aplicación de parches de seguridad de la infraestructura. Usted es responsable de configurar de forma segura sus recursos en la nube. La seguridad en la nube es una responsabilidad compartida entre usted y Oracle.

Oracle es responsable de los siguientes requisitos de seguridad:
  • Seguridad física: Oracle es responsable de proteger la infraestructura global que ejecuta todos los servicios que Oracle Cloud Infrastructure ofrece. Esta infraestructura consta del hardware, el software, la red y las instalaciones que ejecutan los servicios de Oracle Cloud Infrastructure.
Las responsabilidades de seguridad que se describen en esta página incluyen las siguientes áreas:
  • Control de Acceso: limite los privilegios lo máximo posible. A los usuarios solo se les debe otorgar el acceso necesario para realizar su trabajo.
  • Seguridad física: limite el acceso a los dispositivos locales de Internet of Things.