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

  • Publication number: 20160267119
    Abstract: The building of an index in a hybrid data system that includes both relational data associated with a relational database system, and external data that is outside of the relational database system in an external data source. The building of the index includes the generating of an external data index of unit portions of the external data, the unit portion being measured common to multiple different formats of the external data. The external data index is usable to more quickly find unit portions that match one or more search criteria directed to the relational database system even though the external data source is outside of the relational database system. Queries may be evaluated in the context of this index to identify relational data and unit portion sets that are relevant to the query.
    Type: Application
    Filed: March 13, 2015
    Publication date: September 15, 2016
    Inventors: Nikhil Teletia, Thanh Do, Alan Halverson
  • Publication number: 20160261687
    Abstract: 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: Application
    Filed: May 16, 2016
    Publication date: September 8, 2016
    Inventors: Willis Lang, Nikhil Teletia, Ajay Kalhan, Alan Dale Halverson, Prashant Varanasi
  • Publication number: 20160246719
    Abstract: 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: Application
    Filed: February 25, 2015
    Publication date: August 25, 2016
    Inventors: Nikhil Teletia, Jae Young Do, Kwanghyun Park, Jignesh M. Patel
  • Publication number: 20160246735
    Abstract: 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: Application
    Filed: February 25, 2015
    Publication date: August 25, 2016
    Inventors: Nikhil Teletia, Jae Young Do, Kwanghyun Park, Jignesh M. Patel
  • Publication number: 20160154866
    Abstract: 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: Application
    Filed: November 28, 2014
    Publication date: June 2, 2016
    Inventor: Nikhil Teletia
  • Patent number: 9350800
    Abstract: 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: Grant
    Filed: June 5, 2013
    Date of Patent: May 24, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Willis Lang, Nikhil Teletia, Ajay Kalhan, Alan Dale Halverson, Prashant Varanasi
  • Patent number: 9305074
    Abstract: Distributing rows of data in a distributed table distributed across a plurality of nodes. A method includes identifying skewed rows of a first table to be distributed in a distributed database system. The skewed rows include a common data value in a column such that the skewed rows are skewed, according to a predetermined skew factor, with respect to other rows in the first table not having the common data value. Non-skewed rows of the first table that are not skewed according to the skew factor are identified. The skewed rows of the first table are distributed across nodes in a non-deterministic fashion. The non-skewed rows of the first table are distributed across nodes in a deterministic fashion. The rows of the first table distributed across the nodes, whether distributed in a deterministic fashion or non-deterministic fashion, are stored in a single table at each of the nodes.
    Type: Grant
    Filed: June 19, 2013
    Date of Patent: April 5, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Nikhil Teletia, Alan Dale Halverson, Srinath Shankar, Jeffrey Naughton
  • Publication number: 20150379083
    Abstract: A custom query execution engine can be generated that captures a query. More particularly, the custom query execution engine can be generated based on combination of a query and an execution engine. Subsequent to generation, a custom query execution engine can be submitted to a system configured to execute the custom query execution engine and evaluate the query over a data store.
    Type: Application
    Filed: June 25, 2014
    Publication date: December 31, 2015
    Inventors: Willis Lang, Nikhil Teletia, Hideaki Kimura, Alan D. Halverson, Srinath Shankar, Karthik Ramachandra
  • Publication number: 20150347513
    Abstract: 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: Application
    Filed: August 12, 2015
    Publication date: December 3, 2015
    Inventors: Nikhil Teletia, Alan Dale Halverson, Artem D. Yegorov
  • Patent number: 9128990
    Abstract: 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: Grant
    Filed: March 15, 2013
    Date of Patent: September 8, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Nikhil Teletia, Alan Dale Halverson, Artem D. Yegorov
  • Publication number: 20150220583
    Abstract: 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: Application
    Filed: January 31, 2014
    Publication date: August 6, 2015
    Inventors: Nikhil Teletia, Vinitha Reddy Gankidi, Alan D. Halverson, Jignesh M. Patel
  • Publication number: 20140379692
    Abstract: Distributing rows of data in a distributed table distributed across a plurality of nodes. A method includes identifying skewed rows of a first table to be distributed in a distributed database system. The skewed rows include a common data value in a column such that the skewed rows are skewed, according to a predetermined skew factor, with respect to other rows in the first table not having the common data value. Non-skewed rows of the first table that are not skewed according to the skew factor are identified. The skewed rows of the first table are distributed across nodes in a non-deterministic fashion. The non-skewed rows of the first table are distributed across nodes in a deterministic fashion. The rows of the first table distributed across the nodes, whether distributed in a deterministic fashion or non-deterministic fashion, are stored in a single table at each of the nodes.
    Type: Application
    Filed: June 19, 2013
    Publication date: December 25, 2014
    Inventors: Nikhil Teletia, Alan Dale Halverson, Srinath Shankar, Jeffrey Naughton
  • Publication number: 20140379691
    Abstract: A distributed system that includes multiple database compute nodes, each operating a database. A control node provides a database interface that offers a view on a single database using parallel interaction with the multiple compute nodes. The control node helps perform a map reduce operation using some or all of the compute nodes in response to receiving a database query having an associated function that is identified as a reduce function. The control node evaluates the target data of the database query to identify one or more properties of the content of the target data. The reduce function is then configured based on these identified properties.
    Type: Application
    Filed: June 21, 2013
    Publication date: December 25, 2014
    Inventors: Nikhil Teletia, Alan Dale Halverson, Jignesh M. Patel
  • Publication number: 20140365658
    Abstract: 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: Application
    Filed: June 5, 2013
    Publication date: December 11, 2014
    Inventors: Willis Lang, Nikhil Teletia, Ajay Kalhan, Alan Dale Halverson, Prashant Varanasi
  • Publication number: 20140280324
    Abstract: 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: Application
    Filed: March 15, 2013
    Publication date: September 18, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Nikhil Teletia, Alan Dale Halverson, Artem D. Yegorov
  • Patent number: 8473483
    Abstract: The present invention extends to methods, systems, and computer program products for performing parallel joins on distributed database data. Embodiments of the invention include a phased semi-join reduction strategy using replication and shuffle operations to join a first and a second data source. A filter building phase uses replication and pushes down a “Distinct” (e.g., SQL) operator to produce a list of join keys for the first data source (one side of the join). A shuffle phase for the second data source is modified to join to the key list produced in the first phase as a row filtering mechanism. A join phase then joins the first and second data sources.
    Type: Grant
    Filed: June 7, 2011
    Date of Patent: June 25, 2013
    Assignee: Microsoft Corporation
    Inventors: Nikhil Teletia, Alan Dale Halverson, José A. Blakeley, Milind Madhukar Joshi, Jose Aguilar Saborit
  • Publication number: 20120317093
    Abstract: The present invention extends to methods, systems, and computer program products for performing parallel joins on distributed database data. Embodiments of the invention include a phased semi-join reduction strategy using replication and shuffle operations to join a first and a second data source. A filter building phase uses replication and pushes down a “Distinct” (e.g., SQL) operator to produce a list of join keys for the first data source (one side of the join). A shuffle phase for the second data source is modified to join to the key list produced in the first phase as a row filtering mechanism. A join phase then joins the first and second data sources.
    Type: Application
    Filed: June 7, 2011
    Publication date: December 13, 2012
    Applicant: Microsoft Corporation
    Inventors: Nikhil Teletia, Alan Dale Halverson, José A. Blakeley, Milind Madhukar Joshi, Jose Aguilar Saborit