Web Technology and DBMSs

Slides:



Advertisements
Similar presentations
Overview Environment for Internet database connectivity
Advertisements

Lecture plan Information retrieval (from week 11)
BICS546 Client/Server Database Application Development.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
Introduction to ASP.NET. 2 © UW Business School, University of Washington 2004 Outline Static vs. Dynamic Web Pages.NET Framework Installing ASP.NET First.
DATABASE APPLICATION DEVELOPMENT SAK 3408 The Web and DBMS.
INTERNET DATABASE Chapter 9. u Basics of Internet, Web, HTTP, HTML, URLs. u Advantages and disadvantages of Web as a database platform. u Approaches for.
Introduction to Web Database Processing
Outline IS400: Development of Business Applications on the Internet Fall 2004 Instructor: Dr. Boris Jukic Server Side Web Technologies: Part 1.
Outline IS400: Development of Business Applications on the Internet Fall 2004 Instructor: Dr. Boris Jukic Server Side Web Technologies: Part 2.
INTERNET DATABASE. Internet and E-commerce Internet – a worldwide collection of interconnected computer network Internet – a worldwide collection of interconnected.
Introduction to Web Interface Technology (CSE2030)
1 Minggu 12, Pertemuan 24 Web Technology and DBMSs (Chapter , 3rd ed.) Matakuliah: T0206-Sistem Basisdata Tahun: 2005 Versi: 1.0/0.0.
1 CS6320 – Why Servlets? L. Grewe 2 What is a Servlet? Servlets are Java programs that can be run dynamically from a Web Server Servlets are Java programs.
Java Server Team 8. Overview What is a Java Server? History Architecture Advantages Disadvantages Current Technologies Conclusion.
1 Java Server Pages Can web pages be created specially for each user? What part does Java play?
Session-01. What is a Servlet? Servlet can be described in many ways, depending on the context: 1.Servlet is a technology i.e. used to create web application.
Web Technology and DBMSs Transparencies
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
Sys Prog & Scripting - HW Univ1 Systems Programming & Scripting Lecture 15: PHP Introduction.
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
Web Technology and DBMS’s (CB 29)
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Introduction to ASP.NET. Prehistory of ASP.NET Original Internet – text based WWW – static graphical content  HTML (client-side) Need for interactive.
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
CPS120: Introduction to Computer Science The World Wide Web Nell Dale John Lewis.
Internet, intranet, and multimedia database processing l Database processing across local and wide area networks l Alternative architectures for distributing.
11/16/2012ISC329 Isabelle Bichindaritz1 Web Database Application Development.
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
Kingdom of Saudi Arabia Ministry of Higher Education Al-Imam Muhammad Ibn Saud Islamic University College of Computer and Information Sciences Chapter.
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
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,
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
Java Servlets and Java Server Pages Norman White Stern School of Business.
27.1 Chapter 27 WWW and HTTP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Introduction and Principles Web Server Scripting.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
WEB SERVER SOFTWARE FEATURE SETS
ASP. ASP is a powerful tool for making dynamic and interactive Web pages An ASP file can contain text, HTML tags and scripts. Scripts in an ASP file are.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 22 World Wide Web and HTTP.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
National College of Science & Information Technology.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
E-Business Infrastructure PRESENTED BY IKA NOVITA DEWI, MCS.
Java Server Pages Can web pages be created specially for each user?
CX Introduction to Web Programming
Web-based Software Development - An introduction
The Object-Oriented Thought Process Chapter 13
Web Programming Language
Distributed Control and Measurement via the Internet
Section 6.3 Server-side Scripting
WWW and HTTP King Fahd University of Petroleum & Minerals
Netscape Application Server
Web Development Web Servers.
Web Technology and DBMSs
WEB SERVICES.
PHP / MySQL Introduction
Introduction to Web Database By Rimpi Suman 1 1 Unit-6.
Web Development Using ASP .NET
Chapter 27 WWW and HTTP.
Java Servlet Ziad A. Al-Sharif.
Lecture 1: Multi-tier Architecture Overview
Introduction to Servlets
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Web Servers (IIS and Apache)
Web Application Development Using PHP
Presentation transcript:

Web Technology and DBMSs Chapter 29 Web Technology and DBMSs Pearson Education © 2014

Chapter 29- Objectives Basics of Internet, Web, HTTP, HTML, URLs. Advantages and disadvantages of Web as a database platform. Approaches for integrating databases into Web: Scripting Languages Common Gateway Interface (CGI) HTTP Cookies Extending the Web Server Java, J2EE, JDBC, SQLJ, CMP, JDO, Servlets, and JSP Microsoft Web Platform: .NET, ASP, and ADO Oracle Internet Platform. 2 Pearson Education © 2014

