Previous Table of Contents Next


Part VI
Implementation of Oracle8

In This Part
•  Oracle8 Cartridges
•  Using Oracle8 Objects in PL/SQL and SQL
•  Data Warehouses
•  Large Online Transaction Processing Systems
•  Media and Complex Data Servers
•  Working with Very Large Databases

Chapter 28
Oracle8 Cartridges

by Meghraj Thakkar

In This Chapter
•  Overview of Oracle8 Cartridges
•  Cartridge Architecture
•  Developing Cartridges
•  Deploying Cartridges

Overview of Oracle8 Cartridges

Oracle8 is an object-relational database management system. In addition to supporting relational data, it allows you to have object types.

Oracle’s Network Computing Architecture (NCA) is a very appropriate environment for distributed computing. NCA is a three-tier approach consisting of the following components:

  Clients
  Application servers
  Database servers
  Interconnection between the different tiers

There are several benefits of using the NCA approach:

  Robust client/server model
  Easy deployment on the Web
  Extensible and plugable components—cartridges
  Use of object-oriented paradigms

NCA Cartridges

The Network Computing Architecture makes use of three categories of cartridges:

  Client cartridges
  Application cartridges
  Data cartridges

Client Cartridge

In a client/server model, operations on server data are typically executed on the server, but applications can be executed either on the client or the server. This results in thick clients. The client cartridges, on the other hand, are used to support thin clients. It is important to carefully define and distinguish what constitutes direct and necessary GUI support and what constitutes application functions. NCA’s CORBA/IIOP communication mechanisms are used for inter-cartridge communication.

Application Cartridge

In the NCA, the application cartridge contains all the substantial application logic. The application server provides a mechanism for enabling applications, programs, and objects to communicate with each other. The Oracle Web Application Server uses and extends the HTTP-based communication mechanism. It also supports CORBA/IIOP-based communication methods. The applications, programs, and objects should have the following features:

  They should “register” with the application server and provide certain hooks.
  They should follow the underlying communication protocols. On the Oracle Web Application Server, the objects are identified by URLs and request services from other objects through HTTP requests and getting responses in the same manner. Process states are preserved across HTTP requests.

An application cartridge is an object that uses the services of an application server and/or other cartridges to do the following:

  Enhance the functionality of the application server (PL/SQL cartridge, PERL cartridge, and so on)
  Be part of a bigger computation task


Tip:  
Even though application cartridges are managed by the application server, they can communicate with each other without the help of the application server (through the use of Java RMI, for example). When the cartridges communicate with each other without the help of the application server, they will not be able to take advantage of features such as load balancing.

In a complete solution, the application cartridge typically makes use of another stand-alone application, such as a browser, to handle the user interface and database servers to provide data storage and transaction control functions.

Application cartridges can add to the services provided by the application server. Other application cartridges, with or without involving the application server, can use these services. For example:

  The PERL application cartridge allows the Web application server to execute PERL scripts.
  By using the PL/SQL cartridge, the application server allows clients to connect to the Oracle database and execute PL/SQL scripts.

It should be noted that application cartridges can be anything, but they should be managed by the application server and make use of the underlying communication-related services. Unlike database servers, which have the notion of datatypes, the application server has no notion of datatypes. Application servers do not impose any programming methodology. Application cartridges should use HTTP-based or CORBA-based methods to communicate with other cartridges and applications.

Data Cartridges

A data cartridge is a software component that consists of datatypes, methods, and interfaces for a domain. These data cartridges extend the object type support provided by Oracle8 within the framework of Oracle’s Network Computing Architecture.

Table 28.1 shows examples of some cartridges provided by Oracle8.0.4.

Table 28.1. Cartridges provided by Oracle.

Data Cartridge Database Model Supported Behavior

Time Series Ordered List of Tuples Rolling averages, period comparisons, calendars
Text Tokenized serial byte stream Display, compress, reformat, and index
Video structured large object of serial image data Play, compress, rewind, pause, and skip
Network Object types of nodes, connections, and routes Configuration of the network topology
Spatial Geometric objects such as points, lines, polygons, and so on Intersect, contain, and so on
Image Structured large object Crop, rotate, reformat, and so on


Previous Table of Contents Next
Используются технологии uCoz