The Exadata Machine is frequently used to consolidate the database infrastructure, and such kind of environments must guarantee performance stability and governance. On Exadata the IO Resource Manager extends the capabilities available also on the other platforms to allocate, cap and prioritize the resources among databases and categories.
Available since the the first version of the Storage Cell software, IORM has been recently enhanced to cope with the new Multitenant and Cloud requirements. The IORM Plan can optimize the workload with one of the following objectives: basic, auto, low_latency, balanced or high_throughput.
I/O Resource Manager Overview
IORM allows to execute I/O Requests based on their priority, this is achieved handling separated queues which manage High and Low priority requests as shown on the image below.
Default IORM status
Automatically enabled it cannot be completely disabled. The default mode, protects critical operations like flash cache and flash log I/Os
CellCLI> list iormplan detail name: tvdceladm06_IORMPLAN catPlan: dbPlan: objective: basic status: active CellCLI>
Per Database IORM definition
This configuration is suitable on environments with a small number of databases, where the I/O resources are individually defined for each database.
alter iormplan objective=auto ALTER IORMPLAN - dbplan=((name=ERP01, level=1, allocation=75, limit=95, role=primary), - (name=ERP01, level=1, allocation=5, limit=25, role=standby), - (name=TREP, level=1, allocation=2, limit=5, flashCacheSize=1G), - (name=EPA01, level=2, allocation=40, limit=80), - (name=DHJ01, level=3, allocation=50, flashCacheSize=20G), - (name=other, level=3, allocation=30))
The above plan regulates: the database level, allocation (%), soft and hard limits (%), the amount of flash cache and the role (primary or standby).
DBaaS and IORM
This configuration is suitable for Cloud like environments, where a large number of databases are consolidated on the same infrastructure. The database services are standardized in few categories (for example Gold, Silver and Bronze) and the I/O resource plan regulates the same service categories.
CellCLI> ALTER IORMPLAN dbplan=((name=gold, share=20,limit=100, type=profile), (name=silver, share=10, limit=60, type=profile), (name=bronze, share=5, limit=20, type=profile))
SQL> alter system set db_performance_profile=silver scope=spfile;