Plan du cours

1. Introduction et nouveautés d'Oracle Database 23ai

  • Aperçu de la release, positionnement et feuille de route axée sur les développeurs.
  • Tour d’horizon des principales fonctionnalités : recherche vectorielle AI, dualité JSON/relational, et pilotes asynchrones.
  • Comment 23ai modifie les flux de travail typiques des développeurs et les modèles d'application.

2. Mise en pratique : environnement et outils (labo)

  • Installation et utilisation d'Oracle Database 23ai Free pour les labs.
  • Mise en place de JDK, IDE et pilotes clients (JDBC, R2DBC si applicable).
  • Première connexion, requêtes simples et échafaudage de projet d'exemple.

3. Dualité JSON/relational et nouveaux types de données (labo)

  • Utilisation du type de données JSON amélioré et des collections JSON dans le code d'application.
  • Modèles de dualité : quand utiliser les approches relationnelles ou JSON.
  • Exemples : stockage, requêtes et mise à jour d’objets JSON depuis des applications Java/Quarkus.

4. Recherche vectorielle AI et cas d'utilisation pour les développeurs (labo)

  • Introduction à la recherche vectorielle AI, types de données vectorielles et index vectoriels.
  • Construction d’un exemple simple de recherche sémantique : génération d’embeddings, stockage et requêtes de similarité.
  • Intégration de Vector Search avec le code d'application et les bibliothèques (exemples conceptuels avec LangChain/LlamaIndex).

5. Programmation asynchrone, pipelining et modèles de performance

  • Compréhension du pipelining au niveau des pilotes et des modèles de requêtes asynchrones pour JDBC, R2DBC et autres pilotes.
  • Modèles côté client (flux réactifs, threads virtuels Java) et impact sur le serveur.
  • Laboratoire pratique : mise en œuvre d'appels pipelined et mesure des améliorations de débit.

6. Améliorations SQL, PL/SQL et contrôles de sécurité

  • Nouvelles fonctionnalités de langage SQL/PLSQL pertinentes pour les développeurs (par exemple, annotations de schéma, jointures directes dans les mises à jour, nouveau type Booléen).
  • Aperçu du pare-feu SQL et de la façon dont il améliore la sécurité en temps d’exécution des requêtes SQL.
  • Laboratoire pratique : migration d’une petite procédure pour utiliser les nouvelles fonctionnalités de langage et test du comportement du pare-feu SQL dans un environnement contrôlé.

7. Meilleures pratiques de tests, débogage et déploiement (labo)

  • Tests unitaires de la logique de base de données, génération de données de test représentatives et mesure du comportement avec les nouvelles fonctionnalités.
  • Emballage et déploiement d'applications de développeurs utilisant des fonctionnalités 23ai vers des environnements de test.
  • Liste de vérification : réglages de performance, considérations de compatibilité et étapes suivantes pour la préparation en production.

Résumé et étapes suivantes

Pré requis

  • Une compréhension de SQL et des concepts de bases de données relationnelles
  • Une expérience en développement d'applications avec Java ou des langages similaires
  • Une familiarité avec les concepts de base de PL/SQL ou de scripts côté serveur

Public cible

  • Développeurs d'applications (Java, Quarkus ou similaires)
  • Développeurs de bases de données et ingénieurs PL/SQL
  • Ingénieurs DevOps responsables des outils de développement et des environnements CI
 14 Heures

Nombre de participants


Prix par participant

Nos clients témoignent (3)

Cours à venir

Catégories Similaires


Fatal error: Uncaught TypeError: {closure:get_outline_isls():25}(): Argument #1 ($value) must be of type string, array given in /apps/hitra7/backdrop/modules/_custom/frontend/islc7/isl_common.inc:25 Stack trace: #0 [internal function]: {closure:get_outline_isls():25}() #1 /apps/hitra7/backdrop/modules/_custom/frontend/islc7/isl_common.inc(25): array_walk() #2 /apps/hitra7/backdrop/modules/_custom/frontend/islc7/islc7.module(51): get_outline_isls() #3 /apps/hitra7/backdrop/modules/_custom/frontend/islc7/islc7.module(7): islc_prepare_links() #4 /apps/hitra7/npfrontend/nptemplates/default.php(272): islc7_sites_links_array_v3() #5 /apps/hitra7/npfrontend/modules/course/course.php(143): require_once('...') #6 /apps/hitra7/npfrontend/core/routes.php(15): course_menu_callback() #7 /apps/hitra7/npfrontend/__index.php(78): require_once('...') #8 /apps/hitra7/npfrontend/index.php(15): include_once('...') #9 /apps/hitra7/index.php(66): include_once('...') #10 {main} thrown in /apps/hitra7/backdrop/modules/_custom/frontend/islc7/isl_common.inc on line 25