Previous | Table of Contents | Next

Page 703

CHAPTER 28

Distributed Database Management

In this chapter

Page 704

Understanding Distributed Databases

Distributed databases are systems that act as a single database but are located in different locations. These locations can be anywhere, from the next office to the other side of the world. Using a networking and client/server technology, distributed databases act as a single system. In order to fully understand how a distributed system works, the DBA must have a knowledge and understanding of multiple hardware systems, networking, client/server technology, and database management.

There is little information concerning the management of distributed database systems. The use of distributed databases dramatically changes with the release of Oracle8 and the further development of data warehouses. Many DBAs have not had the opportunity to manage such systems and may not be familiar with what they are.

This chapter describes each type of distributed system, how it is used, and how to manage one. Oracle8 provides a simple, no-nonsense method of creating several distributed systems. However, not all companies have the capability of supporting a GUI environment; or in the event of remote support, the line mode on the server may be the only option. For this reason, the processes described in this chapter do not address the GUI portion of the distributed option. It does address what happens after the mouse is clicked and how to manage a system without a GUI environment.

Describing Each Type of Database

Distributed databases are actually two types of systems:

A distributed database, in the purest form, is a series of independent databases logically linked together through a network to form a single view. Replicated databases contain information from other remote databases copied through a network connection.

Replicated databases are most easily classified by the method used to pass information between them. The following are the two primary methods for this copy process (most commonly referred to as propagation):

The distributed transaction is the process wherein a user, through Data Manipulation Language (DML)—specifically, through the use of triggers and procedures, modifies data at one site and the modification is sent to the other databases through the two-phase commit. Snapshots are copies of a table (or subset) that are propagated to each of the remote sites from a master site.

Page 705

Naming Databases

Access to the Internet and Internet-based databases are beginning to have a greater influence on the way databases are named, accessed, and managed. Oracle recommends that the naming convention of databases and their links follows standard Internet domain-naming conventions. This convention can have several parts, and each is divided by dots like the ones in an IP address.

The name of the database is read from right to left. This naming convention can have several parts, with the first (rightmost) being the base or root domain. By default, the domain is world. This is not required in Net8, but for consistency, it may be best to include it in order to support older versions of SQL*Net.

The domain name can be based on the structure of the company or the location. For example, the naming convention for the database in Germany can be done in a few ways. In the simplest form, the name can be GERMANY.WORLD. Should the DBA name be based on location, the name would be GERMANY.BWC with BWC being the domain. One other way would be to expand the location to continents, and then the name would be GERMANY.EUROPE.BWC. Whatever the naming convention, it must be easily understood for future maintainability, yet remain transparent to programmers and users.

CAUTION
There are some limitations when naming a domain and database. In addition to normal Oracle naming conventions (no spaces no special characters, and so on), the size of the name may be limited by the operating system or network. Refer to the Oracle_specific documentation for name length limitations.

Achieving Transparency

It is important that when providing names to the tables and objects on remote systems, the naming convention allows the programmer and user of the system to access the table just as they would if it were local. Transparency is the concept that all objects are accessible and look the same for DBA and user alike.

Oracle, through the use of SQL*Net and transparent gateways, enables the development of a system that looks the same regardless of database vendor, type, and location. For more information concerning data transparency, please refer to Chapter 20, "Advanced Oracle Networking."

The purpose of transparency is to provide seamless access to all databases. For example, users should be able to access any table (provided they have security) in the same method. A table located on a SYBASE database should be accessible with the same SQL syntax as a local table. A table located on an Oracle database in Germany should be accessible with the same syntax as a local table in Detroit. For more information concerning transparent gateways, read Oracle8 documentation on the desired gateway. For example, through the use of a transparent

Page 706

gateway, the SYBASE system will now look like an Oracle database and can be referenced by using a database link. Figure 28.1 shows an example of what a heterogeneous environment can look like.

FIG. 28.1
A distributed heteroge-
neous environment.

There must be a methodology in place to propagate any changes of database addresses to other distributed sites. This is ultimately the responsibility of the DBA. Many sites place the TNSNAMES.ORA and SQLNET.ORA on a centralized application server, which enables management of TNSNAMES in a less painful manner. However, this may not always be an optimal solution. In a distributed environment, each site may have other independent databases (such as testing databases, other databases specific to that site, and so on) and cannot have a localized TNSNAMES. If this is the case, the company might decide to use Oracle Names rather than SQL*Net as the method of managing connectivity. Schema names, userIDs, and passwords must also be managed when creating a distributed environment. For example, if the password is included in the creation of a link, the password cannot be changed, or if it is, this must be communicated to the DBAs responsible for maintaining the links affected by that schema.

NOTE
If SQL*Net is used, communication between sites is important. There should be a formalized methodology for moving distributed database IP addresses or renaming databases.n

Using Oracle Security Server and Global Users

This is a new product that will enable the DBA or security administrator to manage security in a global environment. The Security Server enables the administrator to create a user that utilizes a personal certificate rather than a password for authentication. This certificate is like the one required when accessing sites that support electronic commerce. One such certifying agency is VeriSign.

Previous | Table of Contents | Next