IP Library › Granted Patent US 10,229,175
Granted Patent B2
US 10,229,175 · App. 14/482,229 · Granted Mar 12, 2019

High-throughput extract-transform-load (ETL) of program events for subsequent analysis

Inventors: George Candea (Saint-Sulpice, CH); Anastasios Argyros (Allston, MA); Mayank Bawa (San Francisco, CA)
Assignee: Teradata US, Inc.
G06F17/30563
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 10,229,175
App. No.
14/482,229
Granted
Mar 12, 2019
Kind
B2
Abstract

An event tap associated with a server, such as a Web server, at a machine can transform a server event into a tuple, select a database node for the tuple, and place the tuple in a queue for that database node, and then flush the queue periodically directly into database notes. The use of an event tap can thus reduce the computational burden on the database while keeping the server event data in the database relatively fresh.

Claims (29)

1. A computing system that includes one or more physical processors configured to:

load event data representative of Web server events associated with one or more events captured as a result of use of one or more Web pages supported by the one or more Web servers, wherein the event data is in a raw form not readily suitable for directly storing and processing by a distributed database system that includes multiple nodes operable to each independently store and process data for the database system;

transform the event data from the raw form into a database representation format of the event data for storage and processing by the database system; and

distribute the database representation format between the multiple nodes of the distributed database system, wherein the distributing of the database representation format of the event data comprises:

arranging at least a first portion of the database representation format of the event data for delivery to a first node of the multiple nodes;

arranging at least a second portion of the database representation format of the event data for delivery to a second node of the multiple nodes;

delivering the first portion of the database representation format of the event data to the first node of the multiple nodes;

delivering the second portion of the database representation format of the event data to the second node of the multiple nodes;

storing and processing of the first portion of the database representation format of the event data by the first node of the multiple nodes; and

storing and processing of the second portion of the database representation format of the event data by the second node of the multiple nodes.

2. The computing system of claim 1 , wherein the loading of the event data comprises:

loading of the event data by an event tap at the one or more Web servers.

3. The computing system of claim 1 , wherein the transforming of the event data comprises:

transforming the event data by an event tap at the one or more Web servers.

4. The computing system of claim 1 , wherein the distributing of the event data comprises:

distributing of the event data by an event tap at the one or more Web servers.

5. The computing system of claim 1 , wherein the distributing of the database representation format between the multiple nodes of the distributed database system comprises:

selecting one of the multiple nodes of the database system as one selected node selected to directly store and process at least one portion of the database representation format of the event data; and

arranging the at least one portion of the database representation format for delivery to the selected one node for processing by the one selected node directly.

6. The computing system of claim 5 , wherein the distributing of the database representation format between the multiple nodes of the distributed database system further comprises:

selecting another of the multiple nodes of the database system as another selected node selected to directly store and process at least another portion of the database representation format of the event data; and

arranging the other portion of the database representation format for delivery to the other selected node for processing by the other selected node directly.

7. The computing system of claim 6 , wherein the arranging of the database representation of the event data for delivery to the selected node comprises storing the database representation in a queue for delivery to the selected node, wherein for each one of the nodes of the database system, a queue is arranged to store database representation of the event data for delivery for that queue.

8. The computing system of claim 7 , wherein the queue is filled for a period of time before it is loaded to the selected node.

9. The computing system of claim 7 , wherein the transforming the event data into a database representation transforms the event data into a tuple.

10. The computing system of claim 6 , wherein the queue overflows to disk if the selected database node is unavailable.

11. The computing system of claim 6 , wherein the database representation of the event data is arranged for delivery to another node of the database system when the selected node is or becomes unable to accept the transformed event data.

12. The computing system of claim 6 , wherein an event interceptor on the server provides the event data.

13. The computing system of claim 6 , wherein the events are web server events associated with providing of content to a user across the Internet.

Continuity (2)
Continuation 11613036 · Dec 19, 2006
Related Publication 20150142725A1 · May 21, 2015