Re: SCALABILITY IN CLIENT/SER
Posted in 1995
Ken Gonzales - IRVINE (kengon@informix.com) wrote: : Brian Green (brian.green@sltrib.com) wrote: : :P> Probably a dump question but... : : Not that dumb, really. I'll try to answer, and hope for a correction if : : I'm off base. : :P> I have seen a number of references in c.d.i. and other sources to the : : > *scalability* of various client/server languages. What is meant by : : > scalability with respect to a language? For example, I have seen reports : : > that NewEra is more scalable than, say, Powerbuilder or Access. : : > It is obvious why the database engine needs to be scalable, but whats : : > scalable about a language? Assuming team working/project control : : > is not meant (thats part of the development environment not the language). : : I may be mistaken, but I think it may have something to do with the fact : : that Powerbuilder and Access are both MS Windows programs, and generate : : programs that run in MS Windows. If I understand correctly, NewEra will : : create MS Windows programs, as well as Motif programs. I think there may : : also be a part of it that will generate programs for character terminals. : Scalability, in the context of NewEra, can be viewed as the degree to which : the language will allow you to deal with the increased complexity of a given : application as the size of the application grows. This does not necessarily : have anything directly to do with the languages implementation on a specific : platform (or set of platforms... although it may be so). To me, there is an additional aspect to this. A tool or language like PowerBuilder or NewEra also has a direct impact on the scalability of the overall solution because of the impact or "footprint" that it impresses upon the server. eg the SQL that the tool generates/encourages/allows is frequently inherently different in "weight" in the effect it has on the scalability of the database server. There are many ways in which a tool impacts the scalability of the server due to the way it *chooses* to use the server - eg server-side memory consumption, locking strategy, client-side vs server-side lookups, client-side vs server-side integrity checks, support (or not) for Distributed Transaction Management, Stored Procedures (or not) ... etc etc. This can go down to quite an esoteric level and can become quite implementation specific both client-side and server-side: eg SQL*Forms 4.x is more scalable than SQL*Forms <=3.x when running against Oracle 7.x because (by default) it uses the Shared SQL Pool more efficiently. I'm not familiar enough with NewEra to give you an Informix oriented example, but I'll bet they exist. In fact I'll make a guess at one: I would expect NewEra to be able to handle an Informix Stored Procedure which returns rows. I would be surprised to learn that PowerBuilder could do this also (as PowerBuilder was designed with Sybase/SQL Server in mind, and they implement this differently). Since Stored Procedures tend to enhance scalability, I would classify this as a scalability issue between the tools (when used with Informix). : : Ken : /*----------------------------------------------------------------------- : | : Ken Gonzalez | : Informix Software | Voice: 714-251-6578 : Professional Services Division | Fax: 714-251-6579 : 18101 Von Karman, Suite 350 | e-mail: kengon@informix.com : Irvine, CA 92715 | : | : -----------------------------------------------------------------------*/ : #include <std_disclaimer.h> -- graeme -- Disclaimer: The author's opinions are his own, and not necessarily those of Pyramid Technology Ltd. or Pyramid Technology Inc. --------------------------------------------------------------------------- -m------- Graeme Sargent Voice: +44 (0)252 373035 ---mmm----- Senior Database Consultant Fax : +44 (0)252 373135 -----mmmmm--- Pyramid Technology Ltd. Telex: Tell who??? -------mmmmmmm- Farnborough, Hants GU14 7PL Email: graeme@pyra.co.uk --------------------------------------------------------------------------- We have the technology. The tricky bit is learning how to use it.