IP Library Granted Patent US 10,963,513
Granted Patent B2
US 10,963,513 · App. 15/494,924 · Granted Mar 30, 2021

Data system and method

Inventors: Marc B. DaCosta (New York, NY); Hicham Oudghiri (Brooklyn, NY)
Assignee: Enigma Technologies, Inc.
G06F16/9024G06F16/2228G06F16/248G06F16/2453G06F16/283
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 10,963,513
App. No.
15/494,924
Granted
Mar 30, 2021
Kind
B2
Abstract

A system and method for content sharing includes acquiring, by a processing device, a plurality of data objects from data sources, storing the plurality of data objects in a data warehouse, generating a high-level index that is shared by the plurality of data objects, generating a plurality of low-level indices that each provides a respective low-level index for a respective one of the plurality of data objects, and providing the plurality of data objects on the content sharing platform for query or search using the high-level index and the plurality of low-level indices.

Claims (65)

1. A method comprising:

acquiring, by a processing device of a content sharing platform, a plurality of data objects from a plurality of data sources;

generating a high-level index that comprises a network of connections among a subset of the plurality of data objects that are determined to meet a threshold relationship, wherein generating the high-level index comprises:

generating a graph database representing the plurality of data objects and the metadata associated with the plurality of data objects, wherein at least one node of the graph database represents one of the plurality of data objects and the associated metadata, and at least one edge connecting two nodes represents a relationship between two data objects represented by the two connecting nodes, wherein the edges of the graph database constitute query facets for the plurality of data objects, and wherein the edges of the graph database are stored in a memory device of the content sharing platform;

determining the subset of the plurality of data objects associated with the at least one edge that meets the threshold relationship; and

generating, in response to determining that the subset of the plurality of data objects meets the threshold relationship, the high-level index based on the subset of the plurality of data objects in the graph database;

generating, for each one of the plurality of data objects, a low-level index comprising a map, the map comprising at least one of words, numbers, dates, keywords, or vectors stored in each of the plurality of data objects; and

providing the plurality of data objects on the content sharing platform for at least one of querying or searching using the high-level index associated with the subset of the plurality of data objects and low-level indices associated with the plurality of data objects.

2. The method of claim 1 , further comprising:

storing the plurality of data objects in a data warehouse, wherein storing the plurality of data objects further comprises:

assigning a respective unique path address to each of the plurality of data objects, the respective unique path address comprising at least one of an address of a data source, a location, or a date of the each data object;

associating the each data object with a metadata, wherein the metadata comprises at least one of a data path address, a description, subjects, topics, or geographic locations associated with the each data object;

parsing the plurality of data objects;

analyzing the plurality of data objects, wherein the analyzing comprises at least one of error analysis, statistical analysis, or contextual awareness analysis;

determining acceptable data objects based on results of the analyzing; and

storing the acceptable data objects in the data warehouse.

3. The method of claim 1 , further comprising:

determining, in response to a query, a first subset of the plurality of data objects based on the high-level index;

determining a second subset of the plurality of data objects based on the low-level indices of the first subset of the plurality of data objects; and

outputting the second subset of the plurality of data objects.

4. The method of claim 1 , wherein at least one vector specifies relationships among keywords.

5. A content sharing system, comprising:

a memory; and

a processing device, communicatively coupled to the memory, to:

acquire a plurality of data objects from a plurality of data sources;

generate a high-level index that comprises a network of connections among a subset of the plurality of data objects that are determined to meet a threshold relationship, wherein to generate the high-level index, the processing device is further configured to:

generate a graph database representing the plurality of data objects and the metadata associated with the plurality of data objects, wherein at least one node of the graph database represents one of the plurality of data objects and the associated metadata, and at least one edge connecting two nodes represents a relationship between two data objects represented by the two connecting node, wherein the edges of the graph database constitute query facets for the plurality of data objects, and wherein the edges of the graph database are stored in a memory device of the content sharing platform;

determine the subset of the plurality of data objects associated with the at least one edge that meets the threshold relationship; and

generate, in response to determining that the subset of the plurality of data objects meets the threshold relationship, the high-level index based on the subset of the plurality of data objects in the graph database;

generate, for each one of the plurality of data objects, a low-level index comprising a map, the map comprising at least one of words, numbers, dates, keywords, or vectors stored in each of the plurality of data objects; and

