Oracle7 Server Distributed Systems Volume I: Distributed Data
Implementing Databases in a Distributed System
There are a number of factors the DBA should consider before implementing databases in a distributed system. Many of the planning decisions will require the cooperation and transfer of information between the network administrator and the DBA.
There are also operating system-specific issues the DBA must consider when planning to distribute databases on certain platforms. See your Oracle operating system-specific documentation.
Attention: Some of the issues and tasks listed in this section are specific to the SunOS platform, and are described here as a sample list of things to consider when implementing a distributed system.
Purpose of the Database
The purpose and size of the database will determine how you plan and structure the database.
For example, an online transaction processing (OLTP) database, such as a bank automated teller machine (ATM) has a high volume of transactions. Therefore when planning an OLTP database, you may need to distribute I/O across multiple disks and controllers. You usually need to split the logical database design.
A decision support database, such as an inventory system, has a relatively low number of database updates (measured in transactions per hour). Also, users tend to make few queries and may look at results of these queries for many minutes at a time. Thus a decision support database has less need to distribute I/O across multiple disks
and controllers.
Size of the Database
Consider the size of a machine relative to the database that will run on it. For example, keep in mind that a machine with more physical memory and more processors can support a larger database. A large database (typically over one Gb) is more likely to need to split I/O and the logical database design. It is more likely to need larger initialization file parameter values.
Physical and Logical Layout of the Database
You need to determine several aspects of database physical layout. For example, you need to estimate the number of disks and controllers required for optimal performance from your Oracle7 system. Many smaller disks tend to give better performance than a few larger disks.
When planning the logical layout of your database, consider how tables should be split up among tablespaces. A larger number of smaller tablespaces tend to be more flexible than a few catchall tablespaces.
Keep in mind that different sites have different needs, and decisions should be based on a particular site's needs for a specific application.
File Locations and Initialization Parameters
The network or database administrator must determine locations for database files. For example, for Oracle on a SunOS platform, it is recommended that database files be stored according to the Oracle Optimal Flexible Architecture (OFA). OFA is a specification for configuring Oracle systems at sites demanding high performance with low maintenance under continually evolving requirements. The OFA makes configuration recommendations regarding aspects of your operating system, such as mount points, login home directories, and user profiles. It also makes configuration recommendations regarding Oracle software and administrative files, and database files.
The initialization file, INIT.ORA, contains certain default parameter values, which the DBA may need to increase for optimal performance. Many of theses values are operating system-specific and depend on multiple factors affecting the entire distributed system. See your Oracle operating system-specific documentation for information about your specific requirements.
Backup Strategies
The purpose of the database and how frequently it is used determine which backup methods are chosen, as well as the frequency of backups. The DBA must develop a plan to produce and store archive tapes for each database server in the distributed system, or his region of responsibility, if responsibility for parts of the distributed system is divided between several DBAs.
Memory Requirements
When designing your database, consider the following:
- the larger the number of different applications running on the server, the less physical memory is available for Oracle.
- a server with all clients running remotely can (and should) have a larger SGA than one with only local clients.
For more information about these issues, see your operating system-specific documentation.
Relinking Product Executables
Most Oracle products provide relinkable executables. Relinking lets you regenerate a program from its component parts. Relinking also lets you add options to the Oracle7 Server, such as the distributed option, PL/SQL, and Oracle (SQL*Net) Protocol Adapters.
Relinking relies on operating-system facilities that must be installed and usable before you can perform relinking successfully. For example, on the SunOS system, the commands, make and ar must be present, and the system libraries must be available.
Most sites must relink during installation. For example, you must relink when installing the distributed option or any Oracle (SQL*Net)
protocol adapters.