IP Library Granted Patent US 11,609,914
Granted Patent B2
US 11,609,914 · App. 17/176,707 · Granted Mar 21, 2023

Policy-based storage structure distribution

Inventors: Jean-Noel Moyne (Palo Alto, CA); Suresh Subramani (Palo Alto, CA); Tom M. Kim (Palo Alto, CA); Firat Kart (Palo Alto, CA)
Assignee: Cloud Software Group, Inc.
G06F16/24554G06F16/1824G06F16/27
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,609,914
App. No.
17/176,707
Granted
Mar 21, 2023
Kind
B2
Abstract

Policy-based storage and retrieval combined with a distribution algorithm results in automatic and even distribution of policy-based storage structures across a set of nodes and dynamic, automated homing or ownership of policy-based storage structures. Large numbers of policy-based storage structures may be distributed without manual administration, allowing for rapid creation and destruction of storage structures. The overall load may be distributed and balanced across the server pool. Multiple entries having the same key value in a database- or table-like structure allow for distribution of policy-based storage and retrieval by key value and for queue semantics to be utilized for microqueues in the large database- or table-like structure.

Claims (20)

1. A method for distributing policy-based data structures over a system of one or more servers installed on one or more computing devices, the method comprising:

determining at least one policy-based data structure from a space, the determining comprising:

identifying at least one data entry in the space;

determining a key value of the at least one data entry;

mapping the at least one policy-based data structure to one of a node, node cluster, server, and server cluster in the system of one or more servers, the mapping comprising using a distribution algorithm considering the key value;

using a consistent hashing algorithm to map nodes in the system of one or more servers to a scale; and

using the consistent hashing algorithm to map the at least one policy-based data structure to the scale.

2. The method of claim 1 , wherein the mapping the at least one policy-based data structure comprises distributing at least one microqueue over the system of one or more servers.

3. The method of claim 1 , wherein the mapping comprises using a consistent hashing algorithm.

4. The method of claim 1 , wherein the mapping comprises:

determining whether the at least one policy-based data structure is assigned to a node in the system of one or more servers;

in response to determining the at least one policy-based data structure is not assigned to a node in the system of one or more servers, assigning the at least one policy-based data structure to a closest node in the system of one or more servers, the closest node being the node mapped closest to the policy-based data structure on the scale.

5. The method of claim 1 , wherein the using a consistent hashing algorithm to map nodes in the system of one or more servers creates a distributed fault-tolerant system of one or more servers.

6. The method of claim 1 , wherein the using a consistent hashing algorithm to map nodes in the system of one or more servers to a scale results in a substantially even distribution of nodes.

7. The method of claim 1 , wherein the using a consistent hashing algorithm to map nodes in the system of one or more servers to a scale results in a substantially uneven distribution of nodes.

8. The method of claim 1 , wherein the determining at least one policy-based data structure in the space comprises determining a plurality of policy-based data structures by grouping data entries in the space based on each data entry's key value, and wherein the mapping the plurality of policy-based data structures comprises:

using a consistent hashing algorithm to map nodes in the system of one or more servers to a scale;

using the consistent hashing algorithm to map the plurality of policy-based data structures to the scale, wherein each of the plurality of policy-based data structures comprises a grouping of data entries having a same key value, and wherein the mapping the plurality of policy-based data structures to the scale comprises mapping the key values of each of the plurality of policy-based data structures to the scale; and

assigning the plurality of policy-based data structures to the mapped nodes by assigning each of the policy-based data structures to a node mapped closest to it on the scale.

9. The method of claim 1 , wherein the mapping the at least one policy-based data structure results in a substantially even distribution of policy-based data structures over a set of nodes or servers.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
CHANGE OF NAME Recorded Feb 7, 2023
From: TIBCO SOFTWARE INC.
To: CLOUD SOFTWARE GROUP, INC.
Reel/Frame 062714/0634 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2021
From: MOYNE, JEAN-NOEL; SUBRAMANI, SURESH; KIM, TOM M; KART, FIRAT
To: TIBCO SOFTWARE INC.
Reel/Frame 055294/0368 →
Continuity (4)
Division 14951469 · Nov 24, 2015
Continuation In Part 12762249 · Apr 16, 2010
Provisional Application 61170079 · Apr 16, 2009
Related Publication 20210165795A1 · Jun 3, 2021