Hosted application gateway architecture with multi-level security policy and rule promulgations
First Claim
1. A system, comprising:
- a processor;
a non-transitory computer-readable medium; and
stored instructions translatable by the processor for;
storing a first data structure representing a first split of a relationship in a first database shard, wherein the first data structure references a second database item in a second database shard and references a first database item in the first database shard, the first database item having a first object identifier encoded with the shard identifier of the first database shard; and
storing a second data structure representing a second split of the relationship in a second database shard, wherein the second data structure references the first database item in the first database shard and references the second database item in the second database shard, the second database item having a second object identifier encoded with the shard identifier of the second database shard, the second object identifier generated by the second database shard independently of the first object identifier generated by the first database shard;
wherein the second database item in the second database shard is accessible by a sharding manager using the first data structure that references the first database item in the first database shard, the sharding manager residing in a gateway server node or is in communication with the gateway server node.
4 Assignments
0 Petitions
Accused Products
Abstract
A hosted application gateway server node may be communicatively coupled to backend systems, client devices, and database shards associated with database servers. Through the gateway server node, various services may be provided to managed containers running on client devices such that enterprise applications can be centrally managed. A sharding manager may manage relationships of database items across database shards. Each shard stores a copy of a table representing a split of a relationship. A shard ID mask is included in each item'"'"'s ID. At query time, the shard ID can be extracted and used to query the correct database. This query routing mechanism allows navigation from one shard to another when multiple items are in a relationship (e.g., share the same resource such as a document). As such, embodiments can eliminate the need for APIs to join in data that span multiple shards.
373 Citations
20 Claims
-
1. A system, comprising:
-
a processor; a non-transitory computer-readable medium; and stored instructions translatable by the processor for; storing a first data structure representing a first split of a relationship in a first database shard, wherein the first data structure references a second database item in a second database shard and references a first database item in the first database shard, the first database item having a first object identifier encoded with the shard identifier of the first database shard; and storing a second data structure representing a second split of the relationship in a second database shard, wherein the second data structure references the first database item in the first database shard and references the second database item in the second database shard, the second database item having a second object identifier encoded with the shard identifier of the second database shard, the second object identifier generated by the second database shard independently of the first object identifier generated by the first database shard; wherein the second database item in the second database shard is accessible by a sharding manager using the first data structure that references the first database item in the first database shard, the sharding manager residing in a gateway server node or is in communication with the gateway server node. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method, comprising:
-
storing, by a computer having a sharding manager, a first data structure representing a first split of a relationship in a first database shard, wherein the first data structure references a second database item in a second database shard and references a first database item in the first database shard, the first database item having a first object identifier encoded with the shard identifier of the first database shard; and storing, by the computer, a second data structure representing a second split of the relationship in a second database shard, wherein the second data structure references the first database item in the first database shard and references the second database item in the second database shard, the second database item having a second object identifier encoded with the shard identifier of the second database shard, the second object identifier generated by the second database shard independently of the first object identifier generated by the first database shard; wherein the second database item in the second database shard is accessible by the sharding manager using the first data structure that references the first database item in the first database shard. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer program product having a non-transitory computer-readable medium storing instructions translatable by a processor for:
-
storing a first data structure representing a first split of a relationship in a first database shard, wherein the first data structure references a second database item in a second database shard and references a first database item in the first database shard, the first database item having a first object identifier encoded with the shard identifier of the first database shard; and storing a second data structure representing a second split of the relationship in a second database shard, wherein the second data structure references the first database item in the first database shard and references the second database item in the second database shard, the second database item having a second object identifier encoded with the shard identifier of the second database shard, the second object identifier generated by the second database shard independently of the first object identifier generated by the first database shard; wherein the second database item in the second database shard is accessible by a sharding manager using the first data structure that references the first database item in the first database shard, the sharding manager residing in a gateway server node or is in communication with the gateway server node. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification