541538 - FAQ: Reorganization

Symptom
    1. What is reorganization?
    2. Which objects can I reorganize?
    3. In which situations is reorganization useful?
    4. In which situations does reorganization not make sense?
    5. Which tools are used in reorganization?
    6. How does an online reorganization with BRSPACE work?
    7. What are the advantages and disadvantages of online reorganizations?


    8. Can the SAP application run during the reorganization?
    9. What runtimes should I expect for a reorganization?
    10. How can I optimize the performance of a reorganization?
    11. How can I determine how many rows of a table have already been exported or imported?
    12. To save time, can I release the R/3 system even if indexes are still being created during reorganization?
    13. What do I have to do if a restore is required?
    14. Can I use a target tablespace with the name of the source tablespaces during an online reorganization?
    15. What do I need to remember with regard to TABART changes?
    16. What error scenarios are possible in the context of reorganizations?
    17. Is it possible that performance deteriorates after an online reorganization?
    18. Where can I find further information about reorganization?

Other Terms
FAQ, frequently asked questions

Reason and Prerequisites

Solution
    1. What is reorganization?
              The term reorganization refers to the reconstruction of objects in the database. A distinction is made between offline and online reorganization:
  • Offline reorganization
           It is not always possible to access the objects during an offline reorganization. In general, it is therefore necessary to close the SAP system during the reorganization.
           During an offline reorganization, data is exported from the database into an export dump file. The objects are then set up again based on the export dump.
           As of BRSPACE Patch 7.00 (28) or 7. 10 (4), you can also perform an offline reorganization based on ALTER TABLE MOVE for tables without LONG and LONG RAW columns (Note 1080376). In this case, the table is restructured without an export or import being required.
  • Online reorganization
           You can always access the affected segments during the reorganization. In general, the SAP system can therefore be run in parallel to the reorganization.
           By default, online reorganizations are carried out based on the Oracle package DBMS_REDEFINITION. This means that no access locks occur when segments are copied in the database.
           Non-SAP tools sometimes execute online reorganizations based on a different system (for example, the contents of the Redo log).
    2. Which objects can I reorganize?
              The following objects can be reorganized:
      a) Tables: Individual tables or groups of tables can be reorganized, and restructured in the same or a new tablespace. The corresponding indexes are also set up implicitly.
      b) Indexes: The reconstruction of indexes is not a reorganization in the actual sense. Instead, commands such as DROP / CREATE, REBUILD or COALESCE can be used to set up an index again. For more information, refer to Note 332677. For this reason, this note does not deal with the rebuilding of indexes.
      c) Tablespaces: If all segments are reorganized in a tablespace, the tablespace itself can also be modified at the same time (for example, it can be made smaller or its data file structure can be adjusted).
    3. In which situations is reorganization useful?
  • Tablespace reorganizations can be useful in the following situations:
    • Activating Oracle features such as LMTS or ASSM: To activate features such as LMTS (Note 214995) and ASSM (Note 620803), it is necessary to completely restructure the tablespaces in a reorganization.
    • Corrupt block in the freespace area: If DBV reports a corrupt block in accordance with SAP Note 354293 in the freespace area of a data file, you can remove this block using a tablespace reorganization (including data files).
    • Incorrectly created data file: If you created an unnecessary data file or a data file with an incorrect size by mistake, you cannot simply delete this file with Oracle 9i or lower (even if it does not contain yet any data). Apart from resizing it, your only other option is to reorganize the tablespace.
    • Recovering disk space: If a tablespace contains a lot of freespace that is never used, you can reduce the size of the tablespace with a tablespace reorganization so that space is recovered on the hard disk.
    • Changing the number of data files: Tablespace reorganizations may be useful in certain cases to increase the number of the data files to avoid inode lock-problems (see Note 793113), or to reduce the number of data files to avoid long BEGIN BACKUP runtimes (see Note 875477).
    • Conversion to the new tablespace layout: If you decide that it makes sense to convert to the new tablespace layout in a certain case (Note 355771), you can carry out this conversion by reorganizing the corresponding tablespaces.
  • The reorganization of tables can be useful under the following circumstances:
    • Hot spots at disk level: If certain hard disk areas are accessed much more often than other areas as a result of poor data distribution, which then leads to performance problems due to the higher load, it can help to relocate certain tables using a reorganization. However, before doing this, you must carefully check the Oracle I/O configuration in accordance with Note 793113.
    • Low table fill level: If blocks of tables are largely empty (for example, because data was archived and deleted earlier), this means that an unnecessary number of blocks are read to the Oracle buffer for a small amount of data. In addition, the table occupies more space on the hard disk than necessary. In this case, reorganizing the table can regain free space in the tablespace, and reduce the number of blocks that need to be read to the buffer. For more information, see Note 821687.
    • Changing the storage parameters of blocks that were already allocated: If you want to change memory parameters such as INITRANS (Note 84348) or FREELIST_GROUPS (Note 619188), you can only do so within a reorganization process.
    • Moving segments to another tablespace: You can only move segments to another tablespace by carrying out a reorganization. This is useful, for example, if you want to store large tables in a separate tablespace.
    • Reducing chained or migrated rows: If a table contains an unnecessary number of chained or migrated rows, these can be reduced by reorganization. Note, however, that many tables with long records (for example, tables based on LONG and LONG RAW columns) generally contain chained rows. In these cases, a reorganization does not cause a reduction.
    • Reducing extents: If tables were created in DMTS with a large number of extents (more than 1000), you should create these tables again with a lower number of extents to avoid unforeseen ST enqueue problems (see Note 787533).
    • Converting from LONG columns to LOB columns (Oracle 10 g or higher): As of Oracle 10g, you can use a reorganization to convert LONG columns to the LOB data type.
    • Change to the table entries: In certain cases, it may make sense to rebuild a table with a particular sorting, for example, to improve the clustering factor of an index (Note 832343). You can do this during BRSPACE online reorganizations as described in SAP Note 1016172. This is generally based on an SQL analysis, as the one provided by SAP as part of "Technical Performance Optimization - Oracle" services.
    4. In which situations does reorganization not make sense?
              In most cases, other than those mentioned above, reorganization does not make sense.
    5. Which tools are used in reorganization?
              We recommend that you carry out reorganizations in the SAP environment using the BRSPACE tool (Note 647697). This tool has a user-friendly interface, its parameters can be set in various ways and it warns users of any potential risks that may result from their actions. It is primarily intended for online reorganization using DBMS_REDEFINITION, but if required can also be used for offline reorganizations using EXP and IMP or, as of Oracle 10g, using Data Pump (Note 1013049).
              As of BRSPACE Patch 7. 00 (28), you can also perform an offline reorganization based on ALTER TABLE MOVE for tables without LONG and LONG RAW columns (Note 1080376). This is preferable to the other offline methods, because the data has to be moved only once, and parallelization is possible.
              Note 646681 contains detailed information about reorganizing with BRSPACE.
              If the reorganization is used mainly to correct table fragmentation and to achieve more space in a tablespace, you can use Segment Shrinking as of Oracle 10g (Note 910389).
              As of SAP 4. 6x, you can carry out a reorganization of tables with LONG and LONG RAW fields while the system is running using transaction ICNV. This transaction is usually used to convert tables incrementally as part of an upgrade. The procedure described in Note 96515 is also suitable for Oracle databases. In addition, refer to Note 806554 for ICNV-related possibilities for optimization. The following tables cannot be converted with ICNV, since they are needed to execute ICNV: VBDATA, TST03, TBATG, TICNV and TCNV.
              In some cases, a table conversion with transaction SE14 can be an alternative to a BRSPACE offline reorganization. It has the advantage that you can continue using the SAP system while the conversion is running. However, you cannot access the table that is being converted. In addition you must ensure that no unexpected situations occur (for example, an error in the structure of the primary index) that lead to further problems (for example, duplicate keys).
              In addition, SAP also provided the SAPDBA tool for carrying out reorganizations. With regard to reorganization, this tool has been replaced by BRSPACE. For this reason, this note does not deal with SAPDBA.
              In some cases, it may be helpful to use Oracle functions such as ALTER TABLE MOVE, EXP/IMP or Data Pump directly. SAP permits you to use these Oracle commands, but we do not offer support if problems or errors occur as a result.
    6. How does an online reorganization with BRSPACE work?
              You start an online reorganization of tables or entire tablespaces using the BRSPACE function TBREORG as described in Note 646681. During reorganzation, BRSPACE carries out the following steps:
  • BRSPACE uses DBMS_REDEFINITION.CAN_REDEF_TABLES to check whether the selected tables can be reorganized online.
  • It increases the DB_FILE_MULTIBLOCK_READ_COUNT parameter to 128, to ensure an optimal Full Table Scan performance (see Note 806554).
  • It determines the CREATE TABLE statement and the CREATE INDEX statement for creating target segments with DBMS_METADATA.GET_DDL.
  • It determines dependent objects such as grants, constraints, triggers and comments using DBMS_METADATA.GET_DEPENDENT_DDL.
  • It creates the target table with the naming convention <source_table>#$.
  • It exports statistics of the source table using DMBS_STATS.EXPORT_TABLE_STATS.
  • It calls DBMS_REDEFINITION.START_REDEF_TABLE (the central function of the DBMS_REDEFINITION-package).
    • It waits until all open changes are closed on the table to be reorganized.
    • It copies the source table data into the target table.
    • It logs all changes to the source table until the later DBMS_REDEFINITION.FINISH_REDEF_TABLE in a Materialized View Log (MLOG$_<source_table>), which is created in the default-tablespace of the user.
  • It creates indexes on the target table in accordance with the naming convention <source_index>#$.
  • It imports the previously exported statistics for the target table using DBMS_STATS.IMPORT_TABLE_STATS. (with BRSPACE 6.40 (below 49), 7.00 (below 34) and 7.10 (below 10), this step was performed at the end after renaming the indexes.)
  • It finishes the online reorganization using DBMS_REDEFINITION.FINISH_REDEF_TABLE:
    • It copies the changes to the source table that occurred during the online-reorganization.
    • It swaps the names of the source table and the target table.
  • It drops the source table.
  • It changes index names from <index_name>#$ to <index_name>.
    7. What are the advantages and disadvantages of online reorganizations?
              Compared with an offline reorganization, an online reorganization has the following advantages and disadvantages:
  • Advantages:
    • The reorganization can be carried out in parallel with the current operation. Lock situations or access errors do not occur.
    • All data must only be copied once. When you carry out an offline reorganization (based on import or export), two copy processes are always required (source object -> export-dump; export-dump -> target object). This often results in an improved performance.
  • Restrictions:
    • With Oracle 9i or lower, an online reorganization of tables with LONG columns or LONG RAW columns is not possible. As of 10g, you can avoid the problem if you carry out a LONG2LOB conversion, as described in Note 646681.
    • Changes to the structure of a table (for example by adding columns or partitions) cause problems if they are implemented while the online reorganization is running. This is particularly the case for BW-based systems in which a large number of these types of DDL operations is carried out.
    • Twice the space is needed in the database because the source table or the source tablespace is only deleted once the target objects have been successfully created.
    • Up until Oracle 9i, the tablespace name always changes if a tablespace reorganization is carried out. As of 10g, it is possible to carry out a tablespace reorganization without having to change the tablespace name due to the RENAME TABLESPACE feature.
    • If you reorganize tables without a unique index (for example, BW fact tables), the system creates a ROWID column in the target table, which in individual cases can lead to an increase in the target table of up to 30% compared to the source table.
    8. Can the SAP application run during the reorganization?
              You can carry out an online reorganization with BRSPACE and use the SAP system at the same time. However, bear in mind that DDL operations (such as CREATE or DROP, which are used on a large scale when loading data in BW) may cause errors for reorganized objects. For this reason, we recommend that you carry out online reorganizations when no DDL operations are running.
              For offline reorganizations, the SAP system always needs to be closed.
    9. What runtimes should I expect for a reorganization?
              We cannot make any general statements regarding the runtime of a reorganization in relation to the volume of data, since the runtime is determined by many external factors (in particular, by the hardware used).
              Therefore, we can only provide runtime estimates based on experiences with previous reorganizations on the same system.
              Note that during offline reorganizations based on import or export, the data import can take three times longer than the data export.
              In addition, the final creation of the indexes is relatively time-consuming.
    10. How can I optimize the performance of a reorganization?
              Note the following points when analyzing and optimizing the performance of a reorganization:
  • It is not always required to try to achieve the maximum reorganization performance. For example, if you carry out an online reorganization while the system is running, the duration of the reorganization is less important. Instead, make sure that there are still enough system resources available to the productive operation.
  • See Note 806554, which describes the options available for optimizing the reorganization performance (for example, parameter setting, parallel processing).
  • During runtime, carry out a wait event analysis as described in Note 619188.  This analysis allows you to make a precise prediction about the potential for optimization. It also makes it possible to determine the typical causes for performance problems based on a wait event analysis.
  • A higher export runtime during the offline backup can be triggered by a poor I/O performance of the file system in which the dump file is created. This is mainly the case if a wait event analysis in accordance with Note 619188  shows that the main processing time of the export disappears outside of the database.
  • Long-running exports and imports may also be linked to the activated concurrent I/O for the file system of the dump file. You must therefore ensure that no CIO is used for the dump file system.
  • If the data import hangs, this may be due to an archiver being stuck (Note 391).
  • If the index creation is very slow, the reason may be incorrect parameterization of the temporary tablespace (for example, if the default size of the extent is too small) or the PGA.  In this case, refer to Note 659946.
  • If the extent is too small for the index itself, this may also result in an unnecessarily long runtime (due to a large number of space transactions) if the index is not created in an LMTS. You should therefore check whether the dimensions of the NEXT value are large enough.
  • If performance problems occur because the system reorganizes many small tables and DBMS_METADATA.GET_DDL requires a lot of time, you can change to BRSPACE 7.00 (20) or higher. As of this release, BRSPACE only calls DBMS_METADATA.GET_DDL when it is truly necessary. For example, if a table has no dependent objects, the corresponding call is no longer executed.
  • If the performance is negatively affected when you create NOT NULL constraints in Oracle 10g, you must ensure that you are using at least BRSPACE 7.00 (20).
  • As of Oracle 11g, setting event 10995 to level 2 can prevent frequent reparsing during online reorganization; this particularly speeds up the reorganization of a number of small tables (see SAP Note 1565421).
    11. How can I determine how many rows of a table have already been exported or imported?
              To determine how many rows of a table have already been exported or imported during a lengthy export or import, you can manually extend the "FEEDBACK=<rows>" parameter in the generated EXP or IMP command before you start the reorganization. As a result, EXP or IMP always issues a new point when a <rows> row is exported or imported. Note that BRSPACE does not deal with this feature correctly and therefore, it incorrectly reports "0 tables exported / imported".
              If an import with commits is carried out, you can also use the

SELECT COUNT(*) FROM <table>;
              command to determine how many rows of the table have already been imported and committed.
    12. To save time, can I release the R/3 system even if indexes are still being created during reorganization?
              No, you must not release the R/3 system unless all indexes have been created. There are two reasons for this:
  • If unique indexes are missing, the R/3 application may use existing key field combinations to write entries in tables. This situation is usually prevented by the existence of unique indexes, which do not allow these kinds of duplicate entries. As a consequence of entries that are not unique , the unique indexes can no longer be created later on and serious application inconsistencies may occur.
  • If some indexes are missing, database access is very slow in certain circumstances, as the system must either carry out full table scans or use suboptimum indexes. In extreme cases, these kinds of long-running programs can shut down an entire system.
    13. What do I have to do if a restore is required?
              It should never be necessary to carry out a restore during an online reorganization. In the case of an offline-reorganization, however, various reasons can make a restore necessary:
  • The time window for completing the reorganization is not sufficient.
  • Critical errors such as corrupt export dumps occur (for example, Note 535675).
  • Problems occur that cannot be corrected during the import process.
              A restore is usually only necessary if objects were already deleted from the database, and if this data cannot be restructured in a different way.
              If you have decided to carry out a restore to reset the database to the time before the reorganization, you must restore (and if necessary, incompletely recover) the whole database. It is not sufficient to restore only the tablespaces concerned, as their time stamps (SCN) would no longer match the other tablespaces.
    14. Can I use a target tablespace with the name of the source tablespaces during an online reorganization?
              If you want to create a tablespace with a changed data file layout ("Tablespace reorganization with data files"), you can do this easily with the offline reorganization. If you use the online reorganization, source and target tablespaces exist at the same time. This means that the target tablespace cannot have the same name as the source tablespace. Up until Oracle 9i, this that the target tablespace always has a different name to the previous tablespace. As of Oracle 10g, you can rename tablespaces. Therefore the final name of the target tablespace can correspond to the name of the source tablespace. See the section on tablespace reorganization under Oracle 10g in Note 646681.
    15. What do I need to remember with regard to TABART changes?
              TABARTs are defined in the TAORA and IAORA tables. Each TABART refers to exactly one tablespace. If you now create a new tablespace, BRSPACE automatically carries out the corresponding changes based on the "-1" parameter to TAORA and IAORA.
              BRSPACE also changes the TABART belonging to a segment in the DD09L table if there are any differences after a reorganization. From an SAP-DDIC point of view, this change is not advisable because the technical settings in DD09L are supposed to reflect the default settings and not the current status. In order to avoid problems with system copies with R3LOAD for which the DD09L entries are evaluated, this adjustment may still be advisable.
              For more details on TABARTs, see Note 666061.
              The following points must be considered with regard to these settings:
  • Since upgrades and transports may undo the BRSPACE changes without being noticed, it is important to refer to the BRSPACE changes according to Note 778784 before a system copy with R3LOAD.
  • In BW systems, TABARTs are also defined in other tables: RSDCUBE for infocubes, aggregates, and dimension tables; RSTS for PSA tables. When TABARTs are changed, the mappings must also be adjusted in these tables in accordance with Note 771191.
  • When you use partitioned tables with globally partitioned indexes, the default tablespace must be adjusted on Oracle level as well using "ALTER TABLE ...  MODIFY DEFAULT ATTRIBUTES TABLESPACE <tablespace>" (Note 666061). This action is carried out automatically by BRSPACE.
  • If the tablespace layout is only changed for one system of the system infrastructure (development, testing, production), you do not need to carry out this change in all involved systems in the same way. Instead, you only have to define the same TABARTs in TAORA and IAORA, but these do not have to refer to the same tablespaces in all systems.
           From a transport point of view, you do not have to change the technical settings of already existing tables (DD09L-updates), since the DD09L settings are only relevant when new objects are created.
    16. What error scenarios are possible in the context of reorganizations?
              Characteristic errors, causes and solutions are:
  • Materialized view-related errors
           Refer to Note 741478, which contains the characteristic errors in the materialized views environment.
  • Tablespace overflow (Note 3155)
           If the SYSTEM tablespace is affected, make sure that PSAPTEMP rather than SYSTEM is assigned to the user SYS as a temporary tablespace.
           If the default tablespace of the table owner is affected, make sure that as few data changes as possible are made to the tables to be reorganized, avoid reorganizing tables without a primary index, increase the default tablespace sufficiently, or temporarily select another default tablespace.
           If the target tablespace for reorganization is affected, make sure that no INITIAL extents that are too large have been allocated (Option " -l 2"), and configure the target tablespace with sufficient size.
  • MAXEXTENTS error (Note 533455)
           Where possible, always use Locally Managed Tablespaces (LMTS). For DMTS, the solutions described above under "Tablespace overflow" are relevant. Instead of increasing the affected tablespaces, however, you must increase MAXEXTENTS or the extent size.
  • ORA-00018: maximum number of sessions exceeded
           With large-scale parallel processing, the SESSIONS limit may be reached and the error described above may occur. In this case, increase the SESSIONS parameter sufficiently.
  • BR0602E No valid SAP license found - please contact SAP
           If this error occurs when you carry out an import during an offline reorganization with BRSPACE, this may be connected to the drop of the license table MLICHECK after the export. The reason for this is that MLICHECK was not moved into a help tablespace in accordance with Note 646681 (14). Apart from an individual manual procedure for reconstructing MLICHECK, the only thing you can do in this case is to restore a backup.
  • ORA-00069: cannot acquire lock -- table locks disabled for <table>
    ORA-08116: can not acquire dml enough lock(S mode) for online index
               build
           See Note 737810.
  • ORA-00955: name is already used by an existing object
           If this error occurs when you are creating the target table (with the suffix "#$"), it is probably because a preceding reorganization was canceled without the target table being deleted. In this situation, perform a cleanup:

brspace -f tbreorg -t "*" -a cleanup
  • ORA-01452: cannot CREATE UNIQUE INDEX; duplicate keys found
           If ORA-01452 occurs when you create indexes after a BRSPACE offline reorganization, it is likely that the same data was imported several times. This may be the case if the first import experiences an error such as a tablespace overflow and if you then try to restart the import without taking further action (the BRSPACE import cannot be restarted). Instead, you should first drop all tables that have already been imported. Afterwards, the offline reorganization process can be restarted when the tables are created using ddl.sql .
  • BR1110W Table <owner>.<table> has a LONG column
    BR1113E All tables have been skipped for reorganization
           These messages are issued when you try to reorganize one or several tables with LONG or LONG RAW columns online with Oracle 9i or lower. Instead, reorganize these tables offline.
  • ORA-04098: trigger '<user>./BI0/05000...#$' is invalid and failed
               re-validation
           Triggers that follow the naming convention /BI0/05 are left over from BW compressions. Delete these triggers at Oracle level or on the basis of Notes 982120 (BW 7.00) and 1061807 (BW 3.x) and repeat the reorganization process.
  • ORA-01792: maximum number of columns in a table or view is 1000
           This error occurs on 10g due to Oracle bug 4421811, if you want to reorganize tables with more than 501 columns online. As a workaround, you can set event 10995 at BRSPACE session level. For more information, see Note 1290097.
  • ORA-14404: partitioned table contains partitions in a different tablespace
           If this error occurs during a DROP on a tablespace, even though this was meant to be blank due to the reorganization, partitions for tables from other tablespaces still exist in this tablespace. This situation should not occur under normal circumstances. If this situation does occur, you can use MOVE to move the partitions to the correct tablespace:

