Dynamic database schema allocation on tenant onboarding for a multi-tenant identity cloud service
AssigneeOracle International Corporation
InventorsRajesh Purushothaman, Elangovan Subramanian
Life of this patent
Estimating the term…
Abstract
Embodiments are directed to a multi-tenant cloud system that provisions new customer accounts. Embodiments include a dedicated database schema and a shared database schemas. Embodiments provision a new customer account by determining whether the new customer account is a first type of account or a second type of account. When the new customer account is the first type of account, embodiments allocate the new customer account to the one of the shared database schemas. When the new customer account is the second type of account, embodiments allocate the new customer account to a dedicated schema.
Claims20
A multi-tenant cloud system for a plurality of customer accounts, the system comprising:
- a dedicated database schema comprising a first tablespace and a plurality of first schema objects stored logically within the first tablespace;
- shared database schemas, each shared database schema comprising a second tablespace and a plurality of second schema objects stored logically within the second tablespace;
- one or more processers configured to provision a new customer account, the provisioning comprising:
- determining whether the new customer account is a first type of account or a second type of account;
- when the new customer account is the first type of account comprising a non-paying trial account, allocating the new customer account to a first shared database schema of the shared database schemas comprising allocating a stripe in the first shared database schema for the new customer account, wherein a plurality of new customer accounts of the first type of account share the first database schema, wherein the first shared database schema is selected because it is allocated to a lesser number of tenants compared to any other of the shared database schemas;
- when the new customer account is the second type of account comprising a paying account, allocating the new customer account to the dedicated database schema, wherein the new customer account of the second type of account is the only customer account allocated to the dedicated database schema;
- and
- determining that the new customer account is the first type of account and allocating the stripe in the first shared database schema for the new customer account, the allocating comprising determining, via a database schema map, a first shared schema having a value in a status field of available, creating a new row for the first shared schema, and changing the value in the status field of the new row to in use, and when the trial account ends, changing the value in the status field to stale.
A method of provisioning a new customer account for a multi-tenant cloud system comprising a dedicated database schema comprising a first tablespace and a plurality of first schema objects stored logically within the first tablespace and shared database schemas, each shared database schema comprising a second tablespace and a plurality of second schema objects stored logically within the second tablespace, the method comprising:
- determining whether the new customer account is a first type of account or a second type of account;
- when the new customer account is the first type of account comprising a non-paying trial account, allocating the new customer account to a first shared database schema of the shared database schemas comprising allocating a stripe in the first shared database schema for the new customer account, wherein a plurality of new customer accounts of the first type of account share the first database schema, wherein the first shared database schema is selected because it is allocated to a lesser number of tenants compared to any other of the shared database schemas;
- when the new customer account is the second type of account comprising a paying account, allocating the new customer account to the dedicated database schema, wherein the new customer account of the second type of account is the only customer account allocated to the dedicated database schema;
- and
- determining that the new customer account is the first type of account and allocating the stripe in the first shared database schema for the new customer account, the allocating comprising determining, via a database schema map, a first shared schema having a value in a status field of available, creating a new row for the first shared schema, and changing the value in the status field of the new row to in use, and when the trial account ends, changing the value in the status field to stale.
A non-transitory computer-readable medium having instructions stored thereon, when executed by a processor, cause the processor to provision a new customer account for a multi-tenant cloud system comprising a dedicated database schema comprising a first tablespace and a plurality of first schema objects stored logically within the first tablespace and shared database schemas, each shared database schema comprising a second tablespace and a plurality of second schema objects stored logically within the second tablespace, the provisioning comprising:
- determining whether the new customer account is a first type of account or a second type of account;
- when the new customer account is the first type of account comprising a non-paying trial account, allocating the new customer account to a first shared database schema of the shared database schemas comprising allocating a stripe in the first shared database schema for the new customer account, wherein a plurality of new customer accounts of the first type of account share the first database schema, wherein the first shared database schema is selected because it is allocated to a lesser number of tenants compared to any other of the shared database schemas;
- when the new customer account is the second type of account comprising a paying account, allocating the new customer account to the dedicated database schema, wherein the new customer account of the second type of account is the only customer account allocated to the dedicated database schema;
- and
- determining that the new customer account is the first type of account and allocating the stripe in the first shared database schema for the new customer account, the allocating comprising determining, via a database schema map, a first shared schema having a value in a status field of available, creating a new row for the first shared schema, and changing the value in the status field of the new row to in use, and when the trial account ends, changing the value in the status field to stale.
Dependencies are inferred from the claim text.