business rules, inter-resource dependencies, consistency requirements, and contingency strategies throughout the enterprise. The semantic services provide.
Task Scheduling Using Intertask Dependencies in Carnot Darrell Amit
Woelk*,
Paul Attie,
Sheth***,
Phil Cannata**,
Munindar
Singh,
Greg Meredith,
Christine
Tomlinson
MCC 3500 West Balcones Austin,
Center
Drive
Texas 78759
The communakm”on services provide
Abstract
uniform The Carnot Project at MCC is addressing the problem logically
unifjing
physically-distributed,
heterogeneous information. the means transparently, to write distributed
Carnot will provi&
to navigate information to update that i#ormation
applications
easily
information
implemented
which
for
efficiently consistently,
large,
and and
services for
has been
(a) enterprise
modeling and model integration to create an enterprisewide view, (b) semantic expansion of queries on the view to queries
on individual
resources,
and (c} inter-resource
consistency management. This paper describes the Carnot approach to transaction processing in environments where heterogeneous, required
distributed,
to coordinate
and autonomous
systems are
&pendencies that capture the semantics of a particular model. A scheduler has been relaed transaction which schedules the execution of these tasks in
the Carnot environment are satisjied.
so that all intertask
Such platforms
services implement
Association
Control
(ACSE),
munication
enterprise
1S0 0S1 Remote Operations
DBMS’s
on Unix and IBM MVS and VM DBMS’s
An important
component
of the support
information.
These
facilities
are
five sets of services as shown in Figure 1: com-
services, support services, distribution
services,
can be
services layer
shell environment
called the Extensible Services Switch 03SS). The ESS provides access to communication resources, local information resources, and applications at a site. The distribution services support relaxed processors (processors that appropriately inconsistency)
and a distributed
transaction manage
agent facility
that interacts with client applications, directory repository managers, and Carnot’s declarative
semantic services, and access services.
base to build ESS workflow
carry out some business function.
services, resouree
scripts designed to
The workflow
scripts
reflect cttment business realities
and accumulated corporate folklore. The declarative resource constraint base is a collection of predicates that expresses business rules, inter-resource dependencies, consistency requirements, and contingency strategies throughout the enterprise. The semantic services provide a global or entexprisewide view of all the resources integrated within a Carnotsttpported system. The Enterprise Modeling and Model Integration facility uses a large common-sense knowledge
* Ott assigttmerrt at MCC from NCR ** ~
network-wide
accessed.
execute tasks that properly
as
basic
(ROSE), CCI1.T Directory Service (X.500), and 1S0 Remote Data Access (RDA), Itasea, Ingres, and Oracle
Carnot has developed and assembled a large set of generic facilities that are focused on the problem of managintegrated
to
layer of the 1S0
utilities that are available to applications and other higher level services. These services currently include the 1S00S1
constraint
ing
are considered
0S1 reference model.
information
dependencies
a
heterogeneous
up to the application
1. Overview of Carnot
organized
the user with
interconnecting
that is unique to Carnot is a distributed
the update of the local information
under their control. In this approach, subtransactions are represented as a set of tasks and a set of intertask
implemented
an enterprise.
provide functionality The support
heterogeneous,
of
equipment and resources. These services implement and integrate various communication platforms that may occur within
a user with
systems. A prototype
provides
of
enterprise-wide,
method
~~~ignmmt at MCC from Beltco~ NJ 02854-4182
***DSJICWC, PkataWay,
Permission to copy without fee SII or part of this material is granted provided that the copies are not mada or distributed for diract commercial adventage, the ACM copyright notice snd the tkla cf the publication and its date appear, and notice is given that copying is by permieaion of the Association for Computing Machinery. To copy otherwise, or to republish, requirsa a fee andlor spacific permission. SIGMOD /5/93 iWaahin@on, DC, USA e 1993 ACM O-89791 .SS2=S{9VOOOOI0481 . ..$1.50
base as a global coherent integration
context
and federation
mechanism
of concepts expressed within
for
a set of
enterprise models. A suite of tools uses an extensive set of semantic properties to represent an enterprise information
Lcll
Access Services -
●2D & 3D Graphical Interaction
Semantic
●Enterprise ● Knowledge ● Application
Environment ●Deductive Computing ●Application Frameworks
Services Modeling and Model Integration Discovery Dredging
Distribution Services ●Relaxed Transaction Processing ● Communicating Agents ●Worktlow Manager ● Legacy System Access .Distributed Adminis~ation
●Declarative
$
●ORB
Communication Services ●0S1 .Intemet ●X.25 ●SNA *DCE cAtias ●Frame Relay ●FDDI ●BISDN +MDS
I
...;:
fy:
ab
:.~.
cm Done ab
/“
‘:,,,,,,,[[yy:’..(Y)
dn Executing St
Y
~.. 4
I
...........--;/b ##
...’...(y)
....
->
Notexecuting
Figure 3: An ExampIe Task State Transition
st(dB) -> st(dS) cm(dS) -> st(u?a) cm(iS) -> st(u?a) (ab(dB) & cm(dS)) -> st(iS) (ab(dB) c dn(dS)) -> ab(dS)
Diagram
1. el -> e2: If el occurs, then e2 must also occur. There is no implied ordering. 2. el < e2: If el and e2 Imth occur, then el must precede e2.
Figure 4: Dependencies
Behveen Significant
Events
I Examples literature
of execution
dependencies
defined
in the Computation
include
1. Commit
Dependency
dependent commit,
[2]:
Transaction
on transaction
B, iff
then A commits
relevant
significant
before
A is commit-
if both
language
transactions
B commits.
Let
the
experiment
events be denoted as cmA and cmB.
the k
C%WMS here
S@ifiC~t WIitkXt
between
be @A
and UbB, so thk
significant
diagram which
of the actual task that hides
irrelevant details of its sequential computations. Execution of the event causes a transition of the task to another state. Figure
3 shows an example
task state transition
taken from [6]. From its initial
diagram
state (at the bottom
of the
diagram), the task fwst executes a start event (st). Once the task has started, it will eventually either abort, as represented by the ab transition, or finish, as represented by (for “done”). When a task is done, it can the dn transition either commit, i.e., make the cm transition, or abort, i.e., make the ab transition. Using the state transition diagrams and significant events defined above, we can represent the travel agent application described in the previous section as shown in Figure 4. The intertask dependencies are shown as “links” between significant dependency
events (ab(dB)
of
various
< dn(dS))
tasks.
We
are continuing
m enhance
results in action logics
with the construction
this
[7] and to
of advanced transaction
References
events of a task
can be represented by a task state transition is an abstract representation
of a
Acknowledgments We would like to thank Marek Rusinkiewicz of the University of Houston for his contributions to this work.
UbB -> abA.
The tdationships
[5] and the implementation
models.
This can be expressed as cmA < cmB.
GM
Rosette.
approach by exploiting
2. Abort Dependency [2]: Transaction A is abortdependent on transaction B, iff if B aborts, then A must also abort. Let
Tree Logic
scheduler to enforce these dependencies is described in [1]. The scheduler is implemented in the concurrent actor
For
example,
the
-> ab(dS) states that if the
dB task aborts before the dS task is done executing, then the dS task will also abort. The formal specification of these dependencies using a
494
[1] Attie, P., M. Sing~ A. Sheth, and M. Rusinkiewicz. “Speci&ing and Enforcing Intertask Dependencies”. submitted for publication, January, 1993.. “A~A The SAGA [2] Chrysanthis, P. and K. Ramamrhham. Continues”. Chapter 10 in [4]. [3] Elmagarmid, A., Y. Leu, W. Litwin, and M. Rusinkiewicz. “A Multidatabase Transaction Mmtel for Interbase”. Proceedings of the VLDB Conference, August, 1990. [4] Elmagarmid, A., editor. Database Transaction Modela for
Advanced Applications, Morgan Kaufmann, 1992. [5] Emerso~ A. and E. Clarke. “Using Branching Time Temporal Logic to Synthesize Synchronization Skeletons”. Science of Computer Programming, VOL2, 1982,241-266. [6] Klein, J. “Advanced Rule Driven Transaction Management.” Proceedings of the IEEE COMPCON, 1991. [7] Prat& V.R. “Action Logic and Pure Induction”. Logics in Ak European Workshop JELIA ’90, LNCS 478, Edkoc J. van Eijck, Springer-Verlag”, pp. 97-120, 1990. [8] Woelk, D., P. Cannata, M. Huhns, W, Shem and C. Tomliion. “Using Camot for Enterprise Information Integration”, Second International Conference on Parallel and Distributed Ir@ormation Systems. January, 1993. pp. 133-136.