Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

vb access 100 utilisateurs 4 milions enregistrements

15 réponses
Avatar
prodi_64
Bonjour,

J'ai une appli à faire qui devra être accessible à une centaine
d'utilisateurs en simultanée, et liée à une base de données qui comprendra au
maximum 4 millions d'enregistrements.

Mon idée était de faire ça en VB (6 ou .net) avec une base de données
access. Est-ce que je peux répondre aux contraintes avec ces technos?

Une évolution possible qui peut m'être demandé est que l'appli soit
accessible à distance sur un autre site(via un intranet par exemple).

Merci de me répondre ultra vite car c'est super urgent.

Merci beaucoup

10 réponses

1 2
Avatar
Nicolas
Bonjour,

VB.NET (récent et evolutif avec le framework qui facilite les acces aux
données).

Mais pas Access car il aura du mal à tout gerer.

Trouve une base de données + professionnelle. SQL SERVER, MYSQL,....

Nicolas.

prodi_64 a écrit :
Bonjour,

J'ai une appli à faire qui devra être accessible à une centaine
d'utilisateurs en simultanée, et liée à une base de données qui comprendra au
maximum 4 millions d'enregistrements.

Mon idée était de faire ça en VB (6 ou .net) avec une base de données
access. Est-ce que je peux répondre aux contraintes avec ces technos?

Une évolution possible qui peut m'être demandé est que l'appli soit
accessible à distance sur un autre site(via un intranet par exemple).

Merci de me répondre ultra vite car c'est super urgent.

Merci beaucoup


Avatar
prodi_64
Si je comprends bien VB.net me permettra de gérer mes 100 connexions
simultanées, mais access ne sera pas assez robuste pour gérer les millions
d'enregistrements.

Pour utiliser SqlServer ou MySql, il me faut donc des installations
particulières à faire chez le client? Peux-tu me faire un petit récap des
configs et des installs que je dois faire pour une telle taille de données?

Je suis désolée d'insister mais je suis vraiment prise à la gorge niveau
délai.

Merci de m'aider
Avatar
Patrick Philippot
Bonjour,

J'ai une appli à faire qui devra être accessible à une centaine
d'utilisateurs en simultanée, et liée à une base de données qui
comprendra au maximum 4 millions d'enregistrements.

Mon idée était de faire ça en VB (6 ou .net) avec une base de données
access. Est-ce que je peux répondre aux contraintes avec ces technos?

Une évolution possible qui peut m'être demandé est que l'appli soit
accessible à distance sur un autre site(via un intranet par exemple).



Access est essentiellement une base de données locale, même si le
fichier MDB peut être partagé en réseau. A votre place, je n'hésiterais
pas un seul instant: SQL Server, Oracle, DB2 ou MySql à la rigueur.
Bref, n'importe quel SGBD professionnel mais pas Access.

L'intérêt de SQL Server, c'est que vous pouvez commencer "petit" en
local avec le MSDE (gratuit) et passer au "vrai" SQL Server plus tard.
La même chose est en théorie possible avec Oracle Edition Personnelle ou
DB2 mais ces produits sont beaucoup plus lourds et compliqués que SQL
Server ou le MSDE.

Le MSDE n'est pas livré avec les outils d'administration mais ceux de
SQL Server fonctionnent avec.

http://www.microsoft.com/sql/msde/default.asp

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Avatar
jean-marc
"Patrick Philippot" wrote in message
news:
Bonjour,

> J'ai une appli à faire qui devra être accessible à une centaine
> d'utilisateurs en simultanée, et liée à une base de données qui
> comprendra au maximum 4 millions d'enregistrements.
>
> Mon idée était de faire ça en VB (6 ou .net) avec une base de données
> access. Est-ce que je peux répondre aux contraintes avec ces technos?
>
> Une évolution possible qui peut m'être demandé est que l'appli soit
> accessible à distance sur un autre site(via un intranet par exemple).

Access est essentiellement une base de données locale, même si le
fichier MDB peut être partagé en réseau. A votre place, je n'hésiterais
pas un seul instant: SQL Server, Oracle, DB2 ou MySql à la rigueur.
Bref, n'importe quel SGBD professionnel mais pas Access.

L'intérêt de SQL Server, c'est que vous pouvez commencer "petit" en
local avec le MSDE (gratuit) et passer au "vrai" SQL Server plus tard.
La même chose est en théorie possible avec Oracle Edition Personnelle ou
DB2 mais ces produits sont beaucoup plus lourds et compliqués que SQL
Server ou le MSDE.

