×

System and method of storing and analyzing information

  • US 10,146,828 B2
  • Filed: 07/23/2014
  • Issued: 12/04/2018
  • Est. Priority Date: 07/23/2014
  • Status: Active Grant
First Claim
Patent Images

1. A method for storing and analyzing information comprising:

  • receiving, at runtime, a graph database query specified in a query language;

    during the runtime, converting the query to data parallel source code;

    during the runtime, with a compiler layer, compiling the data parallel source code to provide executable code;

    during the runtime, dynamically loading the executable code onto a plurality of computing elements;

    during the runtime, executing the executable code, the executing comprising;

    calling one or more methods of a graph database library, the graph database library comprising multithreaded algorithms, processes, and data structures for managing the graph database and query execution, the graph database library comprising a plurality of methods for accessing the multithreaded algorithms, processes, and data structures, one or more of the methods being called by the executable code;

    calling one or more methods of a multithreaded runtime library, the multithreaded runtime library comprising a plurality of methods for implementing a global address space and thread management, the calling the one or more methods of the multithreaded runtime library comprising;

    calling an API of the multithreaded runtime library to allocate memory in the global address space; and

    calling an API of the multithreaded runtime library to free memory in the global address space;

    calling a method of the graph database library to instantiate at least one data structure of the graph database library in the global address space, the global address space being partition between the plurality of computing elements;

    with the runtime library, aggregating data requests for a computing element of the plurality of computing elements;

    with the runtime library, sending the aggregated data requests to the computing element of the plurality of computing elements; and

    returning query execution results in response to the graph database query.

View all claims
  • 3 Assignments
Timeline View
Assignment View
    ×
    ×