Active Server Pages Architecture

Size: px
Start display at page:

Download "Active Server Pages Architecture"

Transcription

1 Active Server Pages Architecture Li Yi South Bank University Contents 1. Introduction Host-based databases Client/server databases Web databases Active Server Pages ASP Components ADO and Database The steps of executing a query ASP Attributes References:

2 1. Introduction The development of databases always comes with the newer and better hardware and the demand for applications that match the new hardware. In the past 20 years, we have seen the development of databases not only in DBMS, but also in the evolution of database connectivity, which is from centralised computing to Client/Server computing. These client/server structure databases have a great impact to the use of databases. 1.1 Host-based databases The host-based databases are performed on one computer system with attached unintelligent, "dumb," terminals. A limited number of users can only connect to the databases running on the monolithic mainframe through the dumb monitors. There is no friendly interface at all for the users. When the users want to do queries, they must know schema of the databases clearly. What they have typed in will send to the mainframe without any processing. The application of databases will do everything. As a result, the users of the databases will be limited because each user occupies resource of the mainframe independently, even worse the mainframe will be easily overloaded because it will do everything from any trivial things to complicated businesses queries. The performance of the databases will be very poor when the users climbs up to a certain number. 1.2 Client/server databases When the number of users accessing a database grows too high or when too many features are integrated into the database, it is increasingly possible that the centralising database model fails. And with the proliferation of low-cost hardware, especially the advent of cheap PCs, client/server databases have gained popularity in the recent years. 2

3 Client/server has revolutionised the way of designing and building databases applications. It splits the processing load between clients and servers to get the best of both worlds. A database application is two-tier or three-tier based on the separation of the application logic from the Graphic User Interface (GUI) and the database. In a two-tier client/server database, the application logic is buried either inside GUI on the client (fat client) or within the database on the server (fat server) or both. A user runs a GUI on the client, and then sends queries over a network to a database server. The database server processes the request and returns a result. Simplicity is a good feature of two-tier databases, the two-tier databases are easier to develop than the three-tier or N-tier for small databases. But the databases do not scale well. Many SQL statements are sent over the network and selected data must be downloaded for analysis on the client. When new and more stringent requirements must be introduced into databases, two-tier databases become exponentially harder to develop and normally failed. Three-tier was designed to meet this new challenge. In a three-tier or N-tier (more than three tiers) client/server database, the application logic (or process) lives in the middle-tier. Instead of interacting with the database server directly, the client calls business logic on the server. The business logic then accesses the database on the client's behalf. Only service requests and responses are sent between the client and server, so it performs much well than two-tier. It also provides better security by not exposing the database schema to the client and by enabling more fine-grained authorisation on the server. 1.3 Web databases Web technology is a very special case in client/server computing world. Almost every database vendor is rushing to support this technology at the moment. There are two reasons to explain this, one is that enterprise web servers need powerful databases to support, and the other reason is that 3

4 databases need to be extended their services to the biggest wide range group, web group. The typical web databases are three-tier or N-tier. The users run standard browsers on the client side and the requests are transferred over the Internet to HTTP servers. The HTTP servers then interact with database servers and change the result into HTML files to send back to the browsers. Because HTTP is a stateless connection protocol, web databases need find a way to "remember" each user's operations. They also should have capability of handling with enormous users concurrently. If the web databases support Java, or ODBC/JDBC, they are platform independent because they can connect with different web servers or the Internet directly. It does not need to care about server platform, client platform and network protocol. Performance is a big problem of web databases. Users concern the response time of the databases and the web masters concern the throughput. Optimisation is always used at web server. When a web server receives a service request from a client, it first looks up a result in its cache to see if it is there already. If it does, the result will send back to the client directly without connecting to a database server. If it can not find the result in the cache, it will connect to the database server and fetch the result. The result will normally stored in the server cache and send back to the client. When there are more than one user's request coming into the web server, a queue will be built on web server and optimisation will make them use the server resource reasonably. Web databases can be two-tie, three-tie or N-tie. The two-tie web databases are the simplest to develop and may gain some good performance from this simple structure. However, they are lack of flexibility to deal with other web things and normally they are vendor dependence. The three-tie or N-tie web databases are powerful and flexible. But the middle tie may add the overhead because the databases are not connected with the Internet directly. 4

5 2. Active Server Pages Active Server Pages (ASP) is an Internet Server Application Programming Interface (ISAPI) extension which builds on top of the ISAPI infrastructure to provide a server-side application framework, making it even easier to build dynamic Web applications. ISAPI is an alternative approach to Common Gateway Interface (CGI) and is adopted by Internet Information Server (IIS) because each CGI invocation of process is very resource intensive and a busy Web server could have severe performance problems. If web technologies are used to deal with database via HTTP, then the data and its state need to be kept track of, as it flies around the world. ASP is an excellent tool to help developers do that on the Windows NT world. ASP is supplied with ActiveX Data Objects (ADO) that provides a high performance interface to databases that are Open Database Connectivity (ODBC) or OLE DB compliant. Fig. 1 shows the general structure of how ASP to connect the databases. Server: Windows NT Internet Information Server Client CGI Scripts Browser Internet WWW ASP ADO ActiveX ODBC SQL Server Or Oracle MTS HTML files Fig. 1 The connectivity of ASP with the database on the web 5

6 *ADO is a high-level interface, which is a wrapper around OLE DB. OLE DB is a COMbased, low-level programming interface that provides access to data from all parts of an organisation (relational, access, file). * If there is a native OLE DB provider for the database, it does not have to go through ODBC - the extra layer of processing. 2.1 ASP Components Active Server Pages allows the developer to include VBScript or JScript code in the HTML pages, which is executed on the server. ASP has its own object model, which is exposed for the above scripting languages. Its built-in objects give the way to integrate code with the requests sent from the browser, and the web pages, or responses, sent back from the server. There are six built-in objects provided by the Active Server Pages core engine. These objects are Application, Session, Response, Request and ObjectContext. They only relate to each other logically, not in a hierarchy object models. The diagram below shows how these objects fit together. Request Server Object Client Response Server Application ObjectContext Session Fig. 2 The built-in objects of ASP Application and Session objects The Application object represents an entire Active Server Pages application. This object is used to share information among all users of a given application. A Session object is maintained for each user who requests a page. Variables stored in the Session object are not discarded when the user jumps between 6