Le MSDE n'est pas livré avec les outils d'administration mais ceux de
SQL Server fonctionnent avec.

http://www.microsoft.com/sql/msde/default.asp



Hello,

c'est un excellent conseil. J'ai une bonne connaissance du domaine,
et l'expérience montre qu'un bon design avec une DB en mode Client/Serveur,
avec n'importe quel SGBD sérieux (SQL Server, DB2, Oracle), permet en
plus aisément de passer ensuite de l'un vers l'autre, ormis parfois
quelques adaptations locales du SQL pour les requêtes. Seuls les scripts
de création des tables, index, etc. seront différents, mais l'application
doit rester "quasi" identique. En externalisant les requêtes, on peut même
passer d'une DB à l'autre sans changer le code de l'aépplication.

SQL Server est un bon début comme le signale Patrick. DB2 version light
n'est
pas si compliqué à administrer, même si c'est vrai qu'il demande un peu
d'efforts pour la prise en main.

--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;
Avatar
prodi_64
Bonjour,

je vous remercie pour votre aide. Je vais faire la pénible désolée...
Comment dois-je procéder?
Il faut installer sqlserveur sur le serveur, j'imagine et non sur les postes
clients.
Je peux télécharger le msde comme vous me le conseillez, et aprés j'aurais
un outil d'administration à distance?

Si vous pouviez me guider un peu, ça serait cool!

Merci

Autre chose : pour le vb.net, il n'ont besoin de rien de particulier pour le
faire fonctionner? J'installe l'executable de l'application sur le serveur
pour qu'il soit accessible à tout le monde et ça suffit?


"jean-marc" a écrit :

"Patrick Philippot" wrote in message
news:
> Bonjour,
>
> > J'ai une appli à faire qui devra être accessible à une centaine
> > d'utilisateurs en simultanée, et liée à une base de données qui
> > comprendra au maximum 4 millions d'enregistrements.
> >
> > Mon idée était de faire ça en VB (6 ou .net) avec une base de données
> > access. Est-ce que je peux répondre aux contraintes avec ces technos?
> >
> > Une évolution possible qui peut m'être demandé est que l'appli soit
> > accessible à distance sur un autre site(via un intranet par exemple).
>
> Access est essentiellement une base de données locale, même si le
> fichier MDB peut être partagé en réseau. A votre place, je n'hésiterais
> pas un seul instant: SQL Server, Oracle, DB2 ou MySql à la rigueur.
> Bref, n'importe quel SGBD professionnel mais pas Access.
>
> L'intérêt de SQL Server, c'est que vous pouvez commencer "petit" en
> local avec le MSDE (gratuit) et passer au "vrai" SQL Server plus tard.
> La même chose est en théorie possible avec Oracle Edition Personnelle ou
> DB2 mais ces produits sont beaucoup plus lourds et compliqués que SQL
> Server ou le MSDE.
>
> Le MSDE n'est pas livré avec les outils d'administration mais ceux de
> SQL Server fonctionnent avec.
>
> http://www.microsoft.com/sql/msde/default.asp

Hello,

c'est un excellent conseil. J'ai une bonne connaissance du domaine,
et l'expérience montre qu'un bon design avec une DB en mode Client/Serveur,
avec n'importe quel SGBD sérieux (SQL Server, DB2, Oracle), permet en
plus aisément de passer ensuite de l'un vers l'autre, ormis parfois
quelques adaptations locales du SQL pour les requêtes. Seuls les scripts
de création des tables, index, etc. seront différents, mais l'application
doit rester "quasi" identique. En externalisant les requêtes, on peut même
passer d'une DB à l'autre sans changer le code de l'aépplication.

SQL Server est un bon début comme le signale Patrick. DB2 version light
n'est
pas si compliqué à administrer, même si c'est vrai qu'il demande un peu
d'efforts pour la prise en main.

--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;





Avatar
Patrick Philippot
Bonjour,

Il faut installer sqlserveur sur le serveur, j'imagine et non sur les
postes clients.



Oui. Le MSDE peut s'installer en local. Sur la machine du développeur
cela permet de tout tester sans être dépendant d'un serveur.

Je peux télécharger le msde comme vous me le conseillez, et aprés
j'aurais un outil d'administration à distance?



Comme je l'ai dit, ce n'est pas livré avec le MSDE. Mais vous pouvez
utiliser ceux de SQL Server (après avori acheté une licence). Considérez
également l'abonnement au MSDN Universal. Cela vous permettra d'avoir
tous les outils à votre disposition à une fraction du prix des licences
individuelles (je n'ai pas d'actions Microsoft mais dans votre cas, cet
abonnement me paraît recommandé).

