Tiered middleware framework for data storage
First Claim
Patent Images
1. A computer-implemented method, comprising:
- under control of one or more computing systems configured with executable instructions,receiving an arrangement of modular components for a tiered middleware framework that transacts blob data between an application layer that includes at least one application and a data storage layer that includes at least one data store, the arrangement being developed based at least in part on one or more data usage attributes of the at least one application and at least in part on one or more specifications of the at least one data store in the data storage layer;
testing the tiered middleware framework via transfer of blob data between the application layer and the data storage layer to obtain at least one of a quantitative measurement or a qualitative measurement;
implementing the tiered middleware framework for transacting blob data between the application layer and the data storage when the at least one of the quantitative measurement or qualitative measurement indicates that the arrangement of the modular components meets or exceeds data transaction criteria; and
receiving a rearrangement of the modular components for the tiered middleware framework for additional testing when the at least one of the quantitative measurement or qualitative measurement indicates that the arrangement of the modular components does not meet the data transaction criteria, the rearrangement being optimized based at least in part on tradeoffs between desired objectives for at least two of latency, availability, durability, operation cost, or throughput of each data transaction within the tiered middleware framework.
1 Assignment
0 Petitions
Accused Products
Abstract
A tiered middleware framework for transacting data between an application layer and a data storage layer includes modular components. The tiered middleware framework is implemented when the arrangement of the modular components enables the tiered middleware framework to meet or exceed certain data transaction criteria. However, when the data transaction criteria are not met by the tiered middleware framework with arrangement of the modular components, the modular components in the tiered middleware framework is rearranged.
-
Citations
21 Claims
-
1. A computer-implemented method, comprising:
under control of one or more computing systems configured with executable instructions, receiving an arrangement of modular components for a tiered middleware framework that transacts blob data between an application layer that includes at least one application and a data storage layer that includes at least one data store, the arrangement being developed based at least in part on one or more data usage attributes of the at least one application and at least in part on one or more specifications of the at least one data store in the data storage layer; testing the tiered middleware framework via transfer of blob data between the application layer and the data storage layer to obtain at least one of a quantitative measurement or a qualitative measurement; implementing the tiered middleware framework for transacting blob data between the application layer and the data storage when the at least one of the quantitative measurement or qualitative measurement indicates that the arrangement of the modular components meets or exceeds data transaction criteria; and receiving a rearrangement of the modular components for the tiered middleware framework for additional testing when the at least one of the quantitative measurement or qualitative measurement indicates that the arrangement of the modular components does not meet the data transaction criteria, the rearrangement being optimized based at least in part on tradeoffs between desired objectives for at least two of latency, availability, durability, operation cost, or throughput of each data transaction within the tiered middleware framework. - View Dependent Claims (2, 3, 4)
-
5. A computer-implemented method, comprising:
under control of one or more computing systems configured with executable instructions, receiving an arrangement of modular components for a tiered middleware framework that transacts blob data between an application layer and a data storage layer; implementing the tiered middleware framework for transacting the blob data between the application layer and the data storage when the arrangement of the modular components meets or exceeds data transaction criteria; and receiving a rearrangement of the modular components for the tiered middleware framework when the arrangement of the modular components does not meet the data transaction criteria. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14)
-
15. A server, comprising:
-
a processor; and memory storing modular components of a tiered middleware storage layer that are executable by the processor to transact blob data between an application layer and a blob data storage layer, the modular components comprising; an application interface component to receive data transactions from the application layer, each of the data transaction to update, insert, or delete one or more data blobs in at least one blob data store of the data storage layer; a data store adapter component to communicate the data transactions to the at least one blob data store of the data storage layer; a plurality of components that are integrated between the application interface component and the data store adapter component to perform the data transactions on the at least one blob data store, the plurality of components including at least one of; a transitionally consistent indexer component to provide a transactional index that at least tracks one or more non-primary key property fields of each data blob in the at least one data store; a multi-blob consistency component to enable the data storage layer to insert, update, or delete a plurality of data blobs from the at least one blob data store in an atomic manner via a master blob; a blob transaction component to facilitate a data transaction across a plurality of blobs that are stored in different blob data stores in an optimistically consistent manner via a record blob;
ora sub-containment concurrency component to ensure optimistic concurrency for the data transactions performed on a plurality of data blobs that are stored in the at least one blob data store of the data storage layer via a sub-containment hierarchical structure. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification