Self-learning database issue remediation tool
US-11379442-B2 · Jul 5, 2022 · US
US12038816B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12038816-B2 |
| Application number | US-202217934932-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 23, 2022 |
| Priority date | Sep 24, 2021 |
| Publication date | Jul 16, 2024 |
| Grant date | Jul 16, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Methods, systems, apparatuses, and computer program products are described. A system, such as a multi-tenant database system, may store tenant-specific observability data for multiple tenants of the system. The system may detect an inefficiency related to a performance metric for a tenant of the multiple tenants based on a subset of the data associated with the tenant and corresponding to a threshold time window. In some examples, the system may analyze the subset of the data for the threshold time window to determine an insight indicating a cause of the inefficiency. The system may determine a suggested action for the tenant based on the insight indicating the cause of the inefficiency, and the system may send, for display at a user interface of a user device, an indication of the insight and the suggested action, the user device operated by a user associated with the tenant.
Opening claim text (preview).
What is claimed is: 1. A method for determining insights related to performance at a multi-tenant database system, comprising: storing tenant-specific observability data for a plurality of tenants of the multi-tenant database system; detecting an inefficiency corresponding to a performance metric for a tenant of the plurality of tenants based at least in part on a subset of the tenant-specific observability data associated with the tenant and corresponding to a threshold time window; analyzing the subset of the tenant-specific observability data for the threshold time window to determine an insight indicating a cause of the inefficiency; determining a suggested action for the tenant based at least in part on the insight indicating the cause of the inefficiency; sending, for display at a user interface of a user device, an indication of the insight and the suggested action, the user device operated by a user associated with the tenant; and performing the suggested action, wherein performing the suggested action comprises at least one of: disabling an integration, an application, an extension, or a combination thereof for the tenant, modifying a bulk data load procedure for the tenant, modifying one or more operators in code associated with the tenant, rolling back an update to the code associated with the tenant, updating a database schema for the tenant at the multi-tenant database system, or updating a batch size for a batch processing job for the tenant. 2. The method of claim 1 , further comprising: receiving, via the user interface of the user device, a user input indicating a selection of the suggested action, wherein the suggested action is performed for the tenant in response to the user input. 3. The method of claim 1 , wherein performing the suggested action comprises: automatically performing the suggested action for the tenant based at least in part on determining the suggested action. 4. The method of claim 1 , further comprising: receiving, via the user interface of the user device, a user input indicating the threshold time window for detection, wherein the subset of the tenant-specific observability data is based at least in part on the user input indicating the threshold time window. 5. The method of claim 1 , further comprising: storing, with the tenant-specific observability data, a plurality of identifiers, wherein a data point of the tenant-specific observability data is associated with an identifier of the plurality of identifiers indicating a respective tenant of the plurality of tenants, and the tenant-specific observability data corresponds to a plurality of layers of the multi-tenant database system; and determining the subset of the tenant-specific observability data based at least in part on the plurality of identifiers, wherein each data point of the subset of the tenant-specific observability data is associated with a first identifier indicating the tenant of the plurality of tenants. 6. The method of claim 1 , further comprising: receiving, via the user interface of the user device, a user input defining the code for the tenant; and tagging the code with an indication of the tenant, wherein analyzing the subset of the tenant-specific observability data for the threshold time window further comprises analyzing the code tagged with the indication of the tenant. 7. The method of claim 1 , wherein the tenant-specific observability data comprises a set of data logs for the tenant, a set of data transactions for the tenant, a set of user requests performed by users of the tenant, a set of distributed traces for the tenant, profiling data for the tenant, a first set of performance metrics associated with bulk data loading for the tenant, a second set of performance metrics associated with bulk data transfer for the tenant, or a combination thereof. 8. The method of claim 1 , wherein the inefficiency corresponding to the performance metric comprises a processing time exceeding a threshold processing time, a quantity of processing resources exceeding a threshold quantity of processing resources, a quantity of memory resources exceeding a threshold quantity of memory resources, a quantity of errors exceeding a threshold quantity of errors, or a combination thereof. 9. The method of claim 1 , wherein the insight indicating the cause of the inefficiency indicates that a query is executed at a first frequency greater than a first threshold frequency, the query consumes a quantity of resources greater than a threshold quantity of resources, the query makes a quantity of calls to the multi-tenant database system exceeding a threshold quantity of calls, a page is loaded at a second frequency greater than a second threshold frequency, first code related to a custom component for the tenant comprises one or more first inefficient portions, second code related to a process flow for the tenant comprises one or more second inefficient portions, one or more variable values used for a portion of the code cause the inefficiency, one or more detected anomalies cause the inefficiency, or a combination thereof. 10. The method of claim 1 , further comprising: aggregating a plurality of insights corresponding to at least two tenants of the plurality of tenants; and updating the multi-tenant database system for the plurality of tenants based at least in part on the aggregated plurality of insights. 11. An apparatus for determining insights related to performance at a multi-tenant database system, comprising: a processor; memory coupled with the processor; and instructions stored in the memory and executable by the processor to cause the apparatus to: store tenant-specific observability data for a plurality of tenants of the multi-tenant database system; detect an inefficiency corresponding to a performance metric for a tenant of the plurality of tenants based at least in part on a subset of the tenant-specific observability data associated with the tenant and corresponding to a threshold time window; analyze the subset of the tenant-specific observability data for the threshold time window to determine an insight indicating a cause of the inefficiency; determine a suggested action for the tenant based at least in part on the insight indicating the cause of the inefficiency; send, for display at a user interface of a user device, an indication of the insight and the suggested action, the user device operated by a user associated with the tenant; and perform the suggested action, wherein, to perform the suggested action, the instructions are executable by the processor to cause the apparatus to: disable an integration, an application, an extension, or a combination thereof for the tenant, modify a bulk data load procedure for the tenant, modify one or more operators in code associated with the tenant, roll back an update to the code associated with the tenant, update a database schema for the tenant at the multi-tenant database system, or update a batch size for a batch processing job for the tenant. 12. The apparatus of claim 11 , wherein the instructions are further executable by the processor to cause the apparatus to: receive, via the user interface of the user device, a user input indicating a selection of the suggested action, wherein, to perform the suggested action, the instructions are executable by the processor to cause the apparatus to: perform the suggested action for the tenant in response to the user input. 13. The apparatus of claim 11 , wherein, to perform the suggested action, the instructions are executable by the processor to cause the apparatus to: automatically perform the suggest
Root cause analysis, i.e. error or fault diagnosis (in a hardware test environment G06F11/22; in a software test environment G06F11/36) · CPC title
by exceeding limits · CPC title
Remedial or corrective actions (recovery from an exception in an instruction pipeline G06F9/3861; by retry G06F11/1402; for recovering from a failure of a protocol instance or entity H04L69/40) · CPC title
in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems · CPC title
Readable error formats, e.g. cross-platform generic formats, human understandable formats · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.