×

Method of generating hierarchical data structure

  • US 10,078,624 B2
  • Filed: 04/08/2015
  • Issued: 09/18/2018
  • Est. Priority Date: 12/25/2014
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented method for generating a multi-level hierarchical data tree structure and searching data therein, the hierarchical data structure having at least a first level, a second level, and a leaf level, the computer-implemented method executable at a server, the computer-implemented method comprising:

  • receiving, by a partitioner at the server, a plurality of data elements, the plurality of data elements having a set of descriptors, each descriptor within the set of descriptors being associated with a data type being different from data types of other descriptors within the set of descriptors;

    generating, by an index tree manager at the server, the multi-level hierarchical data tree structure for storing elements of the plurality of data elements of the same type, the plurality of data elements having a common root, the first level accommodating a parent node, the second level accommodating a first child node and a second child node both dependent from the parent node, and the leaf level accommodating a first leaf node and second leaf node each dependent of the respective first child node and the second child node;

    the parent node for storing a first descriptor from the set of descriptors, the first descriptor associated with one or more data elements of the plurality of data elements, the descriptor being of a first data type;

    each of the first child node and the second child node for storing a respective second descriptor of the respective one of the one or more data elements;

    the respective second descriptor being of the same second data type, the same second data type being different from the first data type; and

    each of the first leaf node and second leaf node for storing a respective statistical snapshot, each of the first and second leaf node comprising a plurality of third descriptors of different third data types being different from the first and second data type, the third data type being at least one of;

    (i) a data element count associated with its respective branch, and(ii) a lowest minimum and highest maximum value associated with the one or more data element stored therein;

    recording, at an index tree storage by the index tree manager at the server, the multi-level hierarchical tree structure into a sequential linear data structure, the sequential linear data structure being implemented as a sequential record of cells having descriptors and an auxiliary data structure for navigation, the auxiliary data structure including;

    a number of child nodes of the parent node,a number of leaf nodes of each of the child nodes, andat least one offset between two cells of the sequential record of cells and at least one link between two non-contiguous cells of the sequential record of cells for direct navigation therebetween;

    receiving, by a searcher at the server from an electronic device, a search query having a search parameter, the search parameter being associated with a search data type;

    navigating, by the index tree manager at the server, using the at least one offset through the cells of the sequential linear data structure using the auxiliary data structure and comparing, by the server, the search parameter with the descriptors of the sequential record of cells to identify a statistical snapshot cell storing a statistical snapshot, the statistical snapshot cell associated with a leaf node associated with a branch of the hierarchical data structure, the branch comprising at least one node associated with a descriptor being of the same data type as the search data type, the descriptor matching with the search parameter;

    accessing, by the index tree manager at the server, the statistical snapshot cell having at least one data element being associated with the descriptor;

    retrieving, by the index tree manager at the server, the at least one data element from the statistical snapshot cell; and

    causing, by the server, the electronic device to display the at least one data element retrieved from the statistical snapshot cell.

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