Lo sentimos. No hallamos ninguna coincidencia para tu búsqueda.

Le sugerimos que pruebe lo siguiente para encontrar lo que busca:

  • Verifique la ortografía de su búsqueda de palabras clave.
  • Utilice sinónimos para la palabra clave que escribió; por ejemplo, intente con “aplicación” en lugar de “software”.
  • Comience una nueva búsqueda.
Comunicarse con nosotros Iniciar sesión en Oracle Cloud

Arquitectura de datos convergente para el desarrollo de aplicaciones

Las arquitecturas de referencia aplican principios de diseño específicos para satisfacer los requisitos básicos del desarrollo moderno de aplicaciones. Estos principios permiten a los desarrolladores crear aplicaciones web y móviles que integren plataformas de mensajería y de análisis basados en datos/IA/AA. Las arquitecturas controladas por eventos pueden reaccionar a eventos en tiempo real. Estos patrones de arquitectura ayudan a acelerar el desarrollo de aplicaciones personalizadas en finanzas, minoristas, sanidad, energía, fabricación y también ayudan a ampliar las aplicaciones de Oracle empaquetadas. La mayoría de las aplicaciones empresariales están centradas en los datos, con una variedad de datos y están mejor desarrolladas en una base de datos convergente. La programación mediante lenguajes populares Java, Python, Javascript, Go, etc. también está soportada en estos patrones de arquitectura. El desarrollo de aplicaciones con poco código comprime los niveles de tecnología necesarios y es una buena opción para algunas aplicaciones. A continuación, las aplicaciones y los contenedores de base de datos gestionados por Kubernetes se pueden desplegar en Oracle Cloud (OCI), entornos independientes y otras grandes nubes públicas.

Orientación web/móvil

Las aplicaciones web y móviles suelen contener un front-end visible para el usuario, un generador de consultas y un back-end que realiza el cálculo de datos y sirve al front-end. En respuesta a una solicitud de usuario o API, una aplicación web interactúa con la API o con datos persistentes almacenados en una base de datos. La aplicación debe soportar diferentes clientes, como exploradores y dispositivos móviles, e interactuar con otros sistemas y aplicaciones mediante el uso de API y eventos. El backend debe ser seguro y ampliarse por demanda.

Crea tu aplicación web como un conjunto de microservicios que pueden probarse, desplegarse y ser propiedad de distintos equipos de aplicaciones de forma independiente. Muestra los servicios como API de REST y comunícate con otros microservicios utilizando una malla de eventos incorporada para eventos y mensajes, o API creadas por microservicio. Incorpora el aprendizaje automático en aplicaciones inteligentes con modelos de aprendizaje automático a través de puntos finales REST en la base de datos.

Las aplicaciones web y móviles deben ser ampliables para gestionar los picos en la demanda y operar bajo presión con baja latencia. Deben estar disponibles las 24 horas del día, los 7 días de la semana, lo suficientemente resistentes como para producir datos cuando se soliciten, y no deben perder información almacenada.

Las aplicaciones móviles se crean con marcos front-end como React Native o SwiftUI, lo que crea la interfaz de usuario que interactúa con un backend para todos sus servicios de datos y enriquecimiento. El desarrollador puede centrarse en el flujo de trabajo y la lógica de la aplicación, acceder al backend a través de API bien definidas que son resilientes, seguras y amplían de forma autónoma.

La seguridad es de suma importancia para las aplicaciones web expuestas a Internet. El cifrado de datos, TLS, la protección DDoS, los firewalls y la gestión granular de acceso a datos y usuarios son críticos. Tanto la seguridad de la base de datos como la seguridad de la aplicación son importantes y se gestionan con contraseñas y claves a las que se accede a través del servicio Oracle Database Wallet y OCI Vault.

Principios de diseño

Uso de marcos de código abierto ligeros y lenguajes de programación maduros

Crea un front-end móvil y web en Javascript (React) o SwiftUI. Para los servicios de aplicaciones y datos de backend se incluye soporte de lenguaje políglota (Python, Node.js, Java, PL/SQL, Go, etc.) para activar casos de uso y microservicios escritos en estos lenguajes. Procesa los datos cerca de donde se almacenan.

Crea aplicaciones como servicios que se comuniquen a través de API

Una aplicación web o móvil a menudo necesita interactuar con otros sistemas de negocio y servicios que están fuera de la organización. Los servicios que forman parte de una aplicación web deben permitir la interacción y la colaboración mediante API bien definidas. Utiliza Oracle REST Data Services (ORDS) para utilizar API de datos o crear nuevas. Utiliza puntos finales de REST listos para usar con los servicios de OML y la ejecución de Python incorporada de OML4Py para activar el aprendizaje automático. Utiliza los gateways de API disponibles en Oracle Cloud como punto de entrada único para todos los clientes y enruta las solicitudes de API al servicio adecuado. Configura los servicios del equilibrador de carga y los controladores de entrada para una comunicación de API segura entre los microservicios.

Utiliza servicios totalmente gestionados para eliminar la complejidad del desarrollo de aplicaciones, reducir los tiempos de ejecución y simplificar la gestión de datos.

El mantenimiento de una infraestructura de aplicación web o móvil es responsable de desplegar, actualizar, aplicar parches, ampliar y proteger la configuración. Utiliza servicios gestionados como Oracle Autonomous Database y una serie de otros servicios gestionados en Oracle Cloud para maximizar la disponibilidad y la escalabilidad, y responder a las cambiantes demandas de las aplicaciones web y móviles. Los servicios gestionados garantizan que la aplicación esté disponible 24 horas todos los días del año y protegida cuando se produce un fallo en el centro de datos donde se aloja la infraestructura. Utiliza servicios de autogestión solo cuando un servicio gestionado por proveedor no esté disponible.

Mantén el nivel de aplicación sin estado

Mantén los componentes de nivel medio sin estado de la aplicación. Si se va a almacenar el estado de la aplicación, utiliza Oracle Autonomous Database para almacenar los datos y el estado de la aplicación y obtener coherencia, durabilidad y capacidad de recuperación rápida de la raíz del estado de la aplicación. Mantener el estado en una base de datos es más sencillo y eficiente en la recuperación general de la aplicación.

Utiliza bases de datos convergentes con soporte completo en todos los datos

Las aplicaciones web y móviles utilizan datos en diferentes formatos y necesitan almacenar, buscar y procesar los datos en un almacén de datos. Los datos pueden ser tabulares (relacionales), no estructurados, con formato XML y JSON, espaciales o gráficos. Tradicionalmente, esta disparidad significaba utilizar una base de datos relacional para datos relacionales, un almacén de documentos para datos no estructurados y bases de datos de gráficos para datos jerárquicos enlazados. Sin embargo, el uso de varias bases de datos genera complejidad operativa e incoherencia de datos. Para solucionar este problema, utiliza Oracle Autonomous Database convergente para almacenar varios tipos de datos, indexarlos y proporcionar formas de buscar los datos y utilizarlos para realizar análisis unificados en todos los datos.

Seguimiento y supervisión integrales del instrumento

Una aplicación web o móvil puede contener cientos de servicios, propiedad de diferentes equipos de negocio y aplicaciones. La capacidad de observación unificada con interfaces de herramientas abiertas es importante para obtener visibilidad del comportamiento de estos sistemas distribuidos de manera inherente. Centraliza la solución de observabilidad mediante el uso de las métricas, los registros y el rastreo exportados desde todas las capas de la aplicación y los niveles de datos. Estos servicios controlan toda la pila, desde el front-end hasta el backend, lo que ayuda a encontrar y corregir problemas en la aplicación rápidamente, y se convierten en la plataforma para el ajuste continuo del rendimiento.

Elimina el punto único de fallo mediante la replicación de datos automatizada y la recuperación ante fallos

Las aplicaciones web y móviles deben ser resilientes, poder recuperarse de los fallos y minimizar el tiempo de inactividad y eliminar la pérdida de datos. La redundancia ayuda a eliminar los puntos de fallo únicos: utiliza Kubernetes para gestionar la resiliencia de los contenedores de bases de datos y los contenedores de aplicaciones. El operador de Kubernetes de Oracle Database está diseñado para ello mediante pipelines de integración y despliegue continuos que incluyan el nivel de datos. En clusters de Kubernetes, configura pools de nodos con un mínimo de tres nodos, con cada nodo en un dominio de disponibilidad independiente en una región de dominio de disponibilidad múltiple en OCI. En una única región de dominio de disponibilidad de OCI, configura pools de nodos en Kubernetes con cada nodo en un dominio de errores independiente. Utiliza un único equilibrador de carga público y varios equilibradores de carga privados con varios controladores de entrada para la redundancia en Kubernetes.

Configura Autonomous Database para una máxima disponibilidad mediante Autonomous Data Guard para minimizar el tiempo de inactividad operativo y la pérdida de datos.

Sigue el principio de privilegio mínimo para garantizar que los usuarios y las cuentas de servicio solo tengan el privilegio mínimo necesario para realizar sus tareas. Controla quién tiene acceso a los componentes de la aplicación web mediante Cloud Identity and Access Management (IAM), incluida la base de datos. Utiliza la autenticación multifactor en IAM para aplicar una autenticación compleja a los administradores a fin de restringir el acceso a los componentes de la aplicación y a la base de datos.

Arquitectura

Este patrón de arquitectura de datos convergente para una aplicación web o móvil está compuesto por un front-end y microservicios con el backend mediante la aplicación y los servicios de datos integrados en Oracle Autonomous Database. Opcionalmente, para los servicios que no están en la base de datos, los microservicios de los contenedores se gestionan en un cluster de Kubernetes.

El siguiente diagrama ilustra esta arquitectura de referencia.

arquitectura de referencia web

La arquitectura tiene los siguientes componentes (los componentes pueden ser servicios totalmente gestionados en Oracle Cloud Infrastructure o servicios equivalentes en otros entornos de despliegue. Por ejemplo, Oracle Autonomous Database es un servicio gestionado en OCI y Oracle Database se ejecuta en otros entornos).

  • Oracle Autonomous Database
    Oracle Autonomous Database proporciona servicios de datos para todos los tipos de datos que se van a almacenar, procesar y analizar: base de datos operativa más almacenamiento y análisis de datos. Además, proporciona servicios de aplicación que incluyen una plataforma incorporada de eventos y mensajes (colas de eventos transaccionales), aprendizaje automático, API de REST y un entorno de desarrollo con poco código. Se trata de una plataforma de datos completa para aplicaciones web/móviles modernas escritas como microservicios.
  • Container Engine for Kubernetes (OKE)
    El servicio Kubernetes es un servicio totalmente gestionado, ampliable y de alta disponibilidad que puede utilizar para desplegar las aplicaciones en contenedores en la nube. Especifica los recursos informáticos que necesitan las aplicaciones y Container Engine los aprovisiona en OCI en un arrendamiento existente. El motor de contenedor utiliza Kubernetes para automatizar el despliegue, la ampliación y la gestión de aplicaciones en contenedores en clusters de hosts.
  • Equilibrador de carga
    El servicio Oracle Cloud Infrastructure Load Balancing proporciona una distribución automática del tráfico desde un único punto de entrada a varios servidores en el backend.
  • Oracle Cloud Infrastructure Identity and Access Management (OCI IAM)
    OCI IAM proporciona autenticación compleja, MFA, conexión social, autorregistro para usuarios finales, gestión de identidades, conexión única (SSO) y gobernanza de identidades para aplicaciones.

Casos de uso

En este caso de uso se describe una aplicación móvil de entrega de alimentos de ejemplo denominada GrabDish que utiliza una arquitectura de microservicios con Autonomous Database y bases de datos en contenedores (base de datos de conexión en una base de datos de contenedor) para cada uno de sus servicios. Utiliza la plataforma de mensajería incorporada en Colas de eventos transaccionales (TEQ) para mensajería, lo que simplifica los patrones de microservicios comunes para los desarrolladores. GrabDish muestra los servicios de IA/AA y una variedad de tipos de datos utilizados, para programar la aplicación en varios idiomas. Para obtener más información, consulta los medios de vida en GrabDish en http://bit.ly/simplifymicroservices

Descubre más

Obtén más información sobre los recursos relacionados.

Orientación basada en eventos

Las soluciones de mensajería conectan los componentes de la aplicación, incluidos los sistemas locales existentes a las soluciones en la nube. Las cargas útiles de mensajes son eventos generados por la aplicación, entradas de usuario, cambios de datos o eventos generados por el dispositivo. La mensajería permite la transferencia de eventos y datos como parte de un pipeline de procesamiento distribuido bien definido o para la publicación de mensajes y eventos en varios sistemas descendentes independientes que procesan, enriquecen y analizan datos. La mayoría de las aplicaciones modernas creadas con microservicios se basan en una arquitectura basada en eventos. Una malla de eventos permite que cualquier evento producido en un sistema se consuma de forma segura en cualquier otro lugar del sistema distribuido donde se necesita casi en tiempo real, utilizando uno o varios agentes de eventos. Después de procesar un evento, los datos (carga útil) se almacenan en un Data Lakehouse para realizar análisis y formación de modelo de IA/AA.

Crea soluciones de mensajería que sean de alta disponibilidad, fiables y flexibles. Utiliza la plataforma de base de datos convergente, los servicios en la nube y las mejores prácticas de Oracle para ofrecer mensajes y soluciones incluso basadas en las necesidades del negocio. Estas recomendaciones ayudan a minimizar la integración del desarrollo, la sobrecarga del despliegue y la carga de gestión a largo plazo.

Las soluciones de mensajería conectan los componentes de la aplicación, incluidos los sistemas locales existentes, a las soluciones en la nube. Permiten la transferencia de datos como parte de un pipeline de procesamiento distribuido y convergente bien definido o publican mensajes y eventos en varios sistemas descendentes independientes que evolucionan de forma independiente.

Estas soluciones también deben acomodar de forma transparente picos no planificados en la carga de mensajes mediante el almacenamiento en buffer de datos y el ajuste dinámico de los recursos del proceso. En el pasado, era difícil para las empresas desplegar y gestionar soluciones de mensajería fiables que cumplieran estos objetivos sin una complejidad y unos gastos excesivos. Sin embargo, esta implementación ahora puede ser sencilla en la nube con servicios de mensajería diseñados para la escala y el rendimiento.

Principios de diseño

Utiliza los siguientes principios de diseño para crear aplicaciones o plataformas de mensajería con la arquitectura de datos convergente.

Cree aplicaciones como servicios que se comunican a través de API

