JohnRowan.ppt
-
Upload
databaseguys -
Category
Documents
-
view
523 -
download
0
Transcript of JohnRowan.ppt
CS 8630 Database Administration, John Rowan
Web Technologies and Database Administration Systems
John Rowan
CS 8990, Summer 2004
CS 8630 Database Administration, John Rowan
The Internet & Information Sharing
•The emergence of the web as a way of sharing information has made it one of the fastest growing technologies.•It’s platform-independence make it appealing for applications and sharing data.•The Database Management System (DBMS) has become the backbone for servicing data dynamically.
CS 8630 Database Administration, John Rowan
The Internet: Brief History
• Started in the late 60s early 70s as a project called Advanced Research Projects Agency Networks (ARPANET).
- U.S. Department of Defense• Uses suite of package switching called
TCP/IP or Transmission Control Protocol and Internet Protocol in 1983
CS 8630 Database Administration, John Rowan
The Internet: Brief History (cont)
•Has grown to support over 650 million users in over 100 countries.•It is regulated bye the Internet Engineering Task Force or IETF.
- Responsible for promoting standards- Harald T. Alvestrand is chairman
•Supports numerous protocols (TCP, FTP, SSH, PPP)
CS 8630 Database Administration, John Rowan
Web/DBMS Integration Considerations
• The ability to access valuable customer data in a secure manner.
Data and vendor independent connectivity to allow freedom of choice in the selection of the DBMS now and in the future.
The ability to interface to the database independent of any proprietary web browser or web server.
CS 8630 Database Administration, John Rowan
Web/DBMS Integration Considerations (cont)
A connectivity solution that takes advantage of all the features of an organization’s DBMS.
An open-architecture approach to allow interoperability with a variety of systems and technologies; for example, support for- different web servers;– Microsoft’s (Distributed) Common Object Model
(DCOM/COM)– CORBA/IIOP (Internet Inter-ORB protocol)– Java/RMI (Remote Method Invocation).
CS 8630 Database Administration, John Rowan
Web/DBMS Integration Considerations (cont)
A cost-effective solution that allows for scalability, growth, and changes in strategic directions, and helps reduce the costs of developing and maintaining applications.
Support for transactions that span multiple HTTP requests.
Support for session and applications based authentication.
CS 8630 Database Administration, John Rowan
Web/DBMS Integration Considerations (cont)
Acceptable performance. Minimal administration overhead. A set of high-level productivity tools to allow
applications to be developed, maintained, and deployed with relative ease and speed.
Distributed applications The integration of legacy applications into new
systems. The use of different programming languages to
write new components.
CS 8630 Database Administration, John Rowan
Current Web Application Communication Standards
• Common Object Request Broker (CORBA)• Distributed Component Object Model
(DCOM)• Simple Object Access Protocol (SOAP)• Remote Method Invocation (RMI)
CS 8630 Database Administration, John Rowan
CORBA
• A CORBA component is an object.• A CORBA class implements one or more
CORBA interfaces• The execution locations is transparent to
the client.• The server process advertises one or more
named objects. The client process has no named objects.
CS 8630 Database Administration, John Rowan
CORBA (cont)
• Client access remote objects by the way of references that have the same interface as remote objects. They forward all method invocations to the server for remote object execution.
• The CORBA ORB runs within every CORBA process for communicating with other ORBS.
• The CORBA ORB acts like a message bus between objects.
CS 8630 Database Administration, John Rowan
CORBA (cont)
• The ORBs are able to communicate with each other by the use of a protocol known as the General Inter-Orb Protocol.
• CORBA uses an Interface Definition Language (IDL) which enables the development of language-neutral interfaces that CORBA objects implements.
• Language-specific compilers translate IDL into language-specific codes that are used to implement those interfaces.
CS 8630 Database Administration, John Rowan
CORBA Illustration
CS 8630 Database Administration, John Rowan
Remote Method Invocation (RMI)
• It is used to access remote objects.• Java to Java only.• Uses the client-server protocol.• It is transparent and lightweight.
CS 8630 Database Administration, John Rowan
RMI (cont)
Remote References, Stubs, Skeletons• Remote references invoked on client exactly like
local object references.• Remote interfaces declare exposed methods.• Methods are implemented on the client.• Stubs are used on the client and pretends to be a
remote object.• Skeleton lives on the server and it receives
requests from the stub. The skeleton communicates with the remote object and delivers response to the server.
CS 8630 Database Administration, John Rowan
RMI Illustration
CS 8630 Database Administration, John Rowan
Simple Object Access Protocol
• Lightweight-protocol used for exchange of messages in a decentralized, distributed environment.
• Used for Remote Procedure Calls (RPC)• W3C defines the use of SOAP with XML as
payload and HTTP as transport.
CS 8630 Database Administration, John Rowan
SOAP Components
• Envelope – Top element of the XML document representing the message.
• Header – Optional layer that determines how a recipient of a SOAP message should process the message. Adds features to the SOAP message such as authentication, transaction management, message routing … etc.
• Body – Used for RPC calls and error reporting.• Soap Fault – Used to carry error or status
information within the SOAP Message.
CS 8630 Database Administration, John Rowan
SOAP Components
CS 8630 Database Administration, John Rowan
Advantages and Disadvantages of SOAP, CORBA, and RMI
Advantages - SOAP• SOAP uses a widely known protocol for transport
(HTTP). It is proven to be scalable.• It has a wide remote system interoperability.• Flexible for growth due to XML use.
Disadvantages – SOAP• Parsing of SOAP packet and mapping to objects
reduces performance.• Doesn’t implement security because it is a wire
protocol (relies on HTTP).
CS 8630 Database Administration, John Rowan
Advantages and Disadvantages of SOAP, CORBA, and RMI
Advantages – CORBA• Multi-language support.• Can start up more then one service for load
balancing.• Different ORBs can communicate.• Easy to extend new languages.• Open standard developed by international
consortium.
CS 8630 Database Administration, John Rowan
Advantages and Disadvantages of SOAP, CORBA, and RMI
Disadvantages – CORBA• Performance can be slow.• Implementations are still continually
evolving.• Many ORBs do not provide full functionality
of CORBA specifications.• Limited mainstream acceptance.
CS 8630 Database Administration, John Rowan
Advantages and Disadvantages of SOAP, CORBA, and RMI
Advantages – RMI• Simple implementation.• No IDL.• Can pass and return existing Java objects.• Comes with JDK – No ORBs to buy.• Java is free.
CS 8630 Database Administration, John Rowan
Advantages and Disadvantages of SOAP, CORBA, and RMI
Disadvantages – RMI• Not full-featured middleware.• No mechanism for object description.• No language independence.
CS 8630 Database Administration, John Rowan
Other Web Technologies
• Java Servlets & Java Server Pages• Common Gateway Interface (CGI)• Active Server Pages (ASP)• Perl• PHP• JavaScript & VBScript