TimesTen In-Memory Database FAQ

General

¿Qué es Oracle TimesTen In-Memory Database?

Oracle TimesTen In-Memory Database es una base de datos relacional optimizada para memoria que permite a las aplicaciones responder de manera instantánea y manejar un rendimiento extremadamente alto, como lo requieren las empresas actuales en comunicaciones, servicios financieros, aplicaciones web, logística de viajes, videojuegos y otros sectores. Puede implementarse en el nivel de la aplicación como una base de datos en caché (TimesTen Application-Tier Database Cache), como una base de datos independiente (TimesTen Classic) o como una base de datos distribuida (TimesTen Scaleout). Las interfaces estándar de SQL, la alta disponibilidad y la tolerancia a fallos son características estándar del producto.

¿Qué es Oracle TimesTen Application-Tier Database Cache?

TimesTen Application-Tier Database Cache (TimesTen Cache) es una opción de Oracle Database que proporciona una caché de lectura/escritura en tiempo real para Oracle Database. TimesTen Cache mejora el tiempo de respuesta de las transacciones al almacenar en caché un subconjunto crítico de tablas y fragmentos de tablas de un Oracle Database en el nivel de la aplicación. Las tablas en caché se gestionan como tablas regulares de bases de datos relacionales dentro de TimesTen In-Memory Database, lo que permite que TimesTen Cache ofrezca a las aplicaciones la generalidad y funcionalidad completas de una base de datos relacional, el mantenimiento transparente de la consistencia de la caché con Oracle Database y el rendimiento en tiempo real de una base de datos en memoria. TimesTen Cache es ideal para almacenar en caché subjuegos esenciales para el rendimiento de una instancia de Oracle Database para mejorar el tiempo de respuesta en el nivel de aplicación. Para lograr alta disponibilidad, TimesTen Cache puede implementarse usando una configuración activa-secundaria, donde las tablas en caché se replican en tiempo real entre las bases de datos Oracle TimesTen In-Memory.

¿Oracle TimesTen In-Memory Database tiene requisitos especiales de hardware y software?

Oracle TimesTen In-Memory Database se diseñó bajo el supuesto de que todos los datos administrados residen en la memoria física (RAM). Como resultado, el aspecto más importante a considerar en el hardware es disponer de suficiente RAM en el nivel de la aplicación. Aparte de eso, TimesTen tiene muy pocas consideraciones de hardware. Como con cualquier aplicación, es importante contar con un número adecuado de CPU (que operen a velocidades de reloj apropiadas) para que la aplicación funcione lo más rápido posible. De manera similar, para aprovechar múltiples CPU, necesita ejecutar múltiples aplicaciones o escribir sus aplicaciones para usar múltiples threads. Además, los registros de transacciones y los archivos de punto de control se persisten en disco; los discos más rápidos ofrecen un mejor rendimiento general.

TimesTen Cache reside en el nivel de la aplicación y utiliza SQL*Net para comunicarse con Oracle Database. Oracle Database Instant Client se instala dentro de TimesTen Cache para que pueda conectarse con Oracle Database.

¿Oracle TimesTen In-Memory Database forma parte de Oracle Database?

Oracle TimesTen In-Memory Database es un producto con licencia independiente; incluye la base de datos TimesTen In-Memory, los componentes de replicación y la implementación de TimesTen Scaleout.

TimesTen Application-Tier Database Cache es una opción de Oracle Database Enterprise Edition para Oracle Database. Incluye TimesTen In-Memory Database y tecnologías de caché, que permiten que TimesTen Cache se implemente como una base de datos de caché en memoria con sincronización automática de datos entre TimesTen Cache y Oracle Database.

¿Qué plataformas son compatibles con las tecnologías de Oracle TimesTen?