Utiliza las API de JMS o Kafka para mensajería con Oracle Transactional Event Queues. El uso de las API estándar permite la portabilidad de aplicaciones y también crear sin problemas aplicaciones de mensajería híbridas y multinube.

Utiliza servicios totalmente gestionados para eliminar la complejidad del desarrollo de aplicaciones, los tiempos de ejecución y la gestión de datos.

Ejecuta aplicaciones en servicios completamente gestionados con el mantenimiento de la infraestructura y la aplicación de parches de seguridad incorporados. Puedes aprovechar la automatización de la ampliación en respuesta a las cargas cambiantes. Utiliza Oracle Autonomous Database como un servicio de Oracle Database totalmente gestionado en OCI. Oracle Transactional Event Queues es una función integrada de la base de datos disponible en todas las regiones de OCI.

Utiliza bases de datos convergentes con soporte completo en todos los datos

Utiliza Oracle Autonomous Database que soporte de forma nativa diferentes tipos de datos: JSON, relacional, gráfico, espacial, etc. Utiliza la funcionalidad de la base de datos para simplificar la lógica de la aplicación. Por ejemplo, utiliza SQL para consultas, uniones y análisis. Utiliza las transacciones para garantizar la coherencia y el aislamiento, así como los algoritmos y análisis de aprendizaje automático incorporados para evitar transferencias de datos innecesarias. Utiliza las funciones de seguridad y el control de acceso de la base de datos para proteger los datos confidenciales y usa la replicación para mejorar la disponibilidad, las posibilidades de ampliación y la resiliencia de la aplicación.

Seguimiento y supervisión integrales del instrumento

Una aplicación de mensajería puede contener cientos de servicios, propiedad de diferentes equipos de negocio y aplicaciones. La observabilidad unificada con interfaces de herramientas abiertas es importante para obtener visibilidad del comportamiento de estos complejos sistemas distribuidos. En lugar de que cada equipo cree su propia solución, centraliza las métricas, los logs y el rastreo exportados de todas las capas de la aplicación. Las métricas de TEQ se pueden exportar a Prometheus, que admite paneles de control de Grafana para depurar y ajustar el rendimiento.

Elimina los puntos de fallo únicos con la ampliación horizontal y automatiza la recuperación de fallos.

Dado que TEQ forma parte de Oracle Autonomous Database, las aplicaciones se benefician de las capacidades incorporadas de alta disponibilidad y recuperación ante desastres entre regiones sin trabajo adicional.

La mensajería transaccional de TEQ también simplifica la recuperación de fallos externos.

Implementa un enfoque de defensa en profundidad para proteger el ciclo de vida de la aplicación

Implementa políticas de control de identidad y acceso (IAM) para que solo los usuarios autorizados puedan crear, enviar o recibir datos de los flujos. Aplica un principio de accesibilidad mínima al punto final mediante la protección del acceso a los puntos finales de mensajería con mTLS y gateway de servicio, que limita el acceso desde Internet. Cifra los datos estáticos y en tránsito para lograr la confidencialidad de los datos. Utiliza la cartera de base de datos para proteger las credenciales de las conexiones a la base de datos.

Arquitectura

La arquitectura de base de datos convergente proporciona un diseño para realizar patrones de mensajería en aplicaciones modernas. Este patrón utiliza colas de eventos transaccionales (TEQ) integradas en Oracle Autonomous Database.

Esta arquitectura proporciona simplicidad al eliminar la necesidad de utilizar servicios de streaming o colas externos y proporciona capacidades de mensajería transaccional que simplifican los patrones de microservicios comunes.

imagen de arquitectura de base de datos convergente

Los arquitectos de aplicaciones deben tener en cuenta la escalabilidad, el rendimiento y la simplicidad de esta arquitectura:

  • Uso de colas de eventos transaccionales (TEQ) en Oracle Database para mensajería asíncrona
    Oracle Database combina el procesamiento de datos y mensajes en una infraestructura escalable que simplifica la gestión del ciclo de vida y la seguridad de todos los datos y mensajes de la base de datos. El procesamiento de datos está más cerca del almacén de datos, lo que proporciona un mejor rendimiento, mayor seguridad, actualizaciones y mantenimiento más sencillos, en comparación con la gestión de una infraestructura de mensajería independiente.

    Las colas de eventos transaccionales en la base de datos simplifican la creación de microservicios al proporcionar transacciones en operaciones de mensajería y base de datos. El patrón de buzón de transacciones se soporta implícitamente sin código adicional y con mensajería de una sola vez hace que las aplicaciones sean más fáciles de escribir. Los fallos de red o servidor se pueden recuperar fácilmente con rollbacks de transacciones.
  • Los mensajes de alto rendimiento de TEQ de Oracle pueden ampliar hasta 1 billón de mensajes al día
    Para las cargas de trabajo de mensajería más exigentes, el TEQ de Oracle proporciona un alto rendimiento con una caché de acelerador en memoria utilizada para operaciones de puesta en cola y eliminación de cola. TEQ admite tanto mensajes pequeños que son típicos en el procesamiento de eventos como cargas útiles más grandes asociados a flujos de trabajo de negocio. TEQ soporta mensajes más grandes al separar la carga útil de la gestión de metadatos en la caché de mensajes.
  • Oracle TEQ también funciona como una malla de eventos
    Además de los mensajes, TEQ también interopera con Kafka como una malla de eventos segura, transportando el evento correcto a la aplicación adecuada en tiempo real para aplicaciones empresariales creadas en la nube. La transformación de eventos está soportada con un motor de reglas incorporado y el procesamiento de eventos con mecanismos de devolución de llamada disponibles, tanto en la puesta en cola como en la eliminación de la cola de mensajes. Estos mecanismos de devolución de llamada pueden ejecutar Java, PL/SQL u OCI Functions.

    TEQ puede utilizar conectores de Kafka para interoperar con una multitud de tipos de productores y consumidores de eventos. Esto establece una malla de eventos y es la columna vertebral para un entorno de desarrollo de aplicaciones de microservicios ampliable en toda la empresa.
  • Oracle TEQ ofrece lo mejor de los mensajes JMS y Pub/Sub similares a Kafka en una única plataforma
    Implante lo mejor de los mensajes JMS y Pub/Sub en un único sistema de mensajería con Oracle TEQ. El TEQ de Oracle está particionado de forma similar a los temas/particiones de Kafka y es el motor de mensajería moderno que elijas, el que se utilizará con la instancia de Oracle Database convergente para las aplicaciones basadas en eventos y con uso intensivo de datos más exigentes mediante el patrón de mensajes para el intercambio de eventos.

Casos de uso

FedEx utiliza Oracle E-Business Suite y el gestor de eventos de negocio creado con Oracle TEQ para las cuentas a cobrar de los 15,5 millones de paquetes entregados todos los días.

  • FedEx ha trasladado E-Business Suite a Oracle Cloud Infrastructure mediante Exadata Cloud Service. Los flujos de trabajo y el sistema de eventos de negocio de E-Business Suite están integrados por completo en los mensajes de Oracle Advanced Queuing (AQ).
  • Oracle AQ es fácil de utilizar y para colas de alto rendimiento, el TEQ de Oracle es el reemplazo directo de alto rendimiento con varios flujos de eventos por cola.

