IP Library Granted Patent US 8,054,764
Granted Patent B2
US 8,054,764 · App. 12/478,471 · Granted Nov 8, 2011

Transmitting critical table information in databases

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,054,764
App. No.
12/478,471
Granted
Nov 8, 2011
Kind
B2
Abstract

A method for sending information regarding an event in a critical table in a database. A receiver receives information regarding an event from a trigger corresponding to the event. The event may be one of an insert row, delete row or update row. Thereafter, a processor prepares one or more datagram packets containing the information regarding the event. Then, an event dispatcher sends the one or more datagram packets to a multicast group over a network. Finally, the multicast group forwards the datagram packets to a destination host device subscribed to the multicast group, without storing the datagram packets.

Claims (43)

1. A method for transmitting information relating to occurrence of an event in a critical table of a database, wherein the event is at least one of an insert row event, a delete row event or update row event, the method comprising:

receiving information regarding the event from a trigger corresponding to the event in the database, wherein the information includes one or more of a database table name, a primary key value, type of event and change in value of data in the database table;

preparing one or more data packets containing the information regarding the event;

sending the one or more data packets to a multicast group over a network;

forwarding the one or more data packets to a destination device subscribed to the multicast group without storing the one or more data packets by the multicast group; and

receiving the one or more data packets at the destination host device.

2. The method of claim 1 , wherein the preparing of the one or more data packets containing the information regarding the event further comprises:

obtaining an event XML message template string corresponding to the event; and

creating the one or more data packets using the event XML message template string.

3. The method of claim 2 , wherein the event XML message template string is generated by replacing placeholders in a template with the information regarding the event.

4. The method of claim 1 , wherein the sending of the one or more data packets further comprises:

creating a socket for sending the one or more data packets over the network.

5. The method of claim 1 , wherein the one or more data packets is sent over low level network sockets.

6. The method of claim 1 , wherein the forwarding of the one or more data packets includes pushing the one or more data packets to the destination device subscribed to the multicast group after receiving the one or more data packets at the multicast group.

7. The method of claim 1 , wherein the multicast group is a broadcast group.

8. A method for transmitting information relating to occurrence of an event in a critical table of a database, the method comprising:

preparing a data packet containing information regarding the event in the critical table of the database;

transmitting the data packet to a multicast group over a network;

forwarding the data packet to a destination device subscribed to the multicast group without storing the data packet by the multicast group;

receiving information regarding the event from a trigger generated on occurrence of the event in the critical table of the database, wherein the receiving the information includes the trigger calling a user defined function (UDF) and passing the information regarding the event to the UDF, wherein the UDF invokes an event dispatcher to send the data packets.

9. The method of claim 8 , wherein the event comprises at least one of an insert row event, a delete row event or an update row event in the critical table of the database.

10. The method of claim 8 , wherein the critical table is selected based on a business design of an application using the database.

11. The method of claim 8 , wherein the information regarding the event includes a database table name, a primary key value, type of event and change in value of data in the database table.

12. The method of claim 8 , wherein the UDF is a Java UDF.

13. The method of claim 12 , wherein UDF is configured to invoke a helper class by passing the information regarding the event to the helper class, to send/transmit the data packets.

14. A system for transmitting information regarding occurrence of an event in a critical table of a database, wherein the event is at least one of an insert row event, a delete row event or update row event, the system comprising:

a source computing device configured to:

receive information regarding the event from a trigger corresponding to the event in the database, wherein the information includes one or more of a database table name, a primary key value, type of event and change in value of data in the database table,

prepare one or more data packets containing the information regarding the event, and

send the one or more data packets to a multicast group over a network;

one or more multicast routers configured to forward the one or more data packets to a destination host device subscribed to the multicast group without storing the one or more data packets by the multicast group; and

a destination host computing device configured to receive the one or more data packets at the destination host device.

15. The system of claim 14 , wherein the critical table in the database is selected based on business design of an application using the database.

16. The system of claim 14 , wherein the event dispatcher is created using multicast libraries in Java.

17. The system of claim 14 , wherein the event receiver is created using multicast libraries in Java.

18. The system of claim 14 , wherein the event dispatcher sends the one or more data packets over low level network sockets.

19. A computer program product for transmitting information regarding occurrence of an event in a critical table of a database, wherein the event is at least one of an insert row event, a delete row event or update row event, the computer program product comprising:

a computer readable storage memory having computer readable program code embodied therewith, the computer readable program code configured to:

receive information regarding the event from a trigger corresponding to the event in the database, wherein the information includes one or more of a database table name, a primary key value, type of event and change in value of data in the database table;

prepare one or more data packets containing the information regarding the event;

send the one or more data packets to a multicast group over a network;

forward the one or more data packets to a destination host device subscribed to the multicast group without storing the one or more data packets by the multicast group; and

receive the one or more data packets at the destination host device.

Assignments (3)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0334 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2012
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: SAP AG
Reel/Frame 028540/0522 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2009
From: ESHWAR, BHAVANI KUMAR
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 022784/0039 →