Patents by Inventor Alan Downing
Alan Downing 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: 9792349Abstract: A method and apparatus for an in-database sharded queue that supports JMS session ordering is provided. Messages from a plurality of enqueuers are stored in a plurality of shards of a particular queue. For each enqueuer, all messages are stored in only one of the shards. Each shard includes one or more subshards, each subshard having one or more partitions of a queue table maintained by a relational database system. All messages from a first enqueuer are stored in partitions of the queue table that are assigned to a first shard of the plurality of shards. All messages from a second enqueuer are stored in partitions of the queue table that are assigned to a second shard of the plurality of shards. Subscribers of the particular queue are caused to dequeue messages from the plurality of shards.Type: GrantFiled: December 3, 2013Date of Patent: October 17, 2017Assignee: Oracle International CorporationInventors: Shubha Bose, Devendra Singh, Neerja Bhatt, Sujatha Janardhanan, Gaurav Garg, Yang Seok Ki, Abhishek Saxena, Alan Downing
-
Publication number: 20140372486Abstract: A method and apparatus for an in-database sharded queue that supports JMS session ordering is provided. Messages from a plurality of enqueuers are stored in a plurality of shards of a particular queue. For each enqueuer, all messages are stored in only one of the shards. Each shard includes one or more subshards, each subshard having one or more partitions of a queue table maintained by a relational database system. All messages from a first enqueuer are stored in partitions of the queue table that are assigned to a first shard of the plurality of shards. All messages from a second enqueuer are stored in partitions of the queue table that are assigned to a second shard of the plurality of shards. Subscribers of the particular queue are caused to dequeue messages from the plurality of shards.Type: ApplicationFiled: December 3, 2013Publication date: December 18, 2014Applicant: Oracle International CorporationInventors: Shubha Bose, Devendra Singh, Neerja Bhatt, Sujatha Janardhanan, Gaurav Garg, Yang Seok Ki, Abhishek Saxena, Alan Downing
-
Patent number: 8196150Abstract: An approach for reducing transport of messages between nodes of a multi-node system is presented wherein a message queue is associated with a queue service, and based on which node the message queue resides, one of the nodes is registered as hosting the associated queue service. In response to a client attempting to connect and requesting a particular queue service, the client is caused to connect to the node on which the queue service resides.Type: GrantFiled: October 7, 2005Date of Patent: June 5, 2012Assignee: Oracle International CorporationInventors: Alan Downing, Krishnan Meiyyappan, James Stamos, Ramkumar Venkatesan
-
Patent number: 8161085Abstract: Approaches described herein may be used for provisioning of databases that requires a bulk transfer of data within a distributed computing environment, such as a grid. The approaches do not require the manual intervention of a DBA to, for example, transfer a tablespace between the file systems of operating systems. Instead, the tablespaces may be provisioned automatically and dynamically by a grid computing system whenever it determines the need to dynamically provision a database. In addition, as copies of tablespaces are provisioned, synchronization mechanisms can also be automatically provisioned to keep the tablespaces and their copies in sync.Type: GrantFiled: October 14, 2010Date of Patent: April 17, 2012Assignee: Oracle International CorporationInventors: Benny Souder, James Stamos, Lik Wong, John Ciminski, Anand Lakshminath, Alan Downing
-
Patent number: 8078588Abstract: Systems and methods for providing a one-step API that executes a series of atomic transactions in a database system. In one implementation, each atomic transaction is associated with a forward block of code that effects changes, an undo block of code that reverses the changes made by the forward block, and a state block of code that mimics successful execution of the forward block by setting internal states. In the event of a failure, the forward blocks, undo blocks, and state blocks can be used to roll forward or roll back changes as a whole. In one implementation, a one-step API for replicating data in a database is provided.Type: GrantFiled: October 10, 2005Date of Patent: December 13, 2011Assignee: Oracle International CorporationInventors: Anand Lakshminath, Lik Wong, James Stamos, Alan Downing
-
Publication number: 20110302136Abstract: Systems and methods for providing a one-step API that executes a series of atomic transactions in a database system. In one implementation, each atomic transaction is associated with a forward block of code that effects changes, an undo block of code that reverses the changes made by the forward block, and a state block of code that mimics successful execution of the forward block by setting internal states. In the event of a failure, the forward blocks, undo blocks, and state blocks can be used to roll forward or roll back changes as a whole. In one implementation, a one-step API for replicating data in a database is provided.Type: ApplicationFiled: August 12, 2011Publication date: December 8, 2011Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Anand LAKSHMINATH, Lik WONG, James STAMOS, Alan Downing
-
Patent number: 7899785Abstract: Splitting and merging database object information sharing streams. Streams are also referred to herein as “propagations”. Splitting and merging information sharing streams can be used to improve performance in a information sharing environment when a failed or slow DBS impacts the performance. In one embodiment, an auto split process monitors the progress of applying changes at each node and detects the presence of a failed or a slow node. Once the failed or slow node is identified, the auto split process splits the propagation such that the offending node is sent through a separate propagation. Furthermore, an auto merge process can be started to monitor the newly created separate propagation. At a later point, the new propagation can be merged back into the original stream. For example, if the offending node catches up with other nodes, the auto merge process merges the newly created propagation back to the original propagation.Type: GrantFiled: July 31, 2007Date of Patent: March 1, 2011Assignee: Oracle International CorporationInventors: Jun Yuan, Alan Downing, Lik Wong, Nimar Arora, Patricia H. McElroy, Byron Wang, Lei Gao, Anand Lakshminath, Ramkumar Venkatesan
-
Publication number: 20110029585Abstract: Approaches described herein may be used for provisioning of databases that requires a bulk transfer of data within a distributed computing environment, such as a grid. The approaches do not require the manual intervention of a DBA to, for example, transfer a tablespace between the file systems of operating systems. Instead, the tablespaces may be provisioned automatically and dynamically by a grid computing system whenever it determines the need to dynamically provision a database. In addition, as copies of tablespaces are provisioned, synchronization mechanisms can also be automatically provisioned to keep the tablespaces and their copies in sync.Type: ApplicationFiled: October 14, 2010Publication date: February 3, 2011Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Benny Souder, James Stamos, Lik Wong, John Ciminski, Anand Lakshminath, Alan Downing
-
Patent number: 7873684Abstract: Approaches described herein may be used for provisioning of databases that requires a bulk transfer of data within a distributed computing environment, such as a grid. The approaches do not require the manual intervention of a DBA to, for example, transfer a tablespace between the file systems of operating systems. Instead, the tablespaces may be provisioned automatically and dynamically by a grid computing system whenever it determines the need to dynamically provision a database. In addition, as copies of tablespaces are provisioned, synchronization mechanisms can also be automatically provisioned to keep the tablespaces and their copies in sync.Type: GrantFiled: November 21, 2003Date of Patent: January 18, 2011Assignee: Oracle International CorporationInventors: Benny Souder, James Stamos, Lik Wong, John Ciminski, Anand Lakshminath, Alan Downing
-
Patent number: 7856461Abstract: Techniques are provided for maintaining high propagation availability for non-persistent messages. Destination-to-instance mapping information is provided to a listener process for a cluster database. The destination-to-instance mapping indicates the current owner instance of each single-instance destination within the cluster database. To establish a connection to a single-instance destination, a sending process sends a connection request to the global listener. The connection request identifies the desired destination queue, but not the owner instance of the queue. The global listener for the cluster database uses the destination-to-instance mapping to determine which instance is the current owner of the specified queue, and establishes a connection between the sending process and the appropriate owner instance.Type: GrantFiled: September 12, 2005Date of Patent: December 21, 2010Assignee: Oracle International CorporationInventors: Ramkumar Venkatesan, Krishnan Meiyyappan, Alan Downing, James W. Stamos
-
Patent number: 7814067Abstract: Techniques are disclosed for sharing information in a wide variety of contexts. An information sharing system is described that allows both an explicit capture process and an implicit capture process to add information items to a staging area. Further, the information sharing system supports both implicit and explicit consumption of information items that are stored in said staging area. A rules engine is provided to allow users to create and register rules that customize the behavior of the capture processes, the consuming processes, and propagation processes that propagate information from the staging areas to designated destinations. Techniques are also described for achieving exactly-once handling of sequence of items, where the items are maintained in volatile memory. Techniques are also provided for recording DDL operations, and for asynchronously performing operations based on the previously-performed DDL operations.Type: GrantFiled: January 12, 2005Date of Patent: October 12, 2010Assignee: Oracle International CorporationInventors: Benny Souder, Dieter Gawlick, Jim Stamos, Alan Downing
-
Patent number: 7702741Abstract: Configuring an n-way multi-master information sharing topology. Adding a new node (e.g., database server) to the information sharing topology can be implemented as follows. Initially, the new node is added as a slave of a particular co-master in the information sharing topology. The objects to replicate are instantiated on the new node by propagating data from the particular co-master to the new node. Furthermore, a capture process is created on the particular co-master to send changes to the objects to the slave. Meanwhile, the co-masters continue to propagate changes to each other. To promote the slave to a master, changes to objects stored at the slave are propagated to each of the co-masters. Furthermore, changes at each of the masters are propagated to the promoted node.Type: GrantFiled: July 31, 2007Date of Patent: April 20, 2010Assignee: Oracle International CorporationInventors: Jun Yuan, Alan Downing, Lik Wong, Nimar Arora, Patricia H. McElroy, Byron Wang, Lei Gao, Anand Lakshminath, Ramkumar Venkatesan
-
Publication number: 20090037553Abstract: Configuring an n-way multi-master information sharing topology. Adding a new node (e.g., database server) to the information sharing topology can be implemented as follows. Initially, the new node is added as a slave of a particular co-master in the information sharing topology. The objects to replicate are instantiated on the new node by propagating data from the particular co-master to the new node. Furthermore, a capture process is created on the particular co-master to send changes to the objects to the slave. Meanwhile, the co-masters continue to propagate changes to each other. To promote the slave to a master, changes to objects stored at the slave are propagated to each of the co-masters. Furthermore, changes at each of the masters are propagated to the promoted node.Type: ApplicationFiled: July 31, 2007Publication date: February 5, 2009Inventors: Jun Yuan, Alan Downing, Lik Wong, Nimar Arora, Patricia H. McElroy, Byron Wang, Lei Gao, Anand Lakshminath, Ramkumar Venkatesan
-
Publication number: 20090037442Abstract: Splitting and merging database object information sharing streams. Streams are also referred to herein as “propagations”. Splitting and merging information sharing streams can be used to improve performance in a information sharing environment when a failed or slow DBS impacts the performance. In one embodiment, an auto split process monitors the progress of applying changes at each node and detects the presence of a failed or a slow node. Once the failed or slow node is identified, the auto split process splits the propagation such that the offending node is sent through a separate propagation. Furthermore, an auto merge process can be started to monitor the newly created separate propagation. At a later point, the new propagation can be merged back into the original stream. For example, if the offending node catches up with other nodes, the auto merge process merges the newly created propagation back to the original propagation.Type: ApplicationFiled: July 31, 2007Publication date: February 5, 2009Inventors: Jun Yuan, Alan Downing, Lik Wong, Nimar Arora, Patricia H. McElroy, Byron Wang, Lei Gao, Anand Lakshminath, Ramkumar Venkatesan
-
Publication number: 20070101341Abstract: An approach for reducing transport of messages between nodes of a multi-node system is presented wherein a message queue is associated with a queue service, and based on which node the message queue resides, one of the nodes is registered as hosting the associated queue service. In response to a client attempting to connect and requesting a particular queue service, the client is caused to connect to the node on which the queue service resides.Type: ApplicationFiled: October 7, 2005Publication date: May 3, 2007Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Alan Downing, Krishnan Meiyyappan, James Stamos, Ramkumar Venkatesan
-
Publication number: 20070083530Abstract: Systems and methods for providing a one-step API that executes a series of atomic transactions in a database system. In one implementation, each atomic transaction is associated with a forward block of code that effects changes, an undo block of code that reverses the changes made by the forward block, and a state block of code that mimics successful execution of the forward block by setting internal states. In the event of a failure, the forward blocks, undo blocks, and state blocks can be used to roll forward or roll back changes as a whole. In one implementation, a one-step API for replicating data in a database is provided.Type: ApplicationFiled: October 10, 2005Publication date: April 12, 2007Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Anand Lakshminath, Lik Wong, James Stamos, Alan Downing
-
Publication number: 20070061444Abstract: Techniques are provided for maintaining high propagation availability for non-persistent messages. Destination-to-instance mapping information is provided to a listener process for a cluster database. The destination-to-instance mapping indicates the current owner instance of each single-instance destination within the cluster database. To establish a connection to a single-instance destination, a sending process sends a connection request to the global listener. The connection request identifies the desired destination queue, but not the owner instance of the queue. The global listener for the cluster database uses the destination-to-instance mapping to determine which instance is the current owner of the specified queue, and establishes a connection between the sending process and the appropriate owner instance.Type: ApplicationFiled: September 12, 2005Publication date: March 15, 2007Inventors: Ramkumar Venkatesan, Krishnan Meiyyappan, Alan Downing, James Stamos
-
Publication number: 20050125430Abstract: Techniques are disclosed for sharing information in a wide variety of contexts. An information sharing system is described that allows both an explicit capture process and an implicit capture process to add information items to a staging area. Further, the information sharing system supports both implicit and explicit consumption of information items that are stored in said staging area. A rules engine is provided to allow users to create and register rules that customize the behavior of the capture processes, the consuming processes, and propagation processes that propagate information from the staging areas to designated destinations. Techniques are also described for achieving exactly-once handling of sequence of items, where the items are maintained in volatile memory. Techniques are also provided for recording DDL operations, and for asynchronously performing operations based on the previously-performed DDL operations.Type: ApplicationFiled: January 12, 2005Publication date: June 9, 2005Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Benny Souder, Dieter Gawilick, Jim Stamos, Alan Downing
-
Patent number: 6889231Abstract: Techniques for sharing information in a wide variety of contexts allows both an explicit capture process and an implicit capture process to add information items to a staging area. An information sharing system supports both implicit and explicit consumption of information items that are stored in the staging area. A rules engine allows users to create and register rules that customize the behavior of the capture processes, the consuming processes, and propagation processes that propagate information from the staging areas to designated destinations. Exactly-once handling of sequence of items is achieved for items maintained in volatile memory. DDL operations are recorded, and operations are asynchronously performed based on the previously-performed DDL operations.Type: GrantFiled: December 2, 2002Date of Patent: May 3, 2005Assignee: Oracle International CorporationInventors: Benny Souder, Dieter Gawlick, Jim Stamos, Alan Downing
-
Publication number: 20050038831Abstract: Approaches described herein may be used for provisioning of databases that requires a bulk transfer of data within a distributed computing environment, such as a grid. The approaches do not require the manual intervention of a DBA to, for example, transfer a tablespace between the file systems of operating systems. Instead, the tablespaces may be provisioned automatically and dynamically by a grid computing system whenever it determines the need to dynamically provision a database. In addition, as copies of tablespaces are provisioned, synchronization mechanisms can also be automatically provisioned to keep the tablespaces and their copies in sync.Type: ApplicationFiled: November 21, 2003Publication date: February 17, 2005Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Benny Souder, James Stamos, Lik Wong, John Ciminski, Anand Lakshminath, Alan Downing