IP Library › Granted Patent US 9,229,659
Granted Patent B2
US 9,229,659 · App. 14/066,725 · Granted Jan 5, 2016

Identifying and accessing reference data in an in-memory data grid

Inventors: Dustin K. Amrhein (Zachary, LA); Douglas C. Berg (Rochester, MN); Kulvir S. Bhogal (Fort Worth, TX); Nitin Gaur (Round Rock, TX); Christopher D. Johnson (Rochester, MN)
Assignee: International Business Machines Corporation
G06F3/0683G06F3/0614G06F11/00G06F17/30584
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 9,229,659
App. No.
14/066,725
Granted
Jan 5, 2016
Kind
B2
Abstract

Embodiments relate to providing normalization techniques for reference data in an in-memory data grid. An aspect includes monitoring object creation and access in an in-memory data grid and identifying reference data in an object field of a plurality of object instances. A reference map for the object field is created and the reference map is replicated across all partitions of the in-memory data grid. The reference data of an embodiment is stored in the reference map and the object field is updated to identify the reference map. Accordingly, the reference data may be accessed using the created reference map.

Claims (20)

1. A computer-implemented method, comprising:

monitoring, by a processing device, object creation and access in an in-memory data grid;

identifying reference data in an object field of a plurality of object instances in the in-memory data grid, each of the plurality of object instances including an instance of the same data value in the object field;

creating a reference map for the object field;

replicating the reference map across all partitions of the in-memory data grid;

storing the reference data in the reference map;

updating the object field to identify the reference map; and

accessing the reference data using the reference map, wherein upon receiving a query that refers to the object field in an object instance, the accessing includes automatically modifying, by the processing device, a portion of the query to reference the object field in the reference map.

2. The computer-implemented method of claim 1 , wherein the monitoring of the object creation and access further comprises running a continuous process in the in-memory data grid to inspect a group comprising of queries, inserts, retrievals, and updates to the object.

3. The computer-implemented method of claim 1 , wherein the identification of reference data further comprises:

evaluating size, access patterns, and scope of the reference data to ensure that the reference data fits in available memory; and

determining whether the identified reference data is infrequently updated.

4. The computer-implemented method of claim 1 , wherein the reference data is co-located.

5. The computer-implemented method of claim 1 , further comprising:

generating a key for each unique reference data value in response to creating the reference map, and

storing the reference data in the reference map with the newly generated key.

6. The computer-implemented method of claim 1 , wherein the replication utilizes a replication mechanism selected from a group comprising asynchronous replication, synchronous replication, multi-master replication, and zone replication.

7. The computer-implemented method of claim 6 , further comprising:

utilizing a partitionable key to ensure that related reference data is co-located.

8. The computer-implemented method of claim 6 , wherein the replicating of the reference data further comprises duplicating the reference data in more than one partition.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2013
From: AMRHEIN, DUSTIN K.; BERG, DOUGLAS C.; BHOGAL, KULVIR S.; GAUR, NITIN; JOHNSON, CHRISTOPHER D.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 031506/0057 →
Continuity (2)
Continuation 13780408 · Feb 28, 2013
Related Publication 20140244954A1 · Aug 28, 2014