🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: borland.public.vdbase.data.sql
Article #1512

Re: SQL vs. DBF in 5.5a

#1512
From: Keith Chuvala (TeamB)
Date: Thu, 18 Dec 1997 00:00
48 lines
2911 bytes
> Before re-writing the app for SQL (assuming it can be done in
> 5.5a/5.6), I would like some assurance that using SQL to access 
> DBF tables in a 5.5a app will actually result in a significant 
> reduction of net traffic for the same conditions. 

You sure aren't going to get it from me <g>.  While it's possible to
decrease the amount of traffic that travels over the wire by
*redesigning* the data and/or how it's accessed (which might or might
not include a Client/Server setup using SQL), it's very easy to create
just as much traffic with SQL as with the native DML. Just changing to
SQL statements isn't going to improve traffic flow at all, I'll bet.

> I don't fully understand the mechanics of SQL
> vs. normal DBF access, 

There *is* no difference insofar as traffic is concerned.  It's not a
SQL<->DML difference the network guy was talking about, it's a
traditional fileserver<->client/server difference.  In a partitioned
client/server application, the clients make data requests.  The requests
are *processed* on the server (this is hy network traffic can decrease
considerably), then shipped to the client as an answer set or SQL
cursor.

The reason you have so much network traffic with a regular file server
setup is that each of your client machines is moving all the index file
and DBF data the application uses across that wire.  In a C/S setup much
of that is kept local to the server, so network traffic decreases
accordingly.

To do a real C/S application you need to almost completely rethink and
redesign how your application (or just the server side of it)
manipulates data.  And while C/S architecture might decrease the network
load, C/S systems themselves tend to *not* be any faster in terms of
client-side performance, and in fact can be quite a bit slower,
depending on different factors.

Sometimes you can significantly improve network performance and even
client-side performance with the good ole' dBASE DML by maximizing your
use of certain mechanisms -- like SET KEY -- and never using other
mechanisms, like SET FILTER.  That means you need to look carefully at
all your QBEs.  Sometimes I'll avoid SET RELATION altogether, and have
my forms setup "relations" as needed in this way.

So I recommend thinking very hard about this before jumping on someone's
bandwagon.

kgc
Technical Details
Message-ID: <34995AD7.6D623D69@DELETE_THIS.hit.net>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <34993B49.11E3@ipass.net>

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: ff5a1,80b4f7477494d14b
X-Google-Attributes: gidff5a1,public
From: "Keith Chuvala (TeamB)" <kgc@DELETE_THIS.hit.net>
Subject: Re: SQL vs. DBF in 5.5a
Date: 1997/12/18
Message-ID: <34995AD7.6D623D69@DELETE_THIS.hit.net>
X-Deja-AN: 299382545
Content-Transfer-Encoding: 7bit
References: <34993B49.11E3@ipass.net>
X-Priority: 3 (Normal)
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Organization: First Intermark Corp.
Newsgroups: borland.public.vdbase.data.sql