Patents by Inventor Tak Fung Wang
Tak Fung Wang 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: 20250094407Abstract: Techniques are provided for determining access affinity between services in a database cluster, and for placing workload of those services based, at least in part, on the access affinity. The techniques involve generating access records that indicate when sessions that are associated with each service operate on data blocks that were accessed by another session that is associated with another service. Access affinity information is generated based on the access records, where the access affinity information indicates access affinity (e.g. conflict scores) between each pair of services. The cluster then selects which node is to perform the work of a given session based on the access affinity information and the service associated with the session.Type: ApplicationFiled: March 11, 2024Publication date: March 20, 2025Inventors: Dungara Ram Choudhary, Yu Kin Ho, Wilson Wai Shun Chan, Chandrajith Ramachandran Unnithan, Walter Battistella, Tak Fung Wang
-
Patent number: 11652892Abstract: Disclosed is a method, a computer program product, and a computer system for implementing automatic connection load balancing of database connections between instances of a cluster. Load imbalances are detected globally in the cluster, and can be corrected autonomously by the local instances. The local controller/orchestrator detects the imbalance, computes a target for the instance, and makes any necessary adjustments on the instance, where a server marks the connections to redistribute, and then implements draining and/or planned failover to move sessions.Type: GrantFiled: September 30, 2020Date of Patent: May 16, 2023Assignee: Oracle International CorporationInventors: Chandrajith Ramachandran Unnithan, Michael Ullrich Zoll, Wai Shun Wilson Chan, Tak Fung Wang, Carol Lyndall Colrain, Troy Anthony
-
Publication number: 20210099530Abstract: Disclosed is a method, a computer program product, and a computer system for implementing automatic connection load balancing of database connections between instances of a cluster. Load imbalances are detected globally in the cluster, and can be corrected autonomously by the local instances. The local controller/orchestrator detects the imbalance, computes a target for the instance, and makes any necessary adjustments on the instance, where a server marks the connections to redistribute, and then implements draining and/or planned failover to move sessions.Type: ApplicationFiled: September 30, 2020Publication date: April 1, 2021Inventors: Chandrajith Ramachandran UNNITHAN, Michael Ullrich ZOLL, Wai Shun Wilson CHAN, TAK Fung WANG, Carol Lyndall COLRAIN, Troy ANTHONY
-
Patent number: 9679004Abstract: Techniques for taking one or more nodes of a multi-node database system offline are provided. Initially, the multi-node database system uses a first data access management system (e.g., a distributed lock management system) to manage access to data stored in a database. In response to determining that one or more nodes need to be taken offline or otherwise become unavailable, the remaining nodes implement a second data access management system (e.g., an affinity-based access system) to manage access to data stored in the database. After the offline nodes are brought back online, all the nodes in the multi-node database system implement the first data access management system again. The transitions between the two data access management system may involve multiple phases that involve communicating different types of information between nodes that are taken offline and nodes that are not taken offline.Type: GrantFiled: July 21, 2014Date of Patent: June 13, 2017Assignee: Oracle International CorporationInventors: Wilson Wai Shun Chan, Tolga Yurek, Tak Fung Wang
-
Patent number: 9489269Abstract: Techniques for mastering resources in a cluster of nodes are provided. A global backup lock manager (GBLM) is maintained for a cluster of nodes that implement distributed lock management. Before a server instance is taken down, for example, for maintenance purposes, such as installing a new version of the server instance code, the mastership information that the server instance stores is reflected in the mastership information maintained by the GBLM. Thus, shutting down the server instance does not involve remastering the resources mastered by the server instance. As a result, shutting down the server instance may take minimal time.Type: GrantFiled: May 31, 2014Date of Patent: November 8, 2016Assignee: Oracle International CorporationInventors: Wilson Wai Shun Chan, Angelo Pruscino, Tak Fung Wang
-
Patent number: 9460144Abstract: A method for locking resources, including: receiving, by an accelerator, a first request from a first client to lock a first resource; evaluating, by a computer processor of a server, a hash function using an identifier of the first resource as an input to the hash function; identifying, by the computer processor and based on evaluating the hash function, a first hash bucket in a shared memory residing in a physical memory of the server; detecting that the first hash bucket is occupied; and sending the first request to a master lock monitor residing in a user space of the server based at least on detecting that the first hash bucket is occupied.Type: GrantFiled: January 13, 2012Date of Patent: October 4, 2016Assignee: Oracle International CorporationInventors: David Brower, Angelo Pruscino, Wilson Chan, Tak Fung Wang
-
Publication number: 20160019253Abstract: Techniques for taking one or more nodes of a multi-node database system offline are provided. Initially, the multi-node database system uses a first data access management system (e.g., a distributed lock management system) to manage access to data stored in a database. In response to determining that one or more nodes need to be taken offline or otherwise become unavailable, the remaining nodes implement a second data access management system (e.g., an affinity-based access system) to manage access to data stored in the database. After the offline nodes are brought back online, all the nodes in the multi-node database system implement the first data access management system again. The transitions between the two data access management system may involve multiple phases that involve communicating different types of information between nodes that are taken offline and nodes that are not taken offline.Type: ApplicationFiled: July 21, 2014Publication date: January 21, 2016Inventors: Wilson Wai Shun Chan, Tolga Yurek, Tak Fung Wang
-
Publication number: 20150347239Abstract: Techniques for mastering resources in a cluster of nodes are provided. A global backup lock manager (GBLM) is maintained for a cluster of nodes that implement distributed lock management. Before a server instance is taken down, for example, for maintenance purposes, such as installing a new version of the server instance code, the mastership information that the server instance stores is reflected in the mastership information maintained by the GBLM. Thus, shutting down the server instance does not involve remastering the resources mastered by the server instance. As a result, shutting down the server instance may take minimal time.Type: ApplicationFiled: May 31, 2014Publication date: December 3, 2015Applicant: Oracle International CorporationInventors: Wilson Wai Shun Chan, Angelo Pruscino, Tak Fung Wang
-
Patent number: 9128895Abstract: Described herein are techniques for dynamically monitoring and managing resource usages of processes running on a node in a multi-node database system. High resource usages of processes can be proactively detected and alleviated, thereby making such a node to perform significantly better than otherwise.Type: GrantFiled: February 19, 2009Date of Patent: September 8, 2015Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Wilson Chan, Angelo Pruscino, Tak Fung Wang, Cheng-Lu Hsu
-
Patent number: 9027025Abstract: Techniques for monitoring resources of a computer system are provided. A monitoring process collects and reports utilization data for one or more resources of a computer system, such as CPU, memory, disk I/O, and network I/O. Instead of reporting just an average of the collected data over a period of time (e.g., 10 seconds), the monitoring process at least reports individually collected resource utilization values. If one or more of the utilization values exceed specified thresholds for the respective resources, then an alert may be generated. In one approach, the monitoring process is made a real-time priority process in the computer system to ensure that the memory used by the monitoring process is not swapped out of memory. Also, being a real-time priority process ensures that the monitoring process obtains a CPU in order collect resource utilization data even when the computer system is in a starvation mode.Type: GrantFiled: April 17, 2007Date of Patent: May 5, 2015Assignee: Oracle International CorporationInventors: Michael Zoll, Wilson Wai Shun Chan, Angelo Pruscino, Tak Fung Wang
-
Publication number: 20130185270Abstract: A method for locking resources, including: receiving, by an accelerator, a first request from a first client to lock a first resource; evaluating, by a computer processor of a server, a hash function using an identifier of the first resource as an input to the hash function; identifying, by the computer processor and based on evaluating the hash function, a first hash bucket in a shared memory residing in a physical memory of the server; detecting that the first hash bucket is occupied; and sending the first request to a master lock monitor residing in a user space of the server based at least on detecting that the first hash bucket is occupied.Type: ApplicationFiled: January 13, 2012Publication date: July 18, 2013Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: David Brower, Angelo Pruscino, Wilson Chan, Tak Fung Wang
-
Patent number: 8365177Abstract: Measuring processes are started at a plurality of priority levels. A different one of the measuring processes is started for each of the priority levels. Subsequently, for each of the measuring processes, it is determined whether each measuring process is scheduled for executing at a respective target rate. In response to determining that a particular measuring process of the measuring processes is not scheduled for executing at a particular target rate, resource allocation to at least one monitored process running at a particular level of the priority levels is adjusted. The at least one monitored process is not any of the measuring processes.Type: GrantFiled: January 20, 2009Date of Patent: January 29, 2013Assignee: Oracle International CorporationInventors: Wilson Chan, Angelo Pruscino, Ahmed S. Abbas, Tak Fung Wang
-
Patent number: 8220001Abstract: Described herein are techniques for adaptively managing timers that are used in various layers of a node. In many cases, the number of timers that occur in the system is reduced by proactively and reactively adjusting values of the timers based on conditions affecting the system, thereby making such a system to perform significantly better and more resiliently than otherwise.Type: GrantFiled: February 13, 2009Date of Patent: July 10, 2012Assignee: Oracle International CorporationInventors: Wilson Chan, Deepti Srivastava, Tolga Yurek, Yu Kin Ho, John Hsu, Tak Fung Wang, Angelo Pruscino
-
Patent number: 8117488Abstract: Database server instances in a database server cluster broadcast, to other instances in the cluster, information concerning certain problem events. Because each server instance is aware of problems that other server instances are experiencing, each server instance is enabled to make more intelligent decisions regarding the actions that it should perform in response to the problems that the server instance is experiencing. Instead of terminating itself, a server instance might opt to wait for a longer amount of time for an operation to complete. The server instance may do so due to the server instance having received information that indicates that other server instances are experiencing similar problems. Whenever the information received from other server instances makes it appear that a problem is unlikely to be solved in the cluster as a whole by terminating a server instance, that server instance may continue to wait instead of terminating itself.Type: GrantFiled: October 23, 2009Date of Patent: February 14, 2012Assignee: Oracle International CorporationInventors: Wilson Chan, Angelo Pruscino, Tak Fung Wang
-
Patent number: 8103642Abstract: A method and apparatus for managing locks in a database system is provided. A master node grants a lock on a first resource and a group of resources that includes the first resource to a first requester node. The requester node receives a mapping corresponding to the group of resources that may indicate that a lock already exists for a second resource in the group. If the requester node desires a lock on a resource located in the group, the requester node grants itself the lock without notifying the master node. A second requester node requests a lock for a particular resource in the group of resources. The first requester node grants the lock on the particular resource and updates the mapping to indicate that a different node holds a lock for the particular resource.Type: GrantFiled: February 3, 2006Date of Patent: January 24, 2012Assignee: Oracle International CorporationInventors: Eugene Ho, Wilson Wai Shun Chan, Tak Fung Wang, Angelo Pruscino, Tolga Yurek
-
Publication number: 20110099412Abstract: Database server instances in a database server cluster broadcast, to other instances in the cluster, information concerning certain problem events. Because each server instance is aware of problems that other server instances are experiencing, each server instance is enabled to make more intelligent decisions regarding the actions that it should perform in response to the problems that the server instance is experiencing. Instead of terminating itself, a server instance might opt to wait for a longer amount of time for an operation to complete. The server instance may do so due to the server instance having received information that indicates that other server instances are experiencing similar problems. Whenever the information received from other server instances makes it appear that a problem is unlikely to be solved in the cluster as a whole by terminating a server instance, that server instance may continue to wait instead of terminating itself.Type: ApplicationFiled: October 23, 2009Publication date: April 28, 2011Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Wilson Chan, Angelo Pruscino, Tak Fung Wang
-
Publication number: 20100211959Abstract: Described herein are techniques for adaptively managing timers that are used in various layers of a node. In many cases, the number of timers that occur in the system is reduced by proactively and reactively adjusting values of the timers based on conditions affecting the system, thereby making such a system to perform significantly better and more resiliently than otherwise.Type: ApplicationFiled: February 13, 2009Publication date: August 19, 2010Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Wilson Chan, Deepti Srivastava, Tolga Yurek, Yu Kin Ho, John Hsu, Tak Fung Wang, Angelo Pruscino
-
Publication number: 20100211681Abstract: Described herein are techniques for dynamically monitoring and managing resource usages of processes running on a node in a multi-node database system. High resource usages of processes can be proactively detected and alleviated, thereby making such a node to perform significantly better than otherwise.Type: ApplicationFiled: February 19, 2009Publication date: August 19, 2010Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Wilson Chan, Angelo Pruscino, Tak Fung Wang, Cheng-Lu Hsu
-
Publication number: 20100186016Abstract: Described herein are techniques for dynamically monitoring and rebalancing priority levels of processes running on a computing node. Runaway processes and starved processes can be proactively detected and prevented, thereby making such a node to perform significantly better and more responsively than otherwise.Type: ApplicationFiled: January 20, 2009Publication date: July 22, 2010Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Wilson Chan, Angelo Pruscino, Ahmed S. Abbas, Tak Fung Wang
-
Patent number: 7702660Abstract: In a multi-node database system, a list of data blocks to perform recovery operations on in the event of failure of a given node is dynamically maintained on another node. List is available when the given node fails, and allows the database to be made available more quickly.Type: GrantFiled: December 12, 2006Date of Patent: April 20, 2010Assignee: Oracle International CorporationInventors: Wilson Wai Shun Chan, Vinay Srihari, Tak Fung Wang, Tolga Yurek, Angelo Pruscino