Si vous pouviez me guider un peu, ça serait cool!



Je crois sincèrement qu'il faudrait que vous envisagiez une formation.
On ne peut pas se lancer comme cela, sans préparation, dans la mise en
place d'un SGBD, SQL Server ou autre. Il n'est pas possible de vous
donner une assistance de ce type via les newsgroups, surtout si vous
n'avez jamais touché un SGBD de type SQL Server ou équivalent, ce qui
semble être le cas. Ne vous faites aucune illusion.

Autre chose : pour le vb.net, il n'ont besoin de rien de particulier
pour le faire fonctionner? J'installe l'executable de l'application
sur le serveur pour qu'il soit accessible à tout le monde et ça
suffit?



Non. Tout code .Net nécessite l'installation sur la plateforme cliente
du framework .Net (CLR + bibliothèque). Il faut télécharger et installer
dotnetfx.exe:
http://www.microsoft.com/downloads/details.aspx?displaylang=fr&FamilyID&2D25E3-F589-4842-8157-034D1E7CF3A3 .
Ce package est présent sur de nombreux CDs. Il peut également être
installé via Windows Update.

Remarque subsidiaire:
Sauf votre respect et sans connaissance aucune de vos conditions de
travail, j'ai le sentiment en vous lisant que vous vous lancez dans ce
projet de manière assez hâtive, sans réelle analyse préalable et sans
trop de préparation. Je ne sais pas quel type de projet vouys démarrez
mais les décisions que vous devez prendre ne sont pas sibyllines. Cela
demande réflexion et maturation. Rien que sur le budget, il y a quand
même une différence majeure entre Access et SQL Server ou Oracle. Sur le
temps d'apprentissage aussi. Toutes ces question me semblent éludées.

Il me semble que vous ne partez pas dans de bonnes conditions... Je ne
sais pas quel est l'enjeu mais s'il est important, je crois que vous
allez avoir besoin d'assistance (je ne parle pas pour ma boutique, je ne
suis pas vraiment spécialiste des BD :-) ). Soyez prudente.

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Avatar
prodi_64
Je te remercie pour tes reponses.
J'avoue que tu me fais un peu peur.
En fait pour l'instant, j'en suis à l'étude préalable. L'appel d'offre a été
publié, à nous de voir si c'est jouable ou pas, et dans quelles conditions.
C'est pourquoi je m'informe.
C'est un sujet qui n'a pas l'air trés difficile : simplement une base de
données avec une structure trés simple (une seule table, mais 4 millions
d'enregistrements maxi) et une application qui la gère (100 utilisateurs en
simultanée).

D'où mes questions pour savoir la bonne solution. VB.net me semble bien, mon
souci reste sur la base de données. D'ici là, j'ai le temps de me documenter
si on gagne l'appel d'offre.

Si tu me permets, je fais un point : VB.net c'est bon. Base de données MSDE
(pour créer la table) et la renseigner via l'appli.
Il faudrait que tout soit sur un serveur (appli et MSDE). C'est possible?
Installations poste client : ?

Ce sont surtout les aspects reseau que je ne maitrise pas. Donc, si tu peux
me dire les installations qu'il me faut et où?

Merci encore
Avatar
Nicolas
Bonjour,

2 cas possibles :

- la base sur un serveur et l'application est sur tous les clients et
attaquenet la base.

- la base est sur un serveur, ton application aussi a ce mùoment là
utilise les web services le client sur les postes sera le navigateur
internet.

Nico.

prodi_64 a écrit :
Je te remercie pour tes reponses.
J'avoue que tu me fais un peu peur.
En fait pour l'instant, j'en suis à l'étude préalable. L'appel d'offre a été
publié, à nous de voir si c'est jouable ou pas, et dans quelles conditions.
C'est pourquoi je m'informe.
C'est un sujet qui n'a pas l'air trés difficile : simplement une base de
données avec une structure trés simple (une seule table, mais 4 millions
d'enregistrements maxi) et une application qui la gère (100 utilisateurs en
simultanée).

D'où mes questions pour savoir la bonne solution. VB.net me semble bien, mon
souci reste sur la base de données. D'ici là, j'ai le temps de me documenter
si on gagne l'appel d'offre.

