IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bases de données Delphi Discussion :

lenteur du BDE


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    873
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 873
    Par défaut lenteur du BDE
    bonjour,

    voici mon problème:

    j'ai fait une petite application base de données en delphi 3 avec le BDE
    (je sais, ca fait retro mais j'ai pas le choix pour l'instant!)

    L'application est sur un poste XP PRO et les bases sont sur un serveur.

    Ca fonctionne correctement avec un seul utilisateur mais quand 2 personnes se connectent sur la meme base, le temps d'affichage de le base est long (2 ou 3 secondes pour une afficher un DBgrid ;la base faisant 1 mega !)

    j'ai bien essayé de modifier la config du bde avec le Bdeadmin mais rien ni fait.

    Auriez un conseil ?

    Note : les bases sont au formats Dbf.
    Avec le format Paradox , est ce que cela serait plus rapide ?

    merci ?
    Salutations

  2. #2
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 114
    Par défaut
    Normal, le BDE, copie les fichiers en local pour ensuite les afficher ou les filtrer ... le BDE n'est pas fait pour le Client Server, et gère les DBF encore plus mal qu'il en gère les Paradox mais vu le volume, 1Mo, cela fait quoi 10 000 enrec de quelques colonnes, ça devrait gérer sans soucis avec paradox ... mais quoi qu'il arrive, c'est lent, ... dans mon premier employeur, on avait une application Paradox multi client (on avait limite à 3 pour les licences et les risques de stabilité), et je sais que mon tuteur avait bidouillé énormément, pour que cela soit performant, ... et je n'ai pas su quoi, j'ai donc eu les mêmes problèmes que toi, pour une application avec des pointes de 20 clients (plus un automate), je suis donc passé à IB, ...
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre Expert
    Avatar de ALWEBER
    Homme Profil pro
    Expert Delphi
    Inscrit en
    Mars 2006
    Messages
    1 544
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Expert Delphi

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 544
    Billets dans le blog
    10
    Par défaut
    Quand on ne connait pas on ne discute pas Monsieur le Troll !

    Tu peux passer sans problème sur Paradox et monter en puissance aussi bien en taille qu'en nombre d'utilisateurs. Les problèmes sur Paradox ont été rencontrés lorsque les utilisateurs ont progressivement abandonné les réseaux Novell (IPX/SPX) et sont passé sous TCP/IP que Microsoft maitrisait assez mal (~1997). En effet les brevets déposés par Borland à ce sujet (BDE) portent sur des interruptions particulières propres à Novell. Aujourd'hui tu peux coupler un serveur de fichier Linux avec des frontaux Microsoft pour une utilisation optimale (hors pb de majuscules et minuscules). 100 Utilisateurs en simultané sur une table de 2 Millions d'enregistrements ne pose pas de problème particulier.

  4. #4
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 114
    Par défaut
    J'ai bien précisé que je n'ai jamais su ce qu'il fallait changé pour que cela fonctionne avec bcp d'utilisateur avec le BDE ...

    Maintenant, je suis aussi preneur d'une solution concrète, pour ma part en Windows, car je n'ai que du Windows, donc Linux (dont j'ai oublié toutes mes navrantes notions il y a bien des années) est une idée, mais tu ne fourni pas comment dans le BDE on fait le lien avec un tel serveur ... surement en mettant une adresse dans le PATH de BDEAdmin ... personnellement, je n'ai vu que des répertoires partagés avec un disque réseau, je n'ai jamais mis d'IP directement ... et puis tu as les petits fichiers lck, net, et autre ... 100 utilisateurs sur un BDE, donc pourquoi vendre IB (5 users gratuits) si BDE gratuit fait mieux ? Le Driver Paradox le gère, le BDE le supporte ? ça c'est moins sure, mes souvenirs sont un peu vieux, et mon tuteur de l'époque qui était celui qui gérait les bases n'est plus informaticiens depuis quelques années et je n'ai plus trop de contact avec lui depuis qu'il est parti en province ...

    Et je n'ai pas travaillé en paradox depuis près de 5 ans, j'étais débutant (2 ans apprentissage), puis ensuite, je me suis retrouvé sur des projets tout seul, et mes notions de déploiement/configuration de pdx était assez faible et j'ai eu bcp de soucis de lenteur avec paradox pour juste lancer une pauvre requete SQL pour afficher une grille (à peine 100 lignes sur un millier) mais il est vrai j'avais un programme automate (qui avait une fréquence d'une modification sur cette table toute les 50 ms, précis oui, projet de trieuse industrielle) et je pense que cette contrainte de temps ont nuit aux postes clients ...

    Je suis en MySQL en ce moment, et j'ai connu aussi des framework propriétaire de mes employeurs qui encapsultait toutes ces notions de déploiement de DB MS ou Oracle ... donc toujours une méconnaissance de la config, et j'aimerais pouvoir disposer d'au moins la connaissance en paradox pour des applis freelance ...

    tient des pages intéressantes
    http://brouardf.club.fr/PdoxMulti.html
    http://www.developpez.net/forums/arc...hp/t-2090.html
    J'avais fait cela pour le NET DIR, mais je pense que le fait que mon application gardait ouvert les Tables et les modifier très souvent (toute les 250 une recherche, avec une insertion/modification, au bout de 500ms recevait une confirmation donc recherche/modification, puis selon la distance de circuit, on recevait la confirmation d'ejection encore une recherche/modification ... cela faisait bcp)
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  5. #5
    Membre Expert
    Avatar de ALWEBER
    Homme Profil pro
    Expert Delphi
    Inscrit en
    Mars 2006
    Messages
    1 544
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Expert Delphi

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 544
    Billets dans le blog
    10
    Par défaut
    Paradox fonctionne en mode collaboratif. Les fichiers LCK et NET servent a renseigner les autres utilisateurs du travail en cours : verrou sur une table, sur une ligne d'une table, etc.
    Donc effectivement le serveur n'est qu'un simple serveur de fichier d'ou la possibilité de mettre par exemple un serveur Samba.
    Avantage du produit : gestion du modèle relationnel, intégrité référentielle, utilisation possible d'un curseur pour se déplacer sur une table pour afficher les résultats par groupe ( bien pratique avec Delphi.net)
    Inconvénients : pas de trigger ni de procédure stockée pour centraliser certains traitements.
    Rappelle toi le projet SETI une expérience scientifique de travail collaboratif en radio-astronomie exploitant la puissance inutilisée de millions d'ordinateurs connectés via Internet dans un projet de Recherche d'une Intelligence Extra-Terrestre (Search for Extra-Terrestrial Intelligence, alias SETI).
    NB - Je tiens à la disposition de la communauté un certain nombre d'outils développés en Delphi relatifs à Paradox

  6. #6
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 114
    Par défaut
    SETI, oui, j'avais un pote qui l'avait installé en économiseur d'écran ... c'est connu, tu ne vas pas me sortir qu'il y a du Paradox derrière ?

    En tout cas, si tu as des astuces pour améliorer performances et stabilité du BDE sur des Tables Paradox, pour 100 users, cela m'intéresse, et je pense que cela intéresse surtout looping, ...

    Juste une précision, 100 Utilisateurs en simultané sur une table de 2 Millions d'enregistrements, les temps de lecture et écriture sont de combien ? j'ai observé plusieurs secondes en générales ... ce qui pour un automate qui veut des temps proche de 10ms pour chaque opération au maximum (oui ce n'était pas la seule table a subir des modifications très régulières) et sinon, certains clients que j'ai eu dans les entrepots n'ont pas spécialement envie d'attendre 5s leurs écrans (du moins les chefs, les vrais users, n'avaient pas leur mot à dire, dommage)

    Sinon, combien de fois, j'ai eu les index cassés, bon facile suffisait de supprimer les fichiers et recrés les index par programmation, avec une perte de quelques enrecs car certains ne se retrouvaient que via l'index et non pas en direct dans le fichier DB.

    Faudrait que je demande à mon collègue qui s'était dévoué à la DB durant ces projets, pour me rappeler nos soucis de l'époque et si le NET DIR avait bien été géré, lol, si cela se trouve on s'est galéré avec IB par la suite pour rien !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. L'avenir du BDE et des SQL Links révélé ! <officiel>
    Par Merlin dans le forum Bases de données
    Réponses: 12
    Dernier message: 02/06/2006, 10h18
  2. Pb BDE suite a passage en Windows 2000 pro
    Par ARIF dans le forum Paradox
    Réponses: 4
    Dernier message: 18/11/2002, 11h39
  3. BDE vs ODBC
    Par lucimast dans le forum Paradox
    Réponses: 3
    Dernier message: 08/08/2002, 22h20
  4. BDE : Configurer automatiquement le NETDIR
    Par Harry dans le forum Paradox
    Réponses: 10
    Dernier message: 29/07/2002, 11h33
  5. comment creer un alias dynamique avec BDE et ODBC
    Par david33 dans le forum C++Builder
    Réponses: 2
    Dernier message: 12/07/2002, 11h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo