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: 10754859Abstract: 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: GrantFiled: October 28, 2016Date of Patent: August 25, 2020Assignee: Microsoft Technology Licensing, LLCInventors: SungJu Cho, Yinyi Wang, Qingpeng Niu, Andrew Rodriguez
-
Patent number: 10180992Abstract: 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: GrantFiled: March 1, 2016Date of Patent: January 15, 2019Assignee: Microsoft Technology Licensing, LLCInventors: SungJu Cho, Jiahong Zhu, Yinyi Wang, Roman A. Averbukh, Scott M. Meyer, Shyam Shankar, Qingpeng Niu, Karan R. Parikh
-
Publication number: 20180121512Abstract: 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: ApplicationFiled: October 28, 2016Publication date: May 3, 2018Applicant: LinkedIn CorporationInventors: SungJu Cho, Yinyi Wang, Qingpeng Niu, Andrew Rodriguez
-
Patent number: 9892210Abstract: 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: GrantFiled: November 18, 2014Date of Patent: February 13, 2018Assignee: Microsoft Technology Licensing, LLCInventors: SungJu Cho, Qingpeng Niu, Andrew Joseph Carter, Sanjay Sachdev
-
Publication number: 20170255709Abstract: 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: ApplicationFiled: March 1, 2016Publication date: September 7, 2017Applicant: LinkedIn CorporationInventors: SungJu Cho, Jiahong Zhu, Yinyi Wang, Roman A. Averbukh, Scott M. Meyer, Shyam Shankar, Qingpeng Niu, Karan R. Parikh
-
Publication number: 20170255708Abstract: 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: ApplicationFiled: March 1, 2016Publication date: September 7, 2017Applicant: LinkedIn CorporationInventors: SungJu Cho, Jiahong Zhu, Yinyi Wang, Roman A. Averbukh, Scott M. Meyer, Shyam Shankar, Qingpeng Niu, Karan R. Parikh
-
Publication number: 20160125093Abstract: 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: ApplicationFiled: November 18, 2014Publication date: May 5, 2016Inventors: SungJu Cho, Qingpeng Niu, Andrew Joseph Carter, Sanjay Sachdev