Patents by Inventor Nikhil Teletia
Nikhil Teletia 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: 11941031Abstract: Systems, methods, and storage media for generating an online analytical processing cube (MAP) are disclosed. Exemplary implementations may: receive a cube definition file; access a data-source; generate a data-source property configuration for the data-source using the cube definition file to; determine each of respective parsed data from the data-source is a key, attribute, or measure; and generate the OLAP cube by combining the cube definition file and the data-source property configuration for the determined parsed data from the data-source.Type: GrantFiled: February 6, 2019Date of Patent: March 26, 2024Assignee: GOOGLE LLCInventors: Stephan Gudmundson, Nikhil Teletia, Andrew Leeds, John Sismanis
-
Patent number: 11487771Abstract: Distributed query processing is often performed by a set of nodes that apply MapReduce to a data set and materialize partial results to storage, which are then aggregated to produce the query result. However, this architecture requires a preconfigured set of database nodes; can only fulfill queries that utilize MapReduce processing; and may be slowed down by materializing partial results to storage. Instead, distributed query processing can be achieved by choosing a node for various portions of the query, and generating customized code for the node that only performs the query portion that is allocated to the node. The node executes the code to perform the query portion, and rather than materializing partial results to storage, streams intermediate query results to a next selected node in the distributed query. Nodes selection may be involve matching the details of the query portion with the characteristics and capabilities of the available nodes.Type: GrantFiled: December 7, 2016Date of Patent: November 1, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Willis Lang, Nikhil Teletia, Hideaki Kimura, Alan D. Halverson, Srinath Shankar, Karthik Ramachandra
-
Publication number: 20220012266Abstract: Systems, methods, and storage media for generating an online analytical processing cube (MAP) are disclosed. Exemplary implementations may: receive a cube definition file; access a data-source; generate a data-source property configuration for the data-source using the cube definition file to; determine each of respective parsed data from the data-source is a key, attribute, or measure; and generate the OLAP cube by combining the cube definition file and the data-source property configuration for the determined parsed data from the data-source.Type: ApplicationFiled: February 6, 2019Publication date: January 13, 2022Applicant: Google LLCInventors: STEPHAN GUDMUNDSON, Nikhil Teletia, Andrew Leeds, John Sismanis
-
Patent number: 11030179Abstract: A split-index can be employed for access to external data. The index can be created on a primary data storage system for data stored externally on a secondary data storage system. After creation, the index can be utilized to expedite at least query execution over the externally stored data. The index can be updated upon detection of changes to data. Further, even when the index is not completely up to date, the index can be exploited for query execution. Furthermore, hybrid execution is enabled with the index and without the index.Type: GrantFiled: July 14, 2017Date of Patent: June 8, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Nikhil Teletia, Vinitha Reddy Gankidi, Alan D. Halverson, Jignesh M. Patel
-
Patent number: 10613978Abstract: Replicating a primary application cache that serves a primary application on one network node into a secondary application cache that serves a secondary application on a second network node. Cache portions that are within the primary application cache are identified, and then identifiers (but not the cache portions) are transferred to the second network node. Once these identifiers are received, the cache portions that they identify may then be retrieved into the secondary application caches. This process may be repeatedly performed such that the secondary application cache moves towards the same state as the primary application cache though the state of the primary application cache also changes as the primary application operates by receiving read and write requests.Type: GrantFiled: November 29, 2018Date of Patent: April 7, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Nikhil Teletia, Jae Young Do, Kwanghyun Park, Jignesh M. Patel
-
Patent number: 10534711Abstract: Replicating a primary application cache that serves a primary application on one network node into a secondary application cache that serves a secondary application on a second network node. Cache portions that are within the primary application cache are identified, and then identifiers (but not the cache portions) are transferred to the second network node. Once these identifiers are received, the cache portions that they identify may then be retrieved into the secondary application caches. This process may be repeatedly performed such that the secondary application cache moves towards the same state as the primary application cache though the state of the primary application cache also changes as the primary application operates by receiving read and write requests.Type: GrantFiled: November 29, 2018Date of Patent: January 14, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Nikhil Teletia, Jae Young Do, Kwanghyun Park, Jignesh M. Patel
-
Patent number: 10409835Abstract: Data-manipulation-language statements can target data in data store of a data storage system. Data manipulations specified in a statement, including in-place manipulations, can be recorded and maintained. Application of data manipulations to the store can be avoided or potentially initiated at a later time. Prior to application of the data manipulations to the data store, queries over data in the data store can be processed in view of the recorded data manipulations and data acquired from the data store, such that the data manipulations are reflected in the data acquired from the data store.Type: GrantFiled: November 28, 2014Date of Patent: September 10, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventor: Nikhil Teletia
-
Publication number: 20190129851Abstract: Replicating a primary application cache that serves a primary application on one network node into a secondary application cache that serves a secondary application on a second network node. Cache portions that are within the primary application cache are identified, and then identifiers (but not the cache portions) are transferred to the second network node. Once these identifiers are received, the cache portions that they identify may then be retrieved into the secondary application caches. This process may be repeatedly performed such that the secondary application cache moves towards the same state as the primary application cache though the state of the primary application cache also changes as the primary application operates by receiving read and write requests.Type: ApplicationFiled: November 29, 2018Publication date: May 2, 2019Inventors: Nikhil Teletia, Jae Young Do, Kwanghyun Park, Jignesh M. Patel
-
Patent number: 10204048Abstract: Replicating a primary application cache that serves a primary application on one network node into a secondary application cache that serves a secondary application on a second network node. Cache portions that are within the primary application cache are identified, and then identifiers (but not the cache portions) are transferred to the second network node. Once these identifiers are received, the cache portions that they identify may then be retrieved into the secondary application caches. This process may be repeatedly performed such that the secondary application cache moves towards the same state as the primary application cache though the state of the primary application cache also changes as the primary application operates by receiving read and write requests.Type: GrantFiled: May 24, 2017Date of Patent: February 12, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Nikhil Teletia, Jae Young Do, Kwanghyun Park, Jignesh M. Patel
-
Patent number: 10114765Abstract: The automated recovery of the warmth of cache of an application that has been subject to a running state change that degraded the warmth of the cache. To prepare for a loss in warmth, the cache portion identifiers are captured, and corresponding cache portions are stored in an external store. Thereafter, the application experiences changes in state. In order to warm the application cache more quickly, cache portions identified by the captured cache portion identifiers are retrieved from the external data store and placed in the application cache.Type: GrantFiled: June 7, 2017Date of Patent: October 30, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Nikhil Teletia, Jae Young Do, Kwanghyun Park, Jignesh M. Patel
-
Patent number: 9888065Abstract: Defragmenting a cluster service to service additional capacity requests on the service. A method includes determining an amount of server resources needed for an additional deployment reservation request for a new deployment or increasing reservation of resources of an existing deployment. The method further includes determining a server that currently does not have capacity to service the additional deployment reservation request. The method further includes determining how resources on the server can be freed up by moving other replicas of other deployments on the server to other servers to allow the server to service the additional deployment reservation request.Type: GrantFiled: May 16, 2016Date of Patent: February 6, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Willis Lang, Nikhil Teletia, Ajay Kalhan, Alan Dale Halverson, Prashant Varanasi
-
Publication number: 20170316043Abstract: A split-index can be employed for access to external data. The index can be created on a primary data storage system for data stored externally on a secondary data storage system. After creation, the index can be utilized to expedite at least query execution over the externally stored data. The index can be updated upon detection of changes to data. Further, even when the index is not completely up to date, the index can be exploited for query execution. Furthermore, hybrid execution is enabled with the index and without the index.Type: ApplicationFiled: July 14, 2017Publication date: November 2, 2017Inventors: Nikhil Teletia, Vinitha Reddy Gankidi, Alan D. Halverson, Jignesh M. Patel
-
Patent number: 9805093Abstract: The present invention extends to methods, systems, and computer program products for executed stored procedures at parallel databases. Stored procedures are transformed so that execution of the stored procedure is split between a standalone database server and a parallel database coordinator. Execution of the stored procedure is initiated at the standalone database server. At execution time, control-flow statements, variable assignment, expression evaluation, etc., are handled by the standalone database server. SQL statements are passed from the standalone database server to the database for the execution. Results from executed SQL statements can be returned to the standalone database server or to a client. The parallel database coordinator can be added as a linked server to the standalone database server. In some embodiments, a session token is used to share session state between different parties.Type: GrantFiled: August 12, 2015Date of Patent: October 31, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Nikhil Teletia, Alan Dale Halverson, Artem D. Yegorov
-
Publication number: 20170270055Abstract: The automated recovery of the warmth of cache of an application that has been subject to a running state change that degraded the warmth of the cache. To prepare for a loss in warmth, the cache portion identifiers are captured, and corresponding cache portions are stored in an external store. Thereafter, the application experiences changes in state. In order to warm the application cache more quickly, cache portions identified by the captured cache portion identifiers are retrieved from the external data store and placed in the application cache.Type: ApplicationFiled: June 7, 2017Publication date: September 21, 2017Inventors: Nikhil Teletia, Jae Young Do, Kwanghyun Park, Jignesh M. Patel
-
Publication number: 20170255555Abstract: Replicating a primary application cache that serves a primary application on one network node into a secondary application cache that serves a secondary application on a second network node. Cache portions that are within the primary application cache are identified, and then identifiers (but not the cache portions) are transferred to the second network node. Once these identifiers are received, the cache portions that they identify may then be retrieved into the secondary application caches. This process may be repeatedly performed such that the secondary application cache moves towards the same state as the primary application cache though the state of the primary application cache also changes as the primary application operates by receiving read and write requests.Type: ApplicationFiled: May 24, 2017Publication date: September 7, 2017Inventors: Nikhil Teletia, Jae Young Do, Kwanghyun Park, Jignesh M. Patel
-
Patent number: 9715515Abstract: A split-index can be employed for access to external data. The index can be created on a primary data storage system for data stored externally on a secondary data storage system. After creation, the index can be utilized to expedite at least query execution over the externally stored data. The index can be updated upon detection of changes to data. Further, even when the index is not completely up to date, the index can be exploited for query execution. Furthermore, hybrid execution is enabled with the index and without the index.Type: GrantFiled: January 31, 2014Date of Patent: July 25, 2017Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Nikhil Teletia, Vinitha Reddy Gankidi, Alan D. Halverson, Jignesh M. Patel
-
Patent number: 9684596Abstract: Replicating a primary application cache that serves a primary application on one network node into a secondary application cache that serves a secondary application on a second network node. Cache portions that are within the primary application cache are identified, and then identifiers (but not the cache portions) are transferred to the second network node. Once these identifiers are received, the cache portions that they identify may then be retrieved into the secondary application caches. This process may be repeatedly performed such that the secondary application cache moves towards the same state as the primary application cache though the state of the primary application cache also changes as the primary application operates by receiving read and write requests.Type: GrantFiled: February 25, 2015Date of Patent: June 20, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Nikhil Teletia, Jae Young Do, Kwanghyun Park, Jignesh M. Patel
-
Patent number: 9684607Abstract: The automated recovery of the warmth of cache of an application that has been subject to a running state change that degraded the warmth of the cache. To prepare for a loss in warmth, the state of a cache portion identifiers are captured. Such identifies the cache portions that are within the application cache at an instant in time. Thereafter, the application experiences a change in running state that diminishes the warmth of the application cache. For instance, the application might be stopped and restarted. After and despite this cache degradation, the application may continue to operate. However, in order to warm the application cache more quickly, while the application is operating, the application cache is automatically warmed. For instance, while the application is operating, cache portions identified by the captured cache portion identifiers are automatically accessed from a source that is external to the application cache.Type: GrantFiled: February 25, 2015Date of Patent: June 20, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Nikhil Teletia, Jae Young Do, Kwanghyun Park, Jignesh M. Patel
-
Publication number: 20170139991Abstract: A system obtains desired information from a database by dynamically modifying a query plan while executing a query against the database. In particular, the system accesses predefined cardinality information associated with the query for the database (such as a number of occurrences of information associated with the query in the database), and identifies query constraints based on the predefined cardinality information. Then, the system determines an initial query plan based on the query constraints. After executing an initial query against the database based on the initial query plan, the system revises the initial query and the initial query plan, based on partial results of the initial query, to produce a revised query and a revised query plan. Next, the system executes the revised query against the database based on the revised query plan to obtain additional partial results, and the operations are repeated until a total result is obtained.Type: ApplicationFiled: November 16, 2015Publication date: May 18, 2017Applicant: LINKEDIN CORPORATIONInventors: Nikhil Teletia, Srinath Shankar, Scott M. Meyer
-
Publication number: 20170083588Abstract: Distributed query processing is often performed by a set of nodes that apply MapReduce to a data set and materialize partial results to storage, which are then aggregated to produce the query result. However, this architecture requires a preconfigured set of database nodes; can only fulfill queries that utilize MapReduce processing; and may be slowed down by materializing partial results to storage. Instead, distributed query processing can be achieved by choosing a node for various portions of the query, and generating customized code for the node that only performs the query portion that is allocated to the node. The node executes the code to perform the query portion, and rather than materializing partial results to storage, streams intermediate query results to a next selected node in the distributed query. Nodes selection may be involve matching the details of the query portion with the characteristics and capabilities of the available nodes.Type: ApplicationFiled: December 7, 2016Publication date: March 23, 2017Inventors: Willis Lang, Nikhil Teletia, Hideaki Kimura, Alan D. Halverson, Srinath Shankar, Karthik Ramachandra