Patents by Inventor Huamin Chen

Huamin Chen 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: 20200110830
    Abstract: Scalable object storage with intelligent replication is disclosed. A container image storage system executing on one or more processor devices receives a container image comprising a plurality of objects. For each object, a reference count indicative of how many different container images stored in the container image storage system include the object is determined. For each object, a number of copies of the object to be stored in a storage based on the reference count is determined. For each object, the number of copies of the object are stored in the storage.
    Type: Application
    Filed: October 5, 2018
    Publication date: April 9, 2020
    Inventors: Huamin Chen, Dennis R. C. Keefe
  • Patent number: 10613961
    Abstract: Aspects of the disclosure provide for mechanisms for resource allocation in computer systems. A method of the disclosure may include deploying a plurality of containers on a plurality of nodes of a computer system; executing, in the plurality of containers, a benchmark workload utilizing a compute resource; obtaining a plurality of benchmarking results representing performance of the containers utilizing the compute resource; and creating, by a processing device, a resource definition in view of the plurality of benchmarking results, wherein the resource definition comprises a resource allocation unit indicative of a computing capacity of the computer system utilizing the compute resource and an association between the resource allocation unit and the compute resource.
    Type: Grant
    Filed: February 5, 2018
    Date of Patent: April 7, 2020
    Assignee: Red Hat, Inc.
    Inventor: Huamin Chen
  • Publication number: 20200103952
    Abstract: A power consumption optimization system includes a virtual machine (VM) provisioned on a host, a memory, a server, and a processor in communication with the memory. The processor causes the server to store a power consumption profile of the VM. The VM runs at a processor frequency state. Additionally, the processor causes the server to receive a request to lower a processor frequency for the VM from an original processor frequency state to a reduced processor frequency state. The request has request criteria indicating a time duration associated with the request. The server validates the request criteria and a requirement of another tenant on the host. Responsive to validating the request criteria and the requirement the other tenant on the host, the server confirms the request to lower the processor frequency. Additionally, the server lowers the processor frequency to the reduced processor frequency state during the time duration.
    Type: Application
    Filed: December 2, 2019
    Publication date: April 2, 2020
    Inventors: Huamin Chen, Jay Vyas
  • Patent number: 10606805
    Abstract: Methods, systems, and computer program products are included for querying and retrieving objects from images. An example method includes traversing a persistent local mirror overlay filesystem (PLMO FS) to determine whether one or more objects of a requested image already exist on a local data storage device. If so, an I/O hit is determined, and the objects are not pulled from the registry. Conversely, if the objects are not found on the local data storage device, an I/O miss is determined, and the objects are pulled from the registry. A local copy of the requested image is then built using the already locally-existing I/O-hit objects and the newly retrieved I/O-missed objects, such that the local copy of the requested image is a mirror of the original requested image in the registry.
    Type: Grant
    Filed: November 16, 2017
    Date of Patent: March 31, 2020
    Assignee: RED HAT, INC.
    Inventor: Huamin Chen
  • Patent number: 10599480
    Abstract: Cascading job scheduling in guests is disclosed. For example, first, second, third, and fourth nodes, each execute respective first, second, third, and fourth pluralities of guests each of which executes respective first, second, third, and fourth pluralities of jobs. A scheduler executes on a processor to receive a current capacity update of the first node. A respective quantity of jobs executing on each of the first, second, third, and fourth nodes is tracked. A first, second, third, and fourth estimated capacity of the respective first, second, third, and fourth nodes is calculated. The first, second, third, and fourth nodes are ranked in a list based on the respective estimated capacities. A request to execute a job is received. The first, second, and third nodes are selected as a schedulable set based on the list. A schedulable set notice and the job are sent to the first node to be executed.
    Type: Grant
    Filed: May 5, 2017
    Date of Patent: March 24, 2020
    Assignee: Red Hat, Inc.
    Inventors: Huamin Chen, Jay Vyas
  • Patent number: 10601900
    Abstract: Implementations of the disclosure provide an apparatus comprises: a memory to store a set of blocks of a distributed ledger; and a processing device, operatively coupled to the memory, to: receive, from a node device, a message comprising a first number of blocks of the distributed ledger that have been processed by the node device. A number of blocks to be skipped are determined. The number is equal to a difference between the first number of blocks and a second number of blocks of the distributed ledger that have been processed by the apparatus. One or more blocks of the determined number of blocks that have been processed by the node device but have not been processed by the apparatus are utilized to update the set of blocks of the distributed ledger. Thereupon, the one or more blocks that are utilized by the apparatus to update the distributed ledger are skipped for processing.
    Type: Grant
    Filed: May 24, 2017
    Date of Patent: March 24, 2020
    Assignee: Red Hat, Inc.
    Inventors: Huamin Chen, Jay Vyas
  • Publication number: 20200073956
    Abstract: Database-aware snapshotting is disclosed. It is determined that a first snapshot of a database having a plurality of shards should be taken. Each shard has a corresponding snapshot sidecar container of a plurality of snapshot sidecar containers. A consensus state among the plurality of snapshot sidecar containers that the first snapshot should be taken is determined. A snapshot controller is directed to take the first snapshot of the database, the first snapshot generating a shard volume snapshot for each shard of a plurality of shards. Subsequent to the snapshot controller taking the first snapshot of the database, each snapshot sidecar container is informed to allow activity on the corresponding shard.
    Type: Application
    Filed: August 29, 2018
    Publication date: March 5, 2020
    Inventors: Huamin Chen, Tomas Smetana
  • Patent number: 10558533
    Abstract: Aspects of the disclosure provide for mechanisms for reducing service disruptions in a computer system. A method of the disclosure may include determining that a service replica is to be deployed in a computer system; determining, by a processing device, a plurality of lost impact factors corresponding to a plurality of nodes of the computer system; selecting, in view of the plurality of lost impact factors, a first node of the plurality of nodes; and deploying the service replica on the first node. In some embodiments, the method further includes identifying one or more services running on a first node of the plurality of nodes; and determining, a plurality of service capacity factors corresponding to each of the identified services, wherein each of the service capacity factors represents an amount of service loss of one of the identified services resulted from a loss of one of the nodes.
    Type: Grant
    Filed: December 7, 2017
    Date of Patent: February 11, 2020
    Assignee: Red Hat, Inc.
    Inventor: Huamin Chen
  • Publication number: 20200042176
    Abstract: Categorizing computing process output data streams for flash storage devices is disclosed. A first computing process characteristic of a first computing process that generates a first output data stream is determined. A structure that correlates the first computing process characteristic to a first stream identifier is accessed. A first filter driver is associated with the first computing process to configure the first filter driver to receive the first output data stream. The first filter driver is associated with a flash storage device. The first stream identifier is sent to the first filter driver.
    Type: Application
    Filed: October 9, 2019
    Publication date: February 6, 2020
    Inventors: Huamin Chen, Jay Vyas
  • Publication number: 20200042214
    Abstract: Implementing a base set of data storage features for containers across multiple cloud computing environments. A container specification analyzer receives a container specification that identifies a container to be initiated, a volume to be mounted, and a native device driver to communicate with to facilitate mounting the volume. The container specification analyzer changes the container specification to generate an updated container specification that identifies a pass-through device driver to communicate with in lieu of the native device driver and identifies pass-through device driver data that identifies a data storage feature to be performed on data destined for the native device driver. The container specification analyzer returns the updated container specification for processing by a container initiator.
    Type: Application
    Filed: August 2, 2018
    Publication date: February 6, 2020
    Inventors: Huamin Chen, Bradley D. Childs
  • Publication number: 20200042733
    Abstract: Disclosed systems and methods initiate an instance of an isolated application on a node computing device. The systems determine that the isolated application requests exclusive access to a block storage resource, create a control group associated with the block storage resource to provide access to members of the control group and set an access rate limit to zero for non-members of the control group, and assign the isolated application to the control group.
    Type: Application
    Filed: August 1, 2018
    Publication date: February 6, 2020
    Inventor: Huamin Chen
  • Publication number: 20200036649
    Abstract: A system and method for providing high availability for a thin-provisioned container cluster includes a memory, one or more processors in communication with the memory, a scheduler executing on the one or more processors, and a spot instance market monitor. The spot instance market monitor receives market information about spot instances in a cloud system at a first time. The spot instances are available to a client at the first time. The spot instance market monitor determines, based on the market information, a respective reliability value for each of the spot instances at the first time. Then, the scheduler selects one spot instance among the spot instances based on the reliability value of the spot instance. In response to the selection of the spot instance, the scheduler schedules a container on the spot instance and executes the container on the spot instance.
    Type: Application
    Filed: October 4, 2019
    Publication date: January 30, 2020
    Inventors: Huamin Chen, Jay Vyas
  • Patent number: 10547443
    Abstract: An example method may include receiving, at a session key service, a first session key and a first public key of a client device to be authenticated to a web server. The first session key being encrypted by the client device using a second public key of the web server. The web server is a subscriber of the session key service hosted in a cloud-based environment. The method may also include decrypting, using a first private key of the web server, the first session key to obtain a plaintext session key, encrypting the plaintext session key using the first public key of the client device to generate a second session key, and sending the second session key to the web server to facilitate a decryption of the second session key by the client device for an authentication of the client device to the web server.
    Type: Grant
    Filed: May 24, 2017
    Date of Patent: January 28, 2020
    Assignee: Red Hat, Inc.
    Inventors: Huamin Chen, Jay Vyas
  • Patent number: 10540208
    Abstract: Computing resources can be allocated to a container in a computing environment. For example, a computing device can determine that a dependent computing resource is to be allocated to the container. The dependent computing resource can depend on another computing resource being allocated to the container before the dependent computing resource is allocated to the container. The computing device can determine a parameter value for a backoff process for checking the availability of the dependent computing resource. The parameter value can be determined using another parameter value for another backoff process for checking the availability of the other computing resource. The computing device can then determine that the dependent computing resource is available by executing the backoff process using the parameter value. In response to determining that the dependent computing resource is available, the computing device can allocate the dependent computing resource to the container.
    Type: Grant
    Filed: December 22, 2017
    Date of Patent: January 21, 2020
    Assignee: Red Hat, Inc.
    Inventor: Huamin Chen
  • Publication number: 20200012446
    Abstract: Aspects of the disclosure provide for polymorphism and type casting in storage volume connections. A method of the disclosure includes storing, in a memory associated with a processing device executing a container manager, a persistent volume (PV) identifier of a PV created on a storage device and a list of polymorphic connection types supported by the PV, and responsive to receiving a query comprising the PV identifier from a container host, performing, for a connection from the container host to the storage device, type casting to identify a connection type from the list of polymorphic connection types and connection information for the connection type to enable establishment of the connection between the container host and the storage device.
    Type: Application
    Filed: September 18, 2019
    Publication date: January 9, 2020
    Inventor: Huamin Chen
  • Publication number: 20200012443
    Abstract: Flexible deprovisioning of distributed storage is disclosed. For example, an orchestrator executes on a processor to measure a current storage demand factor based on a current count of service guests and a storage capacity of a plurality of storage nodes. A projected storage demand factor is calculated by (i) adjusting the current count of service guests with a timing factor resulting in a projected count, and (ii) combining the projected count with a storage class associated with the service guests. The orchestrator determines that the projected storage demand factor is lower than the current storage demand factor, and in response requests termination of a first storage node of the plurality of storage nodes based on the first storage node lacking an active communication session with the service guests. Cancel termination of the first storage node based on an association between the first storage node and a second storage node.
    Type: Application
    Filed: July 5, 2018
    Publication date: January 9, 2020
    Inventors: Huamin Chen, Steven Travis Nielsen, Sage Austin Weil
  • Patent number: 10528377
    Abstract: A system includes a memory, a processor in communication with the memory, a hypervisor executing on the processor, a pool of hypervisor resources, and a cloud-sharing module (CSM). The CSM runs in a kernel to assign an anonymous identity to a hypervisor resource from the pool of hypervisor resources. The CSM broadcasts a transaction for the hypervisor resource and determines which provider owns the hypervisor resource. A first provider is associated with a second anonymous identity and a second provider is associated with a third anonymous identity. Additionally, the CSM receives mining information that includes a block associated with the transaction, where the block is part of a blockchain. The CSM completes the transaction for the first anonymous identity associated with the hypervisor resource between the second anonymous identity and the third anonymous identity.
    Type: Grant
    Filed: April 26, 2017
    Date of Patent: January 7, 2020
    Assignee: RED HAT, INC.
    Inventors: Jay Vyas, Huamin Chen
  • Publication number: 20200007613
    Abstract: An example method of providing a configuration for a multitier microservice architecture includes receiving a configuration request from a user for a configuration that satisfies a set of conditions in a cloud environment. The method also includes searching a configuration data store for the configuration that matches the set of conditions. The configuration specifies a first container and a second container, the first container sends a first communication to the second container, and the second container sends a second communication responsive to the first communication to the first container. The method further includes in response to finding the configuration that matches the set of conditions: sending an allocation request to a cloud provider for allocation of the configuration in the cloud environment and providing a first identifier (ID) that identifies the first container and a second ID that identifies the second container to the user.
    Type: Application
    Filed: September 9, 2019
    Publication date: January 2, 2020
    Inventors: Jay Vyas, Huamin Chen
  • Publication number: 20190392144
    Abstract: Virus scanning of container images can be managed. For example, container images can be received in a sequential order. The container images can then be analyzed to determine the contents of the container images. The container images can be arranged in a virus-scanning queue in an order that is different from the sequential order in which the container images were received based on the contents of the container images. The container images can then be scanned for viruses in the order in which the container images are arranged in the virus-scanning queue.
    Type: Application
    Filed: June 22, 2018
    Publication date: December 26, 2019
    Inventors: Huamin Chen, Dennis Keefe
  • Publication number: 20190392052
    Abstract: Container images can be copied. For example, a computing device can segment a container image into at least two data chunks. The computing device can determine a reference count for a data chunk among the at least two data chunks. The computing device can determine that the reference count for the data chunk is below a threshold value. In response to determining that the reference count for the data chunk is below the threshold value, the computing device can prevent a destination device from being queried about the data chunk prior to transmitting the data chunk to the destination device.
    Type: Application
    Filed: June 22, 2018
    Publication date: December 26, 2019
    Inventors: Huamin Chen, Dennis Keefe