Database application development 1. Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall OBJECTIVES  Define terms  Explain three components.

Slides:



Advertisements
Similar presentations
Overview Environment for Internet database connectivity
Advertisements

HTTP Request/Response Process 1.Enter URL ( in your browser’s address bar. 2.Your browser uses DNS to look up IP address of server.com.
Objectives In this session, you will learn to:
Technical Architectures
BICS546 Client/Server Database Application Development.
© 2007 by Prentice Hall 1 Chapter 10: The Internet Database Environment Modern Database Management 8 th Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred.
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)
Database Processing Applications Chapter Seven DAVID M. KROENKE and DAVID J. AUER DATABASE CONCEPTS, 4 th Edition.
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
Chapter 8: database application development
Client/Server Database Environment CISB344 Database 2  At the end of this chapter, you should be able to: › Define client/server systems, file server,
Client/Server Computing. Information processing is distributed among several workstations and servers on a network, with each function being assigned.
The Client/Server Database Environment
Chapter 9: The Client/Server Database Environment
It’s World Wide! I NTRODUCTION TO T HE WEB 1 Photo courtesy:
WEB DESIGN SOME FOUNDATIONS. SO WHAT IS THIS INTERNET.
Web-based Software Development - An introduction.
1 Web Database Processing. Web Database Applications Static Report Publishing a report is prepared from a database application and exported to HTML DB.
The Internet Database Environment
Chapter 12 Designing Distributed and Internet Systems
Chapter 11 Designing Distributed and Internet Systems Modern Systems Analysis and Design Sixth Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich.
Chapter 10 © 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 10: The Internet Database Environment Modern Database Management 9 th Edition.
Database Systems: Design, Implementation, and Management Tenth Edition
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.
CSS/417 Introduction to Database Management Systems Workshop 5.
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 ( )
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 10: The Internet Database Environment Modern Database Management 9 th Edition Jeffrey.
© 2002 by Prentice Hall 1 David M. Kroenke Database Processing Eighth Edition Chapter 14 Networks, Multi-Tier Architectures, and XML.
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
© 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.
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)
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
+ Connecting to the Web Chapter 7. + Chapter Objectives Understand and be able to set up Web database processing Learn the basic concepts of Extensible.
Introduction and Principles Web Server Scripting.
The basics of knowing the difference CLIENT VS. SERVER.
Chapter 9  Definition of terms  List advantages of client/server architecture  Explain three application components:
It’s World Wide! I NTRODUCTION TO T HE WEB 1 Photo courtesy:
© 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 CHAPTER 8: DATABASE APPLICATION DEVELOPMENT Modern Database Management 11 th Edition Jeffrey.
Database Processing Applications Chapter Seven DAVID M. KROENKE and DAVID J. AUER DATABASE CONCEPTS, 7 th Edition.
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.
Chapter 10 1 Figure 10-1: Database-enabled intranet-internet environment.
Chapter 9: The Client/Server Database Environment
What is WWW? The term WWW refers to the World Wide Web or simply the Web. The World Wide Web consists of all the public Web sites connected to the Internet.
The Client/Server Database Environment
Chapter 15 Database Connectivity and Web Technologies
The Client/Server Database Environment
The Client/Server Database Environment
Chapter 10: The Internet Database Environment
Chapter 9: The Client/Server Database Environment
Database Processing Applications
Lecture 1: Multi-tier Architecture Overview
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Presentation transcript:

Database application development 1

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall OBJECTIVES  Define terms  Explain three components of client/server systems: presentation, processing, and storage  Distinguish between two-tier and three-tier architectures  Describe how to connect to databases in 2-tier systems using VB.NET and Java  Describe key components and information flow in Web applications  Describe how to connect to databases in 3-tier applications using JSP, PHP, and ASP.NET  Explain the purpose of XML  See how XQuery can be used to query XML documents  Explain how XML fosters Web services and SOAs 2

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall CLIENT/SERVER ARCHITECTURES  Networked computing model  Processes distributed between clients and servers  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 3

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall APPLICATION LOGIC IN C/S SYSTEMS 4 GUI Interface Procedures, functions, programs DBMS activities Processing Logic I/O processing I/O processing Business rules Business rules Data management Data management Storage Logic Data storage/retrieval Data storage/retrieval Presentation Logic Input–keyboard/mouse Input–keyboard/mouse Output–monitor/printer Output–monitor/printer

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall APPLICATION PARTITIONING  Placing portions of the application code in different locations (client vs. server) after it is written  Advantages  Improved performance  Improved interoperability  Balanced workloads 5

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall FIGURE 8-2 COMMON LOGIC DISTRIBUTIONS 6 b) Three-tier and n-tier client-server environments Processing logic will be at application server or Web server.

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall TWO-TIER DATABASE SERVER ARCHITECTURES  Client workstation is responsible for  Presentation logic  Data processing logic  Business rules logic  Server performs all data storage, access, and processing  Typically called a database server DBMS is only on server  DBMS is only on server 7

8 Figure 8-3 Database server architecture (two-tier architecture) Front-end programs Back-end functions 8 Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall CHARACTERISTICS OF TWO-TIER CLIENT/SERVER SYSTEMS  Departmental in scope (few users)  Not mission-critical  Low transaction volumes  Common programming languages:  Java, VB.NET, C#  Interface database via middleware, APIs 9

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall MIDDLEWARE AND APIS  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 10

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall STEPS FOR USING DATABASES VIA MIDDLEWARE APIS 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. 11

12 Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall THREE-TIER ARCHITECTURES 13 Thin Client PC just for user interface and a little application processing. Limited or no data storage (sometimes no hard drive) GUI interface (I/O processing) Browser Business rules Web Server Data storage DBMS Client Application server Database server

14 Figure 8-6a Generic three-tier architecture Thin clients Business rules on application server DBMS only on DB server 14 Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall THIN CLIENT  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.  Usually, thin client application is a Web browser and the 3-tier architecture involves a Web application. 15

16 Figure 8-7 A database-enabled intranet/Internet environment 16 Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall WEB APPLICATION COMPONENTS  Database server – hosts the DBMS  e.g. Oracle, SQL Server, Informix, MS Access, MySql  Web server – receives and responds to browser requests using HTTP protocol  e.g. Apache, Internet Information Services (IIS)  Application server – software building blocks for creating dynamic web sites  e.g. MS ASP.NET framework, Java EE, ColdFusion, PHP  Web browser – client program that sends web requests and receives web pages  e.g. Internet Explorer, Firefox, Safari, Google Chrome 17

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall LANGUAGES FOR CREATING WEB PAGES  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 18 Standards and Web conventions established by World Wide Web Consortium (W3C)

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall PROCESSING IN 3-TIER APPLICATIONS  Static page requests .htm or.html requests handled by the Web server  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 19

20 Figure 8-9 Information flow in a three-tier architecture No server side processing, just a page return Server side processing, including database access …also *.aspx or *.php 20 Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall

21 Figure 8-12 A registration page written in ASP.NET a) Sample ASP.NET code for user registration 21 Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall

22 Figure 8-12 A registration page written in ASP.NET b) Form for the ASP.NET application 22 Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall CONSIDERATIONS IN 3-TIER APPLICATIONS  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 23

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall BENEFITS OF THREE-TIER ARCHITECTURES  Scalability  Technological flexibility  Long-term cost reduction  Better match of systems to business needs  Improved customer service  Competitive advantage  Reduced risk 24

Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall CLOUD COMPUTING  A model for creating ubiquitous, convenient, on- demand access to network services  Characteristics: on-demand, broad network access, resource pooling, rapid elasticity, measured service  Types of cloud computing:  Infrastructure-as-a-service (IaaS)  Platform-as-a-service (PaaS)  Software-as-a-service (SaaS) 25