Avantages
PC SOFT
 

Fonctionnalités
Les fonctionnalités offertes par HyperFileSQL sont très nombreuses.
Vous trouverez ci-après la description des principales fonctionnalités.

 
Procédures stockées (UDF)

Les procédures stockées (quelquefois appelées UDF) permettent de faciliter l'évolution et la maintenance de vos applications en factorisant le code. En effet, lorsque la façon de calculer un résultat ou une règle métier contenue dans une procédure stockée évolue, il vous suffira de modifier seulement la procédure stockée sur le serveur, sans effectuer la moindre modification dans les applications déployées. Une procédure stockée permet également de limiter le nombre d’allers et retours entre le poste client et le serveur, et donc améliore également la vitesse des traitements. Une même procédure stockée peut être partagée entre plusieurs applications. Les procédures stockées se programment en WLangage, et bénéficient donc de la richesse fonctionnelle et de la facilité de ce L5G. Les procédures stockées prennent des paramètres et/ou retournent des entiers, chaines, date, etc…
La création d’une procédure stockée depuis l’environnement de WINDEV est vraiment très facile.


Sous l’éditeur de schéma de données (éditeur d’analyses)
   
Triggers
Un trigger permet de déclencher une procédure stockée avant ou après un événement sur une table de la base de données : par exemple avant une suppression de ligne, ou après la modification d’une ligne. Un trigger apporte une grande sécurité. Le trigger sera déclenché quelle que soit l’application ou composant qui accède à la base de données et qui effectue l’opération définie, sans que le développeur de l’application n’ait quoi que ce soit à programmer. Les triggers «serveur», comme leur nom l’indique, s’exécutent directement sur le serveur.
Le «droit» de créer un trigger est défini via les droits de la base de données.
L’environnement de WINDEV avertit le développeur de la présence de ces triggers (les triggers sont visualisés dans l’analyse).
 
 
Intégrité : contrainte, suppression, mise à jour en cascade
Il est facile de définir des contraintes d’intégrité.
Les cardinalités sont paramétrables : (0,n) ; (0,1); (1,n); (3,n); etc...
Les liaisons réflexives sont supportées.

Exemples de contraintes d’intégrité référentielle :
Intégrité référentielle :
L'intégrité référentielle interdira l'effacement d'un auteur, tant que dans la base de données il existera au moins un livre se référant à cet auteur.
Il n’est pas possible de supprimer une ligne dans une table si cette ligne est reliée à d’autres lignes d’une table (on ne peut pas supprimer un client si des commandes sont reliées à ce client).
L’intégrité référentielle peut être définie par liaison, depuis l’éditeur d’analyses.
Suppression en cascade :
Si une ligne est supprimée dans une table, les lignes correspondantes dans les tables reliées sont également supprimées (cette contrainte peut être activée ou désactivée, par relation)
 
 
Journalisation
Le journal est une table particulière dans laquelle sont mémorisées automatiquement toutes les opérations réalisées sur une ou plusieurs tables depuis un instant donné.

Le journal contient l'historique de l'utilisation de la table, c'est-à-dire :
la ligne complète avant manipulation ou modification par l'utilisateur
la ligne complète après manipulation ou modification par l'utilisateur
l'auteur de la manipulation ou de la modification
la date et l’heure de la manipulation ou de la modification
la nature de l'opération effectuée : ajout, modification, suppression, lecture
l’identifiant du poste qui a effectué la modification
l’adresse IP du poste qui a effectué l'opération
le nom de l'application qui a effectué l'opération

Il est possible de réaliser les opérations suivantes à partir d'un journal :
restaurer le contenu d’une table journalée en cas de perte ou de destruction des données
restaurer le contenu d’une table journalée jusqu'à une certaine date
retrouver l'auteur, la date et l'heure d'une opération réalisée sur une ligne spécifique
conserver un historique de l'utilisation d’une table (par exemple pour réaliser des statistiques)
 
