Skip Headers

Oracle® Internet Directory Administrator's Guide
10g (9.0.4)

Part Number B12118-01
Go To Documentation Library
Home
Go To Product List
Solution Area
Go To Table Of Contents
Contents
Go To Index
Index

Go to previous page Go to beginning of chapter Go to next page

Capacity Planning for the Directory, 4 of 8


I/O Subsystem Requirements

This section contains these topics:

About the I/O Subsystem

The I/O subsystem can be compared to a pump that pumps data to the CPUs to enable them to execute workloads. The I/O subsystem is also responsible for data storage. The main components of an I/O subsystem are arrays of disk drives controlled by disk controllers.

It is important to consider performance requirements when you size the I/O subsystem, rather than size based only on storage requirements. Although disk drives have increased in size, the throughput--that is, the rate at which the disk drive pumps data--has not increased in proportion. In sizing calculations for the I/O subsystem, you should use the following factors as input:

Given a range of I/O subsystems, you should always opt for the highest throughput drives. Typically, one can maximize the I/O throughput by one or more of the following techniques:

Some guidelines for organizing Oracle Internet Directory-specific data files are provided in Chapter 21, "Tuning Considerations for the Directory". Depending on the tolerance of disk failures, different levels of Redundant Arrays of Inexpensive Disks (RAID) can also be considered.

Assuming that the decision has been made to get the best possible I/O subsystem, we focus the next section on deriving sizing estimates for the disks themselves.

Rough Estimates of Disk Space Requirements

You can use the following table to derive a rough estimate of the overall disk requirement:

Table 20-5  Disk Space Requirements
Number of Entries in DIT Disk Requirements

100,000

450MB to 650MB

200,000

850MB to 1.5GB

500,000

2.5GB to 3.5GB

1,000,000

4.5GB to 6.5GB

1,500,000

6.5GB to 10GB

2,000,000

9GB to 13GB

The data shown in the previous table makes the following assumptions:

Going back to our example of Acme Corporation, since our directory population is about one million, this would imply that our disk requirements are approximately 4.5 GB to 6.5 GB. Note that the assumptions made for Acme Corporation regarding the number of cataloged attributes are different, but the previous table should give an approximate figure of the size requirements.

Since the directory may be deployed for a wide variety of applications, these assumptions need not necessarily hold true for all possible situations: There might be cases where the size of attributes is large, the number of attributes for each entry is large, extensive use of ACIs has been made, or the number of cataloged attributes is very high. For such cases, we present simple arithmetic procedures in the following section which will allow the planners to get a more detailed perspective of their disk requirements.

Detailed Calculations of Disk Space Requirements

Because Oracle Internet Directory stores all of its data in an Oracle9i database, the sizing for disk space is primarily a sizing of the underlying database. Oracle Internet Directory stores its data in the following tablespaces:

Table 20-6 Tablespaces Used to Store Oracle Internet Directory Data
Tablespace Name Contents

OLTS_ATTR_STORE

Stores all of the attributes for all entries in the DIT

OLTS_CT_STORE

Stores all the remaining (including user-defined) catalogs and the indexes defined in the catalogs

OLTS_DEFAULT

Stores all of the data pertaining to the administration of the Oracle Internet Directory as well as the data used for replication support

OLTS_SVRMGSTORE

Stores all the tables and indexes required for Oracle Internet Directory Server Manageability

SYSTEM

Required by Oracle9i database for various book-keeping purposes. Typically, its size remains constant at about 300MB.

This section presents simple arithmetic procedures to determine the size requirements of each of the tablespaces shown earlier. All of the size calculations are based on the following variables:

Table 20-7  Variables Used for Size Calculation
Variable Name Description

num_entries

Total number of entries in the directory

attrs_per_entry

Average number of attributes for each directory entry

avg_attr_size

Average size of the attribute value in bytes

avg_dn_size

Average size of the DN of an attribute in bytes

objectclass_per_entry

Average number of object classes that an entry belongs to

objectclass_size

Average size of the name of each objectclass in bytes

num_cataloged_attrs

Number of cataloged attributes used in the entries

entries_per_catalog

Average number of entries for each catalog table. This is required because not all cataloged attributes will be present in all entries in the DIT.

change_log_capacity

Number of changes that we wish to buffer for replication purposes

num_acis

Overall number of ACIs in the directory

num_auditlog_entries

Number of auditlog entries to store in the directory

db_storage_ovhd

Overhead of storing data in tables. This overhead corresponds to the relational constructs as well as operating system specific overhead. A value of 1.3 for this variable would represent a 30 percent overhead. The minimum value for this variable is 1.

db_index_ovhd

Overhead of storing data in indexes. This overhead corresponds to the relational constructs as well as the operating system specific overhead. A value of 5 for this variable would represent a 400 percent overhead. The minimum value of this variable is 1.

