DIRECT-CONNECT FUNCTIONALITY IN A DISTRIBUTED DATABASE GRID
First Claim
1. A method comprising:
- storing a database as a plurality of database shards in a distributed database grid comprising a plurality of grid elements;
wherein at least a subset of the plurality of grid elements each comprise a mid-tier database system;
wherein the data set is distributed in accordance with a distribution scheme;
receiving, by a first grid element of the plurality of grid elements, from an application executing in the same memory as a mid-tier database system of the first grid element, a first database transaction comprising at least one database operation on specific data stored in a first database shard that belongs to the first grid element;
performing, by the first grid element, the first database transaction in direct mode;
wherein the first database transaction is committed by the first grid element without participation of another grid element of the plurality of grid elements;
receiving, by the first grid element, a second database transaction, wherein the second database transaction requires access to another database shard that does not belong to the first grid element;
performing, by multiple grid elements of the plurality of grid elements, the second database transaction;
committing the second database transaction using a two-phase commit protocol;
wherein the method is performed by one or more computing devices.
1 Assignment
0 Petitions
Accused Products
Abstract
A database is stored as a plurality of database shards in a distributed database grid comprising a plurality of grid elements, each including a mid-tier database system. A first grid element receives, from an application executing in the same memory as a mid-tier database system of the first grid element, a first database transaction including at least one database operation on specific data stored in a first database shard that belongs to the first grid element. The first grid element performs and commits the first database transaction without participation of another grid element of the plurality of grid elements. The first grid element receives a second database transaction that requires access to another database shard that does not belong to the first grid element. Multiple grid elements of the plurality of grid elements perform the second database transaction and commit the second database transaction using a two-phase commit protocol.
-
Citations
20 Claims
-
1. A method comprising:
-
storing a database as a plurality of database shards in a distributed database grid comprising a plurality of grid elements; wherein at least a subset of the plurality of grid elements each comprise a mid-tier database system; wherein the data set is distributed in accordance with a distribution scheme; receiving, by a first grid element of the plurality of grid elements, from an application executing in the same memory as a mid-tier database system of the first grid element, a first database transaction comprising at least one database operation on specific data stored in a first database shard that belongs to the first grid element; performing, by the first grid element, the first database transaction in direct mode; wherein the first database transaction is committed by the first grid element without participation of another grid element of the plurality of grid elements; receiving, by the first grid element, a second database transaction, wherein the second database transaction requires access to another database shard that does not belong to the first grid element; performing, by multiple grid elements of the plurality of grid elements, the second database transaction; committing the second database transaction using a two-phase commit protocol; wherein the method is performed by one or more computing devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory computer-readable medium storing instructions which, when executed by one or more processors, cause performance of:
-
storing a database as a plurality of database shards in a distributed database grid comprising a plurality of grid elements; wherein at least a subset of the plurality of grid elements each comprise a mid-tier database system; wherein the data set is distributed in accordance with a distribution scheme; receiving, by a first grid element of the plurality of grid elements, from an application executing in the same memory as a mid-tier database system of the first grid element, a first database transaction comprising at least one database operation on specific data stored in a first database shard that belongs to the first grid element; performing, by the first grid element, the first database transaction in direct mode; wherein the first database transaction is committed by the first grid element without participation of another grid element of the plurality of grid elements; receiving, by the first grid element, a second database transaction, wherein the second database transaction requires access to another database shard that does not belong to the first grid element; performing, by multiple grid elements of the plurality of grid elements, the second database transaction; committing the second database transaction using a two-phase commit protocol. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A system comprising:
-
a plurality of grid elements, each comprising at least one processor and a memory; wherein each particular grid element of at least a subset of the plurality of grid elements comprises a mid-tier database system and a database shard; wherein data is distributed across each database shard of the plurality of grid elements in accordance with a distribution scheme; wherein said each particular grid element is configured to; receive a first database transaction from an application executing in the same memory as the mid-tier database system of the particular grid element, wherein the first database transaction comprises at least one database operation on specific data stored in the database shard of the particular grid element; commit the first database transaction without participation of another grid element of the plurality of grid elements; and receive a second database transaction, wherein the second database transaction requires access to other database shards; wherein the plurality of grid elements is configured to; perform the second database transaction; and commit the second database transaction using a two-phase commit protocol. - View Dependent Claims (20)
-
Specification