12 Chapter 12 Client/Server Systems Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel 12 In this chapter, you will learn: • What client/server computing is • What the advantages of using client/server systems are • How client/server systems evolved • About client/server systems components and how they interact • What effect the client/server system has on the DBMS • How client/server systems might be introduced into an organization • What factors affect the implementation of client/server systems Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 2 12 Client/Server Computing • Computing model for the development of computerized systems – Client requests specific service – Server provides requested service • Reside on same or different computers Figure 12.1 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 3 12 Client/Server Computing (con’t.) • Key to client server power is where request processing takes place • Extent of sharing processing – – – – Thin client Thin server Fat client Fat server • Classification – 2-tier – 3-tier Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 4 12 Forces that Drive Client/Server Trend • Changing business environment • Growing need for enterprise data access • Demand for end-user productivity gains based on efficient use of data • Technological advances • Growing cost/performance advantages Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 5 12 Evolution of Computing Environment Figure 12.2 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 6 12 Mainframe vs. Client/Server Systems Table 12.1 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 7 12 Managerial Expectations of Client/Server Systems • Client/Server efficiency functions – Platform independent development – Optimized distribution of processing activities among different platforms – User friendly and cost effective techniques, methodologies, and specialized tools • Observations – Tool, not end goal – Not answer to all data management problems – Has own set of management problems Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 8 12 MIS Expectations of Client/Server Benefits • Reduced development and implementation costs • Reduced development time and increased programmer productivity • Extended system life cycle through scalability and portability • Reduced system operational cost • Change of MIS function from development to enduser support • Enhanced information deployment Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 9 12 Organizational Expectations of Client/Server Benefits • Flexibility and adaptability • Improved employee productivity • Improved company work flow and way to reengineer business operations • New opportunities for competitive advantages • Increased customer service satisfaction Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 10 12 Components of Client/Server Architecture • Client – Front-end application • Server – Back-end application • Communications middleware – Communications layer Figure 12.3 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 11 12 Example Client/Server Architecture Figure 12.4 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 12 12 Client/Server Principles • Hardware independence • Software independence – Operating systems – Network systems – Applications • Open access to services • Process distribution – – – – Process autonomy Maximization of local resources Scalability and flexibility Interoperability and integration • Standards Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 13 12 Server Components • • • • • • • File services Print services Fax services Communications services Database services Transaction services Miscellaneous services Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 14 12 Server Components Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel Figure 12.6 15 12 Typical Characteristics of Server Hardware • Fast CPU • Fault-tolerant capabilities – – – – Dual power Standby power Error checking and correcting memory RAID • Expandability of CPU, memory, disk, and peripherals • Bus support for multiple add-on boards • Multiple communications options Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 16 12 Server Process Benefits • • • • Location independence Resource optimization Scalability Interoperability and integration Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 17 12 Database Middleware • Network independence – Front-end application accesses data without regard to network protocols • Database server independence – Generic SQL to access different database servers – Isolates programmer from SQL dialect differences Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 18 12 Communications Middleware • Two levels – Physical level • Client and server computers – Logical level • Client and server processes • Interprocess communication (ICP) protocols Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 19 12 OSI Network Reference Model Table 12.2 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 20 12 Information Flow through OSI Model Figure 12.7 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 21 12 Transport Process ID Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel Figure 12.8 22 12 Network Protocols • Transmission Control Protocol/Internet Protocol (TCP/IP) • Internetwork Packet Exchange/ Sequenced Packet Exchange (IPX/SPX) • Network Basic Input Output System (NetBIOS) • Application Program to Program Communications (APPC) Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 23 12 Database Middleware Components Figure 12.9 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 24 12 Interactions between Middleware Components Figure 12.10 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 25 12 Middleware Accessing Multiple Database Servers Figure 12.11 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 26 12 Middleware Accessing Mainframe Databases Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel Figure 12.12 27 12 Middleware Classifications • Messaging-oriented middleware (MOM) • Remote-procedure-call-based (RPC-based) middle ware • Object-based middleware Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 28 12 Competing Standards • Client operating systems – Microsoft Windows – OS/2, Apple Mac OS, Unix, Linux • Client graphical user interfaces – Microsoft Windows – OS/2 Presentation Manager, Macintosh, UNIX • Server operating systems and network protocols – Database servers: Unix, OS/2, Windows NT Server/2000 Server – Printer and file servers: Novell Netware – LAN protocols: TCP/IP, IPX/SPX, NetBIOS • Middleware – ODBC, IDAPI, DRDA, Q+E Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 29 12 Client/Server DBMS Functions • Transparent data access to multiple, heterogeneous clients • Allow client requests to the database server over network • Process client data requests at local server • Send only SQL results to clients over network Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 30 12 Application Logic Components Figure 12.14 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 31 12 Client/Server Architectural Styles • Two Key Questions – How is the division made? – Where should the results of division be placed? • Five Functional Logic Components – – – – – Presentation logic I/O processing logic Application of business logic Data management logic Data manipulation logic Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 32 12 Application Functional Components Figure 12.15 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 33 12 Functional Logic Splitting Figure 12.16 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 34 12 Client/Server versus Traditional DP • Proprietary to open systems • Maintenance-oriented coding to analysis, design, and service • Data collection to data deployment • Centralized to distributed style • Vertical, inflexible to horizontal, flexible organizational style • Differences in IS components Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 35 12 Client/Server Implementation Issues • Management Issues – – – – – Communications infrastructure Applications Controlling escalating and hidden costs People and cultural changes Multiple vendor relationships • Development tool acquisition • Determination if client/server approach is correct Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 36