News Column

Patent Issued for Database Replication Techniques for Maintaining Original Linear Request Order for Asynchronous Transactional Events

February 11, 2014



By a News Reporter-Staff News Editor at Information Technology Newsweekly -- According to news reporting originating from Alexandria, Virginia, by VerticalNews journalists, a patent by the inventors Pruet, III, Clarence Madison (Flower Mound, TX), filed on April 14, 2008, was published online on January 28, 2014.

The assignee for this patent, patent number 8639677, is International Business Machines Corporation (Armonk, NY).

Reporters obtained the following quote from the background information supplied by the inventors: "1.0 Field of the Invention

"This invention relates to a database management system; and in particular, this invention relates to replicating data in a database management system.

"2.0 Description of the Related Art

"Database management systems allow large volumes of data to be stored and accessed efficiently and conveniently in a computer system. In a database management system, data is stored in database tables which organize the data into rows and columns. FIG. 1 depicts an exemplary database table 20 which has rows 22 and columns 24. To more quickly access the data in a database table, an index may be generated based on one or more specified columns of the database table. In a relational database management system, specified columns are used to associate tables with each other.

"The database management system responds to user commands to store and access the data. The commands are typically Structured Query Language statements such as SELECT, INSERT, UPDATE and DELETE, to select, insert, update and delete, respectively, the data in the rows and columns. The SQL statements typically conform to a SQL standard as published by the American National Standards Institute (ANSI) or the International Standards Organization (ISO).

"Departments within an enterprise may have their own database management systems, typically at different sites. An enterprise typically wants to share data throughout the enterprise. A technique called replication is used to share data among multiple database management systems.

"A replication system manages multiple copies of data at one or more sites, which allows the data to be shared. Data may be replicated synchronously or asynchronously. In synchronous data replication, a two-phase commit technique is used. In a two-phase commit, a transaction is applied only if all interconnected distributed sites agree to accept the transaction. Typically it is preferable for all hardware components and networks in the replication system to be available at all times in for synchronous replication.

"Asynchronous data replication allows data to be replicated, at least on a limited basis, and thus allows for system and network failures. In one type of asynchronous replication system, referred to as primary-target, all database changes originate at the primary database and are replicated to the target databases. In another type of replication system, referred to as update-anywhere, updates to each database are applied at all other databases of the replication system.

"An insert, update or delete to the tables of a database is a transactional event. A transaction comprises one or more transactional events that are treated as a unit. A commit is another type of transactional event which indicates the end of a transaction and causes the database to be changed in accordance with any inserts, updates or deletes associated with the transaction.

"In some database management systems, a log writer updates a log as transactional events occur. Each transactional event is associated with an entry in the log. Each entry in the log is associated with a value representing a log position.

"When a replication system is used, a user typically specifies the types of transactional events which cause data to be replicated. In addition, the user typically specifies the data which will be replicated, such as certain columns or an entire row of a table. In some embodiments, the log writer of the database management system marks certain transactional events for replication in accordance with the specified types of transactional events. The replication system reads the log, retrieves the marked transactional events, and transmits the transactional events to one or more specified target servers. The target server applies the transactional events to the replicated table(s) on the target server.

"Typically, there are many events in a database management system that are processed asynchronously which also need to adhere to order. In replication processing, since transactional events are usually posted in parallel by multiple users of the database, it is difficult to maintain the linear order of the posting of the events without processing the events serially.

"Therefore, there is a need for a technique to maintain order. In addition, the technique should also maintain order while allowing events to be processed, if possible, in parallel."

In addition to obtaining background information on this patent, VerticalNews editors also obtained the inventors' summary information for this patent: "To overcome the limitations in the prior art described above, and to overcome other limitations that will become apparent upon reading and understanding the present specification, various embodiments of a system and an article of manufacture maintain the order of a sequence of transactions originating from a source database and being replicated to a target database are provided. The system and article of manufacture include receiving, from said source database, a first transaction and a second transaction. Here, said first transaction was committed prior to said second transaction at said source database. The system and article of manufacture also include processing said first transaction using a first thread. A first lockable object is locked once processing of said first transaction begins, and is unlocked once said first transaction is committed. Additionally, the system and article of manufacture include, prior to committing said second transaction at said target database, determining whether said first thread has committed said first transaction, based on whether a lock on said first lockable object can be obtained. In response to determining that said first thread has not been committed said first transaction, the system and article of manufacture include serially processing said first transaction and said second transaction using said first thread, whereby said second transaction is committed after said first transaction at said target database. Furthermore, in response to determining that said first thread has committed said first transaction, the system and article of manufacture include processing said second transaction using a second thread that is distinct from said first thread.

"In this way, a technique to maintain order is provided. The technique also maintains order while allowing transactional events to be processed, if possible, in parallel."

For more information, see this patent: Pruet, III, Clarence Madison. Database Replication Techniques for Maintaining Original Linear Request Order for Asynchronous Transactional Events. U.S. Patent Number 8639677, filed April 14, 2008, and published online on January 28, 2014. Patent URL: http://patft.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&p=21&u=%2Fnetahtml%2FPTO%2Fsearch-bool.html&r=1006&f=G&l=50&co1=AND&d=PTXT&s1=20140128.PD.&OS=ISD/20140128&RS=ISD/20140128

Keywords for this news article include: Information Technology, Information and Data Management, Information and Data Replication, International Business Machines Corporation.

Our reports deliver fact-based news of research and discoveries from around the world. Copyright 2014, NewsRx LLC


For more stories covering the world of technology, please see HispanicBusiness' Tech Channel



Source: Information Technology Newsweekly


Story Tools