|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Anto Administrateur systèmes et réseaux Inscription : septembre 2011 Messages : 61 ![]() |
Bonjour,
J'ai jusqu’à maintenant manipulé microsoft access pour créer ma base de données en .mdb. Cependant en application les performances de mon logiciel sur réseau se sont avérées très médiocres. J'aimerai convertir ma base en .db "adaptive server anywhere 11", ce qu'utilise les pc actuellement pour gérer d'autres bases de données. Cependant je suis bloqué car je ne sais pas trop comment m'y prendre... Quelqu'un peux t-il m'éclairer ? merci. |
|
|
00
|
|
|
#2 | |
|
Membre Expert
![]() eric MaitreÉtudiant Inscription : février 2010 Messages : 954 ![]() |
Bonjour,
Citation:
peut tu nous donner les grandes lignes de ta BDD actuelle *le nombre de lignes et de colonne suffira |
|
|
|
10
|
|
|
#3 |
|
Futur Membre du Club
![]() Anto Administrateur systèmes et réseaux Inscription : septembre 2011 Messages : 61 ![]() |
bonjour et merci d'avoir répondu.
Il y a 6 tables, la plus grande comporte 3 colonnes et 109 lignes. 2 des 3 colonnes sont en relations avec d'autres tables. Les autres tables font 4 colonnes environ pour moins de lignes (genre 10). La base est en réseau local pour les pc locaux, mais accessible depuis des connexions de tout le sud via des connexions adsl basiques (1 mega minimum) sur le domaine. La base données en elle même est placée dans un dossier partagé sur la racine de l'un des disques durs sur l'un de nos pc. |
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() |
Ta base de données ne me semble pas très lourde, tu as combien de connexion simultanées environ?
Sinon le problème peux se situer au niveau de ton logiciel d'interrogation aussi...
__________________
si mon message a été utile - si je suis à côté de la plaque - quand vous avez la réponse à votre question
|
|
|
00
|
|
|
#5 |
![]() ![]() Clément Architecte Logiciel Inscription : avril 2008 Messages : 1 357 ![]() |
En effet, se prendre le chou à migrer pour même pas 5Mo de données, je pense que c'est un peu une perte de temps; tu mettras moins de temps à reconstruire ta base.
Ceci dit, pour revenir au besoin de base, pourquoi est-ce une base sous format de fichier et pas d'un serveur de base de données ? Etant donné que les données qui sont dessus sont faites pour être exposées depuis un peu partout ton entreprise, autant en profiter pour construire une architecture plus solide. Si tu as besoin de garder le mode fichier, tu peux construire un WebService qui expose les données, plutôt que les clients se connectent directement sur la base.
__________________
One minute was enough, Tyler said, a person had to work hard for it, but a minute of perfection was worth the effort. A moment was the most you could ever expect from perfection. -- Chuck Palahniuk, Fight Club, Chapter 3 -- |
|
|
20
|
|
|
#6 | ||||||
|
Futur Membre du Club
![]() Anto Administrateur systèmes et réseaux Inscription : septembre 2011 Messages : 61 ![]() |
et bien niveau connexion simultanées, il y en aura tres peu 10 en même temps maximum.
Niveau connexion dans le programme, j'ai un module de connexion/deconnexion et des fonctions contenant des requetes au démarrage: Code :
Code :
Code :
|
||||||
|
|
00
|
|
|
#7 |
![]() ![]() Clément Architecte Logiciel Inscription : avril 2008 Messages : 1 357 ![]() |
Clairement, l'architecture globale n'est pas du tout adaptée à l'utilisation.
Et ouvrir une connexion à la base au début et la fermer à la fin est une très mauvaise idée, car ça veut dire que pendant toute la durée d'exécution du programme ta connexion reste ouverte ! (si j'ai bien compris ton procédé...) En revanche, vu la taille de ta base, je suis un peu surpris que ça prenne plus de 10s, même avec une latence sur le réseau. Le problème vient peut-être du fait que les accès concurrents bloquent l'accès à ta base. Tu sais à quel niveau de ton programme ça bloque? Ça ne lance pas d'exception ni rien? Si une seule instance tourne, ça marche bien? Ma préconisation sera d'avoir un client lourd (vb.net par exemple) qui interroge un WebService qui se gère de faire les requête vers la base. Un WebService c'est pas très dur à faire, surtout depuis le framework 3.5, en revanche ça t'impose d'avoir un serveur IIS pour le faire tourner en central. Si ce n'est pas possible, l'autre option (qui n'est pas incompatible avec la première, si tu fais les deux c'est même mieux!) c'est de migrer ta base vers un serveur de base de données. Si le prix de la licence est un frein, SQL Server Express 2008 R2 est gratuite ! (Sinon, rien ne t'empêche de t'orienter vers du PostGreSQL, même si les drivers sont moins stables/fiables) En espérant que ça t'aide !
__________________
One minute was enough, Tyler said, a person had to work hard for it, but a minute of perfection was worth the effort. A moment was the most you could ever expect from perfection. -- Chuck Palahniuk, Fight Club, Chapter 3 -- |
|
|
10
|
|
|
#8 |
|
Futur Membre du Club
![]() Anto Administrateur systèmes et réseaux Inscription : septembre 2011 Messages : 61 ![]() |
Je suis conscient que se connecter des le debut et rester connecté tout le long n'est pas judicieux.
Cependant le programme s'adapte au pc sur lequel il est lancé, et y affiche une multitude d'information depuis la base de données. A la limite je peux peut-être deconnecter la base de données apres la premiere procédure de récuperation de données ? Le problème c'est qu'a chaque clique dans une listbox specifique, cela affiche en temps réel ce que contient la base de données... PS : Les pc sont sous Framework 2.0 |
|
|
00
|
|
|
#9 |
![]() ![]() Clément Architecte Logiciel Inscription : avril 2008 Messages : 1 357 ![]() |
Dans ce cas il faut que tu ouvres/fermes la connexion à chaque action (clic sur listbox).
Faire du synchrone en direct sur une base c'est un peu "dangereux" comme approche. C'est en lecture uniquement ?
__________________
One minute was enough, Tyler said, a person had to work hard for it, but a minute of perfection was worth the effort. A moment was the most you could ever expect from perfection. -- Chuck Palahniuk, Fight Club, Chapter 3 -- |
|
|
10
|
|
|
#10 |
|
Futur Membre du Club
![]() Anto Administrateur systèmes et réseaux Inscription : septembre 2011 Messages : 61 ![]() |
le logiciel met 2x plus de temps a se lancer avec la technique du deco/reco chez moi...
|
|
|
00
|
|
|
#11 |
![]() ![]() Clément Architecte Logiciel Inscription : avril 2008 Messages : 1 357 ![]() |
Je ne vois pas de lien entre le temps que ton programme met à se lancer, et le fait d'avoir changer la façon de se connecter à la base quand tu cliques sur un bouton.. sauf éventuellement si tu charges tout au lancement... et si la connexion en elle même est longue, du fait du répertoire partagé notamment.
Si c'est le cas, ça confirme qu'il faut que tu migres ta base vers un serveur de base de données.
__________________
One minute was enough, Tyler said, a person had to work hard for it, but a minute of perfection was worth the effort. A moment was the most you could ever expect from perfection. -- Chuck Palahniuk, Fight Club, Chapter 3 -- |
|
|
10
|
|
|
#12 |
|
Futur Membre du Club
![]() Anto Administrateur systèmes et réseaux Inscription : septembre 2011 Messages : 61 ![]() |
en effet tout se fait au demarrage, regarde mon extrait de code un peu plus haut
Et concernant le serveur de base données, et bien nous on a un pc avec le fichier stocké dessus mais c'est tout ! comment je pourrai ameliorer la vitesse du coup ? existe t-il des petits logiciels a placer sur le pc dit "serveur" conçus pour améliorer ça ? |
|
|
00
|
|
|
#13 | ||||
![]() ![]() Clément Architecte Logiciel Inscription : avril 2008 Messages : 1 357 ![]() |
Citation:
Citation:
Et vous n'avez pas de serveur du tout pour installer SQL Server ? Dans ce cas ça devient compliqué... ---- Effectivement, je n'avais pas fait le rapprochement avec ton form1_Load. Ceci dit, je me suis peut-être mal exprimé : Les connexions doivent être ouvertes/fermées sur les actions utilisateur, ce n'est pas utile entre chaque étape de l'initialisation. Cela donnerait par exemple : Code vb :
__________________
One minute was enough, Tyler said, a person had to work hard for it, but a minute of perfection was worth the effort. A moment was the most you could ever expect from perfection. -- Chuck Palahniuk, Fight Club, Chapter 3 -- |
||||
|
|
10
|
|
|
#14 |
|
Futur Membre du Club
![]() Anto Administrateur systèmes et réseaux Inscription : septembre 2011 Messages : 61 ![]() |
merci pour tes réponses.
La base est sur un seul pc, sur lequel d'autre pc viennent chercher les info, L'extrait de code que tu viens d'envoyer c'est ce que j'ai actuellement dans le code (j'ai du prendre le mauvais fichier pour mettre mes extraits de code car j'ai déjà fait comme ca ^^), j'ai redemarré les pc "clients" et le logiciel met 30 secondes a s'ouvrir, et met 5 secondes pour actualiser les listbox. J'ai donc installé WAMPServer 2 et je vais refaire ma base sous PHPmyAdmin. Ce sera surement plus rapide.... Existe t-il une méthode pour porter mon .mdb en phpmyadmin ? j'ai essayé de la porter table par table en .csv mais les liens ne tiennent pas du coup je suis parti pour tout refaire !... |
|
|
01
|
|
|
#15 |
![]() ![]() Clément Architecte Logiciel Inscription : avril 2008 Messages : 1 357 ![]() |
Si la base est sur un seul PC, alors tu n'as qu'à installer un SQL Server sur ce pc là ! (En espérant qu'il soit toujours accessible...)
Par contre, avec WAMP/PHPMyAdmin tu m'as achevé, que vient faire PHP ici ?
__________________
One minute was enough, Tyler said, a person had to work hard for it, but a minute of perfection was worth the effort. A moment was the most you could ever expect from perfection. -- Chuck Palahniuk, Fight Club, Chapter 3 -- |
|
|
10
|
|
|
#16 |
|
Expert Confirmé Sénior
![]() François Chef de projet NTIC Inscription : janvier 2007 Messages : 5 353 ![]() |
Non, la version Express s'installe parfaitement sur un poste client, et vu le traffic ici, ce ne sera pas un problème. (c'est vrai aussi pour la version normale mais en "développeur edition"; et dans ce cas, son utilisation en exploite serait une violation de l'EUA).
__________________
Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça... Une réponse vous a aidé ? utiliser le bouton "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel |
|
|
10
|
|
|
#17 | |
![]() ![]() Clément Architecte Logiciel Inscription : avril 2008 Messages : 1 357 ![]() |
Oui, bien d'accord, c'est ce que je dis un peu plus bas :
Citation:
EDIT : Pour l'EUA, effectivement, ça peut être un critère si tu veux pas de souci avec Microsoft ! :p
__________________
One minute was enough, Tyler said, a person had to work hard for it, but a minute of perfection was worth the effort. A moment was the most you could ever expect from perfection. -- Chuck Palahniuk, Fight Club, Chapter 3 -- |
|
|
|
10
|
|
|
#18 | |
|
Expert Confirmé Sénior
![]() François Chef de projet NTIC Inscription : janvier 2007 Messages : 5 353 ![]() |
Citation:
Je parlais de l'EUA de la version Developper Edition qui ,fonctionnellement, est une version archi-complète, pas cher du tout (moins de 100 €) mais n'est pas autorisée en prod. J'admet que mon message pouvait être ambigüe, mais j'insiste : l'utilisation de SQL Server EXpress est parfaitement légale en prod.
__________________
Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça... Une réponse vous a aidé ? utiliser le bouton "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel |
|
|
|
10
|
|
|
#19 | ||||
|
Futur Membre du Club
![]() Anto Administrateur systèmes et réseaux Inscription : septembre 2011 Messages : 61 ![]() |
Ca y est j'ai tout porté sur phpmyadmin, j'ai crée la base, en utilisant wamp server 2.
Reste plus qu'a m'y connecter avec mon logiciel en vb.net : la question est comment ![]() J'ai crée l'utilisateur lambda pour tester. Quelqu'un peu me donner un exemple de connexion a une base de ce genre ? actuellement pour ma base access j'utilisais : Code :
Code :
|
||||
|
|
01
|
|
|
#20 |
|
Futur Membre du Club
![]() Anto Administrateur systèmes et réseaux Inscription : septembre 2011 Messages : 61 ![]() |
je tiens le bon bout !
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com