Quelles sont les nouveautés de
SAP SQL Anywhere 11
Résumé
SQL Anywhere 11 marque trois évolutions majeures :
- un SQL enrichi et une recherche plein-texte (MERGE, CONTAINS, REGEXP, SIMILAR TO)
- un moteur plus agile qui sert nombre de requêtes directement depuis les index et peut charger/extraire des fichiers côté client.
- des fondations d’infrastructure pour la gouvernance, la montée en charge, la sauvegarde parallèle et la mobilité (MobiLink 11, QAnywhere).
Un simple upgrade du catalogue suffit à activer la plupart des nouveautés ; seules les vues matérialisées à rafraîchissement immédiat ou l’indexation texte requièrent un rebuild pour créer les objets système correspondants.
1. Langage SQL & types de données
MERGE et recherche avancée
-
La nouvelle instruction MERGE fusionne INSERT/UPDATE/DELETE en un seul bloc, simplifiant les scripts d’« UPSERT ».
-
La recherche plein-texte via CONTAINS offre des requêtes par terme, phrase, proximité ou fuzziness, reposant sur un index texte dédié.
-
Les prédicats REGEXP et SIMILAR TO ajoutent des filtres compatibles Perl pour l’analytique ad-hoc.
-
La clause OPENSTRING permet d’interroger à la volée un CSV, XML ou BLOB comme s’il s’agissait d’une table.
2. Optimiseur & performances noyau
-
L’algorithme de scan multi-index combine jusqu’à quatre index pour répondre à des prédicats complexes et évite souvent les tables temporaires.
-
Le moteur pratique désormais la lecture « index-only » : si la requête ne touche que des colonnes indexées, aucune page de table n’est lue.
-
Pour les requêtes très simples, l’optimiseur peut être court-circuité au profit d’un plan heuristique moins coûteux.
3. Chargement, extraction & reprise
-
LOAD TABLE et UNLOAD savent désormais tirer/pousser des fichiers côté client (CmdSeq), éliminant les copies temporaires sur le serveur.
-
Trois nouveaux modes de journalisation (CONTENT LOGGING, ROW LOGGING, FILE NAME LOGGING) permettent aux systèmes en miroir ou au point-in-time recovery de rejouer les opérations de masse sans les fichiers d’origine.
-
LOAD TABLE … USING COLUMN|VALUE et UNLOAD … INTO VARIABLE accélèrent les ETL internes entre tables ou BLOB mémoire.
4. Vues matérialisées
Les vues peuvent être déclarées IMMEDIATE et se rafraîchir automatiquement à chaque modification des tables sources ; le rafraîchissement utilise par défaut WITH SHARE MODE pour laisser passer les lecteurs.
5. Sécurité & gouvernance
-
Les politiques de connexion (login policies) donnent un contrôle fin sur durée de vie des mots de passe, verrouillage, quotas et échecs d’authentification.
-
Le commutateur serveur -xd empêche l’instance de devenir le serveur « par défaut » d’une machine, bloquant les connexions égarées.
6. Administration, sauvegarde & exploitation
-
Les sauvegardes d’archive parallèles (clauses WITH CHECKPOINT LOG COPY et MAX WRITE) exploitent l’I/O multithread pour réduire la fenêtre de maintenance.
-
sa_server_option peut maintenant surveiller et réagir au changement des options ; les outils macOS n’exigent plus de scripts de contournement.
7. Mobilité & synchronisation
-
MobiLink 11 introduit la gestion de farms Relay Server, le téléchargement SQL pass-through et de nouveaux commutateurs (-cs, -lsc, -ss) pour le multi-nœuds.
-
Les flags diagnostics (-vm, -vq, -ppv) exposent minutages et compteurs de phases directement dans les logs de sync, simplifiant le tuning.
-
QAnywhere peut désormais utiliser UltraLite comme magasin et fournit un agent autonome plus des API .NET/Java/C# pour la messagerie légère.
-
UltraLite 11 gagne LOAD TABLE, VALIDATE, de nouvelles jointures multi-tables et des API C++/Java enrichies.
Prochaines étapes suggérées
- Mettre à jour une base de test via dbupgrad pour activer politiques de connexion, index texte et nouvelles vues catalogue.
- Comparer les scans multi-index à vos hints manuels sur des charges mixtes (entrepôt de données, recherches).
- Migrer les ETL nocturnes vers le chargement/déchargement depuis fichiers client pour réduire les transferts SAN.
- Programmer une première sauvegarde parallèle d’archive et ajuster vos scripts de rétention.
- Piloter le mode farm du Relay Server pour vos applis mobiles et activer -vm afin d’établir un profil de base des performances de synchronisation.