IP Library › Granted Patent US 12,541,492
Granted Patent B2
US 12,541,492 · App. 18/643,242 · Granted Feb 3, 2026

Efficient analytical calculations on a data set and method for use therewith

Inventors: George Kondiles (Chicago, IL); Rhett Colin Starr (Long Grove, IL); Joseph Jablonski (Chicago, IL); S. Christopher Gladwin (Chicago, IL)
Assignee: Ocient Inc.
G06F16/221G06F16/2365G06F16/24578G06F16/25G06F16/285G06F17/10
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 12,541,492
App. No.
18/643,242
Granted
Feb 3, 2026
Kind
B2
Abstract

A method for execution by a computer of a database management system includes obtaining a dataset that includes a set of data records, where the data set is associated with a set of data characteristics. The method includes executing a selected ranked analytical calculation of a ranked list of analytical calculations on the dataset to produce an analytical calculation result, where the ranked list of analytical calculations is generated by ranking a list of analytical calculations that are able to be executed on the dataset, based on a set of analytical calculation characteristics associated with the list of analytical calculations, where an analytical calculation characteristic of the set of analytical calculation characteristics indicates an estimated execution time to perform an analytical calculation of the list of analytical calculations, and the selected ranked analytical calculation is selected based on the set of data characteristics to produce the selected ranked analytical calculation.

Claims (54)

1 . A parallel database management system comprises:

a plurality of node clusters, wherein a node cluster of the plurality of node clusters s includes a set of nodes, wherein a node of the set of nodes includes a set of silo units, wherein a silo unit of the set of silo units includes:

a set of processing units;

memory operably coupled to the set of processing units;

a set of disk drives operably coupled to the set of processing units; and

a network interface operably coupled to the set of processing units;

wherein the silo unit stores, in memory and/or in the set of disk drives an operating system and a database management software application;

wherein, when silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters execute, substantially in parallel, the database management software application, the silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters are operable to:

bypass the operating system to store, substantially in parallel, a massive volume of data directly into respective memories and/or respective set of disk drives of the silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters; and

bypass the operating system to read, substantially in parallel, a second massive volume of data directly from the respective memories and/or the respective set of disk drives of the silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters.

2 . The parallel database management system of claim 1 further comprises:

the set of nodes including one or more nodes;

the set of silo units includes one or more silo units;

the set of processing units includes one or more processing units; and/or

the set of disk drives includes one or more disk drives.

3 . The parallel database management system of claim 1 , wherein a disk drive of the set of disk drives comprises one of:

Non-volatile Random-Access Memory (NVRAM);

Serial Advanced Technology Attachment (SATA);

Solid State Drives (SSDs); and

Non-volatile Memory Express (NVMe).

4 . The parallel database management system of claim 1 further comprises:

the massive volume of data includes at least a portion of a dataset, wherein the dataset includes a plurality of records, and wherein a record of the plurality of records includes a plurality of columns of data; and

the second massive volume of data includes at least a second portion of the dataset, wherein the at least the second portion of the dataset includes at least some of the columns of data of at least some of the plurality of records.

5 . The parallel database management system of claim 4 further comprises:

the dataset is segmented into a plurality of data segments, wherein the plurality of data segments forms a plurality of groups of data segments, wherein a group of data segments of the plurality of groups of data includes a set of data segments, and wherein a data segment of the plurality of data segments corresponds to a set of records of the plurality of records;

wherein the plurality of node clusters stores the plurality of data segments;

wherein a first node cluster of the plurality of node clusters stores a first grouping of groups of data segments of the plurality of data segments;

wherein a first set of silo units of the first node cluster stores a first group of data segments of the first grouping of groups of data segments; and

wherein a first silo unit of the first set of silo units stores a first data segment of the first group of data segments.

6 . The parallel database management system of claim 1 further comprises:

the massive volume of data includes at least a portion of a dataset;

wherein the dataset includes a plurality of records;

wherein a record of the plurality of records includes a plurality of columns of data;

wherein the dataset is segmented into a plurality of data segments;

wherein the plurality of data segments forms a plurality of groups of data segments;

wherein a group of data segments of the plurality of groups of data includes a set of data segments;

wherein a data segment of the plurality of data segments corresponds to a set of records of the plurality of records;

wherein one or more columns of data of the plurality of data columns of data of the set of records of the data segment form a coding block; and

wherein coding blocks form a coding line, wherein the coding line is stored in the silo unit.

7 . The parallel database management system of claim 6 further comprises:

wherein, when silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters execute, substantially in parallel, the database management software application, the silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters are operable to:

generate a plurality of manifests that correspond to the plurality of data segments, wherein a first manifest of the plurality of manifests corresponds to a first data segment of the plurality of data segments, and wherein the first manifest contains data regarding storage of the first data segment by a first silo unit of the silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters; and

store the plurality of manifests with the plurality of data segments.

8 . The parallel database management system of claim 7 , wherein the data of the first manifest comprises one or more of:

a physical location within the first silo unit as to where the first data segment is stored; and