Ces opérations peuvent se lancer en ligne de commande ou depuis l’utilitaire WDJournal.
 
 
Transactions : commit, rollback, crash recovery
Une transaction est un ensemble d'opérations indissociables : soit toutes les opérations de la transaction sont réalisées, soit aucune opération n'est réalisée. La gestion des transactions est le meilleur moyen d'assurer la cohérence d'un ensemble d'écritures indissociables sur différentes tables HyperFileSQL.
Une transaction permet de s'assurer que des mises à jour effectuées sur une ou plusieurs tables de données se sont déroulées correctement.
 
 
Compression des données «blob»
Les données de type «blob» (mémo texte ou binaire) peuvent être compressées pour optimiser l’espace occupé sur le disque. L’espace occupé peut ainsi être très sensiblement réduit.
 
 
Compression des trames
Une «trame» est un paquet de données qui transite sur le réseau. HyperFileSQL, comme tous les SGBD, utilise des trames pour communiquer entre le poste client et le serveur. La vitesse de transfert des données d’un serveur dépend à la fois de la vitesse de circulation des trames sur le réseau, et de la taille de ces trames.

En réseau local, la vitesse est tellement élevée que la taille de la trame a une importance relative.

Par contre, pour un accès à distance (ADSL, 3G,...), la taille de la trame prend plus d’importance. Dans ce contexte, une forte réduction de la taille des trames engendre un gain de performances sensible. La compression des trames permet de réduire (jusqu’à 95% de réduction) la taille des paquets circulant sur le réseau, en appliquant automatiquement un algorithme de compression aux données. Dans un contexte de communication à distance, surtout si la vitesse de connexion est lente, l’intérêt de compresser les trames est grand. La vitesse en connexion à distance est améliorée. Les volumes de données transitant par le média de transmission étant réduits, celà peut avoir un avantage avec les contrats facturant selon le volume de données.
 
 
Verrou de ligne automatique
HyperFileSQL gère les verrous au niveau table et au niveau ligne. La gestion des verrous au niveau ligne permet d’assurer une meilleure performance des accès.
 
 
Plusieurs databases sur un même serveur
HyperFileSQL gère nativement la présence de plusieurs bases de données sur un même serveur. Les bases de données sont isolées. Des droits spécifiques peuvent être définis sur chacune des bases. Cela évite de multiplier les serveurs.
 
 
Reconnexion automatique
Cette fonctionnalité traite automatiquement l’aspect de la «déconnexion» en cours d’utilisation entre client et serveur. Typiquement, ce problème se pose avec des matériels dont la connexion avec le serveur n’est pas assurée en permanence : les appareils mobiles en particulier (Wi-Fi, 3G,…).

En connexion Wi-Fi par exemple, la liaison entre un appareil distant et le serveur peut s’interrompre un court instant. Ce type de coupure peut intervenir également sur des réseaux filaires classiques. Lorsque l’application est de nouveau connectée, il est utile de «reprendre» l’application là où la communication a été interrompue, et que les buffers soient correctement renseignés.

Grâce à la gestion automatique de la reprise, l’ensemble des «buffers» et des positions est mémorisé et réaffecté. L’application peut ainsi continuer à s’exécuter sans erreur, comme si la connexion ne s’était pas interrompue. Il est également possible de gérer les interruptions de connexion par programmation, ou d’exécuter des traitements supplémentaires si on le souhaite.
 
 
Sauvegarde

Paramétrage d’une sauvegarde

La sauvegarde est une fonctionnalité importante d’une base de données.
Il est possible de sauver l’intégralité du serveur, ou uniquement une base de données, ou uniquement une sélection de tables, avec ou sans les index.
HyperFileSQL gère la sauvegarde à chaud, différentielle.
Une sauvegarde est transportable, par exemple d’un Windows à un Linux, d’une version Client/Serveur à une version Classic.
Une sauvegarde peut être déclenchée depuis le Centre de Contrôle (sauvegarde immédiate, sauvegarde planifiée), ou par programmation, directement depuis l’application.
La périodicité de la sauvegarde complète et de la sauvegarde différentielle éventuelle peut être spécifiée (exemple : 1 complète par mois et 1 différentielle par semaine).
L’exécution de procédures stockées avant et/ou après la sauvegarde permet de réaliser des traitements automatiques : envoi d’email, copie de la sauvegarde sur un emplacement réseau, etc...).
Le nombre de sauvegardes à conserver peut être spécifié.

