About Elastic Pools

Elastic pools allow you to logically group a large number of Autonomous AI Database instances, in terms of their allocation of compute resource and simplify their administration. Elastic pools help you improve operating efficiency and reduce costs by bringing all of your databases to the Cloud.

An elastic pool is a logical entity where you can consolidate your Autonomous AI Database instances in terms of their compute allocation. You can think of it as a “family plan” for your Autonomous AI Databases. Instead of paying individually for each one of them, they are grouped into a logical pool in which you are charged for the compute usage of the entire pool.

Note

Elastic pools are only available for Autonomous AI Database instances that use the ECPU compute model.

Topics

Benefits of Elastic Pools

Elastic pools offer the following advantages:

  • Operate within a fixed budget across a group of databases while delivering performance elasticity for each individual database.

  • Migrate easily from on-premises Oracle environments that use oversubscription, to provide a cost-effective pathway to the Autonomous AI Database.

  • Support SaaS vendors managing a large number of individual customer databases.

  • Facilitate the use of microservices architecture when numerous databases are required.

  • Pool members in an elastic pool are not billed individually. Instead, billing is applied to the pool leader based on the pool shape. This approach enables you to allocate additional ECPUs per instance to pool members without concern for the ECPU usage costs of individual members.

  • In Autonomous AI Database, I/O capacity and memory allocation are directly correlated with the ECPU count. By assigning a greater number of ECPUs to an instance, you can benefit from increased I/O capacity and more memory without incurring additional resource charges. Since the cost is determined by the pool shape rather than the ECPU count of each instance, you can take advantage of higher I/O capacity and memory per instance within the same pricing structure.

Elastic Pool Terms

There are several terms to use when you work with elastic pools:
  • Pool Leader: Is the Autonomous AI Database instance that creates an elastic pool.

  • Pool Member: Is an Autonomous AI Database instance that is added to an elastic pool.

  • Pool Size: Is a value that you set when you create an elastic pool. The pool size must be one of the available elastic pool shapes.

  • Pool Capacity: Is the maximum number of ECPUs that an elastic pool can use, and is four times (x4) the pool size.

  • Pool Shape: Is one of the valid pool sizes that you select when you create an elastic pool. The pool shape must be one of: 128, 256, 512, 1024, 2048, or 4096 ECPUs.

Starting and stopping pool members does not depend on the state of the leader. That is, you can independently stop and start each instance that is part of an elastic pool, including the leader and members of the elastic pool that are not the leader.

Elastic Pool Variants

An elastic pool is a logical construct that imposes no physical constraints on its members. The pool leader and pool members do not need to reside on the same infrastructure. However, you can create an elastic pool with all pool members and the pool leader located in the same infrastructure. These are called Dedicated Elastic Pools, and they offer additional options, including custom scaling for compute and storage, enhanced database consolidation and governance, simplified billing, and improved control over patching. See About Dedicated Elastic Pools for more details.

If your organization uses Oracle Cloud Infrastructure (OCI) parent and child tenancy model as described in Organization Management Overview, you can achieve elastic pool cost savings by creating an elastic pool that spans both parent and child tenancies. In this configuration, the elastic pool leader is in the parent tenancy and the pool members are in child tenancies. See Elastic Pools Across Parent and Child Tenancies for more details.

Elastic Pool Requirements

To create an elastic pool and become a pool leader, an Autonomous AI Database instance must:

  • Use the ECPU compute model.

  • Have compute auto-scaling disabled.

  • Not be a member of an existing elastic pool.

  • Have a sufficient number of ECPUs available, below the tenancy limit, to accommodate the elastic pool's size.

  • Provisioning a pool leader is subject to service limits enforced at the tenancy level.

The maximum allowed individual ECPU count for an Autonomous AI Database instance that creates an elastic pool is four (4) times the pool size specified while creating the pool.

To join an elastic pool, an Autonomous AI Database instance must:

  • Use the ECPU compute model.

  • Have compute auto-scaling disabled.

  • Not be a member of an elastic pool.

  • Have an ECPU count below the available pool capacity.

  • Provisioning a pool member is subject to the available pool capacity.

Elastic Pool Billing

The grouping of resources and billing for an elastic pool consists of only compute resources, that is ECPU usage, and all compute usage is charged to the Autonomous AI Database instance that is the elastic pool leader. Any storage related resource allocation and billing for storage usage is charged separately to individual Autonomous AI Database instances, independent of whether the instance is in an elastic pool. Autonomous AI Database bills all compute usage for an elastic pool to the pool leader at the Transaction Processing compute usage rate, regardless of whether the elastic pool leader uses the Transaction Processing, Lakehouse, JSON, or APEX workload type. See Autonomous AI Database Serverless Billing for Elastic Pools and ECPU Compute Model Billing Information for more information.

However, in dedicated elastic pools, resource grouping and billing include both compute (ECPU usage) and storage resources. The total resource consumption is charged to the pool leader. See About Autonomous AI Database Dedicated Elastic Pool Billing for details.

An Autonomous Data Guard primary database can use a local or a cross-region standby that is part of an elastic pool, either as a leader or a member. Elastic pool billing varies depending on whether the pool leader or any member is associated with Autonomous Data Guard or not. See About Billing Autonomous AI Database Elastic Pools with Autonomous Data Guard for more information.

Pool Capacity and Minimum CPU Allocation

When an Autonomous AI Database instance is part of an elastic pool:
  • The minimum allowed individual ECPU allocation is 1 ECPU.
  • Increments of 1 ECPU are allowed for individual Autonomous AI Database instance ECPU allocation.