ALTER TABLE "<table_name>" MOVE PARTITION "<partition_name>"
TABLESPACE "<correct_tablespace_name>";
           See Notes 666061 and 722188 and be aware that the MOVE command sets enqueues and that global indexes will become unusable (therefore, a rebuild is required).
  • ORA-00600 [kdlm_merge_lobs:1]
           This error may occur with Oracle 10.2.0. 4 and below if you reorganize a table with LOB columns online in parallel. See Note 1292525 and, if possible, do not use the parallelism.
  • Error due to HIDDEN/UNUSED columns
           See Note 1129347, which describes how to handle problems in relation to HIDDEN columns or UNUSED columns (for example, ORA-00947).
  • Incorrect results or ORA-12096/ORA-00942 errors with RAC
           To avoid incorrect results or ORA-12096/ORA-00942 errors during online reorganizations in the RAC environment, you must take into account Note 1336810.
    17. Is it possible that performance deteriorates after an online reorganization?
              For various reasons, performance may deteriorate after an online reorganization (for example, target segments in a slower disk area, changed CBO decisions due to new CBO statistics).
              The deterioration in performance may also be caused by the use of Oracle Parallel Data Manipulation Language (DML) due to which the sequence of the data records may be mixed. This has negative effects on the clustering factors of indexes. If you use Oracle Parallel Execution (BRSPACE parameter "-e <degree>"), you can deactivate Parallel DML if required by using the additional BRSPACE parameter "-SPM". As a result, the system uses only the more harmless parallel processing variants Parallel Query and Parallel DDL.
    18. Where can I find further information about reorganization?
              Note 646681 contains information about reorganizing objects with BRSPACE.
              Note 741478 contains information about how materialized views can be used in online reorganizations and what problems can occur when you do this.

              Also refer to the relevant SAP online documentation.


Header Data

Released On 12.03.2012 10:22:19
Release Status Released for Customer
Component BC-DB-ORA-DBA Database Administration with Oracle
Other Components
BC-DB-ORA Oracle
Priority Recommendations / Additional Info
Category FAQ

Validity
This document is not restricted to a software component or software component version
References
This document refers to:
SAP Notes
1016172   Sorting table records during reorganization
1080376   Enhancements for reorganization and rebuild
1129347   DBMS_METADATA.GET_DDL, HIDDEN/UNUSED columns and ORA-947
11369   ORA-1452 during import after export from other system
1290097   ORA-01792 while running online reorganization of the table
1292525   Ora-600 [Kdlm_merge_lobs:1] during table reorganization
1565421   Oracle 11g: dbms_redefinition may flush shared pool
214995   Oracle locally managed tablespaces in the SAP environment
23237   duplicate keys, duplicate rows, duplicate records
332677   Rebuilding fragmented indexes
354293   DBVerify reports corrupt block in freespace area
355771   Oracle: Explanation of the new tablespace layout
391   Archiver stuck
535675   EXP can produce dump file with corrupted data
619188   FAQ: Oracle wait events
620803   Oracle 9i: Automatic Segment Space Management
646681   Reorganizing tables with BRSPACE
647697   BRSPACE - New tool for Oracle database administration
659946   FAQ: Temporary tablespaces
666061   FAQ: Database objects, segments and extents
722188   FAQ: Oracle partitioning
737810   ora-00069/ora-08116 with DDL operation for table or index
741478   FAQ: Materialized views
771191   Copying BW objects to new tablespaces
778784   Inconsistencies between data class and database container
787533   Bad performance/ system lockup due to enqueue waits
793113   FAQ: Oracle I/O configuration
806554   FAQ: I/O-intensive database operations
821687   FAQ: Space utilization and fragmentation in Oracle
832343   FAQ: Clustering factor
84348   Oracle deadlocks, ORA-00060
85558   Tables with data sorted by index
875477   Avoiding long runtimes with BEGIN BACKUP
910389   FAQ: Oracle Segment Shrinking

