Selective Data Persistence in Software Containers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The instantiation and destruction of software containers for securing computing systems consume significant resources and result in data loss, impacting performance and usability.
Innovation Solution
Implementing selective persistence technologies that allow certain data to be preserved across container sessions or destruction, while deleting malicious data, by defining a configuration policy for data stores to attach and detach data accordingly.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If container instantiation and destruction is performed frequently to maintain security isolation, then security is improved, but computing resource consumption increases and performance deteriorates
Solution Approach 1:
The patent segments data into two categories: persistable data (user data, preferences, cookies) and non-persistable data (temporary files, cache). By selectively persisting only the necessary user data while allowing temporary data to be cleared, the system maintains security isolation benefits without requiring complete container destruction, thus reducing resource consumption and improving performance.
Solution Approach 2:
The patent applies different quality characteristics to different parts of the container data. User data is given persistent quality to survive container destruction, while temporary data is given non-persistent quality. This local differentiation allows the system to maintain security through selective data preservation rather than complete container recreation, reducing the performance impact.
2Reliability
If container destruction is performed after use to maintain security isolation, then security is improved, but user data is lost and usability deteriorates
Solution Approach 1:
The patent segments container data into persistable user data and non-persistable temporary data. By preserving user data (favorites, browsing history, cookies, preferences) across container destruction while clearing temporary data, the system maintains security isolation benefits while preserving usability, so users don't lose their personalization and preferences.
Solution Approach 2:
The patent discards only the temporary, non-essential data while recovering and preserving the essential user data. This selective discarding approach allows the container to be destroyed for security purposes while the user's personalization and preferences are recovered in subsequent container instances, maintaining usability.
3Loss of information
If complete container recreation is performed to restore user data, then data availability is improved, but computing resource consumption increases
Solution Approach 1:
The patent segments data into user data that should be preserved and temporary data that can be discarded. By extracting and preserving only the essential user data (preferences, cookies, history) while allowing temporary data to be cleared, the system avoids the need for complete container recreation, significantly reducing computing resource consumption while maintaining data availability for user personalization.
Solution Approach 2:
The patent creates a persistent copy of user data that survives container destruction. Instead of recreating the entire container, the system copies and preserves the essential user data components, allowing subsequent container instances to restore user preferences and settings without the overhead of complete container instantiation.
Data Source
AI summary
Technologies are described for selective persistence of data utilized by software containers. A configuration policy is defined that includes data that specifies one or more data stores for which data is not to be persisted following accesses to a software container and one or more data stores for which data is to be persisted following accesses to the software container. When the software container is first accessed, the data stores identified in the configuration policy are attached to the software container. Upon a subsequent access to the container, such as at the conclusion of a user session or upon destruction of the container, the data in the attached data stores is persisted or deleted based upon the configuration policy. When the software container is once again accessed, the data store containing the persisted data can be re-attached to the software container.


