================================================================== CLIENT/SERVER VERSUS LAN ================================================================== PRODUCT : R:BASE /V VERSION : 3.1C CATEGORY: MULTI-USER SUBCATEGORY: NETWORKING ================================================================== Client/Server! That phrase appears all over the press these days: who's got it, who does what and to whom, and so forth. But just what is client/ server all about? This article will answer that question and explain why working in a client/server environment is a benefit to you and your organization's data management. The idea behind the client/server environment is fundamentally quite simple. A relational database engine and its data reside on a centralized computer (the server), and users on PC workstations (the clients) are able to retrieve the data via some kind of query mechanism and integrate the data into the PC client's applications. A client/server setup can help centralize data that had been pooled in many LANs much the same as LANs helped centralize data that had been pooled in stand alone personal computers. Differences Between LANs and Client/Server Setups ================================================= Some important differences exist, however, between LANs and client/server setups: <> In a LAN, the database typically resides on the server and the data- base software resides on the server as well, but the engine actually runs on the PC workstation. All queries are processed on the work- station. Plus, all rows are returned across the network and always processed at the workstation. In a client/server setup, the database engine resides AND RUNS on the centralized server. All processing occurs on the server, not the client. Just the results of the query are returned to the workstation. To illustrate, let's say you have a 100,000-record customer table and you want to see just the four customers you have in Rhode Island. On a LAN, all 100,000 records would have to come across the network to your workstation for the PC database engine to sort out which ones are to be discarded and which ones are to be retained (this example implies a non-indexed column search). If you have several people doing similar searches, you can easily imagine how much network performance degrades, thus slowing down every user on the network. In a client/server setup, the server locates the four rows and then only the four records that match the conditions of your query are sent to your workstation. By having the server handle the query, network traffic is greatly reduced. Server Database Software ======================== Note that most DOS-based PC data-bases, which had to run in the DOS- enforced memory limit of 640K, evolved as flat-file databases with some workarounds added to simulate true relationality. (R:BASE, of course, is an exception, having always provided true relationality.) Server data- bases, in contrast, are fully functional, relational databases powered by SQL engines. Here is a list of some proven server databases with good performance and data-protection records: <> DB2 <> ORACLE <> INGRES <> SQL Server (Sybase) These database products include query optimizers, unbeatable security systems, rules functionality to maintain data integrity, on-line backup systems, commit and rollback function- ality, and many other powerful features that until recently were available only on mini- and mainframe data- bases (and from R:BASE). For further information about the lack of data integrity and security in most PC databases, see page 289 of the March 31, 1992, issue of PC Magazine. Server Database Operating Systems ================================= Another advantage of server databases is that they run under one of the following operating systems: <> VAX VMS <> UNIX <> OS/2 <> MVS All four operating systems offer much greater performance and speed than DOS; all were designed from the start to be robust, multi-user operating systems; and all have undergone substantial fine-tuning over time. DOS, on the other hand, is inherently a single-tasking operating system. Summary ======= In a nutshell, these are the benefits of a client/server environment: <> Centralized data <> Minimized network traffic <> Fully Functional Relational Data-bases <> Multi-user Operating System The next issue of the R:BASE Exchange will include an article about Vanguard and how it addresses the issues brought up here. You'll learn about Vanguard's inner workings and about its ingenious, flexible, and elegant design, which will in turn underscore the advantages of working in a client/server environment.