647697 - BRSPACE - New tool for Oracle database administration

Symptom
BR*Tools Version 6.40 contains a new tool for managing Oracle databases in the SAP environment: BRSPACE.
BRSPACE replaces the remaining SAPDBA functions that were not previously performed by BR*Tools (see notes 403704 and 602497).
The main functions of BRSPACE are as follows:

* Instance management
  -------------------
  - Start up database
  - Shut down database
  - Alter database instance
  - Alter database parameters
  - Show instance status
  - Show database parameters

* Space management
  ----------------
  - Extend tablespace
  - Create tablespace
  - Drop tablespace
  - Alter tablespace
  - Alter data file
  - Move data file
  - Show tablespaces
  - Show data files
  - Show redolog files
  - Show control files
  - Show disk volumes

* Segment management
  ------------------
  - Reorganize tables (online)
  - Rebuild indexes (online)
  - Export tables
  - Import tables
  - Alter tables
  - Alter indexes
  - Show tables
  - Show indexes
  - Show table partitions
  - Show index partitions
  - Show segments
  - Show segment extents
  - Show free extents

You can use the following call to access the new BRSPACE functions:
brgui/brtools -> Instance management
              -> Space management
              -> Segment management

Caution 1:
----------
To restrict the number of user interactions, you can use the "-c" option ("brtools -c") to start BRTOOLS. The BR*Tools will then only ever stop after a menu is displayed.

BRSPACE can only be called with the ora<dbsid> user on UNIX or the <dbsid>adm user on Windows. BRSPACE then connects to the database with SYSDBA authorization. Since this authorization is derived from the dba group to which this user belongs, you do not usually have to specify the database user and password ("-u" option) when you call BRSPACE.

For detailed information on BRSPACE, refer to the excerpt from the Web AS 6.40 online documentation that is available in SAP SDN:

https://www.sdn.sap.com/irj/sdn/ora  -> BRSPACE

We also recommend that you attend the new Oracle database administration course ADM505, where the new BR*Tools 6.40 are described in detail.

For more information on BRGUI (graphical user interface for BR*Tools), see Note 611493.
BRGUI is the recommended user interface for BR*Tools 6.40.
The BRTOOLS character-user interface is a fallback solution.

SAPDBA is no longer delivered for Web AS 6.40. You can still use SAPDBA 6.20 (linked to Oracle 9.2) with Web AS 6.40. However, we recommend that you only use BR*Tools.

You can use BR*Tools 6.40 for all SAP releases, provided that the database is based on Oracle 9.2.

Backups that were made with BRBACKUP/BRARCHIVE 6.40 can only be restored with BRRESTORE/BRRECOVER 6.40.
You cannot use BRRESTORE/BRRECOVER 6.40 to restore backups of older BRBACKUP/BRARCHIVE versions.

BRRECOVER is able to execute the recovery procedure even after structural changes to the database. This means that it is no longer necessary to start a database backup immediately after such structure changes. Regular database backups are sufficient.

SAP/CCMS transaction DB14, which allows you to display entire BRSPACE logs, is enhanced as of the following Support Packages:

SAP Basis Release 4.6B: SAPKB46B55
SAP Basis Release 4.6C: SAPKB46C46
SAP Basis Release 4.6D: SAPKB46D35
SAP Basis Release 6.10: SAPKB61038
SAP Basis Release 6.20: SAPKB62031

You can find more information in Note 668640.

Caution 2:
----------
When using locally managed tablespaces (LMTS) and automatic segment space management (ASSM), it is essential that you read notes: 214995, 662900 and 620803.

Other Terms
BR*Tools, BRSPACE

Reason and Prerequisites
This is an advance development.

Solution
BR*Tools 6.40 is released for use on production systems as of patch level 6. Do not continue to use earlier patches.
Download the most recent BR*Tools patch from the SAP Service Marketplace. The precise procedure is described in Notes 12741 and 19466.


Header Data

Released On 09.08.2007 13:47:49
Release Status Released for Customer
Component BC-DB-ORA-DBA Database Administration with Oracle
Priority Recommendations / Additional Info
Category Advance development

Validity
This document is not restricted to a software component or software component version
References
This document refers to:
SAP Notes
214995   Oracle locally managed tablespaces in the SAP environment
403704   BRCONNECT - Enhanced function for Oracle DBA
541538   FAQ: Reorganization
601157   Oracle9i: Server Parameter File
602497   BRRECOVER - New tool for Oracle Restore and Recovery
611493   BrGui: Graphical user interface for BR*Tools
620803   Oracle 9i: Automatic Segment Space Management
646681   Reorganizing tables with BRSPACE
651812   FAQ: BR*TOOLS and SAPDBA
662900   Using LMTS in R/3 releases 3.1I-4.6B
668640   Corrections in DB transactions for Oracle (1)
680046   Corrections in BR*Tools Version 6.40
686546   New values for option "-d" of BRSPACE function "-f tbreorg"
806554   FAQ: I/O-intensive database operations

806554 - FAQ: I/O-intensive database operations

Symptom
    1. What does the term "I/O-intensive database operations" refer to in this note?
    2. What problems can occur as a result of these database operations?
    3. How can I minimize the effects of these operations?
    4. When do I actually need to use I/O-intensive database operations?
    5. Which online options are available?
    6. Which aspects do I have to bear in mind to optimize performance?
    7. How can I best execute I/O-intensive database operations with Oracle tools?
    8. How can I best execute I/O-intensive database operations with SAP tools?

Other Terms
FAQ

