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: 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: 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
  • 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
  • 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
  • Patent number: 11709845
    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: Grant
    Filed: December 16, 2021
    Date of Patent: July 25, 2023
    Assignee: Microsoft Technology Licensing, LLC
    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
  • Publication number: 20230126596
    Abstract: A method comprising: storing, in a database, a list of geographical regions in which the party consents to their data being stored; receiving a request to store data of the party, wherein at least one of the data has a region-restriction that restricts the regions in which that data can be stored; determining, based on a respective region-restriction of a respective one of the data, in which of the list of regions the respective data can be stored; storing the data, wherein each respective data is stored in at least one respective storage centre associated with one of the regions according to the determination; storing, in the database, a list comprising a pointer to each respective stored data, wherein the pointer identifies the respective storage centre; receiving a request to retrieve a respective stored data; and using the pointer to route the request to the respective storage centre.
    Type: Application
    Filed: December 22, 2022
    Publication date: April 27, 2023
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Tor KREUTZER, Jan-Ove Almli KARLBERG, Shamika Ruklan JAYASUNDARA, Øystein FLEDSBERG, Øystein TORBJØRNSEN, Åge Andre KVALNES, Helge Grenager SOLHEIM
  • Patent number: 11625412
    Abstract: In one aspect, a data item is written to a data chunk of a stream segment. The stream segment includes a stream segment header and a plurality of data chunks. A first identifier of the data item is written to the stream segment header of the stream segment. A second identifier of the data item is written to a header of the data chunk of the stream segment. In another aspect, a stream segment header of a stream segment is queried with a query identifier. The querying identifies if any of the data items in the data chunks of the stream segment have the query identifier. If any of the data items in the data chunks of the stream segment have the query identifier, the data chunks of the stream segment are queried with the query identifier to identify which data chunks of the stream segment have the query identifier.
    Type: Grant
    Filed: November 16, 2021
    Date of Patent: April 11, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jan-Ove Almli Karlberg, Tor Kreutzer, Åge Andre Kvalnes
  • Publication number: 20230079753
    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: Application
    Filed: October 31, 2022
    Publication date: March 16, 2023
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Jan-Ove Almli KARLBERG, Andrei-Alin CORODESCU, Helge Grenager SOLHEIM
  • Publication number: 20230034911
    Abstract: A method and system for creating a learning graph may include accessing a general knowledge graph, the general knowledge graph including a plurality of items of information about a plurality of general knowledge topics, extracting a plurality of learning topics, the plurality of learning topics being topics associated with a desired learning curriculum, identifying associations between one or more of the plurality of learning topics and one or more of the plurality of items of information in the general knowledge graph, upon identifying the associations, utilizing the associations to create a learning graph based on at least one of the one or more of the plurality of learning topics, the one or more of the plurality of items of information and the associations between them, the learning graph being a learning knowledge visualization graph, and transmitting the learning graph to a learning application for use in providing the desired learning curriculum.
    Type: Application
    Filed: August 2, 2021
    Publication date: February 2, 2023
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Jan-Ove Almli KARLBERG, Torbjørn HELVIK, Jon MELING
  • Patent number: 11563808
    Abstract: A method comprising: storing, in a database, a list of geographical regions in which the party consents to their data being stored; receiving a request to store data of the party, wherein at least one of the data has a region-restriction that restricts the regions in which that data can be stored; determining, based on a respective region-restriction of a respective one of the data, in which of the list of regions the respective data can be stored; storing the data, wherein each respective data is stored in at least one respective storage centre associated with one of the regions according to the determination; storing, in the database, a list comprising a pointer to each respective stored data, wherein the pointer identifies the respective storage centre; receiving a request to retrieve a respective stored data; and using the pointer to route the request to the respective storage centre.
    Type: Grant
    Filed: November 12, 2020
    Date of Patent: January 24, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Tor Kreutzer, Jan-Ove Almli Karlberg, Shamika Ruklan Jayasundara, Øystein Fledsberg, Øystein Torbjørnsen, Åge Andre Kvalnes, Helge Grenager Solheim
  • Publication number: 20220398331
    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: Application
    Filed: June 9, 2021
    Publication date: December 15, 2022
    Inventors: Jan-Ove Almli KARLBERG, Tor KREUTZER, Andrei-Alin CORODESCU, Vidar Tveoy KNUDSEN, Bernt LERVIK