Skip Headers
Oracle® Beehive Concepts
Release 1 (1.4)

Part Number E13794-02
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

2 Oracle Beehive Architecture

Built on Java 2 Platform Enterprise Edition (J2EE), Oracle Beehive provides a multitier architecture that leverages proven Oracle technologies, such as Oracle Database and Oracle Application Server, as well as other key Oracle and third-party components.

This module provides a high-level overview of the Oracle Beehive architecture and its supported components, and includes the following topics:

Overview of the Oracle Beehive Tiers

The Oracle Beehive architecture is divided into the following logical tiers:

Figure 2-1 Oracle Beehive Logical Architecture

Description of Figure 2-1 follows
Description of "Figure 2-1 Oracle Beehive Logical Architecture"

Overview of the Client Tier

The Client Tier is the face of the system and includes all supported clients and devices, including end-user clients, such as integration with Microsoft Outlook, and system administration clients, such as Oracle Beekeeper and beectl. Oracle Beehive also supports clients and devices that leverage the following standardized protocols:

  • Calendaring Extensions for WebDAV (CalDAV)

  • Extensible Messaging and Presence Protocol (XMPP)

  • File Transfer Protocol (FTP)

  • Internet Message Access Protocol (IMAP)

  • Push Internet Message Access Protocol (P-IMAP)

  • Open Mobile Alliance Data Synchronization (OMA-DS)

  • Simple Mail Transfer Protocol (SMTP)

  • Web-based Distributed Authoring and Versioning (WebDAV)

The open nature of the Oracle Beehive platform also enables developers to build and implement custom clients in the Client Tier using Oracle Beehive Web services.

Overview of the Application Tier

The Application Tier is the core of the system and includes all Oracle Beehive server components, including interoperable, function-specific services that provide the system's enterprise collaboration features.

The Application Tier supports multiple Oracle Beehive server instances. Each Oracle Beehive server instance includes required components of Oracle Application Server 10g, which itself hosts the Oracle Beehive services, including:

  • Oracle HTTP Server: The Web server component of Oracle Application Server 10g. Enables connections between supported clients over HyperText Transport Protocol (HTTP) and Secure HyperText Transport Protocol (HTTPS).

  • Oracle Application Server Containers for J2EE (OC4J): J2EE v1.4 -compliant containers that provide an infrastructure for deploying, undeploying, and redeploying J2EE-compliant applications and modules. Oracle Beehive services are deployed in OC4J containers.

When you install Oracle Beehive, the required Oracle Application Server 10g components are pre-bundled and installed by default.

Each Oracle Beehive server instance also includes the Beehive Transport Infrastructure (BTI), which enables connectivity between supported clients and Oracle Beehive through its proprietary multiplexor protocol (MX). For more information, please refer to "Overview of the Beehive Transport Infrastructure".

Overview of the Data Tier

The Data Tier is the information store for Oracle Beehive and contains Oracle Database, either as a single, standalone database instance or an Oracle Real Application Cluster (Oracle RAC). All system configuration and collaborative data for Oracle Beehive is stored in Oracle Database.

The Data Tier provides Oracle Database a layer of separation from the other tiers, ensuring, among other things, optimized security and system performance. Only the Database Access Framework (provided by Oracle Beehive) can access the Data Tier. Oracle Beehive services cannot access the Data Tier directly and must make all connections through the schemas provided by the Database Access Framework. For more information on the Database Access Framework, please refer to "Overview of the Database Access Framework".

Overview of the Ancillary Tier

The Ancillary Tier contains any optional servers and applications that are external to the Oracle Beehive server. Typically, components in this tier are optional because Oracle Beehive already provides many of these capabilities, such as user directories, e-mail, and time management.

Oracle Beehive supports Ancillary Tier components to provide enterprises flexibility in their deployment choices, especially for those that want to leverage existing or specialized component investments. In either case, enterprises can choose to implement the components of this tier to coexist with or access key aspects of Oracle Beehive.

Examples of supported Oracle and third-party components in the Ancillary Tier include:

  • Oracle Internet Directory

  • Oracle BPEL Process Manager

    Note:

    Out of the box, Oracle Beehive comes pre-bundled with one Oracle BPEL Process Manager instance, although organizations can leverage other Oracle Beehive BPEL Process Manager instances if they exist.
  • Oracle Secure Enterprise Search

  • IBM Tivoli

  • Microsoft Active Directory Server

  • Microsoft Exchange Server

  • OpenLDAP Directory Server

  • Sun Java Directory Server

  • Symantec Scan Engine