provide the plurality of data objects on the content sharing platform for at least one of querying or searching using the high-level index associated with the subset of the plurality of data objects and low-level indices associated with the plurality of data objects.

6. The content sharing system of claim 5 , wherein processing device is further configured to:

store the plurality of data objects in a data warehouse, wherein to store the plurality of data objects, the processing device is further to:

assign a respective unique path address to each of the plurality of data objects, the respective unique path address comprising at least one of an address of a data source, a location, or a date of the each data object;

associate the each data object with a metadata, wherein the metadata comprises at least one of a data path address, a description, subjects, topics, or geographic locations associated with the each data object;

parse the plurality of data objects;

analyze the plurality of data objects, wherein the analyzing comprises at least one of error analysis, statistical analysis, or contextual awareness analysis;

determine acceptable data objects based on results of the analyzing; and

store the acceptable data objects in the data warehouse.

7. The content sharing system of claim 5 , wherein the processing device is further to:

determine, in response to a query, a first subset of the plurality of data objects based on the high-level index;

determine a second subset of the plurality of data objects based on the low-level indices of the first subset of the plurality of data objects; and

output the second subset of the plurality of data objects.

8. The content sharing system of claim 5 , wherein at least one vector specifies relationships among keywords.

9. A non-transitory machine-readable storage medium storing instructions which, when executed, cause a processing device to perform operations on a content sharing platform, the processing device configured to:

acquire, by the processing device of the content sharing platform, a plurality of data objects from a plurality of data sources;

generate a high-level index that comprises a network of connections among a subset of the plurality of data objects that are determined to meet a threshold relationship, wherein to generate the high-level index, the processing device is further configured to:

generate a graph database representing the plurality of data objects and the metadata associated with the plurality of data objects, wherein at least one node of the graph database represents one of the plurality of data objects and the associated metadata, and at least one edge connecting two nodes represents a relationship between two data objects represented by the two connecting nodes, wherein the edges of the graph database constitute query facets for the plurality of data objects, and wherein the edges of the graph database are stored in a memory device of the content sharing platform;

determine the subset of the plurality of data objects associated with the at least one edge that meets the threshold relationship; and

generate, in response to determining that the subset of the plurality of data objects meets the threshold relationship, the high-level index based on the subset of the plurality of data objects in the graph database;

generate, for each one of the plurality of data objects, a low-level index comprising a map, the map comprising at least one of words, numbers, dates, keywords, or vectors stored in each of the plurality of data objects; and

provide the plurality of data objects on the content sharing platform for at least one of querying or searching using the high-level index associated with the subset of the plurality of data objects and low-level indices associated with the plurality of data objects.

10. The machine-readable storage medium of claim 9 , wherein processing device is further configured to:

store the plurality of data objects in a data warehouse, wherein to store the plurality of data objects, the processing device is further configured to:

assign a respective unique path address to each of the plurality of data objects, the respective unique path address comprising at least one of an address of a data source, a location, or a date of the each data object;

associate the each data object with a metadata, wherein the metadata comprises at least one of a data path address, a description, subjects, topics, or geographic locations associated with the each data object;

parse the plurality of data objects;

analyze the plurality of data objects, wherein the analyzing comprises at least one of error analysis, statistical analysis, or contextual awareness analysis;

determine acceptable data objects based on results of the analyzing; and

store the acceptable data objects in the data warehouse.

11. The machine-readable storage medium of claim 9 , wherein the processing device is further configured to:

determine, in response to a query, a first subset of the plurality of data objects based on the high-level index;

determine a second subset of the plurality of data objects based on the low-level indices of the first subset of the plurality of data objects; and

output the second subset of the plurality of data objects.

12. The machine-readable storage medium of claim 9 , wherein at least one vector specifies relationships among keywords.

Assignments (2)
SECURITY AGREEMENT Recorded Dec 24, 2024
From: ENIGMA TECHNOLOGIES, INC.
To: CUSTOMERS BANK
Reel/Frame 069775/0519 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2017
From: DACOSTA, MARC B.; OUDGHIRI, HICHAM
To: ENIGMA TECHNOLOGIES, INC.
Reel/Frame 042134/0173 →
Continuity (3)
Continuation 14172428 · Feb 4, 2014
Provisional Application 61762036 · Feb 7, 2013
Related Publication 20170228470A1 · Aug 10, 2017
Cited By (1)
US 12,505,465