Oracle Transactional Event Queues activa varios escenarios de autenticación de 2 factores (2-FA) que utilizan contraseñas de un solo uso (OTP)

  • 2-FA se utiliza para validar la entrega de paquetes en el sector minorista en todo el mundo. Se envían mensajes desde la app del comerciante a la app del cliente y a la app del repartidor para que se autentiquen.
  • 2-FA se utiliza para validar la identidad en retiros de efectivo de cajeros automáticos. En este caso, la aplicación ATM, la aplicación bancaria y el móvil del cliente están intercambiando mensajes para la autenticación.

Descubre más

Obtén más información sobre los recursos relacionados.

Orientación con poco código

Las plataformas con poco código son adecuadas para crear aplicaciones oportunistas en colaboración con las partes interesadas del negocio; crear aplicaciones de análisis y generación de informes de datos; ampliar las aplicaciones SaaS y modernizar las aplicaciones heredadas. Cada línea de código tiene un costo asociado a su creación, mantenimiento, depuración, actualización y protección. Oracle Application Express (APEX) ayuda a los desarrolladores a evitar estos costos proporcionando componentes de alto nivel y patrones de diseño comunes mediante una experiencia de desarrollo gráfica e intuitiva.

Las plataformas con poco código permiten crear aplicaciones empresariales más rápido que con la codificación manual tradicional. Estas plataformas son idóneas para crear aplicaciones oportunistas en colaboración con las partes interesadas de la empresa, crear aplicaciones de análisis e informes de datos, ampliar aplicaciones SaaS y modernizar aplicaciones heredadas.

Con las plataformas de poco código, eres libre de centrarte en resolver el problema empresarial en lugar de en la complejidad del desarrollo de aplicaciones web. Estas complejidades incluyen seguridad, accesibilidad, acceso eficiente a los datos, rendimiento y globalización. Las plataformas con poco código eliminan esta complejidad al reducir drásticamente la cantidad de código que tienes que mantener.

Oracle Application Express (APEX) ayuda a los desarrolladores a evitar los costos asociados al desarrollo tradicional de aplicaciones al proporcionar componentes de alto nivel y patrones de diseño comunes a través de una experiencia de desarrollo gráfico intuitiva.

Oracle Cloud Infrastructure (OCI) proporciona la infraestructura segura, fiable, ampliable y con un alto rendimiento necesaria para las aplicaciones más exigentes. Estas aplicaciones se pueden ampliar para admitir cualquier cosa, desde grupos de trabajo pequeños hasta millones de usuarios finales. En este documento se describen los principios de diseño y la ruta de implantación óptima para diseñar una aplicación con poco código.

Principios de diseño

Al implementar un patrón con poco código, utiliza los siguientes principios de diseño de desarrollo de aplicaciones modernas:

Utiliza servicios totalmente gestionados para eliminar la complejidad del desarrollo de aplicaciones, los tiempos de ejecución y la gestión de datos.

Adopta un enfoque basado en metadatos y con poco código al desarrollar aplicaciones. Especifica la lógica de la aplicación de forma declarativa siempre que sea posible y escribe el código solo cuando sea necesario. Interactúa directamente con los datos de la base de datos mediante SQL. Utiliza servicios completamente gestionados, como Oracle Autonomous Database y Oracle APEX Application Development (APEX Service), que pueden maximizar la disponibilidad y la escalabilidad para hacer frente a las cambiantes demandas de las aplicaciones con poco código. Además, las capacidades de base de datos como Oracle Real Application Clusters (RAC) y Oracle Data Guard garantizan que las aplicaciones con poco código estén disponibles 24 horas todos los días del año y que puedan realizar un failover si se produce un fallo en el centro de datos donde se aloja la infraestructura.

Automatización de la creación, la prueba y el despliegue

Utiliza OCI Resource Manager para automatizar el aprovisionamiento de bases de datos autónomas de Oracle y entornos APEX. Utiliza Oracle SQL Developer Command Line (SQLcl) con Liquibase para automatizar el despliegue de los cambios del modelo de datos. Utiliza el despliegue de aplicaciones de un clic de APEX para desplegar manualmente los cambios entre entornos.

Mantén el nivel de aplicación sin estado

Oracle APEX no tiene estado y no tiene servidor, y el estado de la aplicación de tiempo de ejecución se almacena en tablas para que se puedan reutilizar las conexiones entre usuarios. Esto genera un número mucho menor de conexiones que pueden soportar una gran simultaneidad de usuarios.

Utiliza bases de datos convergentes con soporte completo en todos tus datos

Las aplicaciones con poco código suelen tener que trabajar con datos en diferentes formatos, como estructurados (relacionales), no estructurados (documentos XML/JSON) y espaciales. Puesto que APEX está embebido en Autonomous Database, puede utilizar SQL, PL/SQL y JavaScript del servidor para trabajar en todos estos formatos de datos. Además, debido a la arquitectura única de APEX, las aplicaciones disfrutan de un acceso a los datos sin latencia, lo que proporciona el rendimiento más óptimo.

Seguimiento y supervisión integrales del instrumento

Controla y realiza un seguimiento de la actividad de la aplicación APEX mediante las capacidades incorporadas de control de actividad, que incluyen información detallada de rastreo y depuración en un nivel por usuario. Revisa la actividad de nivel de espacio de trabajo y de nivel de instancia de APEX Administration Services. Utiliza el hub de rendimiento para supervisar la actividad de la base de datos, revisar los informes del repositorio de carga de trabajo automática (AWR) para identificar a los principales consumidores de recursos e identificar las recomendaciones de ajuste.

Elimina un único punto de fallo mediante la replicación de datos automatizada y la recuperación de fallos

APEX en Oracle Autonomous Database se despliega mediante una arquitectura de alta disponibilidad que abarca el nivel de datos (Exadata y RAC) y el nivel medio (nodos redundantes de Oracle REST Data Services). Utiliza Autonomous Data Guard para aumentar aún más la disponibilidad de tus aplicaciones y protegerlas frente a fallos de dominios de disponibilidad.

Implementa un enfoque de defensa en profundidad para proteger el ciclo de vida de la aplicación

Utiliza OCI Identity and Access Management (IAM) para esquemas de autenticación para tus aplicaciones APEX. Asigna esquemas de autorización a aplicaciones y componentes de aplicación de APEX para aplicar el control de acceso en función del rol de usuario o el privilegio. Utiliza las capacidades declarativas incorporadas de APEX para manejar la protección del estado de la sesión (SSP) y el cifrado a nivel de elemento para proteger las aplicaciones y los datos. Utiliza variables de enlace en consultas SQL para evitar la inyección SQL. Configura los timeouts apropiados de la aplicación para garantizar que las sesiones inactivas terminen automáticamente. Ejecuta el asesor de APEX incorporado para detectar posibles problemas de seguridad, como páginas, elementos y botones no protegidos. Utiliza API de escape declarativas y programáticas para proteger frente a scripts de sitios (XSS).

Arquitectura

Esta arquitectura es para el desarrollo y despliegue de aplicaciones con poco código mediante Oracle APEX Application Development (APEX Service) y todos los servicios de Oracle Autonomous Database. Al desplegar estos servicios, todos los componentes necesarios para la pila completa se aprovisionan automáticamente y se gestionan por completo. Estos componentes incluyen gateways, equilibradores de carga y Oracle REST Data Services.

arquitectura con poco código