Reason and Prerequisites
    1. What does the term "I/O-intensive database operations" refer to in this note?
              The term refers to the following tasks, which are necessary during the database administration or the structuring of the system, and which affect large data volumes:
  • Creating indexes
  • Rebuilding indexes
  • Coalescing indexes
  • Generating statistics
  • Structure validation of objects
  • Determination of index fragmentation
  • Reorganization of tables
  • System copy / Unicode conversion with R3LOAD
  • Media recovery
  • Client deletion
  • Table conversion
  • Incremental conversion
              The term does not refer to database-intensive transactions that are executed by the application in the production system.
    2. What problems can occur as a result of these database operations?
              Various problems can occur that affect the production operation directly:
  • The operations may place locks on important objects so that a production operation that runs in parallel is now only possible with restrictions.
  • The processing of large datasets can use up large amounts of system resources so that a production operation is now only possible with restrictions.
  • Certain objects may be temporarily inaccessible.
  • Due to long runtimes, the operation may not be completed within the planned downtime.
    3. How can I minimize the effects of these operations?
              To minimize the extent, runtime and effects of I/O-intensive database operations, consider the following questions:
  • Do I actually need the database operation in question?
  • Can I execute the operation online without locks?
  • Can I speed up the operation by setting parameters or using parallel processing?
              These questions are answered below.
    4. When do I actually need to use I/O-intensive database operations?
              Before you think about optimizing an I/O-intensive operation, you should ask yourself if the operation is required. Take into account the following information:
  • Creating indexes
           It makes sense to create an index if the application requires a new index (see Note 766349 for more information). It is a good idea to delete and recreate an index if the index structure has changed (for example, if a column was added) or if you want to clean up a corrupt index or adjust storage parameters such as INITRANS. In other cases, it may be better to rebuild or coalesce the index.
  • Coalescing indexes
           It is a good idea to coalesce an index if an index has become fragmented (see Note 771929) and the fragmentation impairs database performance.
  • Rebuilding indexes
           Rebuilding an index is another way of eliminating index fragmentation. Unlike coalescing, the index is completely rebuilt, which leads to more extensive defragmentation. In addition, you can use a rebuild to move an index to another tablespace or to reduce the space requirements of an index.
           Note 771929 describes in detail the differences between rebuilding and coalescing indexes.
  • Generating statistics
           Statistics are generated by BRCONNECT by default. New statistics are generated if the number of table entries has changed by more than 50% since the last time statistics were generated. New statistics must also be generated manually if new objects (tables, indexes, columns) were created. For more information, see Note 588668.
  • Structure validation of objects
           An object validation using VALIDATE STRUCTURE is the most comprehensive consistency check. Possible alternatives with a lesser degree of accuracy are DBVerify and Export. Refer to Note 540463 for further details.
  • Determination of index fragmentation
           As described in Note 771929, check whether fragmented indexes can also be determined with methods that do not cause any high system load (BRCONNECT messages, index size, index blocks in the buffer pool, buffer gets/execution).
  • Reorganization of tables
           Note 541538 describes the circumstances under which a reorganization can be useful.
  • System copy / Unicode conversion with R3LOAD
           System copies are necessary when you want to change the hardware platform or database, or when you want to rebuild or update a system of the system group based on an existing system. Frequently, you have to use R3LOAD to perform the system copy since other mechanisms such as R3COPY or EXP/IMP are not supported.
           A Unicode conversion is a specific instance of a system copy to convert the system to Unicode.
  • Media recovery
           Notes 605062 and 491160 describe the situations in which a recovery may be required.
  • Client deletion
           It is a good idea to delete a client if it is no longer in use and you want to release the space that the client uses in the database and possibly use it for other purposes.
  • Table conversion
           A table conversion is required if (for example, as part of a transport or an upgrade) changes must be made to the table structure (for example, adding additional columns or changing the column types).
  • Incremental conversion
           The incremental conversion (Transaction ICNV) is used to convert large online tables within the framework of SAP upgrades. For example, this is a good idea if a large cluster table is to be converted into a transparent table.
    5. Which online options are available?
              Coalescing an index is always executed without locks.
              As of Oracle 8i, you can rebuild indexes online. However, note that temporary locks are still set so the online function is restricted (refer to Note 682926, point 2).
              As of Oracle 9i, you can create indexes, reorganize tables without LONG and LONG RAW fields, and validate structures online. You can use ICNV (Note 541538) to restructure tables with LONG and LONG RAW fields during production operation.
    6. Which aspects do I have to bear in mind to optimize performance?
              To avoid unnecessarily long runtimes, bear in mind the following points before you execute critical I/O-intensive operations:
  • Oracle parameter DB_FILE_MULTIBLOCK_READ_COUNT
           This parameter specifies how many blocks the hard disk reads at once during a full table scan or a fast full scan of an index. The higher you set the parameter, the better these operations perform (up to the operating system limit). The Oracle default for this parameter is 32, lower values may be used in the SAP environment (see Note 124361). However, to optimize performance, you can set much higher values - such as 128 - for I/O-intensive operations.
           Caution: The parameter value affects the cost calculation of CBOs (see Note 750631). Therefore, you must ensure that the parameter is only adjusted for the I/O-intensive database operation. You can set the parameter for individual sessions by using:

ALTER SESSION SET DB_FILE_MULTIBLOCK_READ_COUNT = <new_value>
          
  • Oracle parameters SORT_AREA_SIZE / PGA_AGGREGATE_TARGET
           With parameter SORT_AREA_SIZE (traditional PGA) or parameter PGA_AGGREGATE_TARGET (dynamic PGA), you can define the size of sorting areas in the memory (see Notes 619876 and 789011). The larger the sorting area, the faster operations - such as building the index, GROUP BY or ORDER BY - are processed. You can also use ALTER SESSION to adjust these parameters dynamically.
  • Oracle parameters DB_CACHE_SIZE / DB_BLOCK_BUFFERS
           Under certain circumstances, enlarging the Oracle buffer pool can significantly improve the performance of the I/O-intensive operation. Enough free physical memory must be available to be able to do this. For more information, see Note 789011.
           Sometimes, a big buffer pool can have a negative effect on performance. For Oracle Release 10.2.03 or lower see Note 1028099.
  • Other Oracle parameters
           Make sure not to set any Oracle parameters deviating from the SAP Standard, which could cause an additional load to the system. For example, you should not set DB_BLOCK_CHECKING to TRUE, in order to avoid unnecessary block checks.
           It may also be useful to set the parameter DB_BLOCK_CHECKSUM to FALSE in the critical time period.
  • NOLOGGING option
           You can use the NOLOGGING option to prevent redo log information from being created at certain points (for example, when the index is constructed). The advantage of this is a significant improvement in performance. The disadvantage is that a recovery of the operation is not possible (see Note 547464, for example).
  • Redo log configuration
           To avoid unnecessary checkpoint load and to reduce bottlenecks to the online redo logs, you should optimize the redo log layout. See Note 793113 for information, and make sure that no more than one log switch per minute occurs and that sufficient redo logs are available.
  • NOARCHIVELOG option
           If the system is not used live in parallel to the I/O-intensive operation, and if you can avoid recovering the operation in the case of an error, the ARCHIVELOG mode of the database can be temporarily deactivated so that no Offline Redo logs are written. However, after the ARCHIVELOG mode is reactivated, a consistent backup must be made immediately so that, if a problem occurs, there is a backup to the restore/recovery.
  • Parallel Query
           Many database operations such as the building of an index or full table scans can be executed in parallel at database level. Note 651060 describes the prerequisites and provides other details. Parallel Query is only useful if sufficient system resources (especially CPU resources) are available. In general, the number of CPU resources should be more than twice the level of parallel processing. Under certain circumstances, Parallel Query may cause performance to deteriorate (for example, if insufficient CPU resources are available or if the Parallel Query processes generate hot spots at hard-disk level). In order to optimize the parallel query performance, you must set PARALLEL_MAX_SERVERS to a sufficiently high value (that is, at least to the required number of parallel query slaves) and set PARALLEL_EXECUTION_MESSAGE_SIZE to at least 16384.
  • Parallel processing on the client
           Many client tools such as BRSPACE, BRCONNECT and R3LOAD provide their own parallel processing options, which can reduce the overall runtime significantly. The following also applies here: There must be sufficient resources to allow a parallel execution.
    7. How can I best execute I/O-intensive database operations with Oracle tools?
              All operations profit to a greater or lesser extent from an increased DB_FILE_MULTIBLOCK_READ_COUNT and an increased sorting area. Therefore, you should increase the relevant parameters for the operations as described above.
  • Creating indexes

    CREATE INDEX <index_name> ... [ONLINE] [PARALLEL <degree>]
      [NOLOGGING]
           Choose ONLINE to create the index ONLINE without locks on tables.
           Choose PARALLEL to activate Parallel Query with a < degree> level of parallel processing.
           Choose NOLOGGING if you do not want redo log information to be generated.
           The individual options are independent of each other and can be used as required.
           See also Note 334224.
  • Rebuilding indexes

    ALTER INDEX <index_name> ... REBUILD [ONLINE] [PARALLEL <degree>]
      [NOLOGGING]
           Choose ONLINE to rebuild indexes without locks on tables. However, bear in mind the restrictions described in Note 682926 (2).
           Choose PARALLEL to activate Parallel Query with a < degree> level of parallel processing.
           Choose NOLOGGING if you do not want redo log information to be generated.
           The individual options are independent of each other and can be used as required.
  • Coalescing indexes

    ALTER INDEX <index_name> COALESCE [PARALLEL <degree>];
           Choose PARALLEL to activate Parallel Query with a < degree> level of parallel processing.
  • Generating statistics

    ANALYZE TABLE ... STATISTICS ...
    DBMS_STATS.GATHER_TABLE_STATS(... [, degree => <degree>]);
           The generation of statistics by means of ANALYZE TABLE cannot be processed in parallel internally. If you use DBMS_STATS, you can specify a level of parallel processing with "degree => <degree>". For more detailed information on generating statistics with ANALYZE TABLE and DBMS_STATS, see Note 588668.
           Also refer to Notes 632336, 684545, 711047 and 906139 for information on optimizing DBMS_STATS runtimes on Oracle 9i.
  • Structure validation of objects

    ANALYZE TABLE <table_name> VALIDATE STRUCTURE CASCADE [ONLINE];
           Choose ONLINE to perform the validation ONLINE without locks on tables.
           For Oracle 10g, you should also refer to Note 1022097.
  • Determination of index fragmentation

    ANALYZE INDEX <index> VALIDATE STRUCTURE;
           You cannot use the ONLINE option since significant analysis results are no longer determined with this option (see Note 444287).
  • Reorganization of tables
           You can use EXP and IMP to reorganize tables at Oracle level offline, or you can use DBMS_REDEFINITION to reorganize tables at Oracle level online. As of Oracle 10g, Data Pump is also available for offline reorganization (see Note 1013049). However, we recommend that you use the BRSPACE tool, which calls the Oracle functions.
  • Media recovery

    RECOVER DATABASE ... [PARALLEL <degree>]
           You can use the PARALLEL option to divide the recovery among <degree> processes.
           After each recovered archive log, a checkpoint must be performed. Therefore, checkpoint tuning measures (such as increasing the number of DBWR processes or using larger redo logs) can also help.
  • Client deletion
           Note 857973 contains expert options for speeding up the deletion of a client on Oracle level.
  • Table conversion
           You can avoid long-running table conversions when adding columns if a default value is not required and if the application tolerates NULL values (which is not always the case).
  • Incremental conversion
           If a table is converted without CBO statistics, generating statistics can improve performance in certain cases, since the related use of CBO also enables access paths such as fast full scans of indexes.
    8. How can I best execute I/O-intensive database operations with SAP tools?
              Bear in mind the following: To improve performance, you should set parameters DB_FILE_MULTIBLOCK_READ_COUNT and PGA_AGGREGATE_TARGET or SORT_AREA_SIZE as described above.
              To perform I/O-intensive administration tasks, we recommend that you use the BRSPACE (see Note 647697) and BRCONNECT (see Note 403704) tools.
  • Creating indexes
           Indexes are created in the R/3 environment by default with transaction SE11 or SE14 in the context of transports. These mechanisms do not support any of the methods for optimizing performance described in this note. Therefore, if necessary, you must use other tools to create indexes (Note 334224).
  • Rebuilding indexes
           You can use BRSPACE to rebuild indexes as follows:

brspace -f idreorg -i <indexes> [-p <degree>] [-e <degree>]
           You can use the "-p" option to activate parallel processing on the client - BRSPACE can then rebuild multiple indexes at the same time.
           You can use the "-e" option to activate Parallel Query.
  • Coalescing indexes
           BRSPACE provides the following command for coalescing indexes:

brspace -f idalter -a coalesce
           Parallel processing is not supported by BRSPACE.
  • Generating statistics
           You can use the following BRCONNECT commands to generate statistics for one table or all tables:

brconnect -f stats -t <table> [-p <degree>] [-g <degree>]
brconnect -f stats -t all [-p <degree>] [-g <degree>]
           You can use the "-p" option to activate parallel processing on the client (see Note 403713).
           You can use the "-g" option to activate Oracle parallel execution for DBMS_STATS. See also Note 424239.
           When using DBMS_STATS you can switch from Row Sampling to Block Sampling in order to reduce the number of block accesses needed (see Note 424239).
           Do not set the BRCONNECT parameter STATS_CHANGE_THRESHOLD lower than necessary. Otherwise, statistics are created again for an unnecessary number of tables.
           With Oracle 9i and lower, you can activate table monitoring (see Notes 408527, 628590) to shorten the time-intensive check phase of generating statistics. As of Oracle 10g, this feature is active by default.
           Refer also to the other notes listed above for optimizing DBMS_STATS performance on Oracle.
  • Structure validation of objects
           You can use the following BRCONNECT commands to validate the structure of one table or all tables (including their indexes):