Las siguientes plataformas son compatibles:

  • Linux x86-64:
    • Oracle Linux 7.4 o superior, 8.2 o superior y 9.2 o superior
    • Red Hat Enterprise Linux 7.4 o superior, 8.2 o superior y 9.2 o superior
    • SUSE Linux Enterprise Server 12 y 15
    • Ubuntu 22.04
  • Linux arm64:
    • Oracle Linux 8.4 o posterior
    • Red Hat Enterprise Linux 8.4 o posterior
  • Solaris SPARC 64:
    • Solaris 11.3 y 11.4
  • Solaris x86-64:
    • Solaris 11.3 y 11.4
  • Microsoft Windows x86-64 (solo cliente):
    • Windows Server 2022
    • Windows Server 2019
    • Windows Server 2016
    • Windows Server 2012 R2
    • Windows 11
    • Windows 10
  • IBM AIX Power PC de 64 bits:
    • AIX 7.1, 7.2 y 7.3
  • macOS de 64 bits (solo cliente):
    • 12.6 Monterrey
    • 13.2 Ventura
    • 14.3 Sonoma

La opción TimesTen Application-Tier Database Cache es compatible con las versiones de Oracle Database 11.2.0.4, 12c, 19c y 21c, así como con las siguientes versiones de Oracle Autonomous Database:

  • Oracle Autonomous Serverless Release 19c para el tipo de carga de trabajo Transaction Processing
  • Oracle Autonomous Database on Dedicated Exadata Infrastructure Release 19c para el tipo de carga de trabajo Transaction Processing

¿Qué tipos de aplicaciones son mejores para las bases de datos Oracle TimesTen?

Las bases de datos TimesTen se utilizan en muchas aplicaciones para una amplia gama de sectores, incluidas aplicaciones de telecomunicaciones para autenticación, autorización, portabilidad de números, facturación en línea, mediación y centros de llamadas; y aplicaciones financieras, como comercio de valores, bolsas de valores, detección de fraudes, cumplimiento, banca en línea y valoración de bonos. Otras aplicaciones incluyen sistemas de CRM, sistemas de reserva de aerolíneas, planificación de viajes, aplicaciones orientadas al cliente y aplicaciones de defensa.

Oracle TimesTen también es fundamental para algunas aplicaciones de Oracle, como Exalytics In-Memory Machine para análisis OLAP en “velocidad de pensamiento” y Oracle Billing and Revenue Management para facturación en tiempo real.

¿Cuál es la diferencia entre TimesTen In-Memory Database (o TimesTen Cache) y Coherence?

Tanto las bases de datos TimesTen como Coherence funcionan en el nivel de la aplicación. Ambas están basadas en memoria principal. Coherence es un almacén de objetos en memoria distribuido. Se utiliza para almacenar y recuperar objetos serializados usando las API de get/put.

TimesTen es una base de datos relacional en memoria con persistencia en disco y semánticas transaccionales estándar. Se accede a través de SQL. Cuando se utiliza como caché para Oracle Database, sincroniza automáticamente los datos con Oracle Database. Las cachés distribuidas presentan una única imagen para las aplicaciones con transparencia de ubicación y control de concurrencia distribuido.

¿En qué se diferencia Oracle Exadata de TimesTen In-Memory Database?

Exadata, basado en Oracle RAC, es un sistema altamente escalable que puede usarse para aumentar el rendimiento de la base de datos a niveles sin precedentes.

El valor único de TimesTen radica en su capacidad para ofrecer tiempos de respuesta extremadamente bajos en el nivel de la aplicación. Para lograr el mejor rendimiento, TimesTen está integrado con la aplicación. TimesTen proporciona respuestas a solicitudes SQL en microsegundos. Esto es esencial para aplicaciones en tiempo real que requieren tiempos de respuesta instantáneos, como enrutamiento de llamadas telefónicas, autenticación y autorización, facturación en tiempo real, comercio de valores, detección de fraudes, banca en línea y muchos otros casos de uso.

Tengo más preguntas sobre TimesTen In-Memory Database. ¿Dónde puedo obtener respuestas?

Puedes publicar tus preguntas relacionadas con el producto TimesTen en el foro de discusión de TimesTen.

TimesTen Base de Datos en Memoria

¡Se puede usar TimesTen In-Memory Database como una base de datos independiente?

Sí, Oracle TimesTen In-Memory Database es utilizado por muchos clientes hoy en día como una base de datos independiente en el nivel de la aplicación. TimesTen proporciona soporte transaccional completo para operaciones SQL, y los registros de transacciones se persisten en disco para recuperación (la base de datos siempre está en memoria).