Si tu me permets, je fais un point : VB.net c'est bon. Base de données MSDE
(pour créer la table) et la renseigner via l'appli.
Il faudrait que tout soit sur un serveur (appli et MSDE). C'est possible?
Installations poste client : ?

Ce sont surtout les aspects reseau que je ne maitrise pas. Donc, si tu peux
me dire les installations qu'il me faut et où?

Merci encore


Avatar
prodi_64
Je préfère la solution car je ne voulais pas utiliser IE pour éviter des
plantages.
Je voulais qqch de tout à fait indépendant des autres applications.
Si je mets la base sur le serveur et l'appli aussi c'est pas possible? 100
utilisateurs ça fait beaucoup de postes à configurer!!!

Dans le cas où je peux tout mettre sur le serveur, quelles installations
seraient obligatoires?
Avatar
Patrick Philippot
prodi_64 wrote:
J'avoue que tu me fais un peu peur.



J'espère bien :-) parce que moi personnellement, j'ai déjà quelques
angoisses...

En fait pour l'instant, j'en suis à l'étude préalable. L'appel
d'offre a été publié, à nous de voir si c'est jouable ou pas, et dans
quelles conditions. C'est pourquoi je m'informe.
C'est un sujet qui n'a pas l'air trés difficile : simplement une base
de données avec une structure trés simple (une seule table, mais 4
millions d'enregistrements maxi) et une application qui la gère (100
utilisateurs en simultanée).



Tout dépend de ce que fait l'application, la fréquence des requêtes, les
besoins en transactionnel,... Tout ça s'analyse avant de prendre une
décision. De prime abord quand je lis "une table unique avec 4 millions
d'enregistrements" j'ai des frissons. Ça sent justement le manque
d'analyse. Mais bon, je ne connais pas l'appli en question.

D'où mes questions pour savoir la bonne solution. VB.Net me semble
bien, mon souci reste sur la base de données. D'ici là, j'ai le temps
de me documenter si on gagne l'appel d'offre.



Habituellement, cela fonctionne plutôt dans l'autre sens: je réponds à
un appel d'offre avec des informations et des technologies que je
maîtrise et dont je sais qu'elles contituent la réponse adéquate au
problème posé. Mais je ne suis peut-être pas une référence en la
matière. Entendons nous bien: je ne voudrais pas jouer les donneurs de
leçon mais là, il me semble que tout part à l'envers. On ne choisit pas
un SGBD (et encore moins une architecture) sur un critère aussi vague
que "une table avec 4 millions d'enregistrements".

Si tu me permets, je fais un point : VB.net c'est bon. Base de
données MSDE (pour créer la table) et la renseigner via l'appli.
Il faudrait que tout soit sur un serveur (appli et MSDE). C'est
possible? Installations poste client : ?



.Net est une bonne solution de développement en général (VB, C# ou autre
peu importe). Surtout si on fait du multiniveaux, auquel cas ADO .Net
donne sa pleine mesure. Or ici le sujet n'est même pas abordé:
client-serveur ou multiniveaux? Ce choix découle de l'analyse.

De même, si le choix est le client-serveur, il faut analyser le problème
des autorisations d'accès à la base. Quelle stratégie, quels droits,
qui, quand, comment...? Si le choix est le multi-niveaux, quels objets
métier faut-il développer? Comment gérer le transactionnel pour ces
objets,...

On ne peut pas partir en fixant a priori les outils et en faisant
l'analyse après coup en se disant qu'on aura toujours le temps de se
documenter sur le sujet. On choisit les outils adaptés en fonction de la
structure que l'on donne au projet et pas l'inverse.

MSDE: Comme je l'ai expliqué, le MSDE est l'équivalent de SQL Server en
local. Cela permet au développeur d'écrire et de tester son application
localement (et de faire tourner de petites applications en local ou avec
un nombre limité d'utilisateurs). A la mise en production, on installe
un SQL Server et on fait tourner l'application dessus. Normalement, il
n'y a rien à changer que la chaîne de connexion utilisée.

MSDE peut s'utiliser en réseau mais ce n'est pas l'objectif a priori. Il
a plutôt une vocation locale. MSDE ne supportera pas de toutes façons
une centaine d'utiulisaterus en simultané.

Ce sont surtout les aspects reseau que je ne maitrise pas. Donc, si
tu peux me dire les installations qu'il me faut et où?



Tout dépend de l'architecture choisie. En client-serveur, il faudra une
machine avec SQL Server (ou Oracle ou DB2 ou...). Le framework .Net
devra être installé sur les clients en plus de l'application elle-même.

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
1 2