暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Performance Hints When Using the ORACLE_LOADER Access Driver

原创 闓馨 2022-08-12
380

This topic describes some performance hints when using the ORACLE_LOADER access driver.

When you monitor performance, the most important measurement is the elapsed time for a load. Other important measurements are CPU usage, memory usage, and I/O rates.

You can alter performance by increasing or decreasing the degree of parallelism. The degree of parallelism indicates the number of access drivers that can be started to process the data files. The degree of parallelism enables you to choose on a scale between slower load with little resource usage and faster load with all resources utilized. The access driver cannot automatically tune itself, because it cannot determine how many resources you want to dedicate to the access driver.

An additional consideration is that the access drivers use large I/O buffers for better performance (you can use the READSIZE clause in the access parameters to specify the size of the buffers). On databases with shared servers, all memory used by the access drivers comes out of the system global area (SGA). For this reason, you should be careful when using external tables on shared servers.

Performance can also sometimes be increased with use of date cache functionality. By using the date cache to specify the number of unique dates anticipated during the load, you can reduce the number of date conversions done when many duplicate date or timestamp values are present in the input data. The date cache functionality provided by external tables is identical to the date cache functionality provided by SQL*Loader. See DATE_CACHE for a detailed description.

In addition to changing the degree of parallelism and using the date cache to improve performance, consider the following information:

Fixed-length records are processed faster than records terminated by a string.

Fixed-length fields are processed faster than delimited fields.

Single-byte character sets are the fastest to process.

Fixed-width character sets are faster to process than varying-width character sets.

Byte-length semantics for varying-width character sets are faster to process than character-length semantics.

Single-character delimiters for record terminators and field delimiters are faster to process than multicharacter delimiters.

Having the character set in the data file match the character set of the database is faster than a character set conversion.

Having data types in the data file match the data types in the database is faster than data type conversion.

Not writing rejected rows to a reject file is faster because of the reduced overhead.

Condition clauses (including WHEN, NULLIF, and DEFAULTIF) slow down processing.

The access driver takes advantage of multithreading to streamline the work as much as possible.

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论