7 pages in the application; instead, these variables persist for the entire time the user is accessing pages in the application. Request and Responses objects To be able to manage the way HTTP communications work, Active Server Pages use a Request object to store the details of the browser, the request itself and a whole host of other information. A Response object stores all the information required for the server's response to the client and provides methods and properties that can be used to create and modify what is returned back to the client. ObjectContext objects The ObjectContext object is used by Microsoft Transaction Server (MTS) initiated to commit or abort transactions. These objects cover normal web server functions. But when a client request needs to query a database, ADO will be needed. 2.2 ADO and Database To develop a dynamic web site, web pages is needed to link with a database of some kind. (It is not that kind of static pages translated from databases.) The traditional way to do that is through Common Gateway Interface (CGI) or Internet Server Application Programming Interface (ISAPI) directly. An easier way is provided by ASP, which is supplied with a component called the Database Access Component. The component is a whole hierarchy of objectscollectively known as the ActiveX Data Objects (ADO), which is the 'missing link' between web pages and almost any kind of stored data. ADO is powerful enough to achieve excellent results with a minimum amount of work. It consists of just four objects and two collections. They are Connection, Recordset, and Error object; Fields, and Parameters collection. The relationship between them is as follows: 7

8 Connection Command Parameters Parameter Recordset Fields Errors Error Fig. 3 ADO objects The object model is like a hierarchy structure, but not absolutely. One command can be executed by different ways with different objects. The following is a briefly introduction all of the objects and collections shown in the figure. The Connection Object The Connection object represents the link to the data source. It can directly execute statements against the data source, manage transactions. The Command Object The Command object is a query that can be issued against the data source. It provides a means to access and modify data. It can be executed directly against the data source, or it can be used in conjunction with a Recordset object to retrieve data. The Parameters Collection The Parameters collection is a dependency of the Command object and can be used in conjunction with a parameterised query (such as a SQL statement) or stored procedure. Each of the query's (or procedure's) parameters is represented by a Parameter object. The Recordset Object 8

9 The Recordset object is the most intricate of the ADO objects. It supports features such as data paging, disconnected recordsets, filtering, sorting, and storing multiple data sets in a single Recordset object. The Fields Collection The Fields collection exists within the Recordset object, and represents a list of fields (the columns of the recordset). The Errors Object The Errors collection consists of individual Error objects - an Error object is created when an error occurs while accessing data. ADO provides the following main features to run the databases. Connection Before we can access any part of a database, we need to establish a connection to it. A predefined link between the consumer and the data provider can be built by creating an instance of the Connection object, and placing information in its properties. The default ConnectionTimeOut is 15 seconds. Closing the Connection The resources that were being used to support the connection on the serverside are released when a connection is closed. But the object can only be removed from the memory by setting it to Nothing.. Connection Pooling When a connection is closed, it is placed in the connection pool and waits to be reused by any others. The connection itself is only closed if it is not reused within a certain period time. Otherwise it is reused exactly the same as the cached connection. This process saves overhead by reducing the number of times we need to physically go through the connection process because opening and closing connections can be resource-hungry for Web server. Certainly, one can cancel the usage of connection pooling. 9

10 Cursor types, Cursor locations and Lock types A cursor is a pointer to a record in a database or recordset. To get good performance from the concurrent environment, the users need to define these three parameters carefully... Filtering The Filter property of the Recordset object can reduce the number of records that users can see in a recordset based upon their filter criteria. All the information is still there in the recordset - it is just hidden from view until the users clear the filter. By applying the filter, the users only get a subset of all the rows. Paging This is a good way to look at data one 'page' at a time. It would not take any custom programming to implement this. Indexing Indexing will reduce processing time when performing searching for a record and sorting a recordset. But the index itself resides in the client-side cursor that ADO provides. That means it is not indexing the database itself, it is indexing the Recordset object. Execute SQL It is important to define a right execute method for executing SQL code against the data provider. For example, if the adexecutenorecords is not defined in the execution of a SQL statement which does not need to return any record, ADO will generate a recordset of no records, which takes up extra memory and time and is essentially a waste of resources. Stored procedures To use a stored procedure within a database can get much better performance than to running a dynamic query because the stored procedure is already 10

11 compiled on the server and a dynamic query must be syntax-checked and compiled before it is executed. Transactions ADO has a number of methods and properties to support transactions. Disconnected Recordset ADO gives us disconnected and remote-able recordsets, which in turn allows for better functionality in the stateless environment of the WWW. A disconnected recordset is a standard ADO recordset without an associated connection to a database. If the web server-side code opens a recordset and disconnects it from the database server from within that server-side script, the web server is playing the role of 'client' to the database server. The client only receives web pages that are generated on the web server, not the actual recordset. 2.3 The steps in executing a query The following are steps to execute a very basic SQL command. 1. The web server starts an application to provide services for querying the database. Application object is started. All users can share variables at this application level. 2. A user uses a browser to visit a web page that contains a SQL query service. The user then inputs some data by customising the query and submits it by "Get" or "Post" method to the server through HTTP protocol. 3. The web server then may create a session for the user to remember the "client" when the user gives a query next time. 4. The query is interpreted and the cache is checked to see if the query can be completed on site. If yes, the web server produces a dynamic result web page to send back to the user. 5. If no, the web server connects to the database server. Before doing that, it checks if the wanted connection is already existed in the Connection Pool. 11

