Database Bundle Schema Objects for Modular Code Sharing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Database systems lack modularity, making it difficult for developers to define and deploy schema objects as atomic units, and they also hinder code sharing and distribution without compromising control over the code.
Innovation Solution
The introduction of bundles, which are schema objects with associated hidden schemas, allows for the creation and sharing of code modules while maintaining control. Bundles can be used for code modularity and encapsulation, enabling secure sharing and distribution without requiring developers to copy code.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If database systems store more data to support data-driven applications, then the system's data capacity and functionality improve, but the system's modularity and ease of deployment deteriorate
Solution Approach 1:
The patent divides database objects into modular schema objects that can be packaged into deployable units. These schema objects represent segmented functional components that can be independently managed, deployed, and upgraded, resolving the contradiction between data capacity and modularity by organizing the growing data system into manageable modular units.
Solution Approach 2:
The patent introduces versioning parameters for schema objects, allowing different versions of the same object to coexist. This parameter change enables atomic deployment and rollback capabilities, transforming the deployment process from monolithic to granular, thereby improving modularity while maintaining data capacity.
2Ease of operation
If developers share code modules by copying and pasting code, then code distribution becomes possible, but control over the code is lost and security is compromised
Solution Approach 1:
The patent introduces schema objects as intermediary entities that mediate between code creation and code sharing. These schema objects act as controlled containers that allow developers to share code functionality while maintaining centralized control through the database system's permission and versioning mechanisms, eliminating the need for direct code copying.
Solution Approach 2:
Instead of copying actual code, the patent enables copying of schema object references or metadata. This allows developers to share and reuse code functionality through controlled references to schema objects, maintaining security and control while achieving the ease of code distribution.
3Stability of the object's composition
If database systems lack modularity to maintain system integrity, then system stability is preserved, but atomic deployment and upgrading of code modules become impossible
Solution Approach 1:
The patent segments the database system into discrete schema objects that can be independently deployed. This segmentation allows atomic deployment where individual schema objects or groups can be upgraded without affecting the entire system, improving deployment efficiency while maintaining system integrity through controlled transaction management.
Solution Approach 2:
The patent implements version control and dependency management as preliminary actions before deployment. Schema objects are prepared with version metadata and dependency declarations in advance, allowing the system to verify integrity constraints before execution, thus enabling atomic deployments without compromising system stability.
Data Source
AI summary
Techniques for creating, sharing, and using bundles (also referred to as packages) in a multi-tenant database are described herein. A bundle is a schema object with associated hidden schemas. A bundle can be created by a provider user and can be shared with a plurality of consumer users. The bundle can be used to enable code sharing and distribution without losing control while maintaining security protocols.