En esta imagen se muestra la arquitectura subyacente del desarrollo y despliegue de aplicaciones con poco código mediante Oracle APEX Application Development y todos los servicios de Oracle Autonomous Database. Muestra un entorno totalmente gestionado que contiene una subred pública y una subred privada. Fuera del entorno totalmente gestionado se encuentran estos servicios: aplicaciones APEX, API de Oracle REST Data Services y API de REST externas. Estos servicios acceden al entorno totalmente gestionado a través de un gateway de Internet o de NAT.

La subred pública contiene un equilibrador de carga mientras que la subred privada contiene una instancia de Oracle REST Data Services y una instancia de Oracle Autonomous Database, en la que se es una instancia de Oracle APEX en Autonomous Database.

El tráfico de las aplicaciones APEX y las API de Oracle REST Data Services se enruta a través de un gateway de Internet al equilibrador de carga, que lo dirige bidireccionalmente a la instancia de Oracle REST Data Services en la subred privada. Este servicio, a su vez, se comunica bidireccionalmente con Oracle Autonomous Database. El tráfico de Oracle APEX en la instancia de Autonomous Database se enruta directamente a las API de REST externas a través de un gateway de NAT.

Todos los artefactos de aplicación se despliegan en el nivel de base de datos, que proporciona acceso a datos de latencia cero porque no es necesario tráfico de red entre los niveles de aplicación y base de datos.

  • Gateways y equilibradores de carga
    Esta infraestructura se aprovisiona automáticamente, se gestiona en su totalidad y se proporciona para permitir el acceso a los servicios APEX. Estos servicios son totalmente transparentes para el desarrollador de aplicaciones APEX con poco código.
  • Oracle APEX
    Oracle APEX en Autonomous Database proporciona un entorno preconfigurado, totalmente gestionado y seguro para desarrollar y desplegar aplicaciones.
  • Autonomous Database
    Oracle Autonomous Database es un servicio de base de datos de autogestión, autoprotección y autorreparación que está optimizado para las cargas de trabajo de procesamiento de transacciones. No es necesario configurar ni gestionar ningún hardware ni instalar ningún software. OCI crea la base de datos y gestiona copias de seguridad, aplicación de parches, actualizaciones y ajustes. Autonomous Database proporciona una base de datos convergente que permite almacenar, indexar, buscar y manipular todos estos tipos de datos.
  • Oracle REST Data Services
    Oracle REST Data Services (ORDS) une HTTPS y Oracle Database. Una aplicación Java de nivel medio, Oracle REST Data Services proporciona una API REST de Database Management, SQL Developer Web, un gateway PL/SQL para aplicaciones APEX y la capacidad de publicar servicios web RESTful para interactuar con los datos y los procedimientos almacenados en Oracle Database.

Otras consideraciones

Al implementar un patrón con poco código, también debes tener en cuenta lo siguiente:

  • Las aplicaciones desarrolladas mediante APEX se pueden integrar con servicios y sistemas externos al consumir API de REST directamente o sincronizando automáticamente los datos de REST localmente.
  • También puede publicar la funcionalidad desarrollada en APEX como API de REST para el consumo externo mediante el taller de datos REST incorporado y Oracle REST Data Services.

Alternativas y antipatrones

Considera las alternativas a la arquitectura descrita en este patrón y evita intentar implementar antipatrones.

  • Alternativas
    Es habitual aumentar las aplicaciones con poco código y tecnologías de alto control para casos de perímetro específicos. Para los componentes de la aplicación que no son adecuados para el desarrollo de aplicaciones con poco código, utilice aplicaciones Java o JavaScript para acceder a los mismos datos, lo que permite un único almacén de datos común. Este patrón proporciona la flexibilidad para utilizar la tecnología más adecuada para el caso de uso específico y el código bajo para el resto.
  • Adjuntos
    No recomendamos la codificación manual de la mayoría de las aplicaciones de negocio. Hay numerosas complejidades implicadas en el desarrollo de una aplicación oportunista, incluida la seguridad, la accesibilidad, el acceso eficiente a los datos, el rendimiento y la globalización. Sin embargo, estas complejidades se pueden abordar de forma más eficaz mediante el uso de plataformas con poco código.

Casos de uso

Algunos ejemplos de la eficacia de un patrón de código bajo son:

  • Aplicaciones opcionales
    Cuando surge una nueva oportunidad de negocio, a veces es necesario crear rápidamente una nueva aplicación. Las organizaciones tienen un enorme retraso en las aplicaciones que se necesitan para satisfacer las necesidades cambiantes del negocio y seguir siendo competitivas. Este retraso puede estar mal definido y las prioridades de negocio pueden cambiar rápidamente, por lo que las aplicaciones deben ser fáciles de crear y actualizar según sea necesario. Estas aplicaciones se pueden crear y mantener fácilmente mediante APEX.
  • Informes y análisis de datos
    La obtención de un panorama completo y preciso en toda una organización, o incluso dentro de un departamento, suele ser un reto. Los datos se incluyen en numerosos sistemas, los informes existentes son limitados y no siempre proporcionan los detalles necesarios para tomar decisiones de negocio informadas, es difícil limitar quién puede ver qué y evitar filtraciones de datos y ejecutar informes predefinidos pueden llevar horas. El uso de APEX y sus amplias capacidades de generación de informes y visualización de datos simplifican el desarrollo de paneles de control adecuados para varias comunidades de usuarios.
  • SaaS y extensiones de EBS
    Los sistemas de ERP proporcionan una amplia funcionalidad, pero no siempre proporcionan los informes específicos que necesitas o pueden faltar funciones específicas de tu sector o de la organización. También es posible que tengas procesos de negocio comunes que tomen demasiados pasos para completarse, lo que los hace ineficientes. En esos casos, crear una extensión mediante APEX puede proporcionar la información adecuada o mejorar considerablemente la productividad y la experiencia del usuario.
  • Modernización de aplicaciones heredadas
    Las aplicaciones de Oracle Forms a menudo proporcionan una experiencia de usuario de cliente/servidor obsoleta. Estos sistemas heredados a menudo tienen problemas de usabilidad y accesibilidad, tienen dificultades para trabajar con varios navegadores y no son compatibles con dispositivos móviles. Oracle APEX es la plataforma de elección clara para migrar fácilmente las aplicaciones de Oracle Forms a aplicaciones web modernas. Los mismos procedimientos almacenados y paquetes PL/SQL funcionan de forma nativa en APEX, lo que hace que sea fácil de desarrollar.
  • Sustitución de hojas de cálculo
    Casi todas las organizaciones utilizan hojas de cálculo para difundir e informar sobre los datos. ¿Por qué? Porque las hojas de cálculo son muy fáciles de crear. Cualquiera puede combinar una hoja de cálculo cuando tiene los datos. Una vez creadas, las hojas de cálculo a menudo se envían a los compañeros para ayudar a actualizarlas, lo que inevitablemente lleva a numerosas copias con diferentes datos y procesos de negocio con errores. Una solución mucho mejor es disponer de una única fuente de datos almacenada en una base de datos totalmente segura con una aplicación basada en explorador que todos puedan utilizar para mantener los datos.

Descubre más

Obtén más información sobre los recursos relacionados.

Orientación sobre IA/AA