La sauvegarde peut s’exécuter :
• à chaud, sans déconnecter les utilisateurs
• de manière transparente, sans perturber le fonctionnement des applications.
 
 
Ordonnanceur intégré (tâches planifiées)
HyperFileSQL dispose d’un ordonnanceur intégré qui permet de définir et paramétrer des tâches planifiées. Une tâche ne consiste pas seulement à permettre d’exécuter une procédure stockée (UDF), mais permet également de déclencher une sauvegarde, ou de déclencher une optimisation automatique des performances.
La définition s’effectue par le Centre de Contrôle ou par programmation.
L’ordonnanceur permet aux DBA de programmer l’exécution automatique de tâches sur le serveur; il permet par exemple de réaliser des traitements par lot.
L’ordonnanceur est plus performant que l’exécution de commandes dans le planificateur de tâches de Windows ou dans le «cron» de Linux.
Les tâches peuvent être exécutées à une date fixée, avec un ou plusieurs intervalles réguliers.

Il est possible de créer, ajouter, modifier, activer, désactiver des tâches programmées par programmation, ou depuis l’outil d’administration, sous réserve de posséder les droits adéquats.


Interface graphique et conviviale de l’ordonnanceur
(tâches planifiées)

Exemple de paramètres possibles :
• Tous les mois ou certains mois seulement,
• Tous les jours ou certains jours (le lundi par exemple, ou le 4 de chaque mois),
• A heure fixe ou toutes les n heures et/ou n minutes,
• Nombre de fois où la tâche doit être exécutée (10 fois par exemple, ou à l’infini).
 
 
Réplication universelle
La réplication universelle fonctionne quelles que soient les bases de données utilisées. Il est par exemple possible de répliquer des données HyperFileSQL entre elles, ou avec des données Oracle ou provenant de n’importe quelle autre base de données. La réplication peut être unidirectionnelle ou bi-directionnelle, et peut s’effectuer selon différents médias : ordinateurs connectés au réseau, clé USB, Internet, GPRS, 3G...


Configuration du comportement des tables.

Une réplication se définit à l’aide de l’assistant de réplication, ou par programmation.
 
 
Réplication déconnectée
Le mode de «réplication déconnectée» permet à une réplication de se gérer de façon autonome. La réplication s’effectue sans connexion permanente au serveur contenant l’autre base de données. Le principe est simple: le réplica est envoyé sur le serveur de réplication (par Internet, via une clé USB,...). La liaison avec le serveur est ensuite inutile.


La réplication «déconnectée»
 
 
Cluster (ferme de serveurs)
Grâce à la fonctionnalité de cluster, un ensemble de serveurs physiques apparaît comme un serveur unique aux clients.
La défaillance éventuelle d’un serveur physique ne provoque pas de défaillance des accès à la base de données (haute disponibilité, tolérance aux pannes). Les serveurs se répliquent automatiquement les uns les autres en temps réel. La charge d’accès lecture est répartie sur l’ensemble des serveurs (répartition de la charge en lecture).
On peut ajouter et supprimer des serveurs à chaud.
En cas de crash d’un serveur, il se re-synchronisera automatiquement au démarrage.
Lorsqu’un utilisateur est connecté à un serveur qui défaille, l’application ne sera pas déconnectée, et sera automatiquement reconnectée à un serveur valide (basculement automatique).
Le cluster est également très utile pour les infrastructures SaaS.
 
 
Modification automatique des données sur chaque site (SDD)
Quel informaticien, quel DBA n'a pas pesté contre le temps perdu à écrire ces fameuses «moulinettes» (scripts) de table pour agrandir ou ajouter une colonne ou un index à une table existante, pour changer un type de données dans une colonne ?
Le problème est encore plus complexe quand de nombreuses (et souvent différentes) versions de l'application sont déployées : il faut en plus vérifier la version utilisée de la base de données.

L'écriture de moulinettes (scripts) est toujours délicate, car elle modifie des données. Avec HyperFileSQL tout cela appartient au passé !

