Patents by Inventor Cristian Petculescu
Cristian Petculescu 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: 11036717Abstract: A computer-navigable trie structure used in order to represent predicates for matching foreign keys to primary rows in a primary table. The predicates may be wide ranging, and each may be represented by a corresponding descendant path of the trie structure, and defines which foreign keys are to be mapped to the particular row. The trie structure is built by incrementally augmenting the trie structure as each predicate is analyzed. During later use of the trie structure, each foreign key that is a candidate for mapping to one or more parent rows are evaluated. The foreign key is used to navigate through a set of one or more descendant paths of the computer-navigable trie structure. Matching parent rows may then be identified based on the identity of the navigated descendant paths. The foreign key may then be mapped to each of the one or more matching parent rows.Type: GrantFiled: May 7, 2018Date of Patent: June 15, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Cristian Petculescu, Marius Dumitru, Vasile Paraschiv, Amir Netz
-
Patent number: 10885005Abstract: Implementing a database system using a plurality of sequentially ordered drives to store sequential portions of columns of the database, but where the database system is usable by a system configured for use with in-memory database systems. The method includes loading one or more columns of a database into main memory of a computing system as a table based database. The method further includes dividing a column of the database into sequential portions. Each of the sequential portions is of sufficient size to create efficient transfers using hard disk controllers to transfer an entire sequential portion. The method further includes writing each of the sequential portions sequentially onto sequentially ordered drives in a round robin fashion such that sequential portions of the column are on sequential drives.Type: GrantFiled: March 19, 2018Date of Patent: January 5, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Cristian Petculescu, Amir Netz
-
Patent number: 10803638Abstract: Methods for efficient display of data points in a user interface are performed by systems and apparatuses. Efficient display of data point in a user interface includes maximizing coverage of data points prior to rendering. Coverage is determined using a radius value for represented data points in a data set. The radius may be increased to correspondingly generate additional coverage. Covered data points may be removed from the rendering subset as the radius is set and increased. The radius is increased until the number of represented data points to render is less than a threshold value. Multiple data sets may be efficiently rendered together.Type: GrantFiled: July 3, 2019Date of Patent: October 13, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Cristian Petculescu, Marius Dumitru, Radu C. Coman, Amir M. Netz
-
Patent number: 10635673Abstract: Linking of a child table to a parent table in a database system. For a given parent table row, an expression associated with the particular row is identified. The expression may be a semantic expression that comprises something different than or more than an equals expression or a contains expression. The expression might also take as input a field of the parent table other than the primary key of the parent table. For each of multiple (and potentially all) rows of a child table, the expression is evaluated against a foreign key of the corresponding row of the child table. If the foreign key matches the expression, an association is created, and perhaps saved, between the foreign key and the particular row of the parent table. The expressions may differ even down to the granularity of a single row in the parent table, thereby enabling perhaps custom per-row expressions.Type: GrantFiled: February 14, 2018Date of Patent: April 28, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Cristian Petculescu, Marius Dumitru, Vasile Paraschiv, Amir Netz, Paul Jonathon Sanders
-
Publication number: 20190325625Abstract: Methods for efficient display of data points in a user interface are performed by systems and apparatuses. Efficient display of data point in a user interface includes maximizing coverage of data points prior to rendering. Coverage is determined using a radius value for represented data points in a data set. The radius may be increased to correspondingly generate additional coverage. Covered data points may be removed from the rendering subset as the radius is set and increased. The radius is increased until the number of represented data points to render is less than a threshold value. Multiple data sets may be efficiently rendered together.Type: ApplicationFiled: July 3, 2019Publication date: October 24, 2019Inventors: Cristian Petculescu, Marius Dumitru, Radu C. Coman, Amir M. Netz
-
Patent number: 10388042Abstract: Methods for efficient display of data points in a user interface are performed by systems and apparatuses. Efficient display of data point in a user interface includes maximizing coverage of data points prior to rendering. Coverage is determined using a radius value for represented data points in a data set. The radius may be increased to correspondingly generate additional coverage. Covered data points may be removed from the rendering subset as the radius is set and increased. The radius is increased until the number of represented data points to render is less than a threshold value. Multiple data sets may be efficiently rendered together.Type: GrantFiled: January 15, 2018Date of Patent: August 20, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Cristian Petculescu, Marius Dumitru, Radu C. Coman, Amir M. Netz
-
Patent number: 10366000Abstract: Reusing data in a memory. A method includes determining to revalidate a first set of data stored in a first, invalidated, portion of the memory. An amount of data in a second set of data in the free portion of the memory that will also be revalidated by revalidating the first portion of the memory is determined. As a result, an action to perform is determined and performed. The action includes either revalidating the first portion of the memory if the amount of data in the second set of data is at or below a predetermined threshold or copying the first set of data in the first portion of the memory, and re-writing the first set of data to the active valid portion of the memory, if the amount of data in the second set of data is above the predetermined threshold.Type: GrantFiled: January 12, 2018Date of Patent: July 30, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Cristian Petculescu, Amir Netz
-
Patent number: 10257255Abstract: Performing a distributed data operation. A method includes receiving a request for one or more data operations from a first computing system, such as a client. The method further includes determining a number of node endpoints that can be used to satisfy the query. Based on the number of node endpoints, the method further includes selecting a plan from the group consisting essentially of a flat data operation plan, a hierarchical data operation plan or a combination of partially flat/partially hierarchical data operation plan. The request for one or more data operations is serviced using the selected data operation plan.Type: GrantFiled: July 25, 2017Date of Patent: April 9, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Cristian Petculescu, Amir Netz
-
Publication number: 20190065563Abstract: Methods for efficient display of data points in a user interface are performed by systems and apparatuses. Efficient display of data point in a user interface includes maximizing coverage of data points prior to rendering. Coverage is determined using a radius value for represented data points in a data set. The radius may be increased to correspondingly generate additional coverage. Covered data points may be removed from the rendering subset as the radius is set and increased. The radius is increased until the number of represented data points to render is less than a threshold value. Multiple data sets may be efficiently rendered together.Type: ApplicationFiled: January 15, 2018Publication date: February 28, 2019Inventors: Cristian Petculescu, Marius Dumitru, Radu C. Coman, Amir M. Netz
-
Publication number: 20180253466Abstract: A computer-navigable trie structure used in order to represent predicates for matching foreign keys to primary rows in a primary table. The predicates may be wide ranging, and each may be represented by a corresponding descendant path of the trie structure, and defines which foreign keys are to be mapped to the particular row. The trie structure is built by incrementally augmenting the trie structure as each predicate is analyzed. During later use of the trie structure, each foreign key that is a candidate for mapping to one or more parent rows are evaluated. The foreign key is used to navigate through a set of one or more descendant paths of the computer-navigable trie structure. Matching parent rows may then be identified based on the identity of the navigated descendant paths. The foreign key may then be mapped to each of the one or more matching parent rows.Type: ApplicationFiled: May 7, 2018Publication date: September 6, 2018Inventors: Cristian Petculescu, Marius Dumitru, Vasile Paraschiv, Amir Netz
-
Publication number: 20180253456Abstract: Implementing a database system using a plurality of sequentially ordered drives to store sequential portions of columns of the database, but where the database system is usable by a system configured for use with in-memory database systems. The method includes loading one or more columns of a database into main memory of a computing system as a table based database. The method further includes dividing a column of the database into sequential portions. Each of the sequential portions is of sufficient size to create efficient transfers using hard disk controllers to transfer an entire sequential portion. The method further includes writing each of the sequential portions sequentially onto sequentially ordered drives in a round robin fashion such that sequential portions of the column are on sequential drives.Type: ApplicationFiled: March 19, 2018Publication date: September 6, 2018Inventors: Cristian Petculescu, Amir Netz
-
Publication number: 20180173766Abstract: Linking of a child table to a parent table in a database system. For a given parent table row, an expression associated with the particular row is identified. The expression may be a semantic expression that comprises something different than or more than an equals expression or a contains expression. The expression might also take as input a field of the parent table other than the primary key of the parent table. For each of multiple (and potentially all) rows of a child table, the expression is evaluated against a foreign key of the corresponding row of the child table. If the foreign key matches the expression, an association is created, and perhaps saved, between the foreign key and the particular row of the parent table. The expressions may differ even down to the granularity of a single row in the parent table, thereby enabling perhaps custom per-row expressions.Type: ApplicationFiled: February 14, 2018Publication date: June 21, 2018Inventors: Cristian Petculescu, Marius Dumitru, Vasile Paraschiv, Amir Netz, Paul Jonathon Sanders
-
Patent number: 9977812Abstract: A computer-navigable trie structure used in order to represent predicates for matching foreign keys to primary rows in a primary table. The predicates may be wide ranging, and each may be represented by a corresponding descendant path of the trie structure, and defines which foreign keys are to be mapped to the particular row. The trie structure is built by incrementally augmenting the trie structure as each predicate is analyzed. During later use of the trie structure, each foreign key that is a candidate for mapping to one or more parent rows are evaluated. The foreign key is used to navigate through a set of one or more descendant paths of the computer-navigable trie structure. Matching parent rows may then be identified based on the identity of the navigated descendant paths. The foreign key may then be mapped to each of the one or more matching parent rows.Type: GrantFiled: January 30, 2015Date of Patent: May 22, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Cristian Petculescu, Marius Dumitru, Vasile Paraschiv, Amir Netz
-
Publication number: 20180137043Abstract: Reusing data in a memory. A method includes determining to revalidate a first set of data stored in a first, invalidated, portion of the memory. An amount of data in a second set of data in the free portion of the memory that will also be revalidated by revalidating the first portion of the memory is determined. As a result, an action to perform is determined and performed. The action includes either revalidating the first portion of the memory if the amount of data in the second set of data is at or below a predetermined threshold or copying the first set of data in the first portion of the memory, and re-writing the first set of data to the active valid portion of the memory, if the amount of data in the second set of data is above the predetermined threshold.Type: ApplicationFiled: January 12, 2018Publication date: May 17, 2018Inventors: Cristian Petculescu, Amir Netz
-
Patent number: 9922060Abstract: Implementing a database system using a plurality of sequentially ordered drives to store sequential portions of columns of the database, but where the database system is usable by a system configured for use with in-memory database systems. The method includes loading one or more columns of a database into main memory of a computing system as a table based database. The method further includes dividing a column of the database into sequential portions. Each of the sequential portions is of sufficient size to create efficient transfers using hard disk controllers to transfer an entire sequential portion. The method further includes writing each of the sequential portions sequentially onto sequentially ordered drives in a round robin fashion such that sequential portions of the column are on sequential drives.Type: GrantFiled: April 25, 2016Date of Patent: March 20, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Cristian Petculescu, Amir Netz
-
Patent number: 9916357Abstract: Linking of a child table to a parent table in a database system. For a given parent table row, an expression associated with the particular row is identified. The expression may be a semantic expression that comprises something different than or more than an equals expression or a contains expression. The expression might also take as input a field of the parent table other than the primary key of the parent table. For each of multiple (and potentially all) rows of a child table, the expression is evaluated against a foreign key of the corresponding row of the child table. If the foreign key matches the expression, an association is created, and perhaps saved, between the foreign key and the particular row of the parent table. The expressions may differ even down to the granularity of a single row in the parent table, thereby enabling perhaps custom per-row expressions.Type: GrantFiled: June 27, 2014Date of Patent: March 13, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Cristian Petculescu, Marius Dumitru, Vasile Paraschiv, Amir Netz, Paul Jonathon Sanders
-
Patent number: 9898398Abstract: Reusing data in a memory buffer. A method includes reading data into a first portion of memory of a buffer implemented in the memory. The method further includes invalidating the data and marking the first portion of memory as free such that the first portion of memory is marked as being usable for storing other data, but where the data is not yet overwritten. The method further includes reusing the data in the first portion of memory after the data has been invalidated and the first portion of the memory is marked as free.Type: GrantFiled: December 30, 2013Date of Patent: February 20, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Cristian Petculescu, Amir Netz
-
Patent number: 9892143Abstract: The creation and updating of an association index that defines a linking between a child table and a parent table in a database system, and in which each of at least some of the parent table rows have an associated expression defining rules for mapping child table rows to the associated parent table row. The association index may be constructed with one pass of the parent table by evaluating the mapping definition to identifying associated child table rows. If there are such associations for a given parent table row, the linking module may record that association in an association index. If there are changes made that potentially invalidate an association status (whether an association or lack thereof), a re-evaluation module then determines which mapping definitions for which parent rows need to be re-evaluated, and potentially for which child table rows, rather than perform the entire process again.Type: GrantFiled: February 4, 2015Date of Patent: February 13, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Cristian Petculescu, Marius Dumitru, Vasile Paraschiv, Amir Netz
-
Publication number: 20170324801Abstract: Performing a distributed data operation. A method includes receiving a request for one or more data operations from a first computing system, such as a client. The method further includes determining a number of node endpoints that can be used to satisfy the query. Based on the number of node endpoints, the method further includes selecting a plan from the group consisting essentially of a flat data operation plan, a hierarchical data operation plan or a combination of partially flat/partially hierarchical data operation plan. The request for one or more data operations is serviced using the selected data operation plan.Type: ApplicationFiled: July 25, 2017Publication date: November 9, 2017Inventors: Cristian Petculescu, Amir Netz
-
Patent number: 9723054Abstract: Performing a distributed data operation. A method includes receiving a request for one or more data operations from a first computing system, such as a client. The method further includes determining a number of node endpoints that can be used to satisfy the query. Based on the number of node endpoints, the method further includes selecting a plan from the group consisting essentially of a flat data operation plan, a hierarchical data operation plan or a combination of partially flat/partially hierarchical data operation plan. The request for one or more data operations is serviced using the selected data operation plan.Type: GrantFiled: December 30, 2013Date of Patent: August 1, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Cristian Petculescu, Amir Netz