IP Library Granted Patent US 8,631,034
Granted Patent B1
US 8,631,034 · App. 13/792,058 · Granted Jan 14, 2014

High performance real-time relational database system and methods for using same

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,631,034
App. No.
13/792,058
Granted
Jan 14, 2014
Kind
B1
Abstract

A database system supporting persistent queries, comprising a client software application, a persistent query service, and a plurality of network-attached data sources. On receiving a request to create a persistent query from the client software application, the persistent query service: creates a query virtual table; parses the persistent query; creates a plurality of intermediate virtual tables; establishes listeners for the query virtual table; creates a plurality of data source virtual tables; causes the plurality of data source virtual tables to retrieve initial data from data sources; and propagates data via intermediate virtual tables to the persistent query virtual table. On detection of a data change in a data source, the associated data source virtual table causes the data change to propagate via intermediate virtual tables to the persistent query virtual table, and the client software application executes client code of at least one listener.

Claims (19)

1. A database system supporting persistent queries, the system comprising:

a client software application operating on a computer comprising at least a listener comprising client code to be executed when the listener is invoked;

a persistent query service stored and operating on a network-attached computer adapted to receive connections and requests from the client software application; and

a plurality of network-attached data sources;

wherein, on receiving a request to create a persistent query from the client software application, the persistent query service: creates a query virtual table corresponding to the persistent query; parses the persistent query to create a tree structure representing a logical arrangement of a plurality of operators that yield results required by the persistent query; creates a plurality of intermediate virtual tables corresponding to the plurality of operators, wherein the step of creating an intermediate virtual table further comprises establishing listeners associated with the intermediate virtual table to receive data change notifications; establishes listeners for the query virtual table to receive data change notifications from a plurality of intermediate virtual tables; creates a plurality of data source virtual tables, each corresponding to a specific data source required to fulfill the persistent query; causes the plurality of data source virtual tables to retrieve initial data from the plurality of data sources; and propagates data via the plurality of intermediate virtual tables and their associated listeners to the persistent query virtual table; and

wherein, on detection of a data change in a data source, the associated data source virtual table invokes a plurality of corresponding methods of listeners of a plurality of virtual intermediate tables and propagates the data change via the plurality of intermediate virtual tables and their associated listeners to the persistent query virtual table, and the client software application executes the client code of at least one affected listener.

2. A method for creating and using persistent queries in a database system, the method comprising the steps of:

(a) creating, via a software application executing on a computer, a persistent query; wherein the step of creating the persistent query further comprises establishing listeners with client code to receive notifications from the persistent query;

(b) creating a query virtual table corresponding to the persistent query;

(c) parsing the persistent query to create a tree structure representing a logical arrangement of a plurality of operators that yield results required by the persistent query;

(d) creating a plurality of intermediate virtual tables corresponding to the plurality of operators; wherein the step of creating an intermediate virtual table further comprises establishing listeners associated with the intermediate virtual table to receive data change notifications;

(e) establishing listeners for the query virtual table to receive data change notifications from a plurality of intermediate virtual tables;

(f) creating a plurality of data source virtual tables, each corresponding to a specific data source required to fulfill the persistent query;

(g) retrieving, by the plurality of data source virtual tables, initial data from the plurality of data sources;

(h) invoking, by the plurality of data source virtual tables, row added methods of a plurality of intermediate virtual tables;

(i) propagating data via the plurality of intermediate virtual tables and their associated listeners to the persistent query virtual table;

(j) on detection of a data change in a data source, invoking by the associated data source virtual table of corresponding methods of listeners of a plurality of virtual intermediate tables;

(k) propagating the data change via the plurality of intermediate virtual tables and their associated listeners to the persistent query virtual table; and

(l) executing the client code of each affected listener in the query virtual table.

Assignments (9)
CHANGE OF PRINCIPAL PLACE OF BUSINESS Recorded Mar 24, 2025
From: TTEC HOLDINGS, INC.
To: TTEC HOLDINGS, INC.
Reel/Frame 070609/0504 →
SECURITY INTEREST Recorded Oct 17, 2024
From: TTEC HOLDINGS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 069206/0225 →
CHANGE OF NAME Recorded Aug 19, 2024
From: TELETECH HOLDINGS, INC.
To: TTEC HOLDINGS, INC.
Reel/Frame 068701/0308 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2022
From: AVTEX SOLUTIONS, LLC
To: TELETECH HOLDINGS, INC.
Reel/Frame 059077/0401 →
PATENT RELEASE AND REASSIGNMENT Recorded Apr 24, 2021
From: VARAGON CAPITAL PARTNERS AGENT, LLC, AS ADMINISTRATIVE AGENT
To: AVTEX SOLUTIONS, LLC
Reel/Frame 056034/0545 →
SECURITY INTEREST Recorded Dec 8, 2020
From: AVTEX SOLUTIONS, LLC
To: VARAGON CAPITAL PARTNERS AGENT, LLC, AS ADMINISTRATIVE AGENT
Reel/Frame 054582/0558 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2020
From: ARIA SOLUTIONS INC.
To: AVTEX SOLUTIONS, LLC
Reel/Frame 054252/0663 →
CHANGE OF ADDRESS Recorded Feb 12, 2019
From: ARIA SOLUTIONS, INC.
To: ARIA SOLUTIONS, INC.
Reel/Frame 048322/0007 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 13, 2013
From: PELOSKI, PAUL
To: ARIA SOLUTIONS, INC.
Reel/Frame 030996/0507 →