IP Library Granted Patent US 8,954,478
Granted Patent B2
US 8,954,478 · App. 13/853,011 · Granted Feb 10, 2015

Systems, methods, and media for managing RAM resources for in-memory NoSQL databases

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 8,954,478
App. No.
13/853,011
Granted
Feb 10, 2015
Kind
B2
Abstract

In some embodiments, systems for managing an in-memory NoSQL database are provided, the systems comprising a hardware processor that is configured to: receive a dataset; split the dataset into a plurality of parts of the dataset; and storing each of the plurality of parts of the dataset in a separate one of plurality of 32-bit software architecture in-memory NoSQL databases.

Claims (36)

1. A method for managing an in-memory NoSQL database comprising:

receiving a dataset;

splitting, by a hardware processor, the dataset into a plurality of parts of the dataset, wherein one of the plurality of parts of the dataset includes a plurality of partitions;

storing each of the plurality of parts of the dataset in a separate one of a plurality of 32-bit software architecture in-memory NoSQL databases;

storing data in the one of the plurality of parts of the dataset;

determining an amount of data stored in the one of the plurality of parts of the dataset;

determining whether the amount meets a threshold;

responsive to determining that the amount meets the threshold, determining whether the one of the plurality of parts of the dataset can be split into a plurality of sub-parts of the dataset, wherein each of the sub-parts of the dataset includes at least one of the plurality of partitions, and whether at least one of the plurality of sub-parts of the dataset can be stored in a 32-bit software architecture in-memory NoSQL database; and

responsive to determining that the one of the plurality of parts of the dataset can be split into a plurality of sub-parts of the dataset, wherein each of the sub-parts of the dataset includes at least one of the plurality of partitions, and that the at least one of the plurality of sub-parts of the dataset can be stored in a 32-bit software architecture in-memory NoSQL database, splitting the one of the plurality of parts of the dataset into a plurality of sub-parts of the dataset, wherein each of the sub-parts of the dataset includes at least one of the plurality of partitions, and storing the at least one of the plurality of sub-parts of the dataset in a 32-bit software architecture in-memory NoSQL database; and

responsive to determining that the one of the plurality of parts of the dataset cannot be split into a plurality of sub-parts of the dataset, wherein each of the sub-parts of the dataset includes at least one of the plurality of partitions, or that the at least one of the plurality of sub-parts of the dataset cannot be stored in a 32-bit software architecture in-memory NoSQL database, scaling the one of the plurality of parts of the dataset to a 64-bit software architecture in-memory NoSQL database.

2. The method of claim 1 , wherein the dataset is received from a 64 bit software architecture in-memory NoSQL database.

3. A system for managing an in-memory NoSQL database, comprising:

a hardware processor that is configured to:

receive a dataset;

split the dataset into a plurality of parts of the dataset, wherein one of the plurality of parts of the dataset includes a plurality of partitions;

store each of the plurality of parts of the dataset in a separate one of a plurality of 32-bit software architecture in-memory NoSQL databases;

store data in the one of the plurality of parts of the dataset;

determine an amount of data stored in the one of the plurality of parts of the dataset;

determine whether the amount meets a threshold;

responsive to determining that the amount meets the threshold, determine whether the one of the plurality of parts of the dataset can be split into a plurality of sub-parts of the dataset, wherein each of the sub-parts of the dataset includes at least one of the plurality of partitions, and whether at least one of the plurality of sub-parts of the dataset can be stored in a 32-bit software architecture in-memory NoSQL database; and

responsive to determining that the one of the plurality of parts of the dataset can be split into a plurality of sub-parts of the dataset, wherein each of the sub-parts of the dataset includes at least one of the plurality of partitions, and that the at least one of the plurality of sub-parts of the dataset can be stored in a 32-bit software architecture in-memory NoSQL database, split the one of the plurality of parts of the dataset into a plurality of sub-parts of the dataset, wherein each of the sub-parts of the dataset includes at least one of the plurality of partitions, and store the at least one of the plurality of sub-parts of the dataset in a 32-bit software architecture in-memory NoSQL database; and