Introduction Web most popular and powerful networked information system to date. As architecture of Web was designed to be platform-independent, can significantly lower deployment and training costs. Organizations using Web as strategic platform for innovative business solutions, in effect becoming Web-centric. 3 Pearson Education © 2014

Introduction Many Web sites today are file-based where each Web document is stored in separate file. For large sites, this can lead to significant management problems. Also many Web sites now contain more dynamic information, such as product and pricing data. Maintaining such data in both a database and in separate HTML files is problematic. Accessing database directly from Web would be a better approach. 4 Pearson Education © 2014

Intranet and Extranet Intranet - Web site or group of sites belonging to an organization, accessible only by members of that organization. Extranet - An intranet that is partially accessible to authorized outsiders. Whereas intranet resides behind firewall and is accessible only to people who are members of same organization, extranet provides various levels of accessibility to outsiders. 5 Pearson Education © 2014

eCommerce and eBusiness eCommerce - Customers can place and pay for orders via the business’s Web site. eBusiness - Complete integration of Internet technology into economic infrastructure of the business. U.S. online retail sales for 2011 approximately US$225 billion and projected to grow to US$362 billion by 2016. Global B2B market expected to be even greater than B2C, and B2B revenues expected to surpass B2C revenues many times over in the coming years. 6 Pearson Education © 2014

The Web Web consists of network of computers that can act in two roles: as servers, providing information; as clients (browsers), requesting information. Protocol that governs exchange of information between Web server and browser is HTTP and locations within documents identified as a URL. Much of Web’s success is due to its simplicity and platform-independence. 7 Pearson Education © 2014

Basic Components of Web Environment 8 Pearson Education © 2014

HyperText Transfer Protocol (HTTP) Protocol used to transfer Web pages through Internet. Based on request-response paradigm: Connection - Client establishes connection with Web server. Request - Client sends request to Web server. Response - Web server sends response (HTML document) to client. Close - closed by Web server. 9 Pearson Education © 2014

HyperText Transfer Protocol (HTTP) HTTP/1.0 is stateless protocol - each connection is closed once server provides response. This makes it difficult to support concept of a session that is essential to basic DBMS transactions. 10 Pearson Education © 2014

HyperText Markup Language (HTML) Document formatting language used to design most Web pages. A simple, yet powerful, platform-independent document language. HTML is application of Standardized Generalized Markup Language (SGML), a system for defining structured document types and markup languages to represent instances of those document types. 11 Pearson Education © 2014

HyperText Markup Language (HTML) 12 Pearson Education © 2014

Uniform Resource Locators (URLs) String of alphanumeric characters that represents location or address of a resource on Internet and how that resource should be accessed. Defines uniquely where documents (resources) can be found. Uniform Resource Identifiers (URIs) - generic set of all Internet resource names/addresses. Uniform Resource Names (URNs) - persistent, location-independent name. Relies on name lookup services. 13 Pearson Education © 2014

Uniform Resource Locators (URLs) URL consists of three basic parts: protocol used for the connection, host name, path name on host where resource stored. Can optionally specify: port through which connection to host should be made, query string. http://www.w3.org/Markup/MarkUp.html 14 Pearson Education © 2014

Static and Dynamic Web Pages HTML document stored in file is static Web page. Content of dynamic Web page is generated each time it is accessed. Thus, dynamic Web page can: respond to user input from browser; be customized by and for each user. Requires hypertext to be generated by servers. Need scripts that perform conversions from different data formats into HTML ‘on-the-fly’. 15 Pearson Education © 2014

Web Services Collection of functions packaged as single entity and published to network for use by other programs. Unlike other Web-based applications, Web services have no user interface and are not targeted for browsers. Instead, consist of reusable software components designed to be consumed by other applications. 16 Pearson Education © 2014

Web Services Common example is stock quote facility, which receives a request for current price of a specified stock and responds with requested price. 17 Pearson Education © 2014

Requirements for Web-DBMS Integration Open architecture to allow interoperability with a variety of systems and technologies. For example: different Web servers; XML; Web services (SOAP, WSDL, UDDI, RESTFul). Cost-effective solution that allows for scalability, growth, and changes in strategic directions, and helps reduce applications development costs. 18 Pearson Education © 2014

Requirements for Web-DBMS Integration Support for transactions that span multiple HTTP requests. i.e., sessions Support for session- and application-based authentication. Acceptable performance. Minimal administration overhead. 19 Pearson Education © 2014

Advantages of Web-DBMS Approach DBMS advantages Simplicity Platform independence Graphical User Interface Standardization Cross-platform support Transparent network access Scalable deployment Innovation 20 Pearson Education © 2014

Disadvantages of Web-DBMS Approach Reliability Security Cost Scalability Limited functionality of HTML Statelessness Bandwidth Performance Immaturity of development tools 21 Pearson Education © 2014

Approaches to Integrating Web and DBMSs Scripting Languages (Php, Javascript) Common Gateway Interface (CGI). HTTP Cookies. Extending the Web Server. Java, J2EE, JDBC, SQLJ, JDO, Servlets, and JSP. Microsoft Web Solution Platform: .NET, ASP, and ADO. Oracle Internet Platform. C++, ODBC … 22 Pearson Education © 2014

Scripting Languages (JavaScript and PHP) Scripting languages can be used to extend browser and Web server with database functionality. As script code is embedded in HTML, it is downloaded every time page is accessed. Updating browser is simply a matter of changing Web document on server. Some popular scripting languages are: JavaScript, VBScript, Perl, and PHP. They are interpreted languages, not compiled, making it easy to create small applications. 23 Pearson Education © 2014

Common Gateway Interface (CGI) Specification for transferring information between a Web server and a CGI program. Server only intelligent enough to send documents and to tell browser what kind of document it is. But server also knows how to launch other programs. When server sees that URL points to a program (script), it executes script and sends back script’s output to browser as if it were a file. 24 Pearson Education © 2014

CGI - Environment 25 Pearson Education © 2014

CGI CGI defines how scripts communicate with Web servers. A CGI script is any script designed to accept and return data that conforms to the CGI specification. Before server launches script, prepares number of environment variables representing current state of the server, who is requesting the information, and so on. Script picks this up and reads STDIN. 26 Pearson Education © 2014

CGI Then performs necessary processing and writes its output to STDOUT. Script responsible for sending MIME header, which allows browser to differentiate between components. CGI scripts can be written in almost any language, provided it supports reading and writing of an operating system’s environment variables. 27 Pearson Education © 2014

CGI Create a FORM in the html page that has variables Names parameters and assigns them values based on user input Two primary methods for passing information from browser to a CGI script: Passing environment variables to CGI programs (GET) Passing data to CGI programs via standard input (POST) POST is generally preferred (more secure, more flexible in size) 28 Pearson Education © 2014

CGI - Passing Parameters on Command Line 29 Pearson Education © 2014

CGI - Advantages CGI is the de facto standard for interfacing Web servers with external applications. Possibly most commonly used method for interfacing Web applications to data sources. Advantages: simplicity, language independence, Web server independence, wide acceptance. 30 Pearson Education © 2014

CGI - Disadvantages Communication between client and database server must always go through Web server. Lack of efficiency and transaction support, and difficulty validating user input inherited from statelessness of HTTP protocol. HTTP never intended for long exchanges or interactivity. Server has to generate a new process or thread for each CGI script. Security. 31 Pearson Education © 2014

HTTP Cookies Cookies can make CGI scripts more interactive. Cookies are small text files stored on Web client. CGI script creates cookie and has Web server send it to client’s browser to store on hard disk. Later, when client revisits Web site and uses a CGI script that requests this cookie, client’s browser sends information stored in the cookie. Cookies can be used to store registration information or preferences (e.g. for virtual shopping cart). 32 Pearson Education © 2014

Java ‘A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-performance, multi-threaded and dynamic language’. Has a machine-independent target architecture, the Java Virtual Machine (JVM). Since almost every Web browser vendor has already licensed Java and implemented an embedded JVM, Java applications can currently be deployed on most end-user platforms. 33 Pearson Education © 2014

JDBC and ODBC CGI and C++ have reasonable performance JDBC and ODBC supports basic SQL functionality. With ODBC, C++ can be used as a host language for writing database applications With JDBC, Java can be used as host language for writing database applications. Can write Web applications on top of them Call C++ compiled versions or Java VM code using CGI protocol from a dynamic web page Web page written in Php or javascript or… CGI and C++ have reasonable performance Load and execute compiled code for each request 34 Pearson Education © 2014

Java Servlets CGI and Java not an efficient pairing Must load JVM each time you run the program Then map from Java – byte code and interpret byte code each time Tomcat server has JVM pre-loaded Now just need to map from Java – byte code and interpret byte code each time Servelets Can preload java bytecode twoo Now just need to interpret byte code each time