Client/Server Database Environment CISB344 Database 2  At the end of this chapter, you should be able to: › Define client/server systems, file server,

Slides:



Advertisements
Similar presentations
Overview Environment for Internet database connectivity
Advertisements

Chapter 9: The Client/Server Database Environment
Lecture plan Information retrieval (from week 11)
Technical Architectures
ISYS 546 Client/Server Database Application Development.
BICS546 Client/Server Database Application Development.
B.Sc. Multimedia ComputingMedia Technologies Database Technologies.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 16 Designing.
Introduction to Web Database Processing
Overview Explain three application components: presentation, processing, and storage Distinguish between file server, database server, 3-tier, and n-tier.
1 Database Architectures Modified from …..Modern Database Management Jeffrey A. Hoffer, Mary B. Prescott, Fred R. McFadden.
Introduction to Web Interface Technology (CSE2030)
Chapter 9: The Client/Server Database Environment
Introduction to Web Interface Technology (CSE2030)
System Analysis and Design
Chapter 14 Database Connectivity and Web Technologies
Web Development Using ASP.NET CA – 240 Kashif Jalal Welcome to week – 1 of…
12-1 © Prentice Hall, 2004 Chapter 12: Design Elements Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
1 © Prentice Hall, 2002 The Client/Server Database Environment.
Lecture The Client/Server Database Environment
Client-Server Processing and Distributed Databases
Chapter 8: database application development
The Client/Server Database Environment
Chapter 9: The Client/Server Database Environment
WEB DESIGN SOME FOUNDATIONS. SO WHAT IS THIS INTERNET.
Chapter 2 Database System Concepts and Architecture
Data and Database Administration CISB514 Advanced Database  At the end of this chapter, you should be able to:  Define terms related to data & dbase.
1 Web Database Processing. Web Database Applications Static Report Publishing a report is prepared from a database application and exported to HTML DB.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Database Architectures and the Web
Chapter 12 Designing Distributed and Internet Systems
Introduction to ASP.NET. Prehistory of ASP.NET Original Internet – text based WWW – static graphical content  HTML (client-side) Need for interactive.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
1 Chapter 3 Database Architecture and the Web Pearson Education © 2009.
Enterprise Systems MIS 181.9: Service Oriented Architecture 2 nd Semester,
1 © Prentice Hall, 2002 Chapter 8: The Client/Server Database Environment Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B. Prescott,
MBA 664 Database Management Systems Dave Salisbury ( )
Lecture On Database Analysis and Design By- Jesmin Akhter Lecturer, IIT, Jahangirnagar University.
Lecture On Database Analysis and Design By- Jesmin Akhter Lecturer, IIT, Jahangirnagar University.
DATABASE PROGRAMMING Lecture on 16 – 05 – PREVIOUS LECTURE QUIZ: - Some students were very creative in transforming 2NF to 3NF. Excellent! - Some.
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
Fundamentals of Database Chapter 7 Database Technologies.
© 2005 by Prentice Hall 1 Chapter 9: The Client/Server Database Environment Modern Database Management 7 th Edition Jeffrey A. Hoffer, Mary B. Prescott,
© 2011 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 8: Database Application Development Modern Database Management 10 th Edition Jeffrey.
The Client/Server Database Environment Ployphan Sornsuwit KPRU Ref.
Mainframe (Host) - Communications - User Interface - Business Logic - DBMS - Operating System - Storage (DB Files) Terminal (Display/Keyboard) Terminal.
Personal Computer - Stand- Alone Database  Database (or files) reside on a PC - on the hard disk.  Applications run on the same PC and directly access.
Database Architectures Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where.
Web Design (1) Terminology. Coding ‘languages’ (1) HTML - Hypertext Markup Language - describes the content of a web page CSS - Cascading Style Sheets.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Elmasri and Navathe, Fundamentals of Database Systems, Fourth Edition Copyright © 2004 Pearson Education, Inc. Slide 2-1 Data Models Data Model: A set.
Introduction and Principles Web Server Scripting.
Chapter 9  Definition of terms  List advantages of client/server architecture  Explain three application components:
TM 8-1 Copyright © 1999 Addison Wesley Longman, Inc. Client/Server and Middleware.
© 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 CHAPTER 8: DATABASE APPLICATION DEVELOPMENT Modern Database Management 11 th Edition Jeffrey.
Database application development 1. Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall OBJECTIVES  Define terms  Explain three components.
1 LM 6 Database Applications Dr. Lei Li. Learning Objectives Explain three components of a client-server system Describe differences between a 2-tiered.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Lecture 9: The Client/Server Database Environment Modern Database Management 9 th Edition.
E-Business Infrastructure PRESENTED BY IKA NOVITA DEWI, MCS.
Chapter 9: The Client/Server Database Environment
The Client/Server Database Environment
Chapter 15 Database Connectivity and Web Technologies
The Client/Server Database Environment
The Client/Server Database Environment
Chapter 9: The Client/Server Database Environment
Chapter 16 Designing Distributed and Internet Systems
Lecture 1: Multi-tier Architecture Overview
Presentation transcript:

