D
dbeavon
Guest
>> I have never seen a dataserver match a well constructed client/server ABL with native Progress DB installation Have you ever looked for it or tested dataserver it for yourself? SQL Server is born-and-raised as a client-server database. Data is transmitted to the client in an entire batch of rows, rather than communicating with a bunch of tiny TCP exchanges that contain a single row or a single column or a single byte of data at a time. Server-side *join* functionality is available in progress dataserver (see PS), as well as other sophisticated features like server-side stored *procedures*. On the other hand when you are using client-server against a native Progress DB, you have to format your FOR-EACH-NO-LOCK loops in precisely the correct way for data to be transferred in larger batches. Otherwise you end up with 2-3 network round-trips per *record* (capping out at about 2-3000 records per second on the LAN). Server-side joins were never possible (until OE 12 - and even here I suspect it is based on a certain set of special circumstances). I only evaluated SQL Dataserver for a short period of time, but my experience with it was very positive. Progress put some serious talent into the development of DataServer. I ran it in the dataserver-self-service mode with a schema-holder that was available on the local SSD (-RO -1) of the machine running the AVM client sessions. There was only one hop between the ABL logic and the SQL Server database. I never had the feeling that the database was "holding back" on my requests. (Whereas the Progress DB, on the other hand, seems to spend a lot of its time *pausing* between time slices - even when there is more work waiting to be done. And there is effectively a CPU *quota* that you see yourself running into - which is easily observed in the CPU usage of the _mprosrv processes.). Hope this is clear. Again, whether you benefit from the advantages of dataserver may depend on how the ABL code is written, and how much data is used. If your application interacts with only a handful of database records on each screen then you won't have any performance challenges to begin with, no matter what the underlying technologies are. David PS. Here is an old screenshot showing that dataserver has long had the ability to do server-side query processing. ... from .. http://www.pugchallenge.us/download...formance Considerations with OpenEdge 11.pptx
Continue reading...
Continue reading...