12 If yes, it will use that to connect to the database server. If no, it will create a new connection. 6. After setting up the connection, the Command object will tell the database server what should be done. This command goes through ODBC or OLE DB and is changed to a language that the database can understand. 7. The Recordset object will get the result and then manipulate it to produce the web page. 8. When there is no need to interact with the database server, the connection to the database will be closed and the connection will be thrown in the connection pool. 9. The resulting web page is sent back to the user, and the data fetched from the database server will be left in the cache. 3 ASP Attributes Performance ASP is a script language, which means the web server needs to read each line of the ASP file and then run it. Microsoft Transaction Server (MTS) can be used to improve the performance of ASP. MTS is viewed as an object broker and uses COM to map client applications to services resident in software components (objects). It is designed to reduce the time and complexity in the development of N-tier applications by supplying much of the infrastructure to provide a robust, scalable, high performance and distributed architecture. Portability ASP is originally designed to run on Windows environment. However, Chili!Soft Inc. ( have implemented an ASP scripting engine for many non-microsoft Web Servers and they claim that this is functionally equivalent to the Microsoft implementation. This means that ASP does not force vendor lock-in and your Web applications can now be freely ported to other platforms (like Unix) without code change. Powerful 12

13 ASP can not only run some scripts and connect different databases through ODBC, but also do other things through ActiveX server components. Scalability Future versions of MTS will work with the Cluster Server technologies to provide dynamic load balancing, scalability and high availability. Learning curve It is easy to learn because it is just a script language and it uses Visual Basic syntax. References: Scott M. Lewandowski (1998) "Frameworks for Component-Based Client/Server Computing", ACM Computing Surveys, Vol. 30, No. 1, March 1998, pp

Active Server Pages: Technology for Creating Dynamic Web Pages and Webenabled

Active Server Pages: Technology for Creating Dynamic Web Pages and Webenabled Workshop on Multimedia and Internet Technologies 26 th -28 th February, 2001 DRTC, Bangalore Active Server Pages: Technology for Creating Dynamic Web Pages and Webenabled Databases Documentation Research

More information

Client/Server-Architecture

Client/Server-Architecture Client/Server-Architecture Content Client/Server Beginnings 2-Tier, 3-Tier, and N-Tier Architectures Communication between Tiers The Power of Distributed Objects Managing Distributed Systems The State

More information

13. Databases on the Web

13. Databases on the Web 13. Databases on the Web Requirements for Web-DBMS Integration The ability to access valuable corporate data in a secure manner Support for session and application-based authentication The ability to interface

More information

Test On Line: reusing SAS code in WEB applications Author: Carlo Ramella TXT e-solutions

Test On Line: reusing SAS code in WEB applications Author: Carlo Ramella TXT e-solutions Test On Line: reusing SAS code in WEB applications Author: Carlo Ramella TXT e-solutions Chapter 1: Abstract The Proway System is a powerful complete system for Process and Testing Data Analysis in IC

More information

Server software accepts requests for data from client software and returns the results to the client

Server software accepts requests for data from client software and returns the results to the client Client Server Model Introduction Client machines are generally single-user workstations providing a user-friendly interface to the end user. Each server provides a set of shared services to the clients.it

More information

Chapter 1: Distributed Information Systems

Chapter 1: Distributed Information Systems Chapter 1: Distributed Information Systems Contents - Chapter 1 Design of an information system Layers and tiers Bottom up design Top down design Architecture of an information system One tier Two tier

More information

Recommendations for Web Development and Deployment Using Team Developer

Recommendations for Web Development and Deployment Using Team Developer Recommendations for Web Development and Deployment Using Team Developer By Kumuthini Ragavan Senior Technical Consultant Gupta Technologies, LLC 975 Island Drive Redwood Shores, CA 94065 USA Phone +1-650-596-3400

More information

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 14 Database Connectivity and Web Technologies

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 14 Database Connectivity and Web Technologies Database Systems: Design, Implementation, and Management Tenth Edition Chapter 14 Database Connectivity and Web Technologies Database Connectivity Mechanisms by which application programs connect and communicate

More information

Chapter 10 Web-based Information Systems

Chapter 10 Web-based Information Systems Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 10 Web-based Information Systems Role of the WWW for IS Initial

More information

Database Applications

Database Applications Database Applications Database Programming Application Architecture Objects and Relational Databases John Edgar 2 Users do not usually interact directly with a database via the DBMS The DBMS provides

More information

unisys Internet Commerce Enabler Technical Overview imagine it. done. Release 11.1 October

unisys Internet Commerce Enabler Technical Overview imagine it. done. Release 11.1 October unisys imagine it. done. Internet Commerce Enabler Technical Overview Release 11.1 October 2010 7850 2473 004 NO WARRANTIES OF ANY NATURE ARE EXTENDED BY THIS DOCUMENT. Any product or related information

More information

Database Server. 2. Allow client request to the database server (using SQL requests) over the network.

Database Server. 2. Allow client request to the database server (using SQL requests) over the network. Database Server Introduction: Client/Server Systems is networked computing model Processes distributed between clients and servers. Client Workstation (usually a PC) that requests and uses a service Server

More information

Appendix A - Glossary(of OO software term s)

Appendix A - Glossary(of OO software term s) Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component

More information

Bruce Moore Fall 99 Internship September 23, 1999 Supervised by Dr. John P.

Bruce Moore Fall 99 Internship September 23, 1999 Supervised by Dr. John P. Bruce Moore Fall 99 Internship September 23, 1999 Supervised by Dr. John P. Russo Active Server Pages Active Server Pages are Microsoft s newest server-based technology for building dynamic and interactive

More information

- How Base One s Scroll Cache simplifies database browsing & improves performance

- How Base One s Scroll Cache simplifies database browsing & improves performance Base One International Corporation 44 East 12th Street New York, NY 10003 212-673-2544 info@boic.com www.boic.com Dr. GUI is NOT Dr. Database - How Base One s Scroll Cache simplifies database browsing

More information

Middleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004

Middleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Middleware Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Outline Web Services Goals Where do they come from? Understanding middleware Middleware as infrastructure Communication

More information

Bonus Content. Glossary

Bonus Content. Glossary Bonus Content Glossary ActiveX control: A reusable software component that can be added to an application, reducing development time in the process. ActiveX is a Microsoft technology; ActiveX components

More information

ICOM 5016 Database Systems. Database Users. User Interfaces and Tools. Chapter 8: Application Design and Development.

ICOM 5016 Database Systems. Database Users. User Interfaces and Tools. Chapter 8: Application Design and Development. Chapter 8: Application Design and Development ICOM 5016 Database Systems Web Application Amir H. Chinaei Department of Electrical and Computer Engineering University of Puerto Rico, Mayagüez User Interfaces

More information

Design Patterns for CGI Web Applications with Visual Basic

Design Patterns for CGI Web Applications with Visual Basic Design Patterns for CGI Web Applications with Visual Basic Mike Lopez, John Peppiat Manukau Institute of Technology Auckland, New Zealand Mike.Lopez@manukau.ac.nz ABSTRACT Many commercial organisations

More information

Agent-Enabling Transformation of E-Commerce Portals with Web Services

Agent-Enabling Transformation of E-Commerce Portals with Web Services Agent-Enabling Transformation of E-Commerce Portals with Web Services Dr. David B. Ulmer CTO Sotheby s New York, NY 10021, USA Dr. Lixin Tao Professor Pace University Pleasantville, NY 10570, USA Abstract:

More information

INTRODUCTION TO Object Oriented Systems BHUSHAN JADHAV

INTRODUCTION TO Object Oriented Systems BHUSHAN JADHAV INTRODUCTION TO Object Oriented Systems 1 CHAPTER 1 Introduction to Object Oriented Systems Preview of Object-orientation. Concept of distributed object systems, Reasons to distribute for centralized objects.

More information

Java Enterprise Edition

Java Enterprise Edition Java Enterprise Edition The Big Problem Enterprise Architecture: Critical, large-scale systems Performance Millions of requests per day Concurrency Thousands of users Transactions Large amounts of data

More information

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Distributed transactions (quick refresh) Layers of an information system

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Distributed transactions (quick refresh) Layers of an information system Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

Chapter 2 FEATURES AND FACILITIES. SYS-ED/ Computer Education Techniques, Inc.

Chapter 2 FEATURES AND FACILITIES. SYS-ED/ Computer Education Techniques, Inc. Chapter 2 FEATURES AND FACILITIES SYS-ED/ Computer Education Techniques, Inc. Objectives You will learn: JDeveloper features. Java in the database. Simplified database access. IDE: Integrated Development

More information

Re : Technical Report on Providing the Dynamic HTML for AHaPe Plc.

Re : Technical Report on Providing the Dynamic HTML for AHaPe Plc. Manchester, 15 December 2000 TECHNICAL DIRECTOR AHaPe - Handicraft and Home Decoration Grosvenor Square Manchester Dear Sir, Re : Technical Report on Providing the Dynamic HTML for AHaPe Plc. According

More information

Introduction to MySQL. Database Systems

Introduction to MySQL. Database Systems Introduction to MySQL Database Systems 1 Agenda Bureaucracy Database architecture overview Buzzwords SSH Tunneling Intro to MySQL Comments on homework 2 Homework #1 Submission date is on the website..

More information

Review. Fundamentals of Website Development. Web Extensions Server side & Where is your JOB? The Department of Computer Science 11/30/2015

Review. Fundamentals of Website Development. Web Extensions Server side & Where is your JOB? The Department of Computer Science 11/30/2015 Fundamentals of Website Development CSC 2320, Fall 2015 The Department of Computer Science Review Web Extensions Server side & Where is your JOB? 1 In this chapter Dynamic pages programming Database Others

More information

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Layers of an information system. Design strategies.

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Layers of an information system. Design strategies. Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

Gustavo Alonso, ETH Zürich. Web services: Concepts, Architectures and Applications - Chapter 1 2

Gustavo Alonso, ETH Zürich. Web services: Concepts, Architectures and Applications - Chapter 1 2 Chapter 1: Distributed Information Systems Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) alonso@inf.ethz.ch http://www.iks.inf.ethz.ch/ Contents - Chapter 1 Design

More information

Architectural Styles I

Architectural Styles I Architectural Styles I Software Architecture VO/KU (707023/707024) Roman Kern KTI, TU Graz 2015-01-07 Roman Kern (KTI, TU Graz) Architectural Styles I 2015-01-07 1 / 86 Outline 1 Non-Functional Concepts

More information

CMPT 354 Database Systems I

CMPT 354 Database Systems I CMPT 354 Database Systems I Chapter 8 Database Application Programming Introduction Executing SQL queries: Interactive SQL interface uncommon. Application written in a host language with SQL abstraction

More information

SAS ODBC Driver. Overview: SAS ODBC Driver. What Is ODBC? CHAPTER 1

SAS ODBC Driver. Overview: SAS ODBC Driver. What Is ODBC? CHAPTER 1 1 CHAPTER 1 SAS ODBC Driver Overview: SAS ODBC Driver 1 What Is ODBC? 1 What Is the SAS ODBC Driver? 2 Types of Data Accessed with the SAS ODBC Driver 3 Understanding SAS 4 SAS Data Sets 4 Unicode UTF-8

More information

XVIII. Software Architectures

XVIII. Software Architectures XVIII. Software Architectures Software Architectures UML Packages Client-Server vs Peer-to-Peer 3-Tier and 4-Tier Architectures Horizontal Layers and Vertical Partitions The Model-View-Controller Architecture

More information

CLIENT SERVER ARCHITECTURE:

