×

Dynamic distributed generation of data representations from highly condensed data

  • US 9,817,882 B2
  • Filed: 03/30/2017
  • Issued: 11/14/2017
  • Est. Priority Date: 03/30/2016
  • Status: Active Grant
First Claim
Patent Images

1. An apparatus comprising a processor and a storage to store instructions that, when executed by the processor, cause the processor to perform operations comprising:

  • transmit, from a coordinating device to a plurality of node devices of a grid of node devices, a command to store a plurality of data blocks of a data blob, wherein;

    the plurality of data blocks of the data blob are distributed among the plurality of node devices to be stored by the plurality of node devices;

    the data blob comprises multiple data items; and

    each data block of the plurality of data blocks comprises a subset of the multiple data items;

    receive, at the coordinating device, representation metadata comprising an indication of features of representation data, wherein;

    the representation data provides a two-dimensional (2D) representation of data items of the data blob; and

    the representation data is to be assembled from a plurality of representation portions to be derived by the plurality of node devices from the plurality of data blocks;

    receive, at the coordinating device, a command from a requesting device to generate at least one row of the representation data;

    use the representation metadata, a data blob metadata and a master block map to determine a subset of data blocks of the plurality of data blocks that are required to generate the at least one row of the 2D representation, and a subset of node devices of the plurality of node devices that store the subset of the plurality of data blocks, wherein;

    the data blob metadata comprises an indication of organization of the multiple data items within the data blob and an indication of at least one rule that limits distribution of the multiple data items of the data blob among the plurality of data blocks; and

    the master block map comprises an indication of the distribution of the multiple data items within the data blob among the plurality of data blocks, and an indication of the distribution of the plurality of data blocks among the plurality of node devices;

    use the representation metadata and the master block map to derive a node block map of a plurality of node block maps for each node device of the subset of node devices, wherein;

    each node block map identifies at least one data item of the subset of data items of a data block from which to generate at least one row of a representation portion of the plurality of representation portions; and

    each node block map indicates a selection of a reader routine to use to derive a transform to use with the data block to generate the at least one row of the representation portion;

    transmit, from the coordinating device, each node block map of the plurality of node block maps to one of the node devices of the subset of node devices;

    transmit, from the coordinating device, a command to each node device of the subset of node devices to generate at least one row of one of the representation portions of the plurality of representation portions;

    receive, at the coordinating device, indications from the plurality of node devices of successful generation of at least one row of at least one representation portion of the plurality of representation portions;

    receive, at the coordinating device, another command from the requesting device to generate at least one more row of the representation data; and

    in response to the receipt of the indications of successful generation of the at least one row of the at least one representation portion, and in response to the receipt of the other command, transmit, from the coordinating device, a command to generate at least one more row of the plurality of representation portions to the subset of node devices.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×