Big data es un conjunto de capacidades y patrones que permite gestionar, recopilar, almacenar, catalogar, preparar, procesar y analizar todos los tipos de datos (no estructurados, semiestructurados y estructurados) tanto si proceden de orígenes como bases de datos, videos, formularios, documentos, archivos log, páginas web o imágenes. Además, una plataforma de aprendizaje automático debe estar totalmente gestionada y permitir que ingenieros de datos y científicos de datos realicen todos estos pasos en el ciclo de vida de desarrollo del modelo.

Las funcionalidades de big data de Oracle abarcan diversos servicios y herramientas para que puedas comenzar tu transición al big data en función de tus habilidades y preferencias. Con la base de datos Oracle convergente se almacena una gran variedad de datos en la base de datos, y se escala hasta múltiples PB de volumen, con una rápida ingesta de datos y eventos (con colas de eventos transaccionales), proporcionando seguridad de todos los datos con seguridad integrada. La arquitectura de datos convergente aborda el volumen, la variedad, la velocidad y la veracidad de los datos en una plataforma de base de datos convergente con Oracle Autonomous Database.

Los científicos de datos e ingenieros de aprendizaje automático no quieren dedicar tiempo al aprovisionamiento, la actualización, la aplicación de parches y la protección de la infraestructura. Quieren dedicar su tiempo a crear, entrenar y desplegar modelos que afectan al negocio. Una plataforma de aprendizaje automático debe estar totalmente gestionada y debe permitirles realizar todos los pasos del ciclo de vida de desarrollo del modelo (crear, entrenar, desplegar y supervisar). Los datos utilizados para el aprendizaje automático deben ser independientes de la fuente y permitir a los científicos de datos acceder a datos consistentes y fiables para crear, entrenar y desplegar modelos.

La mayoría de los kits de herramientas de aprendizaje automático modernos son de código abierto y se escriben en Python. Como tal, una plataforma de aprendizaje automático debe proporcionar soporte nativo para marcos de código abierto y Python. También debe proporcionar a los usuarios la capacidad de personalizar sus entornos de aprendizaje automático instalando sus propias bibliotecas o actualizando las que ya están instaladas. La plataforma debe permitir a los científicos de datos entrenar sus modelos con datos estructurados, no estructurados o semiestructurados, a la vez que escalan los pasos de extracción, transformación y carga (ETL) o de formación vertical u horizontal en una serie de recursos informáticos.

Por último, una plataforma de aprendizaje automático debe garantizar que los modelos se puedan desplegar fácilmente para el consumo en tiempo real con una fricción mínima (normalmente mediante una simple llamada REST), conservando el linaje del modelo desplegado para garantizar que se pueda auditar y reproducir.

Principios de diseño

Al implantar un patrón de big data y análisis, utiliza los siguientes principios de diseño para el desarrollo moderno de aplicaciones.

Utiliza servicios totalmente gestionados para eliminar la complejidad del desarrollo de aplicaciones, los tiempos de ejecución y la gestión de datos.

Tus datos son tan valiosos como la capacidad para utilizarlos. Las herramientas de big data son populares en la comunidad de código abierto, y la mayoría tiene capacidades equivalentes a las de las bases de datos modernas, especialmente con el almacenamiento de datos, el análisis y el entrenamiento y despliegue de modelos de IA/AA. La convergencia de Oracle Database es una de esas plataformas de big data.

Las capacidades premium nativas de Oracle, como las tablas externas y SQL de Oracle Autonomous Data Warehouse, permiten el uso de almacenes de datos en la base de datos Oracle y el almacenamiento de objetos de OCI para almacenar y analizar petabytes de datos en tiempo real.

Automatización de la creación, la prueba y el despliegue

DataOps es importante para garantizar que puedes obtener los máximos beneficios de tus pipelines de big data. Utiliza el servicio Oracle Cloud Infrastructure Data Integration para ingerir datos, implantar el procesamiento ETL y la transferencia de ELT, y crear pipelines para conectar tareas en secuencia o en paralelo para facilitar un proceso. Los pipelines pueden incluir varios orígenes de datos populares dentro y fuera de Oracle Cloud. Utiliza las capacidades de programación de Data Integration para definir cuándo y con qué frecuencia ejecutar cada tarea. Utiliza Oracle Database Cloud Service Management para definir trabajos de base de datos que se ejecutan en un juego de bases de datos según un programa. Mejora esto con pipelines de integración y despliegue continuos y capacidad de observación unificada para los desarrolladores de aplicaciones.

Utiliza bases de datos convergentes con soporte completo en todos los datos

Utiliza las mejores herramientas que pueden simplificar, automatizar y acelerar la consolidación de datos para su uso con el máximo valor de negocio. Para almacenes de datos, subalmacenes de datos de departamento y capas de presentación y servicio con datos estructurados, utiliza Autonomous Database, que está optimizada para estos escenarios. La capacidad de Autonomous Data Warehouse también proporciona conectividad a herramientas de análisis, inteligencia empresarial e informes como Oracle Analytics Cloud.

Implementa un enfoque de defensa en profundidad para proteger el ciclo de vida de la aplicación

Planifica la seguridad de los datos. Realiza un seguimiento de todos los trabajos que incorporan datos y sacan datos del lago de datos, conserva los metadatos del linaje de datos y asegúrate de actualizar las políticas de control de acceso.

Sigue el principio de privilegio mínimo y asegúrate de que los usuarios y las cuentas de servicio solo tienen el privilegio mínimo necesario para realizar sus tareas. Controla quién tiene acceso a los componentes de la plataforma de datos mediante Oracle Cloud Infrastructure Identity and Access Management. Utiliza la autenticación multifactor en Oracle Cloud Infrastructure Identity and Access Management para aplicar una autenticación compleja a los administradores. Utiliza la seguridad de la base de datos con Oracle Datasafe para obtener la estrategia de seguridad de todos los datos, usuarios y patrones de acceso. Almacena información confidencial, como contraseñas y tokens de autenticación, un servicio de almacén.

Arquitectura

Utiliza una base de datos convergente escalable (procesamiento de transacciones y almacén de datos) para operar la empresa que genera datos, almacena y analiza todos los tipos de datos. En esta arquitectura, varios orígenes de datos (usuarios finales, dispositivos, eventos, sensores y aplicaciones) alimentan datos a la base de datos mediante la integración de datos (Oracle GoldenGate) y las colas de eventos transaccionales de Oracle para los datos de transmisión. Los datos se almacenan en Oracle Autonomous Database (Oracle Autonomous Transaction Processing y Oracle Autonomous Data Warehouse) junto con el soporte del almacén de objetos de OCI para big data mediante SQL con tablas externas. Utiliza Oracle Machine Learning para crear y desplegar modelos y Oracle Analytics Cloud para obtener insights de los datos.

Oracle Machine Learning (libros de notas de OML, interfaz de usuario de OML AutoML, servicios de OML, OML4Py) en Oracle Autonomous Database para explorar y preparar los datos, así como para crear, evaluar y desplegar modelos de aprendizaje automático.

Este patrón de arquitectura proporciona potentes capacidades cuando los datos necesarios para entrenar el modelo se incorporan a la base de datos y el procesamiento está cerca de donde se encuentran los datos. Este patrón tiene una variedad de orígenes de datos y eventos que se pueden explorar y preparar con la exploración de datos para la formación de OML, y utilizar OML para crear, entrenar y desplegar modelos con SQL, Python mediante OML4Py, o utilizando AutoML sin código. Importa modelos entrenados en otro lugar, como OCI Data Science (p. ej., Tensorflow o PyTorch) con servicios OML, con el formato de modelo ONNX.