HyperFileSQL gère de manière transparente l’évolution des structures (schémas) de données grâce à la technologie SDD (synchronisation du schéma des données).
Si par exemple une colonne voit sa taille modifiée, ou si une colonne est rajoutée, ou encore si le type des données contenues change (entier vers réel par exemple) HyperFileSQL mettra à jour automatiquement les données des tables concernées.
Un historique de 100 versions est géré.

Finies les «moulinettes» ! Finis les scripts ! Finis les «Alter table» hasardeux et insuffisants !

La procédure de mise à jour, qui sera installée et exécutée automatiquement avec la mise à jour de votre application, est générée automatiquement.


SDD : Mise à jour automatique du schéma de données
(également appelée Modif. Auto.)

Le SDD (synchronisation du schéma des données) effectue automatiquement :
La comparaison et synchronisation automatique de la base et des données par rapport au schéma à obtenir,
L’ajout, suppression, renommage de colonne,
Le changement de type, de taille,
L’ajout/suppression de clé/index, ajout/suppression de contraintes,
L’ajout/suppression de triggers, de procédures stockées.

Le SDD peut également être lancé par ligne de commande.
Notez qu’il n’est pas nécessaire d’utiliser d’autres outils de gestion de script pour réaliser ces tâches. Notez également que le SDD fonctionne quelles que soient les versions du schéma des bases cibles : le SDD fonctionne immédiatement sur une version n-3 par exemple.

Cette fonctionnalité de SDD peut s’exécuter :
à chaud, sans déconnecter les utilisateurs,
de manière transparente, sans perturber le fonctionnement des applications.
 
 
Lien avec les autres bases de données
Il est bien entendu possible d’utiliser HyperFileSQL en parallèle avec d’autres bases de données. D’ailleurs, la plupart des S.I. utilisent plusieurs SGBD hétérogènes. Une même application peut utiliser à la fois et simultanément une base HyperFileSQL et d’autres bases de données. HyperFileSQL permet également l’import et l’export facile de données avec d’autres bases de données.




Sommaire de la documentation :
- Présentation de HyperFileSQL
- Les versions
- Données et index
- SQL : Présentation
- Fonctionnalités
- Sécurité
- Ouverture
- Lien avec WINDEV, WEBDEV, WINDEV Mobile
- Les outils
- Programmation : SQL et WLangage
- Vocabulaire
- Qui utilise HyperFileSQL ?
- Liste d'avantages HyperFileSQL


Base de Données SQL
Windows, Linux, Mac, iPhone
Local
Mobile
Embarqué
Client/Serveur
Cluster
Grande capacité
Tous les types de données
Unicode
Index, index multicolonnes, clés
Intégrité référentielle
Full text
Procédures stockées
Triggers
Intégrité référentielle
Journalisation
Transactions
Compression des données
Compression des trames
Verrou de ligne automatique
Reconnexion automatique
Ordonnanceur
Réplication
SDD
Gestion des droits
Injection SQL impossible
Cryptage
Provider OLE DB
Pilote ODBC
Centre de Contrôle
Administration à chaud
Sauvegardes
Modélisation de base
Requêteur
Reporting
Visualiseur de données
Robot de surveillance
Lien natif avec WINDEV, WEBDEV et WINDEV Mobile
Déploiement gratuit*
 Commandez
Voir le panier Ajouter au panier Commandez en ligne
Vous pouvez commander par courrier, par fax ou directement
sur ce site
Echange concurentiel : jusqu'à 40% de remise immédiate
Vous avez un existant ?
Vous créez votre entreprise ?
Faites le choix de la productivité.
Et bénéficiez de 40% de remise immédiate.

 Demandez le dossier !
Recevez le dossier complet
(gratuit) Recevez sur votre bureau (ou chez vous) le DVD, le dossier complet et le N° de "01 Informatique": 100 témoignages de réussite, et découvrez comment développer 10 fois plus vite !
Politique environnementale  Politique environnementale
 
 
    Partager sur : Partager sur FacebookPartager sur TwitterPartager sur LinkedIn  |  Envoyer à un(e) ami(e) Envoyer à un(e) ami(e)
 
Accueil | Commander | Demander un dossier | Support & Assistance | Formation | Contacts | Politique environnementale | Plan du site | Donnez votre avis | Flux RSS de PC SOFT