Patents by Inventor Jinmei Shen

Jinmei Shen 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: 8676760
    Abstract: A method, computer program product and system for maintaining data integrity of multiple copies of a piece of data in data servers of multiple data centers, includes maintaining a cluster of catalog servers, where one of the catalog servers is selected as the master catalog server, storing the piece of data in a primary data server chosen from the data servers, duplicating the piece of data to one or more backup data servers chosen from the data servers, recording a data state information to the master catalog server, duplicating the data state information to the cluster of catalog servers, and updating the data servers and the cluster of catalog servers when the primary data server fails.
    Type: Grant
    Filed: August 5, 2008
    Date of Patent: March 18, 2014
    Assignee: International Business Machines Corporation
    Inventors: Jinmei Shen, Hao Wang
  • Patent number: 8495635
    Abstract: A method, system and computer program product manages a batch processing job by: partitioning the batch processing job for execution in a plurality of batch execution servers from a cluster of computers; designating one computer from the cluster as a primary command server that oversees and coordinates execution of the batch processing job; selecting a second computer from the cluster to serve as a failover command server; storing an object data grid structure in the primary command server; replicating the object grid structure to create and store a replicated object grid structure in the failover command server; in response to the primary command server failing, restarting, by the failover command server, execution of batch processes from the batch processing job in the plurality of batch execution servers utilizing objects within the replicated object grid structure, and executing the batch processes with processing states at the time of the failover.
    Type: Grant
    Filed: July 17, 2012
    Date of Patent: July 23, 2013
    Assignee: International Business Machines Corporation
    Inventors: Jinmei Shen, Hao Wang
  • Patent number: 8352634
    Abstract: An apparatus, program product and method utilize on-demand propagation of routing information to reduce the overhead associated with distributing routing information throughout a distributed computing system. The staleness of the routing information utilized in routing client requests for a particular client is gauged based upon the number and/or frequency of client requests issued for that client that require rerouting, e.g., as indicated in responses returned in response to the client requests. Once the reroutes of client requests meet a desired propagation criterion, updated routing information is then requested for the client.
    Type: Grant
    Filed: April 6, 2007
    Date of Patent: January 8, 2013
    Assignee: International Business Machines Corporation
    Inventors: Jinmei Shen, Hao Wang
  • Publication number: 20120284557
    Abstract: A method, system and computer program product manages a batch processing job by: partitioning the batch processing job for execution in a plurality of batch execution servers from a cluster of computers; designating one computer from the cluster as a primary command server that oversees and coordinates execution of the batch processing job; selecting a second computer from the cluster to serve as a failover command server; storing an object data grid structure in the primary command server; replicating the object grid structure to create and store a replicated object grid structure in the failover command server; in response to the primary command server failing, restarting, by the failover command server, execution of batch processes from the batch processing job in the plurality of batch execution servers utilizing objects within the replicated object grid structure, and executing the batch processes with processing states at the time of the failover.
    Type: Application
    Filed: July 17, 2012
    Publication date: November 8, 2012
    Applicant: IBM Corporation
    Inventors: Jinmei Shen, Hao Wang
  • Patent number: 8250577
    Abstract: A method, system and computer program product for managing a batch processing job is presented. The method includes partitioning a batch processing job for execution by a cluster of computers. One of the computers from the cluster of computers is designated as a primary command server that oversees and coordinates execution of the batch processing job. Stored in an object data grid structure in the primary command server is an alarm setpoint, boundaries, waiting batch processes and executing batch process states. The object data grid structure is replicated and stored as a replicated object grid structure in a failover command server. If the primary command server fails, the failover command server freezes all of the currently executing batch processes, interrogates processing states of the cluster of computers, and restarts execution of the batch processes in the cluster of computers in accordance with the processing states of the cluster of computers.
    Type: Grant
    Filed: April 16, 2008
    Date of Patent: August 21, 2012
    Assignee: International Business Machines Corporation
    Inventors: Jinmei Shen, Hao Wang
  • Patent number: 8161038
    Abstract: A method, apparatus, system, and signal-bearing medium that, in an embodiment, collect previous and current statistics based on previous and current access plans, respectively, and a query. The previous and current statistics are compared in response to an event, and the differences between the previous and current statistics are presented. In various embodiments, the event may be a change to logic in a database management system that performs the query, a degradation in performance of the query, or a user request. In various embodiments, the difference may be a change to the previous access plan that causes performance degradation of the query, such as missing an index. The previous access plan is copied into the current access plan if an estimated processing time for the current access plan is greater than an estimated processing time for the previous access plan. The current access plan is used to perform the query.
    Type: Grant
    Filed: October 29, 2004
    Date of Patent: April 17, 2012
    Assignee: International Business Machines Corporation
    Inventors: Jinmei Shen, Hao Wang
  • Patent number: 8099388
    Abstract: An apparatus and method is described for improving access to mostly read data on network servers. The preferred embodiments more efficiently utilize replicated data servers to minimize server response time for improved performance of data access to network servers by workload managing client requests across the primary server and all replicated servers when it is possible to do so. In preferred embodiments, a load balancer supplies the most current data for mostly read data transactions while maximizing server usage by workload managing client requests across the primary server and all replicated servers. Client requests are managed by a load balancer in the workload manager. Client requests are sent by the load balancer to replicated servers when a routing table (stale data marker list) indicates that the data is in a safe period. Clients are directed exclusively to the primary server only during data update times.
    Type: Grant
    Filed: July 16, 2008
    Date of Patent: January 17, 2012
    Assignee: International Business Machines Corporation
    Inventors: Jinmei Shen, Hao Wang
  • Patent number: 7966349
    Abstract: In an embodiment, data is partitioned into partitions, which are divided into levels. The levels are ordered by creation times of the levels. A request is received at a current partition, which includes a key that identifies a field in a record and a value for the key. A determination is made whether the value exists in the field in the current partition. If the determination is false, a message is sent from the current partition to a next-older partition, and the message instructs the next-older partition to move the record with the value from the next-older partition to the current partition. If the determination is true, the record with the value in the field is moved from the current partition to a next-newer partition if the next-newer partition sent the request, and the record is deleted from the current partition.
    Type: Grant
    Filed: August 14, 2008
    Date of Patent: June 21, 2011
    Assignee: International Business Machines Corporation
    Inventors: Jinmei Shen, Hao Wang
  • Patent number: 7849178
    Abstract: A method, apparatus, and program product that facilitates the implementation of grid or distributed network computing by automatically organizing a group of computers into a hierarchical, or tree networked system. The computer servers are selected into subgroups with each subgroup selecting a server to act as its leader. The leader is responsible for reporting performance characteristics of the servers in the subgroup to a master catalog server housed in a centralized management facility. The hierarchical system contemplated by embodiments of the invention reduces the number of messages that must be sent between the servers in the system necessary to monitor and manage the system. This reduction in the number of messages that must be sent between the servers in the system reduces the amount of server resources dedicated to overhead monitoring and managing, freeing these resources to be dedicated to performing the common processing task that grid or distributed network system was established to perform.
    Type: Grant
    Filed: April 11, 2008
    Date of Patent: December 7, 2010
    Assignee: International Business Machines Corporation
    Inventors: Jinmei Shen, Hao Wang
  • Publication number: 20100262687
    Abstract: A computer readable medium having executable instructions stored thereon to execute a database partitioning method during a current period of time is provided. The database partition method includes picking current hot spot data keys according to available data, creating hot spot partitions, respectively associated with the hot spot data keys, into which hot spot data is loaded before a start time of the current period of time and creating non-hot spot partitions into which non-hot spot data is loaded before the start time, routing hot spot data requests to the hot spot partitions and non-hot spot data requests to the non-hot spot partitions, and monitoring computing resources to determine if a number of the hot spot partitions is to be increased or decreased and, accordingly, increasing or decreasing the number of the hot spot partitions.
    Type: Application
    Filed: April 10, 2009
    Publication date: October 14, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jinmei Shen, Hao Wang
  • Patent number: 7809833
    Abstract: A method, computer program product or computer system for selecting a target data server from a plurality of data servers in an information system to service a request of a client with a data quality requirement, includes determining a formalized data quality of the client using the data quality requirement, using the formalized data quality of the client and finding a cluster of data servers from the plurality of data servers that can meet the data quality requirement of the client, choosing a select data server from the cluster of data servers, verifying if the select data server can still meet the data quality requirement of the client, and if so, selecting the select data server as the target data server for processing the request, and if not, selecting another data server as the target data server for processing the request.
    Type: Grant
    Filed: July 15, 2008
    Date of Patent: October 5, 2010
    Assignee: International Business Machines Corporation
    Inventors: Jinmei Shen, Hao Wang
  • Patent number: 7720990
    Abstract: A method for handling service requests in a data processing system is disclosed. In response to a service request, a priority of the service request is determined by mapping a context of the service request to a service level agreement (SLA). SLA-aware and timeout-conscious and preemptive and replayable lock manager is designed to account for different operational goals and different importance to satisfy various SLAs. An average processing time of the service request is then calculated based on statistical results. The service request will be allowed to process if the determined average processing time meets historical guarantee situations.
    Type: Grant
    Filed: January 10, 2007
    Date of Patent: May 18, 2010
    Assignee: International Business Machines Corporation
    Inventors: Jinmei Shen, Hao Wang
  • Patent number: 7702796
    Abstract: In an embodiment, in response to a request, a connection is selected from a pool of connections to a server. If the connection is stale and the number of stale connections encountered is greater than an adaptive threshold, then recovery is performed on all of the connections in the pool. If the number of stale connections is not greater than the adaptive threshold, then recovery is performed on the stale connection. A decision is made whether the connection is stale by sending the request to the server via the connection and detecting whether the sending encountered an error and by receiving a response from the server via the current connection and detecting whether the response indicates that the request encountered an error at the server.
    Type: Grant
    Filed: May 18, 2006
    Date of Patent: April 20, 2010
    Assignee: International Business Machines Corporation
    Inventors: Jinmei Shen, Hao Wang
  • Patent number: 7694014
    Abstract: A method, system and computer program product for dynamically modifying target server specifications to improve the success rate of client requests in a data network. A client's initial request is transmitted by a client router to a dynamically updating target server, based on information in a client's routing table. A Dynamic Server Specifications (DSS) utility automatically revises one or more target specifications of a client's request that is not initially fulfilled. The DSS utility then initiates the transmission of the modified request to an alternate server. If the request to the alternate server is also not fulfilled, the DSS utility may further modify the request to target an arbitrary server in order to download a current routing table. When the client receives a current routing table, the initial request is revised based on the current routing information, with full constraints re-established, and forwarded to the relevant target server.
    Type: Grant
    Filed: July 30, 2007
    Date of Patent: April 6, 2010
    Assignee: International Business Machines Corporation
    Inventors: Jinmei Shen, Hao Wang
  • Publication number: 20100036885
    Abstract: A method, computer program product and system for maintaining data integrity of multiple copies of a piece of data in data servers of multiple data centers, includes maintaining a cluster of catalog servers, where one of the catalog servers is selected as the master catalog server, storing the piece of data in a primary data server chosen from the data servers, duplicating the piece of data to one or more backup data servers chosen from the data servers, recording a data state information to the master catalog server, duplicating the data state information to the cluster of catalog servers, and updating the data servers and the cluster of catalog servers when the primary data server fails.
    Type: Application
    Filed: August 5, 2008
    Publication date: February 11, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jinmei Shen, Hao Wang
  • Publication number: 20100017460
    Abstract: A method, computer program product or computer system for selecting a target data server from a plurality of data servers in an information system to service a request of a client with a data quality requirement, includes determining a formalized data quality of the client using the data quality requirement, using the formalized data quality of the client and finding a cluster of data servers from the plurality of data servers that can meet the data quality requirement of the client, choosing a select data server from the cluster of data servers, verifying if the select data server can still meet the data quality requirement of the client, and if so, selecting the select data server as the target data server for processing the request, and if not, selecting another data server as the target data server for processing the request.
    Type: Application
    Filed: July 15, 2008
    Publication date: January 21, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jinmei Shen, Hao Wang
  • Patent number: 7631214
    Abstract: A method and system for processing a transaction request in a distributed data handling architecture. Responsive to receiving a transaction request at a master transaction server, a transaction identifier that identifies a data operation specified by the received transaction request is recorded within a local memory of a replica server. Data operation results are committed master transaction server memory and responsive to committing the data within the master transaction server memory, a post commit signal is sent to the replica server. Data operation results are also committed within local memory of the replica server, and responsive to a failover condition that prevents the master transaction server from sending the post commit signal, the recorded transaction identifier is utilized to synchronize data stored locally within the replica server with data stored within a persistent backend data store shared by the master transaction server and the replica server.
    Type: Grant
    Filed: May 31, 2007
    Date of Patent: December 8, 2009
    Assignee: International Business Machines Corporation
    Inventors: A. Joseph Bockhold, William Thomas Newport, Jinmei Shen, Hao Wang
  • Publication number: 20090265710
    Abstract: A method, system and computer program product for managing a batch processing job is presented. The method includes partitioning a batch processing job for execution by a cluster of computers. One of the computers from the cluster of computers is designated as a primary command server that oversees and coordinates execution of the batch processing job. Stored in an object data grid structure in the primary command server is an alarm setpoint, boundaries, waiting batch processes and executing batch process states. The object data grid structure is replicated and stored as a replicated object grid structure in a failover command server. If the primary command server fails, the failover command server freezes all of the currently executing batch processes, interrogates processing states of the cluster of computers, and restarts execution of the batch processes in the cluster of computers in accordance with the processing states of the cluster of computers.
    Type: Application
    Filed: April 16, 2008
    Publication date: October 22, 2009
    Inventors: Jinmei Shen, Hao Wang
  • Patent number: 7606906
    Abstract: A method, apparatus, system, and signal-bearing medium that, in an embodiment, accumulate multiple work units into a bundle and send the bundle to a selected active server. The active server is selected based on the relative costs for the work units and costs for servers. In an embodiment, selecting the active server includes determining relative work unit costs and relative server costs, calculating total weighted costs for the servers based on the relative work unit costs and the relative server costs, and selecting the active server that has the lowest total weighted cost. The active server may either process a work in the bundle locally or send the work unit to a passive server for processing. The active server determines whether each work unit can be executed at the active server. If the work unit can be executed on the active server, the active server executes the work unit and creates local results.
    Type: Grant
    Filed: October 28, 2005
    Date of Patent: October 20, 2009
    Assignee: International Business Machines Corporation
    Inventors: Richard Alan Diedrich, Jinmei Shen, Hao Wang
  • Publication number: 20090259741
    Abstract: A method, apparatus, and program product that facilitates the implementation of grid or distributed network computing by automatically organizing a group of computers into a hierarchical, or tree networked system. The computer servers are selected into subgroups with each subgroup selecting a server to act as its leader. The leader is responsible for reporting performance characteristics of the servers in the subgroup to a master catalog server housed in a centralized management facility. The hierarchical system contemplated by embodiments of the invention reduces the number of messages that must be sent between the servers in the system necessary to monitor and manage the system. This reduction in the number of messages that must be sent between the servers in the system reduces the amount of server resources dedicated to overhead monitoring and managing, freeing these resources to be dedicated to performing the common processing task that grid or distributed network system was established to perform.
    Type: Application
    Filed: April 11, 2008
    Publication date: October 15, 2009
    Inventors: Jinmei Shen, Hao Wang