Patents by Inventor Jan-Ove Almli Karlberg

Jan-Ove Almli Karlberg has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20240428086
    Abstract: Systems and methods are directed to incorporating approximate nearest neighbor search as implicit edges in a knowledge graph. The system generates an approximate nearest neighbor (ANN) index that indexes entities by their embeddings. The system models a knowledge graph by including the embeddings as nodes in the knowledge graph. Based on a search query, the system performs a search of the knowledge graph to obtain results, whereby performing the search includes traversing one or more implicit edges from a node of an embedding in the knowledge graph to one or more related nodes in semantic vector space based on the ANN index. The results are then presented on the device of the user.
    Type: Application
    Filed: June 22, 2023
    Publication date: December 26, 2024
    Inventors: Jan-Ove Almli KARLBERG, Jeffrey L. Wight, Tor Kreutzer, Øystein Fledsberg, Ronny Jensen, Anders Tungeland Gjerdrum, Theodoros Gkountouvas
  • Publication number: 20240419835
    Abstract: Systems and methods are directed to incorporating large language model (LLM) prompts into graph queries using graph query language and executing these graph queries. The system receives a graph query that includes a LLM prompt in the graph query language. The LLM prompt comprises an input context and a query to be answered. Based on the graph query, the system traverses a knowledge graph to obtain context data associated with the input context. The context data may be constrained by access control policies of an enterprise providing the knowledge graph. A context table may be generated using the context data based on the input context indicated in the LLM prompt. The system then invokes an LLM to determine a result by applying the query of the LLM prompt to the context data obtained from the traversal of the knowledge graph. The result is then presented on a user interface of a client device.
    Type: Application
    Filed: June 14, 2023
    Publication date: December 19, 2024
    Inventors: Jan-Ove Almli KARLBERG, Steffen Viken VALVÅG, Tor KREUTZER
  • Patent number: 12164518
    Abstract: Example solutions for performing federated graph queries use schemas and include: generating a logical graph using a query input and generating a physical plan using a query planning schema for double-nested loops, the outer loop for each permutation of data stores in a set of data stores, and the inner loop for each data store—ceasing when the logical graph has been fully consumed. A query cost is determined for each of the permutations, and a physical plan is selected based on the query cost, for example minimizing the query cost, and the query is executed based on the selected physical plan. The cost may be determined based on a weighted combination of factors such as freshness of the data, latency, power consumption, environmental impact (e.g., carbon footprint), energy efficiency, and network burden.
    Type: Grant
    Filed: January 5, 2023
    Date of Patent: December 10, 2024
    Assignee: Microsoft Technology Licensing, LLC.
    Inventors: Jan-Ove Almli Karlberg, Theodoros Gkountouvas, Iqra Ali, Anders Tungeland Gjerdrum, Anthony Acquah, Kai-Marius Pedersen, Tor Kreutzer, Ronny Jensen
  • Patent number: 12164534
    Abstract: The disclosed technology is generally directed to identification resolution in distributed knowledge graphs. In one example of the technology, a graph query is received. A metagraph includes identifier acceptance information associated with which identifiers among the identifiers are accepted by the data stores in the plurality of data stores and identifier export information associated with which identifiers among the identifiers are exported by the data stores in the plurality of data stores. The metagraph and the cost information are used to select, from among query paths, a query path that is capable of fulfilling the graph query based on minimizing a cost according to a cost metric. Upon determining that a failure has occurred in the selected query path, the metagraph and the cost information are used to change the selected query path. A response to the graph query is provided based on the selected query path.
    Type: Grant
    Filed: March 22, 2023
    Date of Patent: December 10, 2024
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jan-Ove Almli Karlberg, Theodoros Gkountouvas, Anders Tungeland Gjerdrum, Tor Kreutzer, Vincent Mulwa Kyalo, Vincent Macharia Karuri
  • Publication number: 20240378203
    Abstract: Solutions are disclosed that enable efficient federated graph queries across multiple isolated data stores. Examples leverage the connectedness of the expected data that spans the data stores by defining the entities and relationships and inferring the intent of the queries. These are used to optimize data searches in the individual data stores. Examples map each of two or more variables of the input query to elements of a public schema and use the mapping to determining a storage tag (identifying a data store) for each of the variables of the input query. Store-specific queries are scheduled and performed based on at least the storage tags.
    Type: Application
    Filed: May 9, 2023
    Publication date: November 14, 2024
    Inventors: Anders Tungeland GJERDRUM, Theodoros GKOUNTOUVAS, Jan-Ove Almli KARLBERG
  • Patent number: 12111829
    Abstract: Example solutions for executing a query in a declarative graph query language include receiving the query for data in a database and determining if one or both of i) a pattern in the query, and ii) the data in the database render the query suitable for being executed, at least in part, in parallel. If either condition indicates that the query is suitable for being executed, at least in part, in parallel, one or more fork operations and join operations are injected into a query plan, and the query is executed according to the query plan. Some examples further determine whether executing the query in parallel is computing resource-efficient, and only executes computing resource-efficient queries in parallel.
    Type: Grant
    Filed: August 25, 2022
    Date of Patent: October 8, 2024
    Assignee: Microsoft Technology Licensing, LLC.
    Inventors: Anders Tungeland Gjerdrum, Tor Kreutzer, Jan-Ove Almli Karlberg
  • Publication number: 20240320230
    Abstract: The disclosed technology is generally directed to identification resolution in distributed knowledge graphs. In one example of the technology, a graph query is received. A metagraph includes identifier acceptance information associated with which identifiers among the identifiers are accepted by the data stores in the plurality of data stores and identifier export information associated with which identifiers among the identifiers are exported by the data stores in the plurality of data stores. The metagraph and the cost information are used to select, from among query paths, a query path that is capable of fulfilling the graph query based on minimizing a cost according to a cost metric. Upon determining that a failure has occurred in the selected query path, the metagraph and the cost information are used to change the selected query path. A response to the graph query is provided based on the selected query path.
    Type: Application
    Filed: March 22, 2023
    Publication date: September 26, 2024
    Inventors: Jan-Ove Almli KARLBERG, Theodoros GKOUNTOUVAS, Anders Tungeland GJERDRUM, Tor KREUTZER, Vincent Mulwa KYALO, Vincent Macharia KARURI
  • Publication number: 20240143590
    Abstract: Example solutions for performing federated graph queries use schemas and include: generating a logical graph using a query input and generating a physical plan using a query planning schema for double-nested loops, the outer loop for each permutation of data stores in a set of data stores, and the inner loop for each data store—ceasing when the logical graph has been fully consumed. A query cost is determined for each of the permutations, and a physical plan is selected based on the query cost, for example minimizing the query cost, and the query is executed based on the selected physical plan. The cost may be determined based on a weighted combination of factors such as freshness of the data, latency, power consumption, environmental impact (e.g., carbon footprint), energy efficiency, and network burden.
    Type: Application
    Filed: January 5, 2023
    Publication date: May 2, 2024
    Inventors: Jan-Ove Almli KARLBERG, Theodoros GKOUNTOUVAS, Iqra ALI, Anders Tungeland GJERDRUM, Anthony ACQUAH, Kai-Marius PEDERSEN, Tor KREUTZER, Ronny JENSEN
  • Patent number: 11966485
    Abstract: The technology described herein protects the privacy and security of data stored in a knowledge graph (“graph”) by enforcing visibility policies when returning property information in response to a query or other attempt to extract property information from the graph and/or about the graph. The visibility policies may be stored with the object and used to prevent restricted properties from being extracted from the object, let alone the graph. The object-specific visibility policy may be stored in the storage layer of the knowledge-graph object with the object properties and content. Some implementations may include multiple visibility records for a single object. Together the visibility records form the object visibility policy. An object visibility policy may have a single visibility record or multiple visibility records.
    Type: Grant
    Filed: June 9, 2021
    Date of Patent: April 23, 2024
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jan-Ove Almli Karlberg, Tor Kreutzer, Andrei-Alin Corodescu, Vidar Tveoy Knudsen, Bernt Lervik
  • Patent number: 11968214
    Abstract: Particular aspects of this disclosure relate to computerized systems for generating and using improved data structures and functionality to efficiently render different multiple access-controlled resources (or properties of access-controlled resources) that are part of a concept. Often times, two or more resources of a concept or properties of a resource are subject to different access controls. This adds computing complexity as to whether or not a user is granted access to the entire concept or resource, a portion of the concept or resource, or none of the concept or resources and what exactly is surfaced back to the user when there are resources or properties the user does and does not have access to. Some embodiments accordingly render an efficient composite view of concepts or resources where some resources or properties are accessible by the requesting user, while other resources or properties are not accessible by the requesting user.
    Type: Grant
    Filed: May 30, 2020
    Date of Patent: April 23, 2024
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jan-Ove Almli Karlberg, Åge Andre Kvalnes, Tor Kreutzer, Andrei-Alin Corodescu, Vidar Tveoy Knudsen, Helge Grenager Solheim
  • Patent number: 11947822
    Abstract: The disclosure herein describes processing data operation requests and performing associated operations on pages of a record data structure. A data operation is generated based on a received data operation request. The data operation request includes a bookkeeping page identifier. A bookkeeping page of the record index structure is identified based on the bookkeeping page identifier and an index page of the record index structure with a parameter of the data operation. If a timestamp in metadata of the identified index page matches a corresponding timestamp associated with the identified index page in metadata of the bookkeeping page, the data operation is performed on the identified index page. The disclosure enables the use and maintenance of large data indexes in data storage systems where data entries expire over time due to automatic temporal compaction processes.
    Type: Grant
    Filed: March 31, 2022
    Date of Patent: April 2, 2024
    Assignee: Microsoft Technology Licensing, LLC.
    Inventors: Jan-Ove Almli Karlberg, Tor Kreutzer
  • Publication number: 20240086799
    Abstract: The disclosed technology is generally directed to detecting terminology understanding mismatch candidates. In one example of the technology, input content is received. Topics associated with the input content are identified. For each identified topic, topic information that corresponds to the identified topic is obtained. People associated with the input content are identified. For each identified person, person information that corresponds to the identified person is obtained. Based on the obtained topic information and the obtained person information, for each identified person: a level of proficiency of the identified person in each of the identified topics is determined. For each of the identified topics, whether the determined level of proficiency of the identified person meets a threshold that is associated with the identified topic is evaluated. For each determined level of proficiency that does not meet the threshold that is associated with the identified topic, a remedy is suggested.
    Type: Application
    Filed: September 14, 2022
    Publication date: March 14, 2024
    Inventors: Torbjørn HELVIK, Jon MELING, Jan-Ove Almli KARLBERG
  • Patent number: 11899525
    Abstract: Techniques of reproduction of graph data during query time are disclosed herein. One example technique includes receiving, at a query processor, a query having a set of predicates to be evaluated on data in a graph. Upon receiving the query, the example technique includes evaluating the set of predicates based on data in the first or second partition of the graph and recording a sequence of query states of the first or second partition whose data is used to evaluate each of the set of predicates. Subsequently, the example technique includes constructing a set of snapshots of the data in the first or second partition based on the recorded query states and reevaluating the set of predicates on the constructed set of snapshots of the data in the first or second partition to troubleshoot the detected query error when the set of predicates were previously evaluated.
    Type: Grant
    Filed: February 23, 2022
    Date of Patent: February 13, 2024
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jan-Ove Almli Karlberg, Anders Tungeland Gjerdrum, Tor Kreutzer
  • Patent number: 11868328
    Abstract: A method of maintaining a key-value store comprising a first record structure in which each key comprises an index and each value comprises a respective set of item IDs, and a second record structure in which each key comprises an item ID and each value comprises a respective item of data. Each new item ID of a group is added, starting at the root level of a tree structure: I) determining whether the current record will exceed a maximum size limit if the new item ID is included therein, and if not, including the new item ID, but II) if so, identifying a number of records at the next level of the tree structure, and applying a deterministic transformation to the item ID of the new item to determine one of the identified number of records, and repeating from I) with the determined record now as the current record.
    Type: Grant
    Filed: July 16, 2020
    Date of Patent: January 9, 2024
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jan-Ove Almli Karlberg, Helge Grenager Solheim, Age Andre Kvalnes
  • Patent number: 11847145
    Abstract: Examples of the present disclosure describe systems and methods for aliased data insertions/retrieval for key-value stores. In aspects, a data set comprising a primary key, one or more secondary keys (“aliases”), and data values may be received by a data storage system. The system may allocate an internal identifier to the primary key and store the internal identifier and the primary key in a first table. Each of the secondary keys may be used to create a key-value pair comprising the secondary key and the internal identifier. The key-value pair(s) may be stored in the first table with the corresponding primary key. The internal identifier and the data values may be stored in a second table. Subsequently, the primary or secondary key may be used to interrogate the first table for the internal identifier. The internal identifier may then be used to interrogate the second table for the data values.
    Type: Grant
    Filed: October 31, 2022
    Date of Patent: December 19, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jan-Ove Almli Karlberg, Andrei-Alin Corodescu, Helge Grenager Solheim
  • Publication number: 20230350890
    Abstract: Example solutions for executing a query in a declarative graph query language include receiving the query for data in a database and determining if one or both of i) a pattern in the query, and ii) the data in the database render the query suitable for being executed, at least in part, in parallel. If either condition indicates that the query is suitable for being executed, at least in part, in parallel, one or more fork operations and join operations are injected into a query plan, and the query is executed according to the query plan. Some examples further determine whether executing the query in parallel is computing resource-efficient, and only executes computing resource-efficient queries in parallel.
    Type: Application
    Filed: August 25, 2022
    Publication date: November 2, 2023
    Inventors: Anders Tungeland GJERDRUM, Tor KREUTZER, Jan-Ove Almli KARLBERG
  • Publication number: 20230315321
    Abstract: The disclosure herein describes processing data operation requests and performing associated operations on pages of a record data structure. A data operation is generated based on a received data operation request. The data operation request includes a bookkeeping page identifier. A bookkeeping page of the record index structure is identified based on the bookkeeping page identifier and an index page of the record index structure with a parameter of the data operation. If a timestamp in metadata of the identified index page matches a corresponding timestamp associated with the identified index page in metadata of the bookkeeping page, the data operation is performed on the identified index page. The disclosure enables the use and maintenance of large data indexes in data storage systems where data entries expire over time due to automatic temporal compaction processes.
    Type: Application
    Filed: March 31, 2022
    Publication date: October 5, 2023
    Inventors: Jan-Ove Almli KARLBERG, Tor KREUTZER
  • Publication number: 20230315741
    Abstract: Techniques of federation of data during query time are disclosed herein. One example technique includes upon receiving an indication of interaction of a file by a user of a tenant, determining whether automatic replication of the file to a user shard corresponding to the user is permitted according to a company policy or a legal requirement, the user shard being in a second geographic region. The example technique can then include when automatic replication of the file is not permitted, storing the file in a tenant shard corresponding to the tenant in a network storage in the first geographic region and instead of replicating the file to the user shard in the second geographic region, creating, in the user shard in the second geographic region, a file reference that is a pointer to the file stored in the tenant shard in the network storage in the first geographic region.
    Type: Application
    Filed: June 6, 2023
    Publication date: October 5, 2023
    Inventors: Helge Grenager Solheim, Åge Andre Kvalnes, Runar Bergheim Olsen, Christian Thuv, Jan-Ove Almli Karlberg, Tor Kreutzer, Kai-Marius Sæther Pedersen, Bjørn Erik Olsrød, Bård Kvalheim, Jeffrey Lawrence Wight
  • Patent number: 11748506
    Abstract: Controlling access to nodes in a relational graph at query time by using an approximate membership query (AMQ) filter and ordered queries based on historic grants or denials of access according to security context enables a more efficient querying of the relational graph while preserving access controls. Security contexts that grant or deny access to a node are stored in an associated AMQ filter and are queried according to the subject's security context in an order based on the frequency at which the security contexts have previously granted or denied access to nodes in the relational graph.
    Type: Grant
    Filed: May 2, 2022
    Date of Patent: September 5, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Tor Kreutzer, Steffen Viken Valvag, Dag Steinnes Eidesen, Amund Kronen Johansen, Peter Dahle Heen, Jan-Ove Almli Karlberg, Jon Meling, Age Kvalnes
  • Publication number: 20230267025
    Abstract: Techniques of reproduction of graph data during query time are disclosed herein. One example technique includes receiving, at a query processor, a query having a set of predicates to be evaluated on data in a graph. Upon receiving the query, the example technique includes evaluating the set of predicates based on data in the first or second partition of the graph and recording a sequence of query states of the first or second partition whose data is used to evaluate each of the set of predicates. Subsequently, the example technique includes constructing a set of snapshots of the data in the first or second partition based on the recorded query states and reevaluating the set of predicates on the constructed set of snapshots of the data in the first or second partition to troubleshoot the detected query error when the set of predicates were previously evaluated.
    Type: Application
    Filed: February 23, 2022
    Publication date: August 24, 2023
    Inventors: Jan-Ove Almli Karlberg, Anders Tungeland Gjerdrum, Tor Kreutzer