An elastic pool has a pool capacity of 4 times the pool size. For example, a pool with pool size of 128 ECPUs can hold up to 512 ECPUs for its leader and the members.

Note

In these examples Autonomous Data Guard is not enabled. See About Billing Autonomous AI Database Elastic Pools with Autonomous Data Guard for information on using elastic pools with Autonomous Data Guard.

The following are examples of Autonomous AI Database instances that could be in an elastic pool with a pool size of 128 and a pool capacity of 512:

  • Each of these are valid for pool members in an elastic pool with a pool size of 128:
    • 1 instance with 512 ECPUs, for a total of 512 ECPUs

    • 128 instances with 4 ECPUs, for a total of 512 ECPUs

    • 256 instances with 2 ECPUs, for a total of 512 ECPUs

    • 50 instances with 10 ECPUs and 3 instances with 4 ECPUs, for a total of 512 ECPUs

  • Similarly, each of the following are valid for pool members in an elastic pool with a pool size of 128:
    • 1 instance with 128 ECPUs, 2 instances with 64 ECPUs, 32 instances with 4 ECPUs, and 64 instances with 2 ECPUs, for a total of 512 ECPUs

    • 256 instances with 1 ECPU, 64 instances with 2 ECPUs, for a total of 384 ECPUs, which is less than the pool capacity of 512 ECPUs.

    • 100 instances with 4 ECPUs and 50 instances with 2 ECPUs, which is less than the pool capacity of 512 ECPUs.

These are examples, you can add pool members to a pool to match the number of instances and the number ECPUs per instance to meet your needs, based on the pool size you select.

Pool Leader and Member Licensing Options

In an elastic pool, the pool leader's licensing selections determine the license requirements for the entire pool. If you want to use BYOL for an elastic pool and set a BYOL License Limit, you must set the limit value on the pool leader's instance. The license selections for pool members, including any BYOL License Limit do not apply while an instance is a member of a pool. The license selections, including any BYOL License Limit, come into effect only if a pool member or the pool leader leaves the elastic pool. For example, if an elastic pool includes a member instance that uses Autonomous Data Guard with an 8 ECPU primary with the BYOL license type set, the primary and standby instance's licensing selection is set as follows:

  • When the primary is a pool member, the license type of the primary can be set but it is does not apply for the primary; the primary uses the license type of the elastic pool leader. The license type selection on the primary will apply when and if the primary leaves the elastic pool.

  • For a local standby, the standby instance is in the elastic pool. In this case, the local standby uses the same license type as the primary.

  • For a cross-region standby, the standby instance is either in the pool (as a pool member or as the pool leader), or is not in the elastic pool, as follows:

    • When a cross-region standby is not in the elastic pool, that is it is not either the pool leader or a pool member, then the cross-region standby license type can be set but it is does not apply; the standby uses the license type of the elastic pool leader. The license type selection on the standby will apply when and if the standby leaves the elastic pool.

    • When a cross-region standby is not in the elastic pool, that is it is not either the pool leader or a pool member, then the cross-region standby license type can be set but it is does not apply; the standby uses the license type of the elastic pool leader. The license type selection on the standby will apply when and if the standby leaves the elastic pool.

    • When a cross-region standby is not in the elastic pool, that is it is not either the pool leader or a pool member, then the cross-region standby license type can be set but it is does not apply; the standby uses the license type of the elastic pool leader. The license type selection on the standby will apply when and if the standby leaves the elastic pool.

Elastic Pool Maintenance Window Selection

By default, each instance in an elastic pool is automatically assigned a maintenance window. By selecting a pool shape that is 1024 ECPUs or greater, you have the option of assigning a custom 2-hour maintenance window during which the leader and all elastic pool members are patched together. To select a custom maintenance window for your elastic pool, file a Service Request at Oracle Cloud Support.

Elastic Pool Operations

When you create an elastic pool in Autonomous AI Database, your instance becomes the pool leader. Instances that you add to an existing pool become pool members. The operations you can perform depend on your role as a leader or member.

You can perform the following operations only as the pool leader:

Operation Description

Create an elastic pool

The Autonomous AI Database instance that creates an elastic pool is the pool leader. See Create an Elastic Pool for more information.

Remove an elastic pool member

An elastic pool leader can remove a member from the elastic pool. See As Pool Leader Remove Members from an Elastic Pool for more information.

Terminate an elastic pool

When an elastic pool has no pool members, the pool leader can terminate the elastic pool. See Terminate an Elastic Pool for more information.

Modify elastic pool size

An elastic pool leader can modify the pool size. See Change the Elastic Pool Shape for more information.

List pool members

A pool leader can list pool members.

See List Elastic Pool Members for more information.

Both pool members and the pool leader can perform these operations:

Operation Description

Add instance to elastic pool

An Autonomous AI Database instance can be added as a pool member as long as the instance is one of the supported workload types, the instance uses the ECPU compute model, and the instance is not a pool member of a different pool. The supported workload types are: Transaction Processing, Lakehouse, JSON Database, or APEX.

See Join an Existing Elastic Pool for more information.

Note

When the available compute capacity of the selected elastic pool is zero and you enter a value for ECPU count, you will receive a warning advising you to either scale up your elastic pool size or select a different elastic pool.

Remove an elastic pool member

An elastic pool member can remove themselves from the elastic pool.

See Remove Pool Members from an Elastic Pool for more information.

Note

Dedicated elastic pools support all the above-listed operations as both pool leaders and pool members. Additionally, you can also perform operations that are specific to dedicated elastic pools. See Dedicated Elastic Pool Operations for a list of those operations.