Oracle TimesTen In-Memory Database est une base de données relationnelle optimisée pour la mémoire qui offre aux applications la réactivité instantanée et le débit très élevé requis par les entreprises d'aujourd'hui dans les domaines de la communication, des services financiers, des applications Web, de la logistique de voyage, des jeux et d'autres secteurs. Elle peut être déployée dans le niveau application en tant que base de données mise en cache (TimesTen Application-Tier Database Cache), base de données autonome (TimesTen Classic) ou base de données distribuée (TimesTen Scaleout). Les interfaces SQL standard, la haute disponibilité et la tolérance aux pannes sont des fonctionnalités standard du produit.
TimesTen Cache de base de données de niveau application (TimesTen Cache) est une option Oracle Database qui fournit une mise en cache en temps réel et en lecture/écriture pour Oracle Database. TimesTen Cache améliore le temps de réponse des transactions d'application en mettant en cache un sous-ensemble de tables et de fragments de table essentiels aux performances d'Oracle Database vers le niveau application. Les tables de cache sont gérées comme les tables de base de données relationnelle standard dans TimesTen In-Memory Database, ce qui permet à TimesTen Cache d'offrir aux applications la généralité et les fonctionnalités complètes d'une base de données relationnelle, la maintenance transparente de la cohérence du cache avec Oracle Database et les performances en temps réel d'une base de données en mémoire. Le cache TimesTen est idéal pour mettre en cache les sous-ensembles essentiels aux performances d'une base de données Oracle Database afin d'améliorer le temps de réponse au niveau de l'application. Pour atteindre la haute disponibilité, le cache TimesTen peut être déployé à l'aide d'une configuration actif-de secours, où les tables de cache sont répliquées en temps réel entre les bases de données en mémoire Oracle TimesTen.
Oracle TimesTen In-Memory Database a été conçu en supposant que toutes les données gérées résident dans la mémoire physique (RAM). Par conséquent, la chose la plus importante à considérer en ce qui concerne le matériel est de disposer d'une quantité suffisante de RAM disponible au niveau de l'application. En dehors de cela, TimesTen a très peu de considérations matérielles. Comme pour toute application, il est important d'avoir un nombre approprié de CPU (exécutant à des vitesses d'horloge appropriées) pour que votre application s'exécute le plus rapidement possible. De même, pour tirer parti de plusieurs CPU, vous devez soit exécuter plusieurs applications, soit écrire vos applications pour utiliser plusieurs threads. En outre, les journaux de transactions et les fichiers de points de reprise sont conservés sur disque ; les disques plus rapides offrent de meilleures performances globales.
TimesTen Cache réside au niveau de l'application. Il utilise SQL*Net pour communiquer avec Oracle Database. Oracle Database Instant Client est installé dans le cache TimesTen pour qu'il se connecte à Oracle Database.
Oracle TimesTen In-Memory Database est un produit sous licence distincte. Il inclut TimesTen In-Memory Database, les composants de réplication et le déploiement évolutif de TimesTen.
TimesTen Cache de base de données de niveau application est une option Oracle Database Enterprise Edition pour Oracle Database. Il inclut les technologies de base de données en mémoire TimesTen et de mise en cache, qui permettent de déployer TimesTen Cache en tant que base de données de cache en mémoire avec synchronisation automatique des données entre TimesTen Cache et Oracle Database.
Les plateformes suivantes sont prises en charge :
L'option TimesTen Cache de base de données de niveau application prend en charge les versions 11.2.0.4, 12c, 19c et 21c d'Oracle Database, ainsi que les versions suivantes d'Oracle Autonomous Database :
Les bases de données TimesTen sont utilisées pour de nombreuses applications pour un large éventail de secteurs, y compris les applications de télécommunications pour l'authentification, l'autorisation, la portabilité des numéros, la facturation et la facturation en ligne, la médiation et les centres d'appels, et les applications financières, telles que la négociation de titres, les bourses, la détection des fraudes, la conformité, la banque en ligne et la tarification des obligations. D'autres applications comprennent les jeux, les systèmes CRM, les systèmes de réservation aérienne, la planification des voyages, les applications destinées aux clients et les applications de défense.
Oracle TimesTen est également au cœur de certaines applications Oracle, telles que Exalytics In-Memory Machine pour l'analyse OLAP « rapide » et Oracle Billing and Revenue Management pour la facturation en temps réel.
Les bases de données TimesTen et Coherence sont exécutées au niveau de l'application. Les deux sont basés sur la mémoire principale. Coherence est une banque d'objets distribuée en mémoire. Elle est utilisée pour stocker et extraire des objets sérialisés à l'aide des API get/put.
TimesTen est une base de données relationnelle en mémoire avec persistance sur disque et sémantique de transaction standard. Elle est accessible via SQL. Lorsqu'elle est utilisée comme cache pour Oracle Database, elle synchronise automatiquement les données avec Oracle Database. Les caches distribués présentent une image unique aux applications avec une transparence d'emplacement et un contrôle de simultanéité distribué.
Exadata, basé sur Oracle RAC, est un système hautement évolutif qui peut être utilisé pour augmenter le débit de base de données à des niveaux inégalés.
La valeur unique de TimesTen réside dans sa capacité à fournir des temps de réponse très faibles au niveau de l'application. Pour des performances optimales, TimesTen est intégré à l'application. TimesTen fournit les réponses aux demandes SQL en microsecondes. Cela est essentiel pour les applications en temps réel qui nécessitent un temps de réponse instantané pour l'acheminement des appels téléphoniques, l'authentification et l'autorisation, la facturation en temps réel, le trading de titres, la détection des fraudes, les services bancaires en ligne et de nombreux autres cas d'utilisation.
Oui. Oracle TimesTen In-Memory Database est aujourd'hui utilisé par de nombreux clients comme une base de données autonome au niveau de l'application. TimesTen fournit une prise en charge transactionnelle complète des opérations SQL, et les journaux de transactions sont conservés sur disque pour récupération (la base de données est toujours en mémoire).
Oui, avec TimesTen Cache de base de données de niveau application. Cette option de base de données inclut TimesTen In-Memory Database et des technologies de mise en cache pour permettre le déploiement de TimesTen en tant que base de données de cache en mémoire avec synchronisation automatique des données entre TimesTen et Oracle Database.
La base de données en mémoire TimesTen prend en charge les interfaces ODBC et JDBC standard, ainsi qu'OCI et ADO.NET pour permettre aux applications de se connecter à la base de données, à l'aide des normes SQL-92.
Non, les interfaces d'application sont les mêmes pour les applications 32 bits et 64 bits. Pour tirer parti du mode 64 bits, l'application devra être recompilée en mode 64 bits et liée aux bibliothèques TimesTen 64 bits.
Les applications peuvent être développées à l'aide de Java, .NET, C, C++, Pro*C et PL/SQL, ainsi que de langages open source tels que Python et Node.js. Pour obtenir la liste des exemples de programme, reportez-vous aux exemples Oracle TimesTen In-Memory Database sur GitHub.
Oracle TimesTen In-Memory Database a été conçu et optimisé pour être exécuté au niveau de l'application. La base de données peut être directement liée (intégrée) à l'application pour des performances optimales. Avec la base de données TimesTen intégrée à l'application, l'accès SQL n'entraîne aucune surcharge réseau ou IPC. Même en mode imbriqué, TimesTen fournit toujours un accès multiprocessus/multithread complet et un contrôle de simultanéité d'accès.
Oui, Oracle TimesTen In-Memory Database prend en charge les index. Les index améliorent les performances des requêtes sur la base de données, tout comme dans Oracle Database. TimesTen prend en charge deux types d'index : les index de plage, qui sont utilisés pour les recherches impliquant des plages d'égalité et d'inégalité, et les index de hachage, qui offrent un accès plus rapide à la clé primaire et à l'égalité que les index de plage pour les recherches de correspondance exactes et les équijointures.
TimesTen In-Memory Database prend en charge la norme SQL. Pour créer des structures de données, utilisez des instructions SQL DDL, par exemple CREATE TABLE, CREATE INDEX, CREATE SEQUENCE, CREATE VIEW, CREATE MATERIALIZED VIEW, CREATE PACKAGE, CREATE PROCEDURE, CREATE FUNCTION, CREATE SYNONYM, ALTER TABLE, etc. Les mêmes techniques de conception de base de données que celles utilisées pour le SGBDR peuvent également être utilisées pour TimesTen. La conception et la gestion des bases de données dans TimesTen sont plus simples que dans un SGBDR optimisé pour les disques, car il n'est pas nécessaire de dimensionner les extents de table ou de défragmenter les disques.
Bien que l'ensemble de la base de données réside en mémoire, TimesTen contient également des fichiers journaux de transactions et des fichiers de point de reprise qui sont conservés sur le disque. En cas de redémarrage ou d'échec du système, la base de données en mémoire est récupérée à partir des fichiers journaux de points de reprise et de transactions.
TimesTen Le cache prend en charge :
TimesTen Cache est exécuté en tant qu'application client sur le serveur Oracle Database. TimesTen Cache prend en charge les mêmes plateformes que TimesTen In-Memory Database. Découvrez quelles plateformes sont prises en charge par les technologies Oracle TimesTen.
Oui. Etant donné que TimesTen Cache est exécuté en tant que client Oracle, il peut être exécuté sur une plateforme différente de celle du serveur Oracle Database. Comme le laisse entendre le nom, TimesTen Cache de base de données de niveau application, TimesTen Cache réside généralement dans le niveau application, tandis qu'Oracle Database se trouve dans le niveau base de données.
La quantité de données critiques pour les performances à mettre en cache dans le cache TimesTen varie en fonction de la nature de l'application. Au lieu de mettre en mémoire cache l'ensemble de la base de données, un sous-ensemble des tables, colonnes et lignes de la base de données peut être mis en mémoire cache dans le cache TimesTen. Une autre option consiste à définir un cache dynamique dans lequel les données des tables Oracle sont chargées à la demande.
La réplication TimesTen est une fonctionnalité de TimesTen In-Memory Database et de TimesTen Application-Tier Database Cache. La technologie de réplication TimesTen permet la réplication de données en temps réel entre les nœuds de serveur TimesTen. Elle est utilisée pour créer des architectures hautement disponibles, des sites de reprise après sinistre et pour distribuer des données sur plusieurs nœuds. La réplication prend en charge la configuration active/de secours ou active/active, à l'aide de la transmission de données asynchrone ou synchrone. Pour plus d'informations, reportez-vous à la fiche technique TimesTen In-Memory Database.
Vous pouvez configurer TimesTen pour répliquer l'ensemble de la base de données en mémoire TimesTen vers des nœuds TimesTen. Après un basculement, où le nœud de secours devient le nœud actif, le nœud défaillant peut être récupéré à partir de la base de données de secours (maintenant active).
Oui. La réplication de niveau table et la réplication de niveau base de données sont toutes deux prises en charge.
La réplication TimesTen utilise des sockets TCP/IP persistants et de transmission en continu entre les nœuds répliqués sur un réseau LAN ou WAN.
Oui. La réplication unidirectionnelle et bidirectionnelle est prise en charge. Pour la réplication bidirectionnelle, il est recommandé de partitionner la charge globale afin d'éviter un nombre élevé de conflits. En cas de conflit dans lequel des mises à jour sont effectuées sur les mêmes lignes de base de données, la réplication TimesTen prend en charge la détection et la résolution des conflits basées sur l'horodatage.