Sybase s ianywhere s Advantage Database Server
Qui est Sybase ianywhere? Sybase ianywhere Sybase est la plus grande entreprise de logiciels et services exclusivement focalisée sur la gestion et la mobilisation de l information. Sybase subsidiary formé en 2000 Suite de produits dédiés Information Management Information Mobility Acheminement sécurisé de l information Anywhere, Anytime
Bases de données Sybase Contrairement aux autres éditeurs de bases de données qui ont tendance à avoir une approche monolithique, Sybase propose un ensemble de technologies de gestion des données optimisé pour des usages et environnements spécifiques. Extreme Transactions Analytics Workgroup & Embedded Mobile & Wireless Sybase ASE Sybase ASE Cluster Edition Sybase IQ Sybase RAP Advantage Database Server SQL Anywhere SQL Anywhere UltraLite
Qu est-ce que Advantage? Advantage Database Server (ADS) un système de base de données robuste, évolutif et de haute performance, vous permettant de créer facilement et rapidement des applications métiers performantes. 16 ans de développement continue Implémentation simplifiée dans vos applicatifs Administration légère pas de DBA requis Complet et léger Small footprint, moins de 8MB
Advantage pour les développeurs FoxPro Conservation Données DBF existantes Fonctions spéc. pour FoxPro Accès concurrentiel aux données Accès Client/Serveur PAS DE CONVERSION DES DBF Supporte l héritage des données DBF Support type de données VFP 9 Support pour grandes tables DBF(>2GB) Possibilité de masquer les tables DBF PERFORMANCE ACCRUE Support multi-plateforme Accès via ODBC, OLE DB, cursor adapters et SQL pass-through Full text search, backup et replication Chiffrement des données table, index, memo et communications MIGRATION Partage tables DBF avec Visual Studio Conversion vers Client/Serveur Migration des modules nécessaires Extension pour le web
Advantage Database Server et Visual FoxPro
Principales fonctionnalités Accès aux données:local, distant, Internet ISAM/navigational data access Vérrouillage au niveau des champs et index XBase expression engine Filtres Advantage-optimisés Full text search SQL data access ANSI 2003 SQL scripting Transactions Procédures stockées Triggers (déclencheurs) Events (notifications) Views (Vues) Fonctions définies par l utilisateur Intégrité référentielle Contraintes sur les enregistrements et colonnes Backup et restauration Replication Encryption Contrôle de l accès utilisateur
Types de serveurs Advantage Advantage Database Server (ADS) remote server Base de Données client/serveur LAN, WAN et Internet Advantage Local Server (ALS) Une application charge une DLL, au lieu de se connecter à un serveur de BDD Permet un accès aux données lorsqu un serveur est indisponible
Plateformes supportées Advantage Database Server Service pour Windows (32-bit et 64-bit) Daemon pour Linux (32-bit et64-bit) NLM pour Novell Netware Advantage Local Server DLL pour Windows Shared Object pour Linux
Evolutivité d une application Pas de nécessité de créer une application spécifique pour chaque environnement Une seule application peut supporter: NetWare, Windows NT/2000/2003, et Linux networks Communication IP et IPX Accès aux données sur un serveur de fichiers utilisant ADS Accès distant aux données via une connection Internet
Gestion Installation simple Légère installation en quelques minutes Nécessite très peu d info. De la part de l utilisateur Option d installation silencieuse Extension Utilitaire pour extension simplifiée Mises à jour Le serveur détecte automatiquement et supprime les versions antérieures du serveur. Les mises à jour ne nécessitent pas de ré-entrer les informations d enregistrement.
Full text search (FTS) Recherche de contenu (caractères, memo, champs BLOB) accélérée Disponible dans les filtres de table et les requêtes SQL Utilise des index FTS crées sur les champs de recherche spécifiés Comme AOFs, les index FTS sont entièrement dynamiques et utilisent les tables mises à jour
Système de traitement des transactions Définit une unité de travail logique ou business transaction Mises à jour, insertions, et suppressions multiples dans une ou plusieurs tables sur un serveur, peuvent être effectuées en une seule transaction Soit tous les changements sont effectues,soit rien n est change Rollback automatique en cas de panne sur la station de travail ou le réseau Niveau d isolation des transactions Read-committed Mises à jour, insertions, et suppression sont invisibles jusqu à leur validation (commit) Points de restauration des transactions pour un rollback partiel
Intégrité des données Valeurs par défaut Contraintes Champs: contraintes minimum, maximum et null-valid Enregistrements: expressions d évaluation de l enregistrement entier avant de le poster Intégrité réferentielle Advantage supporte les mises à jour et suppressions en cascade Règles de suppression et mises à jour Restrict, Cascade, Set NULL, Set Default L intégrité réferentielle n est supportée qu avec des tables ADT
Sécurité des données Encryption Données transitant sur le réseau sont encryptées Données stockées sur le serveur encryptées Algorithme d encryption 160-bit, compatible RC4 Sécurité des tables Vérification des droits utilisateurs (réseau/os) Ignorer les droits utilisateurs (réseau/os) Pour les connexions libres, la sécurité est appliquée sur les tables Sécurité de la BDD Comptes et groupe d utilisateurs
Utilisateurs et groupes Groupes d utilisateurs par défaut DB:Admin DB:Backup DB:Debug DB:Public Permissions sur les objets de la BDD Standard: Read, Update, Insert, Delete, Execute, Link_Access, Inherit Administration: Alter, Create, Drop, With Grant
Backup et restauration Backup en ligne Capture et sauvegarde un snapshot (vue) de la BDD Les utilisateurs peuvent être connecté et faire des modifications durant le backup Support pour le backup Backup complet de la BDD Backups différentiels
Replication Mise à jour des modifications d une table dans une BDD vers une autre BDD La réplication peut-être mono ou bi-directionnelle Le Chaînage (forwarding) est supporté L intégrité transactionnelle et référentielle est maintenue Résolution des conflits gérée par le type CONFLICT trigger Advantage implémente une réplication de type push
Pourquoi Advantage est différent
Qu est ce qui rend Advantage unique? Supporte l héritage des données DBF et des données Visual FoxPro 9 Permet l accès concurrent entre les applications nouvelles et les applications pré-existantes Fournit une encryption des tables Les tables peuvent être masquées ( hiding ) Supprime la limite de 2go Full Text Search sur les tables DBF
Types de données FoxPro Money TimeStamp Autoinc Varchar Varbinary NoCPTrans Character Memo Varchar
Accès concurrentiel Conversion incrémentielle vers C/S Migration des modules lorsque nécessaire Non ADS et ADS en même temps Pas de conversion de données C/S vers DBF existant Outil de migration permet de créer de nouvelles applications
Accès aux données* Applications Existantes Accès par le biais de DBC Peuvent-être converties pour une utilisation en mode client/serveur Nouvelles Applications Accès par le biais de Advantage Data Dictionary Peut utiliser n importe quel client ADS Aucune nécessité de convertir les données Les outils existants n ont pas besoin d être modifiés
Limite des tables: VFP 2GB VFP ne supporte que l utilisation de table inférieures à 2GO L utilisation du pilote Advantage supprime cette limite Tables >2GB ne peuvent plus être ouverte en natif par VFP Tables >4GB ne peuvent plus être ouvertes par une autre application en dehors d ADS Enregistrements toujours limités à 2 milliards
Full Text Search Remplacement pour ATC ou $ Content options Performance accrue grâce aux index Index de contenu non reconnu par VFP Peuvent-être placés dans un fichier d index non-structurel
Différents chemins de Migration
Accès des applications aux données locales DBF
Accès des applications aux données locales via client/serveur Client/Serveur Stabilité Performance Transactions ADS ADS ADS Triggers Procedures stockées Contraintes Intégrité réferencielle DBF
Accès local et ADS managed Data ADS ADS ADS managed data data DBF DBF >2GB >2GB Masquage des des Données Encryption Replication Hot Hot Backup Backup...... DBF
Certains modules accèdent en local, d autres utilisent ADS Managed Data Migrer Module par Module ADS ADS DBF
Diverses applications accèdent en local et ADS managed Data Ajout d applications PHP Win32 Linux.NET ASP.NET Silverlight Java ADS ADS DBF
Finalement: Toutes les données sont gérées par ADS.NET ASP.NET PHP Win32 Linux Silverlight Java ADS ADS DBF
Accèder à Advantage depuis FoxPro
Accèder à Advantage Convertit les DBC existantes Utilitaire de conversion DBC Accèder aux données Advantage Pilote ODBC Fournisseur OLEDB Méthodes Visual FoxPro SQL Passthrough (SPT) Remote Views (vues distantes) Cursor Adapters
Convertir votre DBC DBCConvert.prg Utilitaire pour convertir un DBC en ADD Installé avec le fournisseur OLE DB Ce qu il fait: Crée un dictionnaire de données Advantage (Advantage Data Dictionary) Ajoute au ADD toutes les tables présentes dans DBC Ajoute les valeurs par défaut & les contraintes de champs Note: Requis pour les noms de champs longs! Ajoute au ADD toutes les vues présentes dans le DBC Crée des règles RI dans ADD pour toutes les relations avec DBC Logs de tous les messages d erreur et les états
Vue distante (Remote View) Pour/Contre* Avantages: Certainement la manière la plus simple de travailler avec des données distantes View Designer est disponible Contrôle concurrentiel des mises à jour: embarqué Désavantages: Les requêts SELECT et connexions sont static Les vues sont dépendantes du schémas back-end Le DBC doit être maintenu/fourni
SQL Passthrough Pour/Contre* Avantages SPT permet aux développeurs de contrôler plus de propriétés Les requêtes SQL peuvent être modifiées à la volée Pas besoin d un DBC Utilisation possible des Procédures Stockées (Stored Procedures) Désavantages Le développeur doit tout coder Ne peux pas ajouter un curseur SPT au DataEnvironment des form/report Créer un curseur se mettant à jour peut se révéler complexe Utiliser SPT peut-être plus difficile que de d utiliser des vues distantes (remote views)
CursorAdapter Pour/Contre Avantages Il est plus facile de convertir un application existante pour une utilisation des CursorAdapters que d utiliser le SQL Passthrough Les données provenant d un CursorAdapter peuvent être utilisées n import où Changer les sources de données est facile Comme SPT, peut récupérer des données provenant de procédures stockées (Stored Procedures) Désavantages pas tant que cela! Apprentissage Les CursorAdapters ont été introduits tardivement De fait, nombre d applications utilisent d autres méthodes d accès aux données
Fonctionnalités non supportées Index binaires (prévus pour la prochaine version) Utilisation des champs Memo/BLOB dans des fonctions scalaires Traduction des données entre pages de code Vues contenant un ORDER BY Certaines collations ne sont pas supportées
Problèmes eventuels de compatibilité FoxPro ne pourra pas ouvrir une table avec un index FTS basé sur un champs memo FoxPro n ouvrira pas de table > 2GO ADS ne peut lire/écrire des champs génériques (General fields) ADS pourra tout de même ouvrir la table FoxPro ne reconnaîtra pas des index utilisant des opérateurs de concaténation binaires (;)
http://devzone.advantagedatabase.com Ressources Advantage sur le Web Exemples: http://devzone.advantagedatabase.com/codecentral/project.aspx?projid=140 Utiliser FoxPro Data Tech-Tip: http://devzone.advantagedatabase.com/dz/content.aspx?key=42&id=62 Partage de données FoxPro: http://devzone.advantagedatabase.com/jeremym/fox_sharing/fox_sharing.html Introduction à Advantage et FoxPro http://devzone.advantagedatabase.com/jeremym/fox1/fox1.html Blogs Vues d un évangéliste Advantage: http://blog.advantageevangelist.com JD Was Here: http://jdmullin.blogspot.com