wherein the hardware processor is further configured to:

responsive to determining that the one of the plurality of parts of the dataset cannot be split into a plurality of sub-parts of the dataset, wherein each of the sub-parts of the dataset includes at least one of the plurality of partitions, or that the at least one of the plurality of sub-parts of the dataset cannot be stored in a 32-bit software architecture in-memory NoSQL database, scale the one of the plurality of parts of the dataset to a 64-bit software architecture in-memory NoSQL database.

4. The system of claim 3 , wherein the dataset is received from a 64 bit software architecture in-memory NoSQL database.

5. A non-transitory computer-readable medium containing computer-executable instructions that, when executed by a processor, cause the processor to perform a method for managing an in-memory NoSQL database, the method comprising:

receiving a dataset;

splitting, by a hardware processor, the dataset into a plurality of parts of the dataset, wherein one of the plurality of parts of the dataset includes a plurality of partitions;

storing each of the plurality of parts of the dataset in a separate one of a plurality of 32-bit software architecture in-memory NoSQL databases;

storing data in the one of the plurality of parts of the dataset;

determining an amount of data stored in the one of the plurality of parts of the dataset;

determining whether the amount meets a threshold;

responsive to determining that the amount meets the threshold, determining whether the one of the plurality of parts of the dataset can be split into a plurality of sub-parts of the dataset, wherein each of the sub-parts of the dataset includes at least one of the plurality of partitions, and whether at least one of the plurality of sub-parts of the dataset can be stored in a 32-bit software architecture in-memory NoSQL database;

responsive to determining that the one of the plurality of parts of the dataset can be split into a plurality of sub-parts of the dataset, wherein each of the sub-parts of the dataset includes at least one of the plurality of partitions, and that the at least one of the plurality of sub-parts of the dataset can be stored in a 32-bit software architecture in-memory NoSQL database, splitting the one of the plurality of parts of the dataset into a plurality of sub-parts of the dataset, wherein each of the sub-parts of the dataset includes at least one of the plurality of partitions, and storing the at least one of the plurality of sub-parts of the dataset in a 32-bit software architecture in-memory NoSQL database; and

wherein the method further comprises:

responsive to determining that the one of the plurality of parts of the dataset cannot be split into a plurality of sub-parts of the dataset, wherein each of the sub-parts of the dataset includes at least one of the plurality of partitions, or that the at least one of the plurality of sub-parts of the dataset cannot be stored in a 32-bit software architecture in-memory NoSQL database, scaling the one of the plurality of parts of the dataset to a 64-bit software architecture in-memory NoSQL database.

6. The non-transitory computer-readable medium of claim 5 , wherein the dataset is received from a 64 bit software architecture in-memory NoSQL database.

Assignments (7)
SECURITY INTEREST Recorded Jan 9, 2023
From: REDIS LTD
To: SILICON VALLEY BANK
Reel/Frame 062315/0312 →
CHANGE OF NAME Recorded Sep 13, 2021
From: REDIS LABS LTD
To: REDIS LTD
Reel/Frame 057494/0270 →
SECOND AMENDMENT TO INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 11, 2019
From: REDIS LABS LTD
To: SILICON VALLEY BANK
Reel/Frame 048301/0621 →
FIRST AMENDMENT TO INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Apr 25, 2017
From: REDIS LABS LTD.
To: SILICON VALLEY BANK
Reel/Frame 042328/0088 →
SECURITY AGREEMENT Recorded Jun 23, 2015
From: REDIS LABS LTD
To: SILICON VALLEY BANK
Reel/Frame 036011/0849 →
CHANGE OF NAME Recorded Jan 9, 2015
From: GARANTIA DATA LTD
To: REDIS LABS LTD.
Reel/Frame 034746/0498 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2013
From: SHOOLMAN, YIFTACH; BENGAL, OFER
To: GARANTIA DATA LTD.
Reel/Frame 030631/0627 →