Just-in-time User Materialization in Database Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The creation of new software environments in cloud computing environments is time-intensive and costly due to the need to copy and materialize large numbers of user accounts from existing environments, even though many users never log in, leading to high resource and storage costs.

Innovation Solution

Implementing a method where only a small, bounded set of users are initially materialized, with deferred materialization of remaining users until they attempt to log in, using filters for efficient login request routing and asynchronous batch processing to reduce resource impact.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all user accounts are materialized during software environment creation, then user access is ensured, but environment creation time and resource costs increase significantly

Engineering Contradiction:
Improveuser accessVSAvoidenvironment creation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by creating a filter representation of user accounts during environment creation, rather than materializing all user accounts. This preliminary filter structure enables fast lookup and deferred materialization only when needed, resolving the contradiction between ensuring user access and reducing creation time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The user account management is segmented into two parts: a lightweight filter structure created during environment setup, and the actual user account data that is materialized on-demand. This segmentation allows the system to separate the time-critical environment creation from the less time-sensitive user account materialization, reducing overall creation time while maintaining access reliability.

Inventive Principle:
Principle #1Segmentation

2Reliability

If all user accounts are materialized during software environment creation, then complete user data is available, but resource and storage costs increase

Engineering Contradiction:
Improveuser data availabilityVSAvoidresource cost
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

Instead of materializing all user accounts (excessive action), the system materializes only the necessary user data on-demand when users attempt to access the environment. This partial action approach ensures data availability for actual users while avoiding the resource cost of materializing potentially millions of unused user accounts during environment creation.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system implements self-service by automatically materializing user accounts when they first attempt to log in, without requiring manual administrator intervention. This on-demand self-service approach ensures user data availability while minimizing resource consumption by only materializing accounts that are actually needed.

Inventive Principle:
Principle #25Self-service

3Loss of energy

If user accounts are materialized on-demand, then resource usage is optimized, but login process complexity increases

Engineering Contradiction:
Improveresource usageVSAvoidlogin process complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The filter structure serves as an intermediary between the user login request and the actual user account data. When a user attempts to log in, the filter is first queried to determine if the user exists and should be materialized. This intermediary layer simplifies the login process by providing a fast first-stage lookup before any complex materialization operations are needed.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The filter structure is created in advance during environment setup, performing a preliminary organization of user account information. This preliminary action enables fast filtering and lookup operations during login, reducing the complexity of on-demand materialization by first identifying which users need to be materialized before attempting the actual materialization process.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20240232259A1Just-in-time materialization of cloned users in computing environments within a database system
Publication Date: 2024.07.11 SALESFORCE INC
  • US20240232259A1 patent drawing
  • US20240232259A1 patent drawing
  • US20240232259A1 patent drawing

AI summary

Users may be authorized to access a second software environment with a second limited set of authorized users. The second software environment may include at a first point in time prior to the user access a subset of a first software environment that includes at the first point in time a first set of authorized users that was a superset of the second limited set. A determination may be made as to whether a first user has potentially been a member of the first set of authorized users. The determination may be made via a global filtering process with at least one first hash value associated with a login attempt by the first user whether. Account information associated with the first user and at least the first software environment may be sent to the second software environment