factor_of_safety

Multiplier for accommodating growth and errors in calculations. A value of 1.3 for this variable would represent a 30 percent factor of safety. The minimum value for this variable is 1.

initial_num_entries

Total number of entries that are initially bulk-loaded into the directory

avg_attrname_len

Average size of attribute name, in bytes

num_stats_entries

Number of statistics entries generated by OID Server Manageability when the host DSF attribute 'orclstatsflag' is enables

attrs_per_stats_entry

Average number of attributes for each statistics entry

Using the variables shown in Table 20-7, the size of individual tablespaces can be calculated as follows:

Table 20-8  Size of Individual Tablespaces
Tablespaces Containing Tables Formula

ATTRSTORE_INDEX_SIZE

num_entries*(attrs_per_entry+6) *10

CATALOG_INDEX_SIZE

entries_per_catalog*num_cataloged_attrs*avg_attr_size*db_index_ovhd +num_entries*objectclass_per_entry*objectclass_size*db_index_ovhd + num_acis*1.5*avg_dn_size*db_index_ovhd + num_auditlog_entries*2*avg_dn_size*db_index_ovhd

CN_SIZE

num_entries*avg_dn_size*db_storage_ovhd

DN_INDEX_SIZE

num_entries*2*(avg_dn_size * 3)

DN_SIZE

num_entries*2*(avg_dn_size+4)

OBJECTCLASSES_SIZE

num_entries*objectclass_per_entry*objectclass_size*db_storage_ovhd + num_auditlog_entries*2*avg_dn_size*db_storage_ovhd

OLTS_ATTR_STORE

(num_entries*(((attrs_per_entry)*(avg_attrname_len+avg_attr_size+22))+6*35)*db_storage_ovhd)+attrstore_index_size

OLTS_BATTRSTORE

6M+(((num_binary_attrs*avg_binval_length)+6*35)*db_storage_ovhd)

OLTS_CT_STORE

(cn_size+objectclasses_size+dn_size+catalog_index_size+dn_index_size)

OLTS_DEFAULT

(change_log_capacity*4*avg_attr_size*db_storage_ovhd*db_index_ovhd) + (initial_num_entries*2*(avg_dn_size+4))

OLTS_SVRMGSTORE

2M+num_stats_entries*((avg_attrname_len+avg_attr_size+20)*(2*attrs_per_stats_entry)*db_storage_ovhd*(orclstatsperiodicity/10)*12)

SYSTEM

300MB

Use the arithmetic operations shown in the preceding table to compute the exact space requirements for a wide variety of Oracle Internet Directory deployment scenarios. The sum of the sizes of each of the tablespaces should yield the overall database disk requirement. One can optionally multiply that by the "factor_of_safety" variable to get a figure that can compensate for unforeseen circumstances.

Going back to our example of Acme Corporation, we can assign values to each of the variables based on the requirements stated in previous sections. The following table illustrates the values of each variable introduced in this section for Acme Corporation.

Table 20-9  Values for Variables Used for Sizing Calculations
Variable Name Value

num_entries

1,000,000

attrs_per_entry

20

avg_attr_size

32 bytes

avg_dn_size

40 bytes

objectclass_per_entry

5 (each entry belongs to an average of 5 object classes)

objectclass_size

10 bytes

num_cataloged_attrs

10

entries_per_catalog

1,000,000

change_log_capacity

80,000 changes (2 for each user)

num_acis

80,000 ACIs (2 for each user)

num_auditlog_entries

1000

db_storage_ovhd

1.4 (40% overhead)

db_index_ovhd

5.0 (400% overhead)

factor_of_safety

1.5 (50% factor of safety)

initial_num_entries

1,000,000

num_stats_entries

5

attrs_per_stats_entry

12

'orclstatsperiodicity'

60 (root DSE attribute)

avg_attrname_len

6

If we now plug these values into the equations described earlier, we get the following values:

Table 20-10  Tablespace Sizes
Tablespace Name Size in Bytes Size in MB

OLTS_ATTRSTORE

2,223,000,000

2182

OLTS_CT_STORE

2,328,512,000

274

OLTS_DEFAULT

159,680,000

156

OLTS_SVRMGSTORE

2,701,568

3

SYSTEM

314572800

300

Total Size

5038093862

4920

The previous table shows that the estimated size of the database for Acme Corporation would be about 8.25 GB. If all of the data is being loaded in bulk, then the bulkload tool of Oracle Internet Directory would require an additional 30 percent of space occupied by the database to store its temporary files. For Acme Corporation, this would add about 2.5 GB to the total space requirement.


Go to previous page Go to beginning of chapter Go to next page
Oracle
Copyright © 1999, 2003 Oracle Corporation.

All Rights Reserved.
Go To Documentation Library
Home
Go To Product List
Solution Area
Go To Table Of Contents
Contents
Go To Index
Index