¿Se puede usar TimesTen In-Memory Database como una caché en memoria para Oracle Database?

Sí, con TimesTen Application-Tier Database Cache. Esta opción de base de datos incluye TimesTen In-Memory Database y tecnologías de caché para permitir que TimesTen se implemente como una base de datos de caché en memoria con sincronización automática de datos entre TimesTen y Oracle Database.

¿Cuáles API de acceso a datos admite TimesTen In-Memory Database?

TimesTen In-Memory Database admite interfaces estándar ODBC y JDBC, así como OCI y ADO.NET para que las aplicaciones se conecten a la base de datos utilizando estándares SQL-92.

¿Son diferentes las interfaces proporcionadas por TimesTen para aplicaciones de 32 bits y 64 bits?

No, las interfaces de aplicación son las mismas para aplicaciones de 32 bits y 64 bits. Para aprovechar el modo de 64 bits, la aplicación debe ser recompilada en modo de 64 bits y vinculada a las bibliotecas de TimesTen de 64 bits.

¿Qué lenguajes se pueden usar para desarrollar aplicaciones Oracle TimesTen?

Las aplicaciones pueden desarrollarse utilizando Java, .NET, C, C++, Pro*C y PL/SQL, así como lenguajes de código abierto como Python y Node.js. Para obtener una lista de programas de muestra, consulta los ejemplos de Oracle TimesTen In-Memory Database en GitHub.

¿Qué significa "modo integrado"?

Oracle TimesTen In-Memory Database fue diseñado y optimizado para ejecutarse en el nivel de la aplicación. La base de datos puede vincularse directamente (integrarse) con la aplicación para obtener el mejor rendimiento. Con la base de datos TimesTen integrada en la aplicación, el acceso SQL no incurre en ninguna sobrecarga de red o IPC. Incluso cuando se ejecuta en modo integrado, TimesTen todavía proporciona acceso completo multiproceso/multihilo y control de concurrencia.

¿Oracle TimesTen In-Memory Database admite índices como Oracle Database?

Sí, Oracle TimesTen In-Memory Database admite índices. Los índices mejoran el rendimiento de las consultas a la base de datos, al igual que en Oracle Database. TimesTen admite dos tipos de índices: índices de rango, que se usan para búsquedas que implican igualdad y rangos de desigualdad, e índices hash, que ofrecen un acceso más rápido para búsquedas de coincidencias exactas y equijoins en comparación con los índices de rango.

¿Cómo se diseñan y crean las estructuras de datos en TimesTen In-Memory Database?

TimesTen In-Memory Database admite el estándar SQL. Para crear estructuras de datos, utiliza sentencias DDL de SQL, por ejemplo, CREATE TABLE, CREATE INDEX, CREATE SEQUENCE, CREATE VIEW, CREATE MATERIALIZED VIEW, CREATE PACKAGE, CREATE PROCEDURE, CREATE FUNCTION, CREATE SYNONYM, ALTER TABLE, etc. Las mismas técnicas de diseño de bases de datos que se utilizan para RDBMS también pueden usarse para TimesTen. El diseño y la gestión de bases de datos en TimesTen es más simple que en un RDBMS optimizado para disco, ya que no es necesario dimensionar extensiones de tablas ni desfragmentar discos.

¿Cómo se recupera TimesTen datos tras un fallo de nodo o de energía al ser una base de datos en memoria?

Aunque toda la base de datos reside en memoria, TimesTen también tiene archivos de registro de transacciones y archivos de punto de control que se persisten en disco. En caso de reinicio del sistema o fallo, la base de datos en memoria se recupera desde los archivos de punto de control y registro de transacciones.

TimesTen Application-Tier Database Cache

¿Qué versiones de Oracle Database soporta TimesTen Application-Tier Database Cache?

TimesTen Cache admite:

  • Oracle Database versión 11.2.0.4
  • Oracle Database versión 12c
  • Oracle Database versión 19c
  • Oracle Database versión 21c
  • Oracle Autonomous Serverless Release 19c para el tipo de carga de trabajo Transaction Processing
  • Oracle Autonomous Database on Dedicated Exadata Infrastructure Release 19c para el tipo de carga de trabajo Transaction Processing