brconnect -f stats -t <table> -v [-p <degree>]
brconnect -f stats -t all -v [-p <degree>]
           You can use the " -p" option to activate parallel processing on the client - BRCONNECT can then process several tables at the same time.
           As of Oracle 9i, the operation is automatically executed online.
  • Determination of index fragmentation

    brconnect -f stats -t <index> -v index_store [-p <degree>]
           You can use the " -p" option to activate parallel processing on the client - BRSPACE can then process several indexes at the same time.
           Caution: The operation always locks the relevant table, since the necessary statistical information can only be determined when the table is locked (see Note 444287).
  • Reorganization of tables
           You can use the following BRSPACE command to reorganize tables online:

brspace -f tbreorg -t <tables> [-p <degree>] [-e <degree>]
           You can use the "-p" option to activate parallel processing on the client - BRSPACE can then reorganize several tables at the same time.
           You can use the "-e" option to activate Parallel Query.
           You can execute an offline reorganization (which is necessary for tables with LONG and LONG RAW fields and with Oracle 8.1.7 or lower) as follows:

brspace -f tbexport -t <tables>
brspace -f tbimport -t <tables> [-m no]
           When you specify "-m no", commits are suppressed during the import, and this can lead to significant improvements in performance. However, you should note that PSAPROLL or PSAPUNDO must be larger than the largest table to be imported.
           You can execute an offline reorganization on the basis of Data Pump as of Oracle 10g and BRSPACE 7.00 (17) as follows: You can parallelize the export phase and the import phase by specifying "-p <degree>".
           Refer to Note 646681 for more information about reorganization with BRSPACE.
  • System copy / Unicode conversion with R3LOAD
           For the parallel processing of R3LOAD on the client, refer to the information on system copy in the relevant guides.
           In addition, you can activate Parallel Query to parallel process full table scans that are executed during an export:

ALTER TABLE <table> PARALLEL <degree>;
           To ensure that the system does not use an index access instead of a more suitable full table scan, you should set parameter OPTIMIZER_INDEX_COST_ADJ to 100.
           As of R3load 6. 40, you have the option of using a direct path import, which avoids the Oracle buffer pool and therefore performs better. For more information, see Note 1045847.
           See also Note 936441, which contains extensive information on tuning R3LOAD activities on Oracle.
           For information about how to considerably reduce the time required by R3szchk to calculate the storage requirement, see Note 1047369.
           You can split larger tables using Notes 1043380 and 952514.
           Note 954268 describes how performance gains can be made using unsorted unloading.
           For information about the Unicode conversion, see also Note 857081.
  • Media recovery

    brrecover ... [-e <degree>]
           When you specify the " -e <degree> " option, a parallel recovery is carried out with <degree> as the level of parallel processing.
  • Client deletion
           See Note 365304. The option for parallel processing the client deletion on SAP is described in Note 541311.
  • Table conversion
           Note 1287382 describes how you can convert tables in the BW environment.
           In addition, parallel and unlocked conversions are also often possible on the basis of BRSPACE online reorganizations. However, this requires additional manual actions and can lead to unwanted results if the procedure is performed incorrectly.
  • Incremental conversion
           The incremental conversion with ICNV uses a cursor internally, which uses the entries of the source table for the loop. Every entry is transferred accordingly and then deleted from the source table. This approach is optimal.
           However, to avoid ORA-01555 errors, the cursor is closed after an hour and then reopened. As a result, all cleared areas of the table (or the index used) have to be read again before the first data record that still exists is found. In the case of very large tables, it may take more than an hour to scan all blocks that have already been cleared, which has a very negative effect on the overall performance. To solve this problem, manually modify the timeout. To do this, adjust the following row of report RADIV050:

IF RUN_TIME > max_table_time.
           Max_table_time (Default: 3600) can be replaced with a different number of seconds until the timeout occurs. Since max_table_time is also used in other reports, you should not adjust the value of the constants. Instead, you should replace this constant with the corresponding numeric constant. Therefore, the following entry would be for a timeout of one day:

IF RUN_TIME > 86400.
           Since RADIV050 is a template, you cannot use the Modification Assistant to carry out the change.
           After you adjust the value, you must stop and restart the data transfer in ICNV in order to activate the new setting.


Header Data

Released On 11.01.2012 21:50:03
Release Status Released for Customer
Component BC-DB-ORA Oracle
Other Components
SV-BO Backoffice Service Delivery
Priority Recommendations / Additional Info
Category FAQ

Validity
This document is not restricted to a software component or software component version
References
This document refers to:
SAP Notes
1013049   FAQ: Oracle Data Pump
1022097   Analyze table validate structure cascade online is slow
1028099   Long import runtimes for large db_cache_size
1043380   Efficient Table Splitting for Oracle Databases
1045847   ORACLE DIRECT PATH LOAD SUPPORT IN R3LOAD
1047369   Faster DB accesses for R3szchk using Oracle DBSL
124361   Oracle parameterization (R/3 >= 4.x, Oracle 8.x/9.x)
1287382   Extending BW objects on Oracle with large tables
1319517   Unicode Collection Note
334224   Important notes for creating indexes
365304   CC-ADMIN: Reports for deleting tables
403704   BRCONNECT - Enhanced function for Oracle DBA
408527   Checking the statistics using DBA_TAB_MODIFICATIONS
424239   New BRCONNECT parameter: stats_dbms_stats
444287   Checking the index storage quality
491160   Restore scenarios for lost files of oracle databases
541311   CC-INFO: Parallel processes FAQ
541538   FAQ: Reorganization
547464   Nologging Option when creating indexes
548016   Conversion to Unicode
588668   FAQ: Database statistics
592393   FAQ: Oracle
605062   FAQ: Restore and recovery
618868   FAQ: Oracle performance
619188   FAQ: Oracle wait events
619876   Oracle9i: Automatic PGA Memory Management
628590   Activating table monitoring using "-f monit" option
632336   Long runtimes when compiling statistics on Oracle 9.2.0.x
646681   Reorganizing tables with BRSPACE
647697   BRSPACE - New tool for Oracle database administration
651060   FAQ: Oracle Parallel Execution
682926   Composite SAP note: Problems with "create/rebuild index"
684545   Statistics generation: DBMS_STATS runs longer than ANALYZE
711047   Performance problem on DBMS_STATS in 9.2
750631   Approximations for cost calculation of the CBO
766349   FAQ: Oracle SQL optimization
771929   FAQ: Index fragmentation
789011   FAQ: Oracle memory areas
793113   FAQ: Oracle I/O configuration
842240   FAQ: Backup strategy of large and highly-available databases
85558   Tables with data sorted by index
857081   Unicode conversion: downtime estimate
857973   Deleting clients efficiently using Oracle
906139   Histogram creation takes longer with 9.2 than with 8.1.7
912620   FAQ: Oracle indexes
936441   Oracle settings for R3load based system copy
952514   Using the table splitting feature
954268   Optimization of export: Unsorted unloading