🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #4169

Re: Hoe performant is access in netwerk?

#4169
From: Gijs Beukenoot
Date: Fri, 12 Sep 2003 13:25
61 lines
4452 bytes
"Passero" <yanongena@pandora.be> schreef in bericht
news:lDf8b.15885$Rq.553029@phobos.telenet-ops.be...
> Op kantoor van mijn vader willen ze een nieuwe server installeren om in
> netwerk te leggen. All� nu werken zo ook al in netwerk maar de bedoeling
is
> dat er op client een programma loopt die een DB gebruikt vanop de server.
> Het max aantal mensen dat tegelijk zou werken is 4 a 5. Ze moeten dus
> tegelijk een update, instert of delete query kunnen uitvoeren. Ik heb
> gehoord dat access daar nogal problemen mee heeft als er tegelijk oproepen
> zijn voor zo een query. Daarom deze vraag, zijn er onder jullie die
daarmee
> ervaring hebben en zouden we gewoon beter direct een mysql server of sql
> server installeren en daarmee werken?
>
>

En waarom dan ?

Nou, Access is een 'domme' applicatie die, in tegenstelling tot b.v. SQL
Server alle data op de lokale PC (cli�nt) moet gaan combineren en bekijken.
Dit in tegenstelling tot SQL Server die de data op de server vergelijkt en
alleen een resultaat teruggeeft.

Bij een SELECT* FROM tblNAW, tblFaktuurRegel WHERE tblNAW.klantnummer =
12345 and tblFaktuurRegel.ArtikelPrijs > 5.00 zal Access eerst de hele index
van de tblNAW ophalen en daaruit de juiste klant halen. Dat is niet het
probleem. Maar daarna moet er gezocht worden in de factuurregels naar alle
artikelen van die klant en waarbij de prijs groter is dan 5.00. Omdat dit
geen veld uit de index is zal Access de hele faktuurregeltabel gaan
overhalen naar een lokaal tempbestand om dan, regel voor regel, te kijken of
de regel aan de voorwaarden voldoet. En dat kunnen nogal wat pakketjes zijn
die over de lijn gaan...
SQL Server is daar wat intelligenter in en die zal wel hetzelfde doen maar
omdat die alles op de server doet scheelt dat nogal wat overgestuurde data.
Nou kun je zeggen dat je een index maakt op alle mogelijke velden die je
ooit in een query gaat gebruiken maar op dat moment zal de index van de
tabel dusdanig groot worden dat de index zo groeit dat het middel erger
wordt dan de kwaal.
Het maakt niet uit of je een select, insert, delete of update query uitvoert
in bovenstaande voorbeeld, het gaat om de criteria die de query (Access) de
das omdoen. Als je een SELECT * FROM tblNAW WHERE tblNAW.klantnummer = 12345
uitvoert zal dat wel 'performeren'.

Je kunt dus wel degelijk met Access werken in een netwerk omgeving maar je
moet van te voren heel goed bedenken (analyseren) wat je wilt doen (wat wil
de gebruiker allemaal) en misschien moet je dan adviseren om inderdaad een
product als SQL Server (of misschien MSDE (de desktop versie van SQL)) te
gebruiken om de performance acceptabel te houden. Maar als van de 3
gebruikers misschien 1 gebruiker 1 keer in de week, en dan nog misschien,
het resultaat van bovenstaande query wil zien dan kan het best wel
aanvaardbaar zijn voor de gebruiker dat ie op dat resultaat wat langer moet
wachten.

Tussenoplossingen die door sommigen bedacht zijn om de data in meerdere
MDB's te zetten (dus NAW gegevens in de ene MDB, alle factuurgegevens in een
andere MDB werken niet echt prettig omdat er een heleboel 'overhead'
geprogrammeerd moet worden (databases openen en sluiten) en ook een heleboel
overhead over het netwerk gaat.

GB
Technical Details
Message-ID: <%Oj8b.282356$lA6.8645890@castor.casema.net>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-08!supernews.com!news.tele.dk!news.tele.dk!small.news.tele.dk!newsgate.cistron.nl!news2.euro.net!cleanfeed.casema.net!castor.casema.net.POSTED!53ab2750!not-for-mail
References: <lDf8b.15885$Rq.553029@phobos.telenet-ops.be>

Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII
X-Google-Thread: 107324,6613439c5fcf9be5
X-Google-Attributes: gid107324,public
X-Google-Thread: fcea4,6613439c5fcf9be5
X-Google-Attributes: gidfcea4,public
X-Google-ArrivalTime: 2003-09-12 06:25:33 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-08!supernews.com!news.tele.dk!news.tele.dk!small.news.tele.dk!newsgate.cistron.nl!news2.euro.net!cleanfeed.casema.net!castor.casema.net.POSTED!53ab2750!not-for-mail
From: "Gijs Beukenoot" <Gijs.BeukenootREMOVE@THISwanadoo.nl>
Newsgroups: be.comp.programming,nl.comp.programmeren
References: <lDf8b.15885$Rq.553029@phobos.telenet-ops.be>
Subject: Re: Hoe performant is access in netwerk?
Lines: 63
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
Message-ID: <%Oj8b.282356$lA6.8645890@castor.casema.net>
Date: Fri, 12 Sep 2003 13:25:15 GMT
NNTP-Posting-Host: 62.234.19.142
X-Trace: castor.casema.net 1063373115 62.234.19.142 (Fri, 12 Sep 2003 15:25:15 MEST)
NNTP-Posting-Date: Fri, 12 Sep 2003 15:25:15 MEST
Organization: Wanadoo NL