¿Qué plataformas soporta TimesTen Application-Tier Database Cache?

TimesTen Cache se ejecuta como una aplicación cliente en el servidor de Oracle Database. TimesTen Cache soporta las mismas plataformas que la base de datos en memoria TimesTen. Descubre qué plataformas son compatibles con las tecnologías Oracle TimesTen.

  • Linux x86-64:
    • Oracle Linux 7.4 o superior, 8.2 o superior y 9.2 o superior
    • Red Hat Enterprise Linux 7.4 o superior, 8.2 o superior y 9.2 o superior
    • SUSE Linux Enterprise Server 12 y 15
    • Ubuntu 22.04
  • Linux arm64:
    • Oracle Linux 8.4 o posterior
    • Red Hat Enterprise Linux 8.4 o posterior
  • Solaris SPARC 64:
    • Solaris 11.3 y 11.4
  • Solaris x86-64:
    • Solaris 11.3 y 11.4
  • Microsoft Windows x86-64 (solo cliente):
    • Windows Server 2022
    • Windows Server 2019
    • Windows Server 2016
    • Windows Server 2012 R2
    • Windows 11
    • Windows 10
  • IBM AIX Power PC de 64 bits:
    • AIX 7.1, 7.2 y 7.3
  • macOS de 64 bits (solo cliente):
    • 12.6 Monterrey
    • 13.2 Ventura
    • 14.3 Sonoma

¿Puedo ejecutar TimesTen Application-Tier Database Cache en una plataforma diferente a la del servidor de Oracle Database?

Sí, dado que TimesTen Cache se ejecuta como un cliente de Oracle, puede ejecutarse en una plataforma diferente a la del servidor de Oracle Database. Como lo sugiere el nombre, TimesTen Application-Tier Database Cache, TimesTen Cache normalmente reside en el nivel de la aplicación, mientras que Oracle Database se encuentra en el nivel de la base de datos.

Mi Oracle Database tiene un tamaño en terabytes, ¿cuánto debería medir mi base de datos TimesTen Cache?

La cantidad de datos críticos para el rendimiento que se deben almacenar en la caché de TimesTen Cache varía según la naturaleza de la aplicación. En lugar de almacenar en la caché toda la base de datos, se puede almacenar un subconjunto de las tablas, columnas y filas de la base de datos en TimesTen Cache. Otra opción es definir una caché dinámica, donde los datos de las tablas de Oracle se cargan bajo demanda.

Replicación de TimesTen

¿Qué es la replicación de TimesTen?

La replicación TimesTen es una función de TimesTen In-Memory Database y TimesTen Application-Tier Database Cache. La tecnología de replicación de TimesTen permite la replicación de datos en tiempo real entre nodos de servidor TimesTen. Se utiliza para crear arquitecturas altamente disponibles, sitios de recuperación ante desastres y para distribuir datos entre varios nodos. La replicación admite configuraciones activo/en espera o activo/activo, utilizando transmisión de datos asíncrona o síncrona. Consulta la ficha técnica de TimesTen In-Memory Database para más información.

¿Cómo asegura TimesTen replication la disponibilidad continua en caso de fallos del sistema?

Puedes configurar TimesTen para replicar toda la base de datos TimesTen In-Memory Database en uno o más nodos de TimesTen. Después de un cambio por conmutación por error, donde el nodo en espera se convierte en el nodo activo, el nodo que falló puede recuperarse desde la base de datos en espera (ahora activa).

¿Puedo replicar tablas seleccionadas en la base de datos?

Sí, la replicación a nivel de tabla y a nivel de base de datos son compatibles.

¿Qué protocolo de red es compatible con la replicación de TimesTen?

La replicación TimesTen utiliza sockets TCP/IP persistentes y de transmisión entre los nodos replicados en una LAN o WAN.

¿La replicación de TimesTen es bidireccional?

Sí, la replicación unidireccional y bidireccional son compatibles. Para la replicación bidireccional, se recomienda que la carga de trabajo se divida para evitar un alto número de conflictos. En caso de conflictos donde se realicen actualizaciones en las mismas filas de la base de datos, TimesTen replication admite la detección y resolución de conflictos basada en marcas de tiempo.