×

Federated search of multiple sources with conflict resolution

  • US 10,545,982 B1
  • Filed: 07/23/2015
  • Issued: 01/28/2020
  • Est. Priority Date: 04/01/2015
  • Status: Active Grant
First Claim
Patent Images

1. A method comprising:

  • obtaining a set of data ontologies associated with a plurality of heterogeneous data sources;

    wherein each heterogeneous data source of the plurality of heterogeneous data sources uses a different data model;

    receiving, as input, a selection of a graph comprising a plurality of graph nodes connected by one or more graph edges, wherein the graph has an object-centric data model in which each graph node represents a data object type or a data object property that is described in at least one data ontology of the set of data ontologies and each graph edge represents a data object link that represents a relationship between a pair of graph nodes and that is described in at least one data ontology of the set of data ontologies, wherein each graph edge of the one or more graph edges is selected from a set of available data object links;

    transforming the graph into one or more search queries that are executed across the plurality of heterogeneous data sources;

    obtaining a first data object and a second data object based on executing the one or more search queries across the plurality of heterogeneous data sources;

    generating an intermediate data object based on grouping the first data object with the second data object;

    generating a unique identifier for the intermediate data object based on hashing one or more data object properties that uniquely identify the intermediate data object;

    determining whether a repository data object that shares the unique identifier is stored in a repository that has a particular data model;

    in response to determining that the repository data object is not stored in a repository that has a particular data model,generating a stub data object that is referenced by the unique identifier and is stored in the repository;

    resolving the intermediate data object with the stub data object;

    deduplicating data associated with the intermediate data object and the stub data object;

    storing the deduplicated data in the repository that has the particular data model;

    causing display of the first data object and the second data object as a single graph node;

    wherein the method is performed by one or more computing devices.

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