Client/Server Database Environment CISB344 Database 2  At the end of this chapter, you should be able to: › Define client/server systems, file server, fat client, database server, stored procedure, three-tier architecture, thin client, application partitioning, middleware, middleware and application program interface (API) › Explain the three components of client server systems: presentation, processing, and storage › Distinguish between file server, database server and three-tier architectures

Client/Server Database Environment CISB344 Database 2  A networked computing model that distributes processes between clients and servers which supply requested services  Client–Workstation (usually a PC) that requests and uses a service  Server–Computer (PC/mini/mainframe) that provides a service  For DBMS, server is a database server

Client/Server Database Environment CISB344 Database 2  Client/server architectures that have evolved can be distinguished by the distribution of application logic components across clients and servers.  Three components of application logic: 1. Presentation Input/output (I/O) 2. Processing Logic 3. Storage Logic

Client/Server Database Environment CISB344 Database 2 Formatting & presenting data on user’ screen or other output devices. Managing user input from a keyboard or other input devices Formatting & presenting data on user’ screen or other output devices. Managing user input from a keyboard or other input devices GUI Interface

Client/Server Database Environment CISB344 Database 2 data processing: Data validation and identification of processing errors. Procedures, functions, programs

Client/Server Database Environment CISB344 Database 2 BR that have not been coded at the DBMS level may be coded in the processing component. Business rules describe the operations, definitions and constraints that apply to an organization in achieving its goals. Procedures, functions, programs

Client/Server Database Environment CISB344 Database 2 Identifies the data necessary for processing the transaction or query. Procedures, functions, programs

Client/Server Database Environment CISB344 Database 2 Responsible for data storage & retrieval from physical storage devices Activities of a DBMS Responsible for data storage & retrieval from physical storage devices Activities of a DBMS DBMS activities

Client/Server Database Environment CISB344 Database 2  No one optimal client/server architecture that is the best solution for all business problems.  Flexibility in client/Server architecture  possibility of tailoring their configurations to fit their particular processing needs.

Client/Server Database Environment CISB344 Database 2  The process of assigning portions of application code to client or server partitions after it is written to achieve better performance and interoperability.  Advantages › Improved performance › Improved interoperability › Balanced workloads

Client/Server Database Environment CISB344 Database 2  Helps in tailoring › Gives developer opportunity to write application code  place either on a client workstation or on a server  Application code can be developed and tested on a client workstation

Client/Server Database Environment CISB344 Database 2  Possible to add Transaction Processing Monitors (TP)  TP monitors – balance workload, directing transactions to servers that are not busy  TP also useful in distributed environments  distributed transaction from a single unit of work can be managed across a heterogeneous environment.

Client/Server Database Environment CISB344 Database 2  Common Logic Distributions – Two tier client server environments  Processing logic could be at client, server, or both

Client/Server Database Environment CISB344 Database 2  Common Logic Distributions – n-tier client server environments  Processing logic will be at application server or Web server

Client/Server Database Environment CISB344 Database 2  File Server Architecture  Database Server Architecture (Two Tier Architecture)  Three-tier Architecture

Client/Server Database Environment CISB344 Database 2

Client/Server Database Environment CISB344 Database 2 CLIENT Presentation Logic Processing Logic Storage Logic

Client/Server Database Environment CISB344 Database 2  Limitations: › Huge amount of data transfer on the network › Each client must contain full DBMS  Heavy resource demand on clients › Client DBMSs must recognize shared locks, integrity checks.

Client/Server Database Environment CISB344 Database 2 A device that manages file operations & shared by each of the client attached to the LAN

Client/Server Database Environment CISB344 Database 2 Most processing occurs on the client rather than on a server

Client/Server Database Environment CISB344 Database 2 CLIENT Presentation Logic Data Processing Logic Business Rules Logic

Client/Server Database Environment CISB344 Database 2 Database Server Database storage AccessProcessing

Client/Server Database Environment CISB344 Database 2 DBMS Database Server LAN traffic is reduced SO ON

Client/Server Database Environment CISB344 Database 2

Client/Server Database Environment CISB344 Database 2  Database  server not clients  Database server can be tuned  optimize database processing performance  User authorization, integrity checking, data dictionary maintenance and query

Client/Server Database Environment CISB344 Database 2  Departmental in scope (few users)  Not mission-critical  Low transaction volumes  Common programming languages: › Java, VB.NET, C#  Interface database via middleware, APIs

Client/Server Database Environment CISB344 Database 2  Middleware – software that allows an application to interoperate with other software without requiring user to understand and code low-level operations  Application Program Interface (API) – routines that an application uses to direct the performance of procedures by the computer’s operating system  Common database APIs – ODBC, ADO.NET, JDBC