CLIENT SERVER ARCHITECTURE: CLIENT SERVER ARCHITECTURE: Client-Server architecture is an architectural deployment style that describe the separation of functionality into layers with each segment being a tier that can be located

More information

DAVID M. KROENKE and DAVID J. AUER. DATABASE CONCEPTS, 7 th Edition. Chapter Seven. Database Processing Applications. Chapter Objectives

DAVID M. KROENKE and DAVID J. AUER. DATABASE CONCEPTS, 7 th Edition. Chapter Seven. Database Processing Applications. Chapter Objectives DAVID M. KROENKE and DAVID J. AUER DATABASE CONCEPTS, 7 th Edition Chapter Seven Database Processing Applications Chapter Objectives Understand and be able to set up Web database processing Learn the basic

More information

Databases and the Internet

Databases and the Internet C6545_14 10/22/2007 11:17:41 Page 570 PART V Databases and the Internet Database Connectivity and Web Technologies 14 C6545_14 10/22/2007 11:18:22 Page 571 Casio Upgrades Customer Web Experience A global

More information

4. กก ( Web-based Technology ) (System Development Life Cycle : SDLC) ก ก ก

4. กก ( Web-based Technology ) (System Development Life Cycle : SDLC) ก ก ก 2 ก ก ก ก ก ก ก 1. ก ก ก ก 1.1 ก ก 1.2 ก ก 2. ก ก.NET 3. ก ก ก 4. กก ( Web-based Technology ) 5. ก ก 6. ก ก ก ก ก 1. ก ก ก (System Development Life Cycle: SDLC) ก (System Development Life Cycle : SDLC)

More information

Chapter 2 Distributed Information Systems Architecture

Chapter 2 Distributed Information Systems Architecture Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

Caché and Data Management in the Financial Services Industry

Caché and Data Management in the Financial Services Industry Caché and Data Management in the Financial Services Industry Executive Overview One way financial services firms can improve their operational efficiency is to revamp their data management infrastructure.

More information

Software Paradigms (Lesson 10) Selected Topics in Software Architecture

Software Paradigms (Lesson 10) Selected Topics in Software Architecture Software Paradigms (Lesson 10) Selected Topics in Software Architecture Table of Contents 1 World-Wide-Web... 2 1.1 Basic Architectural Solution... 2 1.2 Designing WWW Applications... 7 2 CORBA... 11 2.1

More information

QuickSpecs. ISG Navigator for Universal Data Access M ODELS OVERVIEW. Retired. ISG Navigator for Universal Data Access

QuickSpecs. ISG Navigator for Universal Data Access M ODELS OVERVIEW. Retired. ISG Navigator for Universal Data Access M ODELS ISG Navigator from ISG International Software Group is a new-generation, standards-based middleware solution designed to access data from a full range of disparate data sources and formats.. OVERVIEW

More information

INTRODUCTION TO.NET. Domain of.net D.N.A. Architecture One Tier Two Tier Three Tier N-Tier THE COMMON LANGUAGE RUNTIME (C.L.R.)

INTRODUCTION TO.NET. Domain of.net D.N.A. Architecture One Tier Two Tier Three Tier N-Tier THE COMMON LANGUAGE RUNTIME (C.L.R.) INTRODUCTION TO.NET Domain of.net D.N.A. Architecture One Tier Two Tier Three Tier N-Tier THE COMMON LANGUAGE RUNTIME (C.L.R.) CLR Architecture and Services The.Net Intermediate Language (IL) Just- In-

More information

Software Elements of Electronic Business Sites

Software Elements of Electronic Business Sites Software Elements of Electronic Business Sites Daniel A. Menascé, Ph. D. www.cs.gmu.edu/faculty/menasce.html 1 Implementation Options Client Server Client-side: client-side scripts Java applets Server-side:

More information

Enterprise Java Unit 1- Chapter 3 Prof. Sujata Rizal Introduction to Servlets

Enterprise Java Unit 1- Chapter 3 Prof. Sujata Rizal Introduction to Servlets 1. Introduction How do the pages you're reading in your favorite Web browser show up there? When you log into your favorite Web site, how does the Web site know that you're you? And how do Web retailers

More information

DQpowersuite. Superior Architecture. A Complete Data Integration Package

DQpowersuite. Superior Architecture. A Complete Data Integration Package DQpowersuite Superior Architecture Since its first release in 1995, DQpowersuite has made it easy to access and join distributed enterprise data. DQpowersuite provides an easy-toimplement architecture

More information

Introducing the SAS ODBC Driver

Introducing the SAS ODBC Driver 1 CHAPTER 1 Introducing the SAS ODBC Driver Overview: The SAS ODBC Driver 1 What Is ODBC? 2 What Is the SAS ODBC Driver? 2 Types of Data Accessed with the SAS ODBC Driver 3 Understanding SAS 5 SAS Data

More information

Chapter 3. Database Architecture and the Web

Chapter 3. Database Architecture and the Web Chapter 3 Database Architecture and the Web 1 Chapter 3 - Objectives Software components of a DBMS. Client server architecture and advantages of this type of architecture for a DBMS. Function and uses

More information

Micro Focus Net Express

Micro Focus Net Express data sheet Micro Focus Net Express Micro Focus Net Express provides a complete environment for quickly building and modernizing COBOL enterprise components and business applications for client/server platforms

More information

Creating Enterprise and WorkGroup Applications with 4D ODBC

Creating Enterprise and WorkGroup Applications with 4D ODBC Creating Enterprise and WorkGroup Applications with 4D ODBC Page 1 EXECUTIVE SUMMARY 4D ODBC is an application development tool specifically designed to address the unique requirements of the client/server

More information

Oracle Transparent Gateways

Oracle Transparent Gateways Oracle Transparent Gateways Using Transparent Gateways with Oracle9i Application Server Release 1.0.2.1 February 2001 Part No. A88729-01 Oracle offers two solutions for integrating data from non-oracle

More information

Object Persistence Design Guidelines

Object Persistence Design Guidelines Object Persistence Design Guidelines Motivation Design guideline supports architects and developers in design and development issues of binding object-oriented applications to data sources The major task

More information

Distributed Systems Architectures. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1

Distributed Systems Architectures. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1 Objectives To explain the advantages and disadvantages of different distributed systems architectures

More information

EMC GREENPLUM MANAGEMENT ENABLED BY AGINITY WORKBENCH

EMC GREENPLUM MANAGEMENT ENABLED BY AGINITY WORKBENCH White Paper EMC GREENPLUM MANAGEMENT ENABLED BY AGINITY WORKBENCH A Detailed Review EMC SOLUTIONS GROUP Abstract This white paper discusses the features, benefits, and use of Aginity Workbench for EMC

More information

Enterprise Software Architecture & Design

Enterprise Software Architecture & Design Enterprise Software Architecture & Design Characteristics Servers application server, web server, proxy servers etc. Clients heterogeneous users, business partners (B2B) scale large number of clients distributed

More information

Notes. Submit homework on Blackboard The first homework deadline is the end of Sunday, Feb 11 th. Final slides have 'Spring 2018' in chapter title

Notes. Submit homework on Blackboard The first homework deadline is the end of Sunday, Feb 11 th. Final slides have 'Spring 2018' in chapter title Notes Ask course content questions on Slack (is651-spring-2018.slack.com) Contact me by email to add you to Slack Make sure you checked Additional Links at homework page before you ask In-class discussion

More information

JAYARAM. COLLEGE OF ENGINEERING AND TECHNOLOGY Pagalavadi, Tiruchirappalli (An approved by AICTE and Affiliated to Anna University)

JAYARAM. COLLEGE OF ENGINEERING AND TECHNOLOGY Pagalavadi, Tiruchirappalli (An approved by AICTE and Affiliated to Anna University) Estd: 1994 Department of Computer Science and Engineering Subject code : IT1402 Year/Sem: IV/VII Subject Name JAYARAM COLLEGE OF ENGINEERING AND TECHNOLOGY Pagalavadi, Tiruchirappalli - 621014 (An approved

More information

GUI-Hanger syndrome SOFTWARE ARCHITECTURES. Architectural Design Choices. Why software architectures? Monolithic Architecture / 2

GUI-Hanger syndrome SOFTWARE ARCHITECTURES. Architectural Design Choices. Why software architectures? Monolithic Architecture / 2 GUI-Hanger syndrome SOFTWARE ARCHITECTURES An architecture contains the information on how the software devides into building blocks. Software Engineering do http://www.cs.uta.fi/se this; Why software

More information

(C) Global Journal of Engineering Science and Research Management

(C) Global Journal of Engineering Science and Research Management ANDROID BASED SECURED PHOTO IDENTIFICATION SYSTEM USING DIGITAL WATERMARKING Prof.Abhijeet A.Chincholkar *1, Ms.Najuka B.Todekar 2, Ms.Sunita V.Ghai 3 *1 M.E. Digital Electronics, JCOET Yavatmal, India.

More information

ADO.NET from 3,048 meters

ADO.NET from 3,048 meters C H A P T E R 2 ADO.NET from 3,048 meters 2.1 The goals of ADO.NET 12 2.2 Zooming in on ADO.NET 14 2.3 Summary 19 It is a rare opportunity to get to build something from scratch. When Microsoft chose the

More information

SAP Automation (BC-FES-AIT)

SAP Automation (BC-FES-AIT) HELP.BCFESRFC Release 4.6C SAP AG Copyright Copyright 2001 SAP AG. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission

More information

B.H.GARDI COLLEGE OF MASTER OF COMPUTER APPLICATION. Ch. 1 :- Introduction Database Management System - 1

B.H.GARDI COLLEGE OF MASTER OF COMPUTER APPLICATION. Ch. 1 :- Introduction Database Management System - 1 Basic Concepts :- 1. What is Data? Data is a collection of facts from which conclusion may be drawn. In computer science, data is anything in a form suitable for use with a computer. Data is often distinguished

More information

P-NET Management with Java based Components

P-NET Management with Java based Components P-NET Management with based Components Martin Wollschlaeger Abstract The introduction of based software components is a challenge for developers and users of fieldbus products. The paper shows concepts,

More information

Course Content. Outline of Lecture 10. Objectives of Lecture 10 DBMS & WWW. CMPUT 499: DBMS and WWW. Dr. Osmar R. Zaïane. University of Alberta 4

Course Content. Outline of Lecture 10. Objectives of Lecture 10 DBMS & WWW. CMPUT 499: DBMS and WWW. Dr. Osmar R. Zaïane. University of Alberta 4 Technologies and Applications Winter 2001 CMPUT 499: DBMS and WWW Dr. Osmar R. Zaïane Course Content Internet and WWW Protocols and beyond Animation & WWW Java Script Dynamic Pages Perl Intro. Java Applets

More information

XVIII. Software Architectures

XVIII. Software Architectures XVIII. Software Architectures Software Architectures Subsystems, Modules and Connectors Pipes and Filters, Object-Oriented, Layered, Event-Driven, Repository-Based Architectures Client Server Architectures

More information

A Survey Paper on NoSQL Databases: Key-Value Data Stores and Document Stores

A Survey Paper on NoSQL Databases: Key-Value Data Stores and Document Stores A Survey Paper on NoSQL Databases: Key-Value Data Stores and Document Stores Nikhil Dasharath Karande 1 Department of CSE, Sanjay Ghodawat Institutes, Atigre nikhilkarande18@gmail.com Abstract- This paper

More information

Database Management System Fall Introduction to Information and Communication Technologies CSD 102

Database Management System Fall Introduction to Information and Communication Technologies CSD 102 Database Management System Fall 2016 Introduction to Information and Communication Technologies CSD 102 Outline What a database is, the individuals who use them, and how databases evolved Important database

More information

Oracle Reports 6.0 New Features. Technical White Paper November 1998

Oracle Reports 6.0 New Features. Technical White Paper November 1998 Oracle Reports 6.0 New Features Technical White Paper Oracle Reports 6.0 New Features PRODUCT SUMMARY In today's fast-moving, competitive business world up to date information is needed for the accurate,

More information

1.264 Lecture 16. Legacy Middleware

1.264 Lecture 16. Legacy Middleware 1.264 Lecture 16 Legacy Middleware What is legacy middleware? Client (user interface, local application) Client (user interface, local application) How do we connect clients and servers? Middleware Network

More information

Enterprise Java Unit 1-Chapter 2 Prof. Sujata Rizal Java EE 6 Architecture, Server and Containers

Enterprise Java Unit 1-Chapter 2 Prof. Sujata Rizal Java EE 6 Architecture, Server and Containers 1. Introduction Applications are developed to support their business operations. They take data as input; process the data based on business rules and provides data or information as output. Based on this,

More information

THE INFORMATION SYSTEM AS A SUPPORT OF THE EDUCATION PROCESS ON SCHOOL OF BUSINESS ADMINISTRATION OF SILESIAN UNIVERSITY IN KARVINA

THE INFORMATION SYSTEM AS A SUPPORT OF THE EDUCATION PROCESS ON SCHOOL OF BUSINESS ADMINISTRATION OF SILESIAN UNIVERSITY IN KARVINA THE INFORMATION SYSTEM AS A SUPPORT OF THE EDUCATION PROCESS ON SCHOOL OF BUSINESS ADMINISTRATION OF SILESIAN UNIVERSITY IN KARVINA VÁCLAV KRÓL Silesian University in Opava School of Business Administration

More information

Chapter 20: Database System Architectures

Chapter 20: Database System Architectures Chapter 20: Database System Architectures Chapter 20: Database System Architectures Centralized and Client-Server Systems Server System Architectures Parallel Systems Distributed Systems Network Types

More information

Chapter 18: Database System Architectures.! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems!

Chapter 18: Database System Architectures.! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Chapter 18: Database System Architectures! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Network Types 18.1 Centralized Systems! Run on a single computer system and

More information

Configuring the Oracle Network Environment. Copyright 2009, Oracle. All rights reserved.

Configuring the Oracle Network Environment. Copyright 2009, Oracle. All rights reserved. Configuring the Oracle Network Environment Objectives After completing this lesson, you should be able to: Use Enterprise Manager to: Create additional listeners Create Oracle Net Service aliases Configure

More information

Part 1: Indexes for Big Data

Part 1: Indexes for Big Data JethroData Making Interactive BI for Big Data a Reality Technical White Paper This white paper explains how JethroData can help you achieve a truly interactive interactive response time for BI on big data,

More information

Distributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan.

Distributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan. Distributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan Reading List Remote Object Invocation -- Tanenbaum Chapter 2.3 CORBA

More information

Multimedia Database Architecture!

Multimedia Database Architecture! Multimedia Database Architecture! n Multimedia Architecture Requirements! n ACID test! n Multimedia Server Requirements! n Distributed Multimedia System! n Super server concept! n Client-Server Systems!

More information

CHAPTER 7 WEB SERVERS AND WEB BROWSERS

CHAPTER 7 WEB SERVERS AND WEB BROWSERS CHAPTER 7 WEB SERVERS AND WEB BROWSERS Browser INTRODUCTION A web browser is a software application for retrieving, presenting, and traversing information resources on the World Wide Web. An information

More information

DOT NET Syllabus (6 Months)

DOT NET Syllabus (6 Months) DOT NET Syllabus (6 Months) THE COMMON LANGUAGE RUNTIME (C.L.R.) CLR Architecture and Services The.Net Intermediate Language (IL) Just- In- Time Compilation and CLS Disassembling.Net Application to IL

More information

The DCOM Connector HELP.BCMIDDCOM. Release 4.6C

The DCOM Connector HELP.BCMIDDCOM. Release 4.6C HELP.BCMIDDCOM Release 4.6C SAP AG Copyright Copyright 2001 SAP AG. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express

More information

Visual Basic 6 (VB6 Comprehensive) Course Overview

Visual Basic 6 (VB6 Comprehensive) Course Overview Visual Basic 6 (VB6 Comprehensive) Course Overview Course Code: VB60010 Duration: 5 Days - custom / on-site options available - please call. Who should attend: Prerequisite Skills: IT professionals who

More information

ST. XAVIER S COLLEGE (Affiliated to Tribhuvan University) Maitighar, Kathmandu NET CENTRIC COMPUTING [CSC 360]

ST. XAVIER S COLLEGE (Affiliated to Tribhuvan University) Maitighar, Kathmandu NET CENTRIC COMPUTING [CSC 360] ST. XAVIER S COLLEGE (Affiliated to Tribhuvan University) Maitighar, Kathmandu NET CENTRIC COMPUTING [CSC 360] THEORY ASSIGNMENT #1 Submitted By Aashish Raj Shrestha 3 nd Year / 6 th SEM 013BSCCSIT002

More information

DATABASE TRANSACTIONS. CS121: Relational Databases Fall 2017 Lecture 25

DATABASE TRANSACTIONS. CS121: Relational Databases Fall 2017 Lecture 25 DATABASE TRANSACTIONS CS121: Relational Databases Fall 2017 Lecture 25 Database Transactions 2 Many situations where a sequence of database operations must be treated as a single unit A combination of

More information

Technical and Architectural Overview

Technical and Architectural Overview 100% Web-Based Time & Labor Management Technical and Architectural Overview Copyright 2007 Time America 15990 N. Greenway-Hayden Loop Suite D-500, Scottsdale, AZ (800) 227-9766 www.timeamerica.com Table

More information

Lab 7 Macros, Modules, Data Access Pages and Internet Summary Macros: How to Create and Run Modules vs. Macros 1. Jumping to Internet

Lab 7 Macros, Modules, Data Access Pages and Internet Summary Macros: How to Create and Run Modules vs. Macros 1. Jumping to Internet Lab 7 Macros, Modules, Data Access Pages and Internet Summary Macros: How to Create and Run Modules vs. Macros 1. Jumping to Internet 1. Macros 1.1 What is a macro? A macro is a set of one or more actions

More information

TOPLink for WebLogic. Whitepaper. The Challenge: The Solution:

TOPLink for WebLogic. Whitepaper. The Challenge: The Solution: Whitepaper The Challenge: Enterprise JavaBeans (EJB) represents a new standard in enterprise computing: a component-based architecture for developing and deploying distributed object-oriented applications

More information

Why use a database? You can query the data (run searches) You can integrate with other business systems that use the same database You can store huge

Why use a database? You can query the data (run searches) You can integrate with other business systems that use the same database You can store huge 175 Why use a database? You can query the data (run searches) You can integrate with other business systems that use the same database You can store huge numbers of records without the risk of corruption

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction

More information

Borland AppServer. Borland

Borland AppServer. Borland Borland AppServer An Integrated Solution for Developing, Deploying, and Managing Distributed Multi-tier Applications. August 1998 Borland PAGE 1 Contents Introduction 4 Enterprises Shift to the Middle-tier

More information

DBMS (FYCS) Unit - 1. A database management system stores data in such a way that it becomes easier to retrieve, manipulate, and produce information.

DBMS (FYCS) Unit - 1. A database management system stores data in such a way that it becomes easier to retrieve, manipulate, and produce information. Prof- Neeta Bonde DBMS (FYCS) Unit - 1 DBMS: - Database is a collection of related data and data is a collection of facts and figures that can be processed to produce information. Mostly data represents

More information

Lecture 23 Database System Architectures

Lecture 23 Database System Architectures CMSC 461, Database Management Systems Spring 2018 Lecture 23 Database System Architectures These slides are based on Database System Concepts 6 th edition book (whereas some quotes and figures are used

More information

PeopleSoft Internet Architecture

PeopleSoft Internet Architecture PeopleSoft Internet Architecture AN OPEN ARCHITECTURE FOR INTERNET ACCESS AND INTEGRATION 3 ( 2 3 / (6 2 ) 7 Ã3 2 6, 7, 2 1 Ã3 $ 3 ( 5 - $ 1 8 $ 5 < Ã 3 (23/(6 2)7Ã, 17(51(7Ã$ 5&+,7(&785( - $18$5

More information

Patterns Of Enterprise Application Architecture

Patterns Of Enterprise Application Architecture Patterns Of Enterprise Application Architecture Lecture 11-12 - Outlines Overview of patterns Web Presentation Patterns Base Patterns Putting It All Together References Domain Logic Patterns Domain Model

More information

Provide Real-Time Data To Financial Applications

Provide Real-Time Data To Financial Applications Provide Real-Time Data To Financial Applications DATA SHEET Introduction Companies typically build numerous internal applications and complex APIs for enterprise data access. These APIs are often engineered

More information

Bipul Sinha, Amit Ganesh, Lilian Hobbs, Oracle Corp. Dingbo Zhou, Basavaraj Hubli, Manohar Malayanur, Fannie Mae

Bipul Sinha, Amit Ganesh, Lilian Hobbs, Oracle Corp. Dingbo Zhou, Basavaraj Hubli, Manohar Malayanur, Fannie Mae ONE MILLION FINANCIAL TRANSACTIONS PER HOUR USING ORACLE DATABASE 10G AND XA Bipul Sinha, Amit Ganesh, Lilian Hobbs, Oracle Corp. Dingbo Zhou, Basavaraj Hubli, Manohar Malayanur, Fannie Mae INTRODUCTION

More information

Chapter 10 Web-based Information Systems

Chapter 10 Web-based Information Systems Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 10 Web-based Information Systems Role of the WWW for IS Initial

More information

CORBA Object Transaction Service

CORBA Object Transaction Service CORBA Object Transaction Service Telcordia Contact: Paolo Missier paolo@research.telcordia.com +1 (973) 829 4644 March 29th, 1999 An SAIC Company Telcordia Technologies Proprietary Internal Use Only This

More information

Inf 202 Introduction to Data and Databases (Spring 2010)

Inf 202 Introduction to Data and Databases (Spring 2010) Inf 202 Introduction to Data and Databases (Spring 2010) Jagdish S. Gangolly Informatics CCI SUNY Albany April 22, 2010 Database Processing Applications Standard Database Processing Client/Server Environment

More information

XIX. Software Architectures

XIX. Software Architectures XIX. Software Architectures Software Architectures UML Packages Client-Server vs Peer-to-Peer Horizontal Layers and Vertical Partitions 3-Tier and 4-Tier Architectures The Model-View-Controller Architecture

More information

Announcements. SQL: Part IV. Transactions. Summary of SQL features covered so far. Fine prints. SQL transactions. Reading assignments for this week

Announcements. SQL: Part IV. Transactions. Summary of SQL features covered so far. Fine prints. SQL transactions. Reading assignments for this week Announcements 2 SQL: Part IV CPS 216 Advanced Database Systems Reading assignments for this week A Critique of ANSI SQL Isolation Levels, by Berenson et al. in SIGMOD 1995 Weaving Relations for Cache Performance,

More information

Visual Programming 1. What is Visual Basic? 2. What are different Editions available in VB? 3. List the various features of VB

Visual Programming 1. What is Visual Basic? 2. What are different Editions available in VB? 3. List the various features of VB Visual Programming 1. What is Visual Basic? Visual Basic is a powerful application development toolkit developed by John Kemeny and Thomas Kurtz. It is a Microsoft Windows Programming language. Visual

More information