Efficient SQL-based graph random walk

    公开(公告)号:US11797534B2

    公开(公告)日:2023-10-24

    申请号:US17707643

    申请日:2022-03-29

    CPC classification number: G06F16/24535 G06F16/9024

    Abstract: Embodiments generate random walks through a directed graph that is represented in a relational database table. Each row of the graph table represents a directed edge in the graph and includes a source vertex and a destination vertex. Each row is further augmented to (a) indicate the number of outbound edges starting from the destination vertex in the row and (b) include an identifier that distinguishes the edge from other outbound edges starting from the same source vertex. An SQL query may be executed on the augmented graph table. Starting from a source vertex (starting vertex or the destination vertex of the previously selected hop) the query randomly selects a row of the graph table representing one of the outbound edges from the source vertex and adds the selected outbound edge as a row in a random walk table that represents the next hop in the random walk.

    Hash-based efficient secondary indexing for graph data stored in non-relational data stores

    公开(公告)号:US11256746B2

    公开(公告)日:2022-02-22

    申请号:US15494141

    申请日:2017-04-21

    Abstract: A method and apparatus for a graph database instance (GDI) maintaining a secondary index, that indexes data from a sparse data map storing graph application data, within a sparse data map dedicated to the secondary index. The GDI formulates row-keys, for the secondary index map, by hashing the values of key/value pairs stored in rows of a map storing application data. The GDI stores for each formulated row-key, in the row of the secondary index that is indexed by the formulated row-key, references to rows of the map storing application data that match the key/value pair on which formulation of the row-key was based. The row-keys into the secondary index map may incorporate bucket identifiers, which, for each key/value pair, allows the GDI to spread the references to graph elements that match the key/value pair among a set number of “buckets” for the key/value pair within the secondary index map.

    SNAPSHOT-CONSISTENT, IN-MEMORY GRAPH INSTANCES IN A MULTI-USER DATABASE
    15.
    发明申请
    SNAPSHOT-CONSISTENT, IN-MEMORY GRAPH INSTANCES IN A MULTI-USER DATABASE 有权
    SNAPSHOT一致性,多用户数据库中的内存图形实例

    公开(公告)号:US20160019228A1

    公开(公告)日:2016-01-21

    申请号:US14332182

    申请日:2014-07-15

    CPC classification number: G06F17/30958 G06F17/30327 G06F2201/80

    Abstract: Techniques for storing and processing graph data in a database system are provided. Graph data (or a portion thereof) that is stored in persistent storage is loaded into memory to generate an instance of a particular graph. The instance is consistent as of a particular point in time. Graph analysis operations are performed on the instance. The instance may be used by multiple users to perform graph analysis operations. Subsequent changes to the graph are stored separate from the instance. Later, the changes may be applied to the instance (or a copy thereof) to refresh the instance.

    Abstract translation: 提供了用于在数据库系统中存储和处理图形数据的技术。 将存储在永久存储器中的图形数据(或其一部分)加载到存储器中以生成特定图形的实例。 实例在特定时间点是一致的。 在实例上执行图形分析操作。 多个用户可以使用该实例来执行图形分析操作。 图形的后续更改与实例分开存储。 之后,可以将更改应用于实例(或其副本)以刷新实例。

    STORING AND QUERYING GRAPH DATA IN A KEY-VALUE STORE
    16.
    发明申请
    STORING AND QUERYING GRAPH DATA IN A KEY-VALUE STORE 审中-公开
    存储和查询关键价值商店中的图表数据

    公开(公告)号:US20140310302A1

    公开(公告)日:2014-10-16

    申请号:US13893018

    申请日:2013-05-13

    CPC classification number: G06F16/2453 G06F16/245 G06F16/532

    Abstract: Techniques for storing and querying graph data in a key-value store are provided. A graph statement (e.g., an RDF graph statement) includes a plurality of values, at least two of which correspond to nodes in a graph. A key is generated based on the graph statement. The key may be generated based on concatenating hash values that are generated based on the plurality of values. The key-value store stores the key. The value that corresponds to the key may be a null or empty value. In response to a graph query (e.g., in SPARQL) that includes one or more query patterns, each of which includes one or more values, a key is generated based on the one or more values and sent to the key-value store, which returns one or more other keys, each of which is a superset of the generated key.

    Abstract translation: 提供了在键值存储中存储和查询图形数据的技术。 图形语句(例如,RDF图形语句)包括多个值,其中至少两个对应于图中的节点。 基于图形语句生成一个键。 可以基于基于多个值生成的级联哈希值来生成密钥。 键值存储存储键。 对应于该键的值可以是空值或空值。 响应于包括一个或多个查询模式的图形查询(例如,在SPARQL中),每个查询模式包括一个或多个值,基于一个或多个值生成密钥并发送到键值存储,其中 返回一个或多个其他键,每个键是生成的键的超集。

    EFFICIENT SQL-BASED GRAPH RANDOM WALK

    公开(公告)号:US20220222254A1

    公开(公告)日:2022-07-14

    申请号:US17707643

    申请日:2022-03-29

    Abstract: Embodiments generate random walks through a directed graph that is represented in a relational database table. Each row of the graph table represents a directed edge in the graph and includes a source vertex and a destination vertex. Each row is further augmented to (a) indicate the number of outbound edges starting from the destination vertex in the row and (b) include an identifier that distinguishes the edge from other outbound edges starting from the same source vertex. An SQL query may be executed on the augmented graph table. Starting from a source vertex (starting vertex or the destination vertex of the previously selected hop) the query randomly selects a row of the graph table representing one of the outbound edges from the source vertex and adds the selected outbound edge as a row in a random walk table that represents the next hop in the random walk.

    Efficient SQL-based graph random walk

    公开(公告)号:US11334567B2

    公开(公告)日:2022-05-17

    申请号:US16543258

    申请日:2019-08-16

    Abstract: Embodiments generate random walks through a directed graph that is represented in a relational database table. Each row of the graph table represents a directed edge in the graph and includes a source vertex and a destination vertex. Each row is further augmented to (a) indicate the number of outbound edges starting from the destination vertex in the row and (b) include an identifier that distinguishes the edge from other outbound edges starting from the same source vertex. An SQL query may be executed on the augmented graph table. Starting from a source vertex (starting vertex or the destination vertex of the previously selected hop) the query randomly selects a row of the graph table representing one of the outbound edges from the source vertex and adds the selected outbound edge as a row in a random walk table that represents the next hop in the random walk.

    CONSTRUCTING AN IN-MEMORY REPRESENTATION OF A GRAPH
    19.
    发明申请
    CONSTRUCTING AN IN-MEMORY REPRESENTATION OF A GRAPH 审中-公开
    构建图形的内存表示

    公开(公告)号:US20160299991A1

    公开(公告)日:2016-10-13

    申请号:US14680150

    申请日:2015-04-07

    CPC classification number: G06F17/30958 G06F17/30327 G06F2201/80

    Abstract: Techniques for efficiently loading graph data into memory are provided. A plurality of node ID lists are retrieved from storage. Each node ID list is ordered based on one or more order criteria, such as node ID, and is read into memory. A new list of node IDs is created in memory and is initially empty. From among the plurality of node ID lists, a particular node ID is selected based on the one or more order criteria, removed from the node ID list where the particular node ID originates, and added to the new list. This process of selecting, removing, and adding continues until no more than one node ID list exists, other than the new list. In this way, the retrieval of the plurality of node ID lists from storage may be performed in parallel while the selecting and adding are performed sequentially.

    Abstract translation: 提供了有效地将图形数据加载到存储器中的技术。 从存储器检索多个节点ID列表。 每个节点ID列表根据一个或多个订单标准(如节点ID)进行排序,并被读入存储器。 节点ID的新列表在内存中创建,最初为空。 从多个节点ID列表中,基于从特定节点ID发起的节点ID列表中移除并添加到新列表的一个或多个顺序标准来选择特定节点ID。 除了新的列表之外,这个选择,删除和添加的过程将继续存在,直到不再有一个节点ID列表存在。 以这种方式,可以在顺序执行选择和添加的同时并行执行从存储器检索多个节点ID列表。

Patent Agency Ranking