Client/Server Database Environment CISB344 Database 2 1. Identify and register a database driver. 2. Open a connection to a database. 3. Execute a query against the database. 4. Process the results of the query. 5. Repeat steps 3–4 as necessary. 6. Close the connection to the database.

Client/Server Database Environment CISB344 Database 2

Client/Server Database Environment CISB344 Database 2  A client/server configuration that includes three layers: › A client layer › 2 server layers  Additional server if compared to dbase server (2 tier)  Additional server may be used for different purposes: › Application programs: Application Server › Local database

Client/Server Database Environment CISB344 Database 2  Thin Client › PC just for user interface and a little application processing. Limited or no data storage (sometimes no hard drive)

Client/Server Database Environment CISB344 Database 2

First Tier Client First Tier Client Second Tier Database Server Second Tier Database Server TASK User Interface First Tier Client First Tier Client Second Tier Application Server Second Tier Application Server Third Tier Database Server Third Tier Database Server TASK Server-side validation Database Access TASK User Interface Main Business TASK Business Logic Data Processing Logic TASK Data Validation Database Access

Client/Server Database Environment CISB344 Database 2 CLIENTSERVER Manages the User InterfaceAccepts and processes database requests from clients Accepts and checks syntax of user input Checks authorization Processes application logicEnsures integrity constraints not violated Generates database requests and transmits to server Performs query/update processing and transmits response to client Passes response back to userMaintains system catalog Provides concurrent database access Provides recovery control

Client/Server Database Environment CISB344 Database 2  An application where the client (PC) accessing the application primarily provides the user interfaces and some application processing, usually with no or limited local data storage.  Most commonly, the thin client application is a Web browser and the 3- tier architecture involves a Web application.

Client/Server Database Environment CISB344 Database 2

Client/Server Database Environment CISB344 Database 2  Database server – hosts storage logic for the application and hosts the DBMS › e.g. Oracle, SQL Server, Informix, MS Access, MySql  Web server – receive and respond to browser requests using HTTP/HTTPS protocol › e.g. Apache, Internet Information Services (IIS)  Application server – software building blocks for creating dynamic web sites and web based application › e.g. MS ASP.NET framework, Java EE, ColdFusion, PHP, Python and PERL  Web browser – client program that sends web requests and receives web pages › e.g. Internet Explorer, Firefox, Safari, Google Chrome

Client/Server Database Environment CISB344 Database 2  Hypertext Markup Language (HTML) › Markup language specifically for Web pages  Standard Generalized Markup Language (SGML) › Markup language standard  Extensible Markup Language (XML) › Markup language allowing customized tags  XHTML › XML-compliant extension of HTML  JavaScript/VBScript › Scripting languages that enable interactivity in HTML documents  Cascading Style Sheets (CSS) › Control appearance of Web elements in an HML document  XSL and XSLT › XMS style sheet and transformation to HTML Standards and Web conventions established by World Wide Web Consortium (W3C)

Client/Server Database Environment CISB344 Database 2  Static page requests ›.htm or.html requests are handled by the Web server only  Dynamic page requests ›.jsp,.aspx, and.php requests are routed to the application server › Server-side processing by JSP servlet, ASP.NET application, ColdFusion, or PHP › Database access via JDBC, ADO.NET, or other database middleware

Client/Server Database Environment CISB344 Database 2

Client/Server Database Environment CISB344 Database 2

Client/Server Database Environment CISB344 Database 2 Form for the ASP.NET application

Client/Server Database Environment CISB344 Database 2  Stored procedures Stored procedures › Code logic embedded in DBMS › Improve performance, but proprietary  Transactions › Involve many database updates › Either all must succeed, or none should occur  Database connections › Maintaining an open connection is resource- intensive › Use of connection pooling

Client/Server Database Environment CISB344 Database 2  Performance improves for compiled SQL statements  Reduced network traffic  Improved security  Improved data integrity  Thinner clients

Client/Server Database Environment CISB344 Database 2  Advantages › Scalability › Technological Flexibility › Long-term cost reduction › Better match of systems to business needs › Improved customer service › Competitive advantage › Reduced risk

Information in this slides were taken from Modern Database Management System, Ninth edition by Jeffrey A.Hoffer, Mary B.Prescott & Heikki Topi.

Client/Server Database Environment CISB344 Database 2  SQL: › SELECT Product, Quantity FROM Inventory WHERE Warehouse = ‘Kajang‘  CREATE PROCEDURE varchar(10) AS SELECT Product, Quantity FROM Inventory WHERE Warehouse  EXECUTE sp_GetInventory ‘Kajang'

Client/Server Database Environment CISB344 Database 2  CREATE PROCEDURE Delete_Employee INT) AS BEGIN DELETE FROM Employees WHERE EmployeeId END  EXECUTE Delete_Employee(8)