Patents by Inventor Arif A. Merchant
Arif A. Merchant 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: 9063898Abstract: An embodiment of a method of restoring backup data comprises first and second steps that preferably are executed at least partially in parallel. The first step restores an incremental backup. The second step selectively restores a full backup. The selective restoration of the full backup disregards units of data that were restored from the incremental backup and restores a remainder of the full backup. In an alternative embodiment, the first step precedes the second step. In another alternative embodiment, the selective restoration of the full backup accesses a table that indicates the units of data contained in the incremental backup to determine which units of data to disregard in the full backup.Type: GrantFiled: November 23, 2004Date of Patent: June 23, 2015Assignee: Hewlett-Packard Development Company, L.P.Inventors: Arif Merchant, Kimberly Keeton, Alistair Veitch
-
Patent number: 9047306Abstract: An embodiment of a method of writing data begins with a first step of generating a timestamp. A second step issues a query that includes the timestamp to each of a plurality of primary storage devices. The method continues with a third step of receiving a query reply from at least a quorum of the primary storage devices. The query replies indicate that the timestamp is later than an existing timestamp for the data. In a fourth step, the data is mirrored to secondary storage after receiving the query reply from at least the quorum of the primary storage devices. Upon receiving a mirror completion message from the secondary storage, a fifth step issues a write message that includes at least a portion of the data and the timestamp to each of the primary storage devices.Type: GrantFiled: October 17, 2005Date of Patent: June 2, 2015Assignee: Hewlett-Packard Development Company, L.P.Inventors: Svend Frolund, Arif Merchant, Alistair Veitch
-
Patent number: 9043512Abstract: Systems, mediums, and methods are provided for scheduling input/output requests to a storage system. The input output requests may be received, categorized based on their priority, and scheduled for retrieval from the storage system. Lower priority requests may be divided into smaller sub-requests, and the sub-requests may be scheduled for retrieval only when there are no pending higher priority requests, and/or when higher priority requests are not predicted to arrive for a certain period of time. By servicing the small sub-requests rather than the entire lower priority request, the retrieval of the lower priority request may be paused in the event that a high priority request arrives while the lower priority request is being serviced.Type: GrantFiled: January 7, 2015Date of Patent: May 26, 2015Assignee: Google Inc.Inventor: Arif Merchant
-
Publication number: 20150088940Abstract: Methods to determine and automatically recommend or adjust configuration parameters for storing files in large-scale distributed storage systems are disclosed. These methods may receive file metadata and trace data that allows the system to identify file access patterns. Additionally, the methods may receive information about distributed storage systems in a datacenter. This information can be used to choose storage parameters on a per-file basis for storing files.Type: ApplicationFiled: September 20, 2013Publication date: March 26, 2015Applicant: GOOGLE INC.Inventors: Murray M. STOKELY, Arif MERCHANT
-
Patent number: 8949489Abstract: Systems, mediums, and methods are provided for scheduling input/output requests to a storage system. The input output requests may be received, categorized based on their priority, and scheduled for retrieval from the storage system. Lower priority requests may be divided into smaller sub-requests, and the sub-requests may be scheduled for retrieval only when there are no pending higher priority requests, and/or when higher priority requests are not predicted to arrive for a certain period of time. By servicing the small sub-requests rather than the entire lower priority request, the retrieval of the lower priority request may be paused in the event that a high priority request arrives while the lower priority request is being serviced.Type: GrantFiled: March 21, 2012Date of Patent: February 3, 2015Assignee: Google Inc.Inventor: Arif Merchant
-
Patent number: 8918566Abstract: A system and method for allocating resources on a shared storage system are disclosed. The system 10 can include a shared storage device 12 and a plurality of port schedulers 14 associated with a plurality of I/O ports 16 that are in communication with the shared storage device 12. Each port scheduler 14 is configured to enforce a concurrency level and a proportional share of storage resources of the shared storage device 12 for each application 18 utilizing the associated port. The system 10 can also include a resource controller 17 that is configured to both monitor performance characteristics of the applications 18 utilizing at least one of the I/O ports 16, and to adjust the concurrency level and the proportional share of storage resources parameters of the port schedulers 14 for at least a portion of the applications 18 in order to vary allocation of the resources of the shared storage device 12.Type: GrantFiled: January 23, 2009Date of Patent: December 23, 2014Assignee: Hewlett-Packard Development Company, L. P.Inventors: Pradeep Padala, Arif A. Merchant, Mustafa Uysal
-
Publication number: 20140237172Abstract: A transactional memory system uses a volatile memory as primary storage for transactions. Data is selectively stored in a non-volatile memory to impart durability to the transactional memory system to allow the transactional memory system to be restored to a consistent state in the event of data loss to the volatile memory.Type: ApplicationFiled: September 14, 2011Publication date: August 21, 2014Inventors: Mehul A. Shah, Slavros Hartzopoulos, Arif A. Merchant, Mohit Saxena
-
Patent number: 8775763Abstract: The present invention provides techniques for assignment and layout of redundant data in data storage system. In one aspect, the data storage system stores a number M of replicas of the data. Nodes that have sufficient resources available to accommodate a requirement of data to be assigned to the system are identified. When the number of nodes is greater than M, the data is assigned to M randomly selected nodes from among those identified. The data to be assigned may include a group of data segments and when the number of nodes is less than M, the group is divided to form a group of data segments having a reduced requirement. Nodes are then identified that have sufficient resources available to accommodate the reduced requirement. In other aspects, techniques are providing for adding a new storage device node to a data storage system having a plurality of existing storage device nodes and for removing data from a storage device node in such a data storage system.Type: GrantFiled: July 13, 2007Date of Patent: July 8, 2014Assignee: Hewlett-Packard Development Company, L.P.Inventors: Arif Merchant, Svend Frolund, Yasusuhi Saito, Susan Spence, Alistair Veitch
-
Patent number: 8767535Abstract: A method for controlling resource allocation is provided. The method includes determining a service metric associated with a first application, wherein the first application is associated with one or more virtual machines. The method further includes comparing the service metric to an application specific service level goal associated with the first application and modifying a resource allocation associated with the first application at one or more of the virtual machines.Type: GrantFiled: July 11, 2007Date of Patent: July 1, 2014Assignee: Hewlett-Packard Development Company, L.P.Inventors: Mustafa Uysal, Pradeep Padala, Xiaoyun Zhu, Zhikui Wang, Sharad Singhal, Arif A. Merchant, Kenneth Salem
-
Patent number: 8713280Abstract: A system includes a number of hard disk drives and a controller. Each hard disk drive is selected from a number of different hard disk drive types. Each hard disk drive type has a different speed at which the hard disk drives of the hard disk drive type rotate to read and write data. At least one of the hard disk drives is of a different hard disk drive type than at least one other of the hard disk drives. The controller, responsive to a request to write particular data to the hard disk drives, is to select a given hard disk drive of the hard disk drives based on a type of the particular data, and is to write the particular data to the given hard disk drive.Type: GrantFiled: October 30, 2009Date of Patent: April 29, 2014Assignee: Hewlett-Packard Development Company, L.P.Inventors: Eric A. Anderson, Ludmila Cherkasova, Arif A. Merchant
-
Patent number: 8694699Abstract: Systems and methods for path selection for application commands are described. To this end, information associated with at least one application command that were processed at least one port of a target device is received. For a subsequent application command, a set of ports of the target device is determined. In one implementation, the set of ports is determined based on information associated with the subsequent application command. Once the set of ports is determined, the subsequent application command is directed to a port selected from the set of ports.Type: GrantFiled: June 4, 2010Date of Patent: April 8, 2014Assignee: Hewlett-Packard Development Company, L.P.Inventors: Kishore Kumar Muppirala, Satish Kumar Mopur, Sumanesh Samanta, Dinkar Sitaram, Ayman Abouelwafa, Mustafa Uysal, Arif Merchant
-
Patent number: 8683477Abstract: A model is constructed to determine performance of each computing application based on allocation of resources (including at least one hardware resource) to the computing applications. How the allocation of the resources to the computing applications affects the performance is unknown beforehand. The resources are allocated to the computing applications based at least on the model. Where the resources are overloaded as allocated to the computing applications, performance degradation of each computing application is performed based at least on priorities of the computing applications relative to one another and on the model. Performance degradation reduces usage of the resources by the computing applications so that the resources are no longer overloaded. How the priorities of the computing applications affect the performance degradation in a relative manner to one another is known and predictable beforehand.Type: GrantFiled: July 5, 2009Date of Patent: March 25, 2014Assignee: Hewlett-Packard Development Company, L.P.Inventors: Arif A. Merchant, Mustafa Uysal
-
Patent number: 8677375Abstract: Systems, methods, and computer-readable and executable instructions are provided for selecting executing requests to preempt. Selecting executing requests to preempt can include determining whether an application is in an overload condition. Selecting executing requests can also include in response to determining the application is in an overload condition, identifying each request that is being executed by the application. Selecting executing requests can also include determining a value for each request that is executing. Furthermore, selecting executing requests can also include selecting executing requests to preempt based on the values for the requests.Type: GrantFiled: January 29, 2009Date of Patent: March 18, 2014Assignee: Hewlett-Packard Development Company, L.P.Inventors: Mustafa Uysal, Arif A. Merchant, David Trastour
-
Patent number: 8392633Abstract: To schedule workloads of requesters of a shared storage resource, a scheduler specifies relative fairness for the requesters of the shared storage resource. In response to the workloads of the requesters, the scheduler modifies performance of the scheduler to deviate from the specified relative fairness to improve input/output (I/O) efficiency in processing the workloads at the shared storage resource.Type: GrantFiled: October 1, 2008Date of Patent: March 5, 2013Assignee: Hewlett-Packard Development Company, L.P.Inventors: Ajay Gulati, Mustafa Uysal, Arif A. Merchant
-
Patent number: 8359463Abstract: There is provided a computer-implemented method for selecting from a plurality of full configurations of a storage system an operational configuration for executing an application. An exemplary method comprises obtaining application performance data for the application on each of a plurality of test configurations. The exemplary method also comprises obtaining benchmark performance data with respect to execution of a benchmark on the plurality of full configurations, one or more degraded configurations of the full configurations and the plurality of test configurations. The exemplary method additionally comprises estimating a metric for executing the application on each of the plurality of full configurations based on the application performance data and the benchmark performance data. The operational configuration may be selected from among the plurality full configurations based on the metric.Type: GrantFiled: May 26, 2010Date of Patent: January 22, 2013Assignee: Hewlett-Packard Development Company, L.P.Inventors: Arif A. Merchant, Ludmila Cherkasova
-
Patent number: 8335770Abstract: An embodiment of a method of restoring data begins with a step of restoring point-in-time data from a local copy. The method concludes with a step of restoring at least a portion of an incremental difference between the point-in-time data and a desired state of the data from a remote mirror.Type: GrantFiled: February 3, 2005Date of Patent: December 18, 2012Assignee: Hewlett-Packard Development Company, L.P.Inventors: Arif Merchant, Kimberly Keeton
-
Publication number: 20120023289Abstract: A system includes a number of hard disk drives and a controller. Each hard disk drive is selected from a number of different hard disk drive types. Each hard disk drive type has a different speed at which the hard disk drives of the hard disk drive type rotate to read and write data. At least one of the hard disk drives is of a different hard disk drive type than at least one other of the hard disk drives. The controller, responsive to a request to write particular data to the hard disk drives, is to select a given hard disk drive of the hard disk drives based on a type of the particular data, and is to write the particular data to the given hard disk drive.Type: ApplicationFiled: October 30, 2009Publication date: January 26, 2012Inventors: Eric A. Anderson, Ludmilla cherkasova, Arif A. Merchant
-
Publication number: 20120014015Abstract: A hard disk drive includes a storage surface, a motor, a read/write had, and a number of regions into which the storage surface is divisible. Data is writable to and data is readable from the storage surface. The motor is to rotate the storage surface at a variable speed. The read/write head is to write data to and read data from the storage surface while the storage surface is rotated by the motor. Each region corresponds to a different speed at which the storage surface is rotated for the read/write head to write data to and read data from the region.Type: ApplicationFiled: October 30, 2009Publication date: January 19, 2012Inventors: Eric A. Anderson, Arif A. Merchant
-
Publication number: 20110302337Abstract: Systems and methods for path selection for application commands are described. To this end, information associated with at least one application command that were processed at least one port of a target device is received. For a subsequent application command, a set of ports of the target device is determined. In one implementation, the set of ports is determined based on information associated with the subsequent application command. Once the set of ports is determined, the subsequent application command is directed to a port selected from the set of ports.Type: ApplicationFiled: June 4, 2010Publication date: December 8, 2011Inventors: Kishore Kumar Muppirala, Satish Kumar Mopur, Sumanesh Samanta, Dinkar Sitaram, Ayman Abouelwafa, Mustafa Uysal, Arif Merchant
-
Publication number: 20110296249Abstract: There is provided a computer-implemented method for selecting from a plurality of full configurations of a storage system an operational configuration for executing an application. An exemplary method comprises obtaining application performance data for the application on each of a plurality of test configurations. The exemplary method also comprises obtaining benchmark performance data with respect to execution of a benchmark on the plurality of full configurations, one or more degraded configurations of the full configurations and the plurality of test configurations. The exemplary method additionally comprises estimating a metric for executing the application on each of the plurality of full configurations based on the application performance data and the benchmark performance data. The operational configuration may be selected from among the plurality full configurations based on the metric.Type: ApplicationFiled: May 26, 2010Publication date: December 1, 2011Inventors: Arif A. Merchant, Ludmila Cherkasova