Este patrón utiliza el enfoque de mover los algoritmos a los datos. Se accede a todos los datos desde su origen (mediante tablas externas) o se ingieren y, a continuación, se procesan y almacenan en la base de datos convergente para modelos de AA. Una vez que los modelos se entrenan en la base de datos, se pueden desplegar directamente mediante consultas SQL (mediante operadores PREDICTION) o con API OML4Py. Los modelos con formación externa se pueden desplegar con los servicios de OML. Además, el aprendizaje automático de análisis de texto, espacial y gráfico está disponible en Autonomous Database.

Arquitectura IA/AA

Esta arquitectura utiliza los siguientes componentes:

  • Base de datos autónoma
  • Catálogo de datos de OCI
  • Oracle Machine Learning (OML): con SQL, OML4Py
  • Servicios OML
  • Oracle Transactional Event Queues (TEQ)
  • Integración de datos GoldenGate
  • Oracle Spatial Studio
  • Oracle Graph Studio
  • Texto de Oracle

Se tratan los siguientes orígenes de datos:

  • Aplicaciones empresariales
  • Dispositivos
  • Usuario final
  • Eventos
  • Sensores
  • Cualquier activo digital

Esta arquitectura tiene los siguientes componentes dentro de la VCN:

  • Red virtual en la nube (VCN)
    Una VCN es una red personalizable definida por software que se configura en una región de Oracle Cloud Infrastructure. Al igual que las redes de centros de datos tradicionales, las VCN ofrecen un control total sobre el entorno de red. Una VCN puede tener varios bloques CIDR no superpuestos que puede cambiar después de crear la VCN. Puedes segmentar una VCN en subredes que se pueden acotar a una región o a un dominio de disponibilidad. Cada subred consta de un rango contiguo de direcciones que no se solapan con las otras subredes de la VCN. Puedes cambiar el tamaño de una subred después de la creación. Una subred puede ser pública o privada.
  • Integración de datos
    Oracle Cloud Infrastructure Data Integration es un servicio en la nube totalmente gestionado y sin servidor que ingiere y transforma los datos para la ciencia y el análisis de datos. Ayuda a simplificar ETL y ELT complejos en lagos y almacenes de datos con el diseñador de flujos de datos moderno y sin código de Oracle. Puedes utilizar uno de los operadores listos para usar, como una unión, agregación o expresión, para dar forma a los datos.
  • Oracle Cloud Infrastructure Transactional Event Queues (TEQ) en ADB
    Las colas de eventos transaccionales de Oracle en una base de datos autónoma proporcionan funcionalidad de cola de mensajes integrada en la base de datos. Esta implementación altamente optimizada y particionada aprovecha las funciones de la base de datos Oracle para que los productores y consumidores puedan intercambiar mensajes con un alto rendimiento, almacenando mensajes de forma persistente y propagando mensajes entre colas en diferentes bases de datos. Las colas de eventos transaccionales de Oracle son una implementación particionada de alto rendimiento con varios flujos de eventos por cola.
  • Oracle Autonomous Database
    Oracle Autonomous Database es un servicio de base de datos autogestionado, autoprotegido y autorreparable que está optimizado para cargas de trabajo de almacenamiento de datos. No es necesario configurar ni gestionar ningún hardware ni instalar ningún software. Oracle Cloud Infrastructure gestiona la creación de la base de datos.

    Este servicio de almacén de datos en la nube elimina todas las complejidades de la operación de un almacén de datos, la protección de datos y el desarrollo de aplicaciones basadas en datos. Automatiza el aprovisionamiento, la configuración, la protección, el ajuste, la ampliación y la copia de seguridad del almacén de datos. Incluye herramientas para la carga de datos de autoservicio, transformaciones de datos, modelos de negocio, conocimientos automáticos y funciones de base de datos convergentes integradas que permiten consultas más simples en múltiples tipos de datos y análisis de machine learning.
  • Almacenamiento de objetos de OCI
    El almacenamiento de objetos proporciona acceso rápido a grandes cantidades de datos estructurados y no estructurados de cualquier tipo de contenido, incluidas copias de seguridad de bases de datos, datos analíticos y contenido enriquecido, como imágenes y videos. Puedes almacenar de forma segura y recuperar datos directamente desde Internet o desde la plataforma en la nube. Puedes ampliar el almacenamiento fluido sin experimentar ninguna degradación del rendimiento o la fiabilidad del servicio. Utiliza el almacenamiento estándar para el almacenamiento "en caliente" al que necesitas acceder de forma rápida, inmediata y frecuente. Utiliza el almacenamiento de archivos para el almacenamiento "en frío" que conservas durante largos periodos de tiempo y a los que rara vez se accede.

    Esta plataforma de almacenamiento de alto rendimiento a escala de Internet ofrece durabilidad de datos fiable y rentable. El servicio Object Storage puede almacenar una cantidad ilimitada de datos no estructurados de cualquier tipo de contenido, incluidos datos analíticos y contenido enriquecido, como imágenes y videos.
  • Oracle Machine Learning en Oracle Autonomous Database
    Oracle Machine Learning en Oracle Autonomous Database (Autonomous Transaction Processing y Autonomous Data Warehouse). Además del procesamiento espacial y de gráficos, el aprendizaje automático permite muchos casos de uso, como la simplificación del enrutamiento para la entrega de paquetes y la detección rápida de anomalías en las operaciones de blanqueo de dinero.
  • Oracle Analytics Cloud
    Esta plataforma para análisis modernos en la nube empodera a los analistas y consumidores empresariales. Oracle Analytics Cloud ofrece capacidades modernas de análisis de autoservicio con tecnología de IA para la preparación, detección y visualización de datos; informes empresariales y por demanda, junto con análisis aumentados y procesamiento y generación de lenguaje natural. Tanto si eres un analista empresarial, un ingeniero de datos, un científico de datos, un gerente de departamento, un experto en dominios o un ejecutivo, Oracle Analytics Cloud puede ayudarte a convertir los datos en estadísticas.
  • Aplicaciones analíticas, de aprendizaje automático y personalizadas
    Servicios de análisis, Oracle Machine Learning y aplicaciones personalizadas que catalogarán, prepararán, procesarán y analizarán big data.
  • OCI Data Catalog
    Oracle Cloud Infrastructure Data Catalog es una solución de gobernanza y detección de datos de autoservicio totalmente gestionada para los datos de tu empresa. Proporciona a los ingenieros de datos, científicos de datos, administradores de datos y directores de datos un único entorno de colaboración para gestionar los metadatos técnicos, empresariales y operativos de la organización.

    Oracle Cloud Infrastructure Data Catalog es un servicio de gestión de metadatos que ayuda a los profesionales de datos a detectar datos y permitir la gobernanza de datos.
  • Oracle GoldenGate
    Este servicio totalmente gestionado ofrece una plataforma de software de replicación y captura de datos de cambios (CDC) basada en registros en tiempo real para satisfacer las necesidades de las aplicaciones impulsadas por transacciones actuales. El software proporciona captura, enrutamiento, transformación y entrega de datos transaccionales en entornos heterogéneos en tiempo real.

Consideraciones y antipatrones

