Patents by Inventor Qingpeng Niu

Qingpeng Niu 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).

  • Patent number: 10754859
    Abstract: The disclosed embodiments provide a system for processing data. During operation, the system obtains a group of two or more integer values. Next, the system sets, for each integer value in the two or more integer values, a delta encoding tag that represents a delta encoding of the integer value with respect to at least one other integer value in the group and uses a delta encoding state represented by the delta encoding tag to calculate an encoded value from the integer value. The system then encodes a length of the encoded value in a length tag for the integer value. Finally, the system replaces the integer value in the group with an encoded version containing the delta encoding tag, the length tag, and the encoded value.
    Type: Grant
    Filed: October 28, 2016
    Date of Patent: August 25, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: SungJu Cho, Yinyi Wang, Qingpeng Niu, Andrew Rodriguez
  • Patent number: 10180992
    Abstract: The disclosed embodiments provide a system for updating an index structure of a graph database storing a graph. During operation, the system includes, in the index structure, a first compressed edge store containing a first compact representation of edges in the graph at a first virtual time and a first series of updates to the edges after the first virtual time. At a second virtual time, the system creates a second compact representation of the edges from the first compact representation and the first series of updates. The system then appends, to the second compact representation, a second series of updates to the edges after the second virtual time to produce a second compressed edge store. Finally, the system updates the index structure by atomically replacing, in the index structure, a reference to the first compressed edge store with a reference to the second compressed edge store.
    Type: Grant
    Filed: March 1, 2016
    Date of Patent: January 15, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: SungJu Cho, Jiahong Zhu, Yinyi Wang, Roman A. Averbukh, Scott M. Meyer, Shyam Shankar, Qingpeng Niu, Karan R. Parikh
  • Publication number: 20180121512
    Abstract: The disclosed embodiments provide a system for processing data. During operation, the system obtains a group of two or more integer values. Next, the system sets, for each integer value in the two or more integer values, a delta encoding tag that represents a delta encoding of the integer value with respect to at least one other integer value in the group and uses a delta encoding state represented by the delta encoding tag to calculate an encoded value from the integer value. The system then encodes a length of the encoded value in a length tag for the integer value. Finally, the system replaces the integer value in the group with an encoded version containing the delta encoding tag, the length tag, and the encoded value.
    Type: Application
    Filed: October 28, 2016
    Publication date: May 3, 2018
    Applicant: LinkedIn Corporation
    Inventors: SungJu Cho, Yinyi Wang, Qingpeng Niu, Andrew Rodriguez
  • Patent number: 9892210
    Abstract: A social graph is divided into a series of partial graphs having limited hops and reference counts. For each of a plurality of nodes in the social graph, a partial graph for the node is created having a first degree list of nodes reachable in one hop and a second degree list of nodes reachable in two hops. Reference counts of how many paths exist between the node and each node reachable in two hops are also added to the second degree list. A global inverted index is maintained containing a list of all nodes in the social graph and for each node in the social graph a list of nodes that directly connect to the node. The partial graphs created for each of the plurality of nodes are distributed across a plurality of data servers. An index of which partial graphs are stored on which data servers is maintained.
    Type: Grant
    Filed: November 18, 2014
    Date of Patent: February 13, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: SungJu Cho, Qingpeng Niu, Andrew Joseph Carter, Sanjay Sachdev
  • Publication number: 20170255709
    Abstract: The disclosed embodiments provide a system for updating an index structure of a graph database storing a graph. During operation, the system includes, in the index structure, a first compressed edge store containing a first compact representation of edges in the graph at a first virtual time and a first series of updates to the edges after the first virtual time. At a second virtual time, the system creates a second compact representation of the edges from the first compact representation and the first series of updates. The system then appends, to the second compact representation, a second series of updates to the edges after the second virtual time to produce a second compressed edge store. Finally, the system updates the index structure by atomically replacing, in the index structure, a reference to the first compressed edge store with a reference to the second compressed edge store.
    Type: Application
    Filed: March 1, 2016
    Publication date: September 7, 2017
    Applicant: LinkedIn Corporation
    Inventors: SungJu Cho, Jiahong Zhu, Yinyi Wang, Roman A. Averbukh, Scott M. Meyer, Shyam Shankar, Qingpeng Niu, Karan R. Parikh
  • Publication number: 20170255708
    Abstract: The disclosed embodiments provide a system for processing queries of a graph database. During operation, the system executes a set of processes for accessing a lock-free hash table stored in memory on a computer system, wherein the processes include a write process and multiple read processes. Next, the system uses the processes and the lock-free hash table to index a graph database storing a graph. The system then uses the processes to access a compressed edge store containing a compact representation of the set of edges at a virtual time in the graph and a series of updates to the edges after the virtual time. During use of the processes and the lock-free hash table to index the graph database, the system references the set of edges in the compact representation from a set of entries in the lock-free hash table.
    Type: Application
    Filed: March 1, 2016
    Publication date: September 7, 2017
    Applicant: LinkedIn Corporation
    Inventors: SungJu Cho, Jiahong Zhu, Yinyi Wang, Roman A. Averbukh, Scott M. Meyer, Shyam Shankar, Qingpeng Niu, Karan R. Parikh
  • Publication number: 20160125093
    Abstract: A social graph is divided into a series of partial graphs having limited hops and reference counts. For each of a plurality of nodes in the social graph, a partial graph for the node is created having a first degree list of nodes reachable in one hop and a second degree list of nodes reachable in two hops. Reference counts of how many paths exist between the node and each node reachable in two hops are also added to the second degree list. A global inverted index is maintained containing a list of all nodes in the social graph and for each node in the social graph a list of nodes that directly connect to the node. The partial graphs created for each of the plurality of nodes are distributed across a plurality of data servers. An index of which partial graphs are stored on which data servers is maintained.
    Type: Application
    Filed: November 18, 2014
    Publication date: May 5, 2016
    Inventors: SungJu Cho, Qingpeng Niu, Andrew Joseph Carter, Sanjay Sachdev