a cluster key that is used to organize the first data segment based on a column associated with the cluster key.

9 . The parallel database management system of claim 6 further comprises:

wherein, when silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters execute, substantially in parallel, the database management software application, the silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters are, prior to storing the massive volume of data, operable to:

allocate respective huge pages of virtual memory that is tied to physical memory for the direct data storage of the massive volume of data into the respective memories and/or the respective set of disk drives of the silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters.

10 . The parallel database management system of claim 1 further comprises:

wherein, when silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters execute, substantially in parallel, the database management software application, the silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters are operable to:

query the operating system to identify the respective memories and/or the respective set of disk drives of the silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters;

query the operating system to identify respective sets of processing unit of the silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters; and

query the operating system to identify respective network interfaces of the silo-units-of-the-sets-of-silo-units-of-the-sets-of-nodes-of-the-node-clusters-of-the-plurality-of-node-clusters.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2024
From: KONDILES, GEORGE; STARR, RHETT COLIN; JABLONSKI, JOSEPH; GLADWIN, S. CHRISTOPHER
To: OCIENT LLC
Reel/Frame 067193/0176 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2024
From: OCIENT LLC
To: OCIENT INC.
Reel/Frame 067195/0375 →
Continuity (5)
Continuation 17652266 · Feb 23, 2022
Continuation 16928509 · Jul 14, 2020
Continuation 15840558 · Dec 13, 2017
Provisional Application 62433901 · Dec 14, 2016
Related Publication 20240273074A1 · Aug 15, 2024
References Cited (84)
US 5548770A · Bridges · 1996 [cited by applicant]
US 5634011A · Auerbach et al. · 1997 [cited by applicant]
US 5812668A · Weber · 1998 [cited by applicant]
US 6230200B1 · Forecast · 2001 [cited by applicant]
US 6633772B2 · Ford · 2003 [cited by applicant]
US 7177951B1 · Dykeman et al. · 2007 [cited by applicant]
US 7499907B2 · Brown · 2009 [cited by applicant]
US 7523130B1 · Meadway · 2009 [cited by applicant]
US 7840730B2 · D'Amato · 2010 [cited by examiner]
US 7908242B1 · Achanta · 2011 [cited by applicant]
US 7990797B2 · Moshayedi · 2011 [cited by applicant]
US 9047351B2 · Riddle · 2015 [cited by examiner]
US 10339147B1 · Barmes · 2019 [cited by applicant]
US 20010051949A1 · Carey · 2001 [cited by applicant]
US 20020010739A1 · Ferris et al. · 2002 [cited by applicant]
US 20020032676A1 · Reiner · 2002 [cited by applicant]
US 20040162853A1 · Brodersen · 2004 [cited by applicant]
US 20060037075A1 · Frattura · 2006 [cited by applicant]
US 20060268742A1 · Chu et al. · 2006 [cited by applicant]
US 20080059115A1 · Wilkinson · 2008 [cited by applicant]
US 20080133456A1 · Richards · 2008 [cited by applicant]
US 20080222150A1 · Stonecipher · 2008 [cited by applicant]
US 20090018996A1 · Hunt · 2009 [cited by applicant]
US 20090063893A1 · Bagepalli · 2009 [cited by applicant]
US 20090172191A1 · Dumitriu et al. · 2009 [cited by applicant]
US 20090182767A1 · Meadway · 2009 [cited by applicant]
US 20090183167A1 · Kupferschmidt · 2009 [cited by applicant]
US 20100082577A1 · Mirchandani · 2010 [cited by applicant]
US 20100211577A1 · Shimizu · 2010 [cited by applicant]
US 20100241646A1 · Friedman · 2010 [cited by applicant]
US 20100274983A1 · Murphy · 2010 [cited by applicant]
US 20100312756A1 · Zhang · 2010 [cited by applicant]
US 20100332475A1 · Birdwell · 2010 [cited by applicant]
US 20110219169A1 · Zhang · 2011 [cited by applicant]
US 20110307491A1 · Fisk · 2011 [cited by applicant]
US 20120089610A1 · Agarwal · 2012 [cited by applicant]
US 20120109888A1 · Zhang · 2012 [cited by applicant]
US 20120151118A1 · Flynn · 2012 [cited by applicant]
US 20120185866A1 · Couvee · 2012 [cited by applicant]
US 20120254252A1 · Jin · 2012 [cited by applicant]
US 20120311246A1 · Mcwilliams · 2012 [cited by applicant]
US 20130332484A1 · Gajic · 2013 [cited by applicant]
US 20140047095A1 · Breternitz · 2014 [cited by applicant]
US 20140136510A1 · Parkkinen · 2014 [cited by applicant]
US 20140173232A1 · Reohr · 2014 [cited by applicant]
US 20140188841A1 · Sun · 2014 [cited by applicant]
US 20140236548A1 · Conduit · 2014 [cited by applicant]
US 20150039712A1 · Frank et al. · 2015 [cited by applicant]
US 20150205607A1 · Lindholm · 2015 [cited by applicant]
US 20150244804A1 · Warfield · 2015 [cited by applicant]
US 20150248366A1 · Bergsten · 2015 [cited by applicant]
US 20150293966A1 · Cai · 2015 [cited by applicant]
US 20150310045A1 · Konik · 2015 [cited by applicant]
US 20150356085A1 · Panda · 2015 [cited by applicant]
US 20160026667A1 · Mukherjee et al. · 2016 [cited by applicant]
US 20160034547A1 · Lerios · 2016 [cited by applicant]
US 20160048849A1 · Shiftan · 2016 [cited by applicant]
US 20160070725A1 · Marrelli · 2016 [cited by applicant]
US 20160085789A1 · Fuchs · 2016 [cited by applicant]
US 20160321316A1 · Pennefather · 2016 [cited by applicant]
US 20170193016A1 · Kulkarni · 2017 [cited by applicant]
US 20180268015A1 · Sugaberry · 2018 [cited by applicant]
US 20180285414A1 · Kondiles · 2018 [cited by applicant]
A new high performance fabric for HPC, Michael Feldman, May 2016, Intersect360 Research. [cited by applicant]
Alechina, N. (2006-2007). B-Trees. School of Computer Science, University of Nottingham, http://www.cs.nott.ac.uk/˜psznza/G5BADS06/lecture13-print.pdf. 41 pages. [cited by applicant]
Amazon DynamoDB: ten things you really should know, Nov. 13, 2015, Chandan Patra, http://cloudacademy. .com/blog/amazon-dynamodb-ten-thing. [cited by applicant]
An Inside Look at Google BigQuery, by Kazunori Sato, Solutions Architect, Cloud Solutions team, Google Inc., 2012. [cited by applicant]
Angskun T., Bosilca G., Dongarra J. (2007) Self-healing in Binomial Graph Networks. In: Meersman R., Tari Z., Herrero P. (eds) On the Move to Meaningful Internet Systems 2007: OTM 2007 Workshops. OTM 2007. Lecture Notes… [cited by applicant]
Anonymous Release; DPDK documentation Contents; DPDK, Aug. 18, 2015; pp. 1-528 Retrieved from internet on Feb. 23, 2021: https://dpdk.readthedocs.io/_downloads/en/v2.1.0/pdf/. [cited by applicant]
Big Table, a NoSQL massively parallel table, Paul Krzyzanowski, Nov. 2011, https://www.cs.rutgers.edu/pxk/417/notes/contentlbigtable.html. [cited by applicant]
Distributed Systems, Fall2012, Mohsen Taheriyan, http://www-scf.usc.edu/-csci57212011Spring/presentations/Taheriyan.pptx. [cited by applicant]
European Patent Office; Extended European Search Report; EP App. No. 17880815.0; Apr. 2, 2020; 10 pgs. [cited by applicant]
Hashem et al., The rise of “big data” on cloud computing: Review and open research issues, 18 pages (Year: 2014). [cited by applicant]
International Searching Authority; International Search Report and Written Opinion; International Application No. PCT/US2017/054773; Feb. 13, 2018; 17 pgs. [cited by applicant]
International Searching Authority; International Search Report and Written Opinion; International Application No. PCT/US2017/054784; Dec. 28, 2017; 10 pgs. [cited by applicant]
International Searching Authority; International Search Report and Written Opinion; International Application No. PCT/US2017/066145; Mar. 5, 2018; 13 pgs. [cited by applicant]
International Searching Authority; International Search Report and Written Opinion; International Application No. PCT/US2017/066169; Mar. 6, 2018; 15 pgs. [cited by applicant]
International Searching Authority; International Search Report and Written Opinion; International Application No. PCT/US2018/025729; Jun. 27, 2018; 9 pgs. [cited by applicant]
International Searching Authority; International Search Report and Written Opinion; International Application No. PCT/US2018/034859; Oct. 30, 2018; 8 pgs. [cited by applicant]
MapReduce: Simplified Data Processing on Large Clusters, OSDI 2004, Jeffrey Dean and Sanjay Ghemawat, Google, Inc., 13 pgs. [cited by applicant]
Remote Direct Memory Access Transport for Remote Procedure Call, Internet Engineering Task Force (IETF), T. Talpey, Request for Comments: 5666, Category: Standards Track, ISSN: 2070-1721, Jan. 2010. [cited by applicant]
Rodero-Merino, L.; Storage of Structured Data: Big Table and HBase, New Trends In Distributed Systems, MSc Software and Systems, Distributed Systems Laboratory; Oct. 17, 2012; 24 pages. [cited by applicant]
Step 2: Examine the data model and implementation details, 2016, Amazon Web Services, Inc., http://docs.aws.amazon.com/amazondynamodb/latestldeveloperguide!Ti . . . . [cited by applicant]
T. Angskun, G. Bosilca, B. V. Zanden and J. Dongarra, Optimal Routing in Binomial Graph Networks, Eighth International Conference on Parallel and Distributed Computing, Applications and Technologies (PDCAT 2007), Adelai… [cited by applicant]