Connections Between Oracle Beehive Tiers

Components in the Oracle Beehive tiers connect through the following system frameworks and components:

Overview of the Database Access Framework

The Application and Data Tiers connect through the Database Access Framework, which provides a logical data structure and an optimized data management resource for Oracle Beehive. The Database Access Framework improves system performance and scaling capabilities, while reducing overall system complexity.

The Database Access Framework controls all access to the database through a connection pool that it manages. Services request connections to the database through the connection pool. Once a service receives the requested information, it returns the connection back to the connection pool. The Database Access Framework leverages Java Database Connectivity (JDBC) for these connections.

The Database Access Framework enables centralized management of data store resources and utilizations. It also simplifies database administration tasks that are external, yet related, to Oracle Beehive, including:

  • Changing database connection information, such as database host names and Oracle RAC nodes

  • Managing database connection pool sizes

  • Gathering database usage metrics

Overview of the Beehive Transport Infrastructure

The Beehive Transport Infrastructure (BTI) enables connectivity between the Client and Application Tiers by providing the network-level infrastructure for both client-to-server and server-to-server communications. Specifically, the BTI provides port and connection management for Microsoft Outlook (with Oracle Beehive Integration for Outlook) and non-HTTP, standard-based clients through its proprietary multiplexor protocol (MX).

In a typical enterprise client/server deployment, clients connect through a series of networks to a known port on a known server. However, in many cases, the communication channels must traverse firewalls, load balancing routers, forward and reverse proxies, and demilitarized zones (DMZs). The BTI is designed for deployment in these complex network infrastructures, while providing optimal port and connection management.

The BTI is a bundled component of the Oracle Beehive server so it is always provided whether you deploy Oracle Beehive in the Application Tier or in a DMZ. The latter case provides another layer of security between clients connecting to the system and internal components such as Oracle Database. This increased level of security and control over client connections is particularly beneficial when client connections are expected to originate from points outside of your network, such as from the Internet or from other private networks.

Oracle Beehive also provides Oracle HTTP Server, which enables client connectivity over HTTP/HTTPS. This can be leveraged in cases where HTTP/HTTPS is the preferred method of enabling client connections that originate from external locations.

Overview of the Event Framework

Oracle Beehive is an event-driven platform. Many aspects of system functionality and service interoperability stem from the event-based design of the platform. To manage this complex and powerful design implementation, Oracle Beehive provides the Event Framework. The Event Framework manages all events that occur in the system, which includes initiating any notification logic, workflows, and policies that may apply.

Oracle Beehive supports business events, which are events that trigger business logic, such as initiating workflows or applying policies. Business events provide a unique integration point for Oracle Beehive that allows customers to customize business processes or initiate external processes based on specific activities or occurrences. An example of a business event is when a user creates a document and it initiates a specific approval and notification process.

The open design of Oracle Beehive enables organizations to customize and extend the Event Framework by integrating workflows and policies. For example, developers can write and integrate custom business logic that executes when corresponding events are triggered in the system. Or, organizations can extend Oracle Beehive functionality by attaching custom programs to workflows that result from events. Oracle Beehive administrators can also customize Oracle Beehive business logic to suit their specific requirements.

Overview of Oracle Beehive Schemas

Oracle Beehive schemas logically segregate system, configuration, and collaborative data, and application code. In addition to organizing system, data, and configuration management, Oracle Beehive schemas also provide a significant security benefit by isolating each of the major data components that drive the system. Each Oracle Database in an Oracle Beehive deployment must contain one Oracle Beehive schema set.

An Oracle Beehive schema set consists of the following schema types:

Code Schema

The Code Schema contains all Procedural Language/Structured Query Language (PL/SQL) code used by Oracle Beehive. The Code Schema enables application-level cloning and code updates separate from system data. Benefits of these capabilities include easier and seamless patches and upgrades, since these tasks can be performed without any system downtime. The separation of PL/SQL code from system data also reduces the amount of time required for system backups, as code backups are required less frequently.

The Code Schema also controls the access requests made by Oracle Beehive services to data residing in the Data Tier, as well as the connections from services to other Oracle Beehive schemas, which the services cannot connect to directly. Connections between Oracle Beehive services and the Code Schema are managed by the Database Access Framework.

Data Schema

The Data Schema is the primary repository of collaborative data for Oracle Beehive. In Oracle Beehive, each service owns specific tables and views for the data that it manages. However, a service can request data from the tables or views owned by another service. For example, the Calendar Service may request data from a table belonging to the E-mail Service, which, in turn, may refer to and request information from tables owned by the User Directory Service.