Patents by Inventor Gurashish Singh Brar
Gurashish Singh Brar 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: 20220382812Abstract: In some examples, an anomaly database system is provided for processing metrics in telemetry data. An example anomaly database system comprises a continuous data management (CDM) node, the CDM node including a metrics library for sending out system metrics in a sparse manner and a statistics relay for receiving streaming metrics from nodes in a node cluster, the node cluster including the CDM node, the statistics relay pushing the received metrics to a metrics collector. A sparse consumers module pulls metrics, from the metrics collector, pushed to the metrics collector by the statistics relay.Type: ApplicationFiled: August 11, 2022Publication date: December 1, 2022Inventors: Gurashish Singh Brar, Karan Jayesh Bavishi, Gurjeet S. Arora
-
Patent number: 11436285Abstract: In some examples, an anomaly database system is provided for processing metrics in telemetry data. An example anomaly database system comprises a continuous data management (CDM) node, the CDM node including a metrics library for sending out system metrics in a sparse manner and a statistics relay for receiving streaming metrics from nodes in a node cluster, the node cluster including the CDM node, the statistics relay pushing the received metrics to a metrics collector. A sparse consumers module pulls metrics, from the metrics collector, pushed to the metrics collector by the statistics relay.Type: GrantFiled: October 12, 2020Date of Patent: September 6, 2022Assignee: Rubrik, Inc.Inventors: Gurashish Singh Brar, Karan Jayesh Bavishi, Gurjeet S. Arora
-
Publication number: 20220114216Abstract: In some examples, an anomaly database system is provided for processing metrics in telemetry data. An example anomaly database system comprises a continuous data management (CDM) node, the CDM node including a metrics library for sending out system metrics in a sparse manner and a statistics relay for receiving streaming metrics from nodes in a node cluster, the node cluster including the CDM node, the statistics relay pushing the received metrics to a metrics collector. A sparse consumers module pulls metrics, from the metrics collector, pushed to the metrics collector by the statistics relay.Type: ApplicationFiled: October 12, 2020Publication date: April 14, 2022Inventors: Gurashish Singh Brar, Karan Jayesh Bavishi, Gurjeet S. Arora
-
Patent number: 10719562Abstract: Techniques for providing a distributed and fast data storage layer for large scale web data services are disclosed. In some embodiments, a distributed data storage layer for web data services includes storing web related data for a plurality of merchants in the distributed data storage layer; and copying on demand a data store and a search index for web related data for a first merchant to perform a job for updating the web related data for the first merchant.Type: GrantFiled: December 11, 2014Date of Patent: July 21, 2020Assignee: BloomReach Inc.Inventors: Prateek Gupta, Praveen K. Patnala, Amit Aggarwal, Ashutosh Garg, Gurashish Singh Brar, Kannan Nitin Sharma, Manojit Sarkar, Shao-Chuan Wang
-
Patent number: 10437628Abstract: Application virtualization at the thread level, rather than at the process level. the operation of a thread across virtualization contexts. For instance, one virtualization context might be a native environment, whereas another virtualization context might be a virtualization environment in which code running inside a virtualization package has access to virtualized computing resources. A thread operating in a first virtualization context then enters an entry point to code associated with a second virtualization context. For instance, a native thread might enter a plug-in operating as part of a virtualized package in a virtualization environment. While the thread is operating on the code, the thread might request access to the second computing resources associated with the second virtualization environment. In response, the thread is associated with the second virtualization context such that the thread has access to the second computing resources associated with the second virtualization context.Type: GrantFiled: November 6, 2017Date of Patent: October 8, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Neil A. Jacobson, Gurashish Singh Brar, Kristofer Hellick Reierson
-
Publication number: 20180285141Abstract: Application virtualization at the thread level, rather than at the process level. the operation of a thread across virtualization contexts. For instance, one virtualization context might be a native environment, whereas another virtualization context might be a virtualization environment in which code running inside a virtualization package has access to virtualized computing resources. A thread operating in a first virtualization context then enters an entry point to code associated with a second virtualization context. For instance, a native thread might enter a plug-in operating as part of a virtualized package in a virtualization environment. While the thread is operating on the code, the thread might request access to the second computing resources associated with the second virtualization environment. In response, the thread is associated with the second virtualization context such that the thread has access to the second computing resources associated with the second virtualization context.Type: ApplicationFiled: November 6, 2017Publication date: October 4, 2018Inventors: Neil A. Jacobson, Gurashish Singh Brar, Kirstofer Hellick Reierson
-
Patent number: 9870372Abstract: Embodiments are directed to rapidly launching a virtual software application using on-demand file staging, rapidly launching a virtual software application using on-demand registry staging and to rapidly publishing a virtual software application using on-demand staging. In one scenario, a computer system creates a high-level file listing that includes a list of specified high-level data files and directories that are part of a virtual application package. The computer system receives an indication from an application user that the virtual application is to be accessed and dynamically creates sparse data files for those data files that are to be accessed based on the received indication. Then, upon determining that the virtual application is attempting to access the sparse data files, the computer system dynamically streams the data corresponding to the sparse data files on demand from the remote data store.Type: GrantFiled: August 11, 2014Date of Patent: January 16, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Matthew R. Yandek, Gurashish Singh Brar, Hui Li
-
Patent number: 9811364Abstract: Application virtualization at the thread level, rather than at the process level. the operation of a thread across virtualization contexts. For instance, one virtualization context might be a native environment, whereas another virtualization context might be a virtualization environment in which code running inside a virtualization package has access to virtualized computing resources. A thread operating in a first virtualization context then enters an entry point to code associated with a second virtualization context. For instance, a native thread might enter a plug-in operating as part of a virtualized package in a virtualization environment. While the thread is operating on the code, the thread might request access to the second computing resources associated with the second virtualization environment. In response, the thread is associated with the second virtualization context such that the thread has access to the second computing resources associated with the second virtualization context.Type: GrantFiled: June 13, 2013Date of Patent: November 7, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Neil A. Jacobson, Gurashish Singh Brar, Kristofer Hellick Reierson
-
Patent number: 9081846Abstract: Technologies are described herein for generating a local copy of a virtualized application package from a local installation. An empty copy of the virtualized application package is generated from a skeleton file. The skeleton file contains a hash value computed from each data block in the virtualized application package. The component files of the application are retrieved from a virtual file system representation of the location installation of the application, and each component file is divided into one or more blocks of data. A hash value is computed for each block of data and the skeleton file is searched for a hash value corresponding to a data block of the virtualized application file that matches the hash value computed for each block of data. If a match is found, the block of data is copied to the corresponding data block of the empty copy of the virtualized application package.Type: GrantFiled: September 6, 2013Date of Patent: July 14, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Trevor William McDiarmid, Gurashish Singh Brar
-
Publication number: 20150169624Abstract: Techniques for providing a distributed and fast data storage layer for large scale web data services are disclosed. In some embodiments, a distributed data storage layer for web data services includes storing web related data for a plurality of merchants in the distributed data storage layer; and copying on demand a data store and a search index for web related data for a first merchant to perform a job for updating the web related data for the first merchant.Type: ApplicationFiled: December 11, 2014Publication date: June 18, 2015Inventors: Prateek Gupta, Praveen K. Patnala, Amit Aggarwal, Ashutosh Garg, Gurashish Singh Brar, Kannan Nitin Sharma, Manojit Sarkar, Shao-Chuan Wang
-
Publication number: 20140373008Abstract: Application virtualization at the thread level, rather than at the process level, the operation of a thread across virtualization contexts. For instance, one virtualization context might be a native environment, whereas another virtualization context might be a virtualization environment in which code running inside a virtualization package has access to virtualized computing resources. A thread operating in a first virtualization context then enters an entry point to code associated with a second virtualization context. For instance, a native thread might enter a plug-in operating as part of a virtualized package in a virtualization environment. While the thread is operating on the code, the thread might request access to the second computing resources associated with the second virtualization environment. In response, the thread is associated with the second virtualization context such that the thread has access to the second computing resources associated with the second virtualization context.Type: ApplicationFiled: June 13, 2013Publication date: December 18, 2014Inventors: Neil A. Jacobson, Gurashish Singh Brar, Kristofer Hellick Reierson
-
Publication number: 20140351301Abstract: Embodiments are directed to rapidly launching a virtual software application using on-demand file staging, rapidly launching a virtual software application using on-demand registry staging and to rapidly publishing a virtual software application using on-demand staging. In one scenario, a computer system creates a high-level file listing that includes a list of specified high-level data files and directories that are part of a virtual application package. The computer system receives an indication from an application user that the virtual application is to be accessed and dynamically creates sparse data files for those data files that are to be accessed based on the received indication. Then, upon determining that the virtual application is attempting to access the sparse data files, the computer system dynamically streams the data corresponding to the sparse data files on demand from the remote data store.Type: ApplicationFiled: August 11, 2014Publication date: November 27, 2014Inventors: Matthew R. Yandek, Gurashish Singh Brar, Hui Li
-
Patent number: 8832296Abstract: Embodiments are directed to rapidly launching a virtual software application using on-demand file staging, rapidly launching a virtual software application using on-demand registry staging and to rapidly publishing a virtual software application using on-demand staging. In one scenario, a computer system creates a high-level file listing that includes a list of specified high-level data files and directories that are part of a virtual application package. The computer system receives an indication from an application user that the virtual application is to be accessed and dynamically creates sparse data files for those data files that are to be accessed based on the received indication. Then, upon determining that the virtual application is attempting to access the sparse data files, the computer system dynamically streams the data corresponding to the sparse data files on demand from the remote data store.Type: GrantFiled: December 15, 2011Date of Patent: September 9, 2014Assignee: Microsoft CorporationInventors: Matthew R. Yandek, Gurashish Singh Brar, Hui Li
-
Patent number: 8631397Abstract: Virtual applications are automatically kept up to date with the current version of a virtual application. Instead of the client having to obtain the entire version of the current virtual application, the client obtains the portions of the current virtual application that are changed from its version of the virtual application. After obtaining the changes needed to update its version of the virtual application, the client integrates those changes into its version of the virtual application.Type: GrantFiled: March 31, 2008Date of Patent: January 14, 2014Assignee: Microsoft CorporationInventors: Gurashish Singh Brar, Joe Keng Yap, Trevor William McDiarmid
-
Publication number: 20140007081Abstract: Technologies are described herein for generating a local copy of a virtualized application package from a local installation. An empty copy of the virtualized application package is generated from a skeleton file. The skeleton file contains a hash value computed from each data block in the virtualized application package. The component files of the application are retrieved from a virtual file system representation of the location installation of the application, and each component file is divided into one or more blocks of data. A hash value is computed for each block of data and the skeleton file is searched for a hash value corresponding to a data block of the virtualized application file that matches the hash value computed for each block of data. If a match is found, the block of data is copied to the corresponding data block of the empty copy of the virtualized application package.Type: ApplicationFiled: September 6, 2013Publication date: January 2, 2014Applicant: Microsoft CorporationInventors: Trevor William McDiarmid, Gurashish Singh Brar
-
Patent number: 8533151Abstract: Technologies are described herein for generating a local copy of a virtualized application package from a local installation. An empty copy of the virtualized application package is generated from a skeleton file. The skeleton file contains a hash value computed from each data block in the virtualized application package. The component files of the application are retrieved from a virtual file system representation of the location installation of the application, and each component file is divided into one or more blocks of data. A hash value is computed for each block of data and the skeleton file is searched for a hash value corresponding to a data block of the virtualized application file that matches the hash value computed for each block of data. If a match is found, the block of data is copied to the corresponding data block of the empty copy of the virtualized application package.Type: GrantFiled: May 26, 2009Date of Patent: September 10, 2013Assignee: Microsoft CorporationInventors: Trevor William McDiarmid, Gurashish Singh Brar
-
Patent number: 8510734Abstract: Embodiments provide an optimized virtual application or suite of virtual applications, but are not so limited. In an embodiment, components of a system are configured to generate an optimized virtual package that can be used in a virtual application streaming environment. Components of the system can provide bits of the optimized virtual package based in part on scenario mappings associated with a user action and/or an application or application feature. In one embodiment, a client virtualization handler can operate to download byte ranges of an optimized virtual package including re-prioritizing byte range download operations as part of streaming virtual application functionality over a computing network.Type: GrantFiled: December 21, 2012Date of Patent: August 13, 2013Assignee: Microsoft CorporationInventors: Jefferson B. Criddle, Gurashish Singh Brar, Anthony D. Krueger
-
Publication number: 20130159543Abstract: Embodiments are directed to rapidly launching a virtual software application using on-demand file staging, rapidly launching a virtual software application using on-demand registry staging and to rapidly publishing a virtual software application using on-demand staging. In one scenario, a computer system creates a high-level file listing that includes a list of specified high-level data files and directories that are part of a virtual application package. The computer system receives an indication from an application user that the virtual application is to be accessed and dynamically creates sparse data files for those data files that are to be accessed based on the received indication. Then, upon determining that the virtual application is attempting to access the sparse data files, the computer system dynamically streams the data corresponding to the sparse data files on demand from the remote data store.Type: ApplicationFiled: December 15, 2011Publication date: June 20, 2013Applicant: MICROSOFT CORPORATIONInventors: Matthew R. Yandek, Gurashish Singh Brar, Hui Li
-
Patent number: 8341620Abstract: Embodiments provide an optimized virtual application or suite of virtual applications, but are not so limited. In an embodiment, components of a system are configured to generate an optimized virtual package that can be used in a virtual application streaming environment. Components of the system can provide bits of the optimized virtual package based in part on scenario mappings associated with a user action and/or an application or application feature. In one embodiment, a client virtualization handler can operate to download byte ranges of an optimized virtual package including re-prioritizing byte range download operations as part of streaming virtual application functionality over a computing network.Type: GrantFiled: June 25, 2009Date of Patent: December 25, 2012Assignee: Microsoft CorporationInventors: Jefferson B. Criddle, Gurashish Singh Brar, Anthony D. Krueger
-
Patent number: 8032618Abstract: A determination is made as to whether an updated image for an outdated virtualized application is available on a server. If it is determined that the updated image is available, then a background download operation configured to retrieve the updated image from the server is initiated. Another determination is made as to whether the outdated virtualized application is being utilized. After the background download operation is complete, if it is determined that the outdated virtualized application is not being utilized, then the outdated virtualized application is transformed to a current virtualized application by replacing at least a portion of the outdated virtualized application with the updated image. The outdated virtualized application and the current virtualized application are configured to be executed on the computer without installation on a computer.Type: GrantFiled: June 5, 2009Date of Patent: October 4, 2011Assignee: Microsoft CorporationInventors: Jefferson Criddle, Gurashish Singh Brar, Joe Keng Yap