Ten en cuenta lo siguiente para big data y análisis.

  • Reducción de las copias de datos y el movimiento
    El movimiento de datos es costoso, consume recursos y tiempo, y puede reducir la fidelidad de los datos. Elige el servicio adecuado para almacenar y procesar tus datos, según los tipos de datos, la calidad de los datos y las transformaciones necesarias. Utiliza la base de datos Oracle Database convergente para el almacenamiento del lago de datos para todos los tipos de datos raw y gestiona hasta varios petabytes de datos operativos y analíticos en tiempo real. Amplía este almacenamiento con un almacén de objetos adecuado. Utiliza Oracle Autonomous Data Warehouse para almacenar los datos transformados para tu presentación. El uso del almacenamiento adecuado ayuda a evitar copiar y mover datos y reduce las copias duplicadas, que pueden ser difíciles de mantener y sincronizar.
  • Proporciona a tus usuarios la interfaz de datos que necesitan
    Las plataformas de datos y análisis empresariales tienen muchos tipos de usuarios: ingenieros de datos, analistas de datos, desarrolladores de aplicaciones, ingenieros de big data, administradores de bases de datos, analistas empresariales, científicos de datos, administradores de datos y otros consumidores. Todas tienen diferentes necesidades y preferencias para consumir datos. Comprender todos los casos de uso y los requisitos del consumidor de datos es importante. Para las consultas SQL y la interfaz con herramientas de inteligencia empresarial, utiliza Autonomous Data Warehouse.

Al implementar el aprendizaje automático y la inteligencia artificial, ten en cuenta estas opciones.

  • Proporcionar escalabilidad horizontal en cada paso del ciclo de vida de desarrollo del modelo. Proporcionar escalabilidad horizontal para los pasos de ETL y de procesamiento de datos, el entrenamiento del modelo en sí y el despliegue del modelo. Garantiza la reproducibilidad del modelo. Los modelos se auditan y deben reproducirse. La reproducción de un modelo requiere que se proporcionen referencias al código fuente, los conjuntos de datos de entrenamiento y validación, y el entorno (bibliotecas y arquitectura de terceros) cuando se guarda un modelo. Utiliza referencias a repositorios de Git y confírmalos para realizar un seguimiento del código. Utiliza Object Storage para guardar instantáneas de conjuntos de datos de entrenamiento y validación.
  • Código de control de versiones, características y modelos. Esta consideración está relacionada con la reproducibilidad del modelo.
  • Empaqueta, comparte y reutiliza dependencias de tiempo de ejecución de terceros. Reutiliza los mismos blocs de notas, trabajos y despliegues de modelos de Python. Al hacerlo, también se minimiza el riesgo de discrepancias de dependencia de terceros entre esos pasos.
  • Independientemente del origen de datos al limitar las transferencias de datos. La transferencia de datos a un entorno de entrenamiento de modelo requiere mucho tiempo. Utilice los datos de la base de datos que se pueden compartir entre entornos de bloc de notas o trabajos de formación tanto como sea posible. Mantén instantáneas de conjuntos de datos locales para el entrenamiento de modelos y la validación.

Antipatrones

Al diseñar una implementación, ten en cuenta lo siguiente:

  • El hecho de no utilizar una base de datos convergente provoca fragmentación de datos, contagio de copias y riesgos de seguridad de los datos
  • La falta de control y catálogo de datos puede convertir los lagos de datos en intercambios de datos

Alternativas y antipatrones

Considera las alternativas a la arquitectura descrita en este patrón y evita intentar implementar antipatrones.

  • Alternativas
    Es habitual aumentar las aplicaciones con poco código y tecnologías de alto control para casos de perímetro específicos. Para los componentes de la aplicación que no son adecuados para el desarrollo de aplicaciones con poco código, utilice aplicaciones Java o JavaScript para acceder a los mismos datos, lo que permite un único almacén de datos común. Este patrón proporciona la flexibilidad para utilizar la tecnología más adecuada para el caso de uso específico y el código bajo para el resto.
  • Adjuntos
    No recomendamos la codificación manual de la mayoría de las aplicaciones de negocio. Hay numerosas complejidades implicadas en el desarrollo de una aplicación oportunista, incluida la seguridad, la accesibilidad, el acceso eficiente a los datos, el rendimiento y la globalización. Sin embargo, estas complejidades se pueden abordar de forma más eficaz mediante el uso de plataformas con poco código.

Casos de uso

A continuación, se muestran ejemplos de implementaciones que utilizan los servicios de datos y análisis de Oracle Cloud Infrastructure (OCI) para ingerir, almacenar, catalogar, preparar, procesar y analizar big data.

  • Almacenes de datos y análisis empresarial

    Utiliza Oracle Autonomous Data Warehouse como almacén de datos o Data Mart con Oracle Analytics Cloud.

    • Data Integration ingiere datos de orígenes deseados. El tipo de integración de datos utilizada depende de si los datos son registros de bases de datos por lotes, de transmisión o sincronizados, y de si los datos son locales o están en la nube.
    • Los datos se pueden entregar al almacenamiento de objetos para el acceso compartido por parte de los servicios en la nube y para su procesamiento antes de que se almacenen en Autonomous Data Warehouse o Big Data. Los datos también se pueden entregar directamente a Autonomous Data Warehouse y, a continuación, transformarse mediante las capacidades de ELT, o se pueden ingerir directamente registros de otras bases de datos.
    • Oracle Analytics Cloud proporciona una visualización de los datos en la base de datos, incluidos los resultados de aprendizaje automático. Oracle Analytics Cloud reduce todo el procesamiento posible a Autonomous Data Warehouse para el procesamiento del flujo de datos.
    • El almacenamiento de objetos es opcional para el uso compartido de datos o el archivo activo. Un archivo activo es donde los datos utilizados con menos frecuencia se mueven de ADW a un nivel de almacenamiento de menor costo (almacenamiento de objetos). Aunque es posible consultar los datos desde Object Storage, el rendimiento es más lento. El almacenamiento de objetos también se puede utilizar para almacenar datos compartidos entre servicios en la nube.
    • Oracle Cloud Infrastructure Data Catalog recopila metadatos de orígenes de datos de Autonomous Data Warehouse y Object Storage. Interactúa con Data Catalog para utilizar y gestionar el catálogo.
  • Gestiona todos los tipos de datos con un lago de datos y un almacén de datos para un patrón de Data Lake House

    Gestiona los datos de Autonomous Data Warehouse y utiliza Oracle Analytics Cloud para la visualización de los datos.

    • Data Integration ingiere datos de orígenes deseados. El tipo de integración de datos utilizada depende de si los datos son registros de bases de datos por lotes, de transmisión o sincronizados, y de si los datos son locales o están en la nube.
    • Los datos pueden entregarse con Oracle Database mediante servicios en la nube y para el procesamiento de datos y eventos, ya que se almacenan en el almacén de datos autónomo. Los datos también se pueden entregar directamente a Autonomous Data Warehouse y, a continuación, transformarse mediante las capacidades de ELT, o se pueden ingerir directamente registros de otras bases de datos.
    • Autonomous Data Warehouse puede consultar datos de Object Storage o ingerir datos de Object Storage con SQL, o bien con la ayuda de Oracle Cloud Infrastructure Data Integration.

Descubre más

Obtén más información sobre los recursos relacionados.