Database Reference
In-Depth Information
Borealis uses an extended Aurora data model where streams are modeled as
append-only sequences of tuples of the form ( k 1 ,..., k n , a 1 ,..., a m ), where k 1 ,..., k n com-
prise a key for the stream, and a 1 ,..., a m provide attribute values. In particular, Borealis
generalizes this model to support three kinds of stream messages (i.e., tuples):
Insertion messages (+, t ), where t is a new tuple to be inserted with a new
key value.
Deletion messages (−, t ), where t consists of the key attributes for some
previously processed message.
Replacement message s (#, t ), where t consists of key attributes for some
previously processed message, and nonkey attributes with revised values
for that message.
Borealis inherits the boxes-and-arrows model from Aurora for specifying con-
tinuous queries where boxes represent query operators and arrows represent the data
flow between boxes. Queries are composed of extended versions of Aurora opera-
tors that support revision messages where each operator processes revision messages
based on its available message history and emits other revision messages as output.
Aurora's connection points (CPs) buffer stream messages that compose the message
history required by operators. An important addition to the Aurora query model
is the ability to change box semantics on the fly. Borealis boxes are provided with
special control lines in addition to their standard data input lines. These lines carry
control messages that include revised box parameters and functions to change box
behavior.
As in Aurora, a quality of service model forms the basis of resource management
decisions in Borealis. Unlike Aurora, where each query output is provided with QoS
functions, Borealis allows QoS predictions to operated at any point in a data flow. For
this purpose, messages are supplied with a vector of metrics (VM). These metrics
include content-related properties (e.g., message importance) or performance-related
properties (e.g., message arrival time, total resources consumed for processing the
message up to the current point in the query diagram, number of dropped messages
preceding this message). The attributes of the VM are predefined and identical on all
streams. As a message flows through a box, some fields of the VM can be updated by
the box code. A diagram administrator (DA) can also place special map boxes into
the query diagram to change the VM. Furthermore, there is a universal, parameter-
izable Score Function for an instantiation of the Borealis System that takes in VM
and returns a value in [0, 1], that shows the current predicted impact of a message on
QoS. This function is known to all run-time components (such as the scheduler) and
shapes their processing strategies. The overall goal is to deliver maximum average
QoS at system outputs.
A Borealis application, which is a single connected diagram of processing boxes,
is deployed on a network of N sites. Borealis optimization consists of multiple collab-
orating monitoring and optimization components. These components continuously
optimize the allocation of query network fragments to processing sites. Monitors, in
particular, have two types:
Search WWH ::




Custom Search