[comp.databases] Long

gupta@fornax.UUCP (Ranabir Gupta) (02/20/91)

I'm looking at a planning/design application where lots of
'what-if' (hypothetical) design-related planning is involved
using information about 1000+ objects. What complicates matters
is that other planners will also be looking at the data (and
wanting to modify it) and the world which the data models will
also be changing and wanting to update the data to reflect
the changes.

Many updates may be considered before some are committed to the
database by the planner. In a sense, each transaction will be a 
long one (upto hours) instead of the quick commercial transactions.
Otherwise, the requirements of maintaining integrity of the data
during the transaction are (almost) the same as in the usual case.
Obviously, all the data which may possibly be updated in the course
of the transaction should not be locked, for fear of hobbling all the
other planners. The alternative that seems best is to develop some
sort of warning mechanism to simultaneous accessors of the same
information for read and update (even for read, because subsequent 
plans may depend on a planner assuming that some data which (s)he 
is looking at won't change during her/his deliberations) and some
conflict resolution strategy.

Question is:
Are there any systems around which target this sort of application ?
Are there any research papers that do ?
Partial addressing of this question ?

I am not bound (at present) to any particular environment (object-
oriented/relational etc.) but would 'prefer' one which leans towards
established technologies. 

Gurus, help!    if people email me at 'gupta@cs.sfu.ca', I'll
summarize for the net, if there's sufficient interest. Of course,
any response could just as well be posted. Thanks in anticipation.

davem@mtunion.SanDiego.NCR.COM (Dave Miller) (02/20/91)

In article <2151@fornax.UUCP> gupta@fornax.UUCP (Ranabir Gupta) writes:
>I'm looking at a planning/design application where lots of
>'what-if' (hypothetical) design-related planning is involved
>using information about 1000+ objects. What complicates matters
>is that other planners will also be looking at the data (and
>wanting to modify it) and the world which the data models will
>also be changing and wanting to update the data to reflect
>the changes.
>
[more description deleted]
>
>Question is:
>Are there any systems around which target this sort of application ?
>Are there any research papers that do ?
>Partial addressing of this question ?
>
MCC - Microelectronics and Computer Technology Corporation - is currently
researching new transaction techniques that relax the ACID properties as
part of the Carnot project.  NCR is a sponser of the project.  I don't
know what is / is not confidential so I had better shut up now.

Dave Miller

cwk@ORCRIST.GANDALF.CS.CMU.EDU (Charles Krueger) (02/23/91)

> Are there any systems around which target this sort of application ?
> Are there any research papers that do ?
> Partial addressing of this question ?

We designed and implemented a long transaction facility as part of the
object database in the Gandalf Software Environment Generator.  It seems
to satisfy all of the requirements in your post.  I've have a tech report
that describes the issues and implementation.  The tech report is written
in general terms, so it's applicable to most object-oriented database
models, not just software databases.  Here's the citation:

	TechReport(
	Title="Persistent Long-term Transactions for Software Development",
	Author="Charles W. Krueger",
	Institution="School of Computer Science, Carnegie Mellon University", 
	Address="Pittsburgh, PA.  15213"
	Number="CMU-CS-90-188",
	Month="December", Year="1990")

If you are interested in getting a copy of this tech report, you can
send me e-mail.  (If I get too many requests, though, our document manager
might make me charge you a couple of dollars!)

Also, Sun's Network Software Environment (NSE) has the flavor of long
transactions.  It uses optimistic concurrency and a merging tool to assist
software developers when there is a concurrency clash.  It is oriented
towards fairly large-grained (file-sized) software "objects".  Here are a
couple of citations:

	Book(
	Author="William Courington, Jonathan Feiber, and Masahiro Honda",
	Title="NSE Highlights", BookTitle="The SunTechnology Papers",
	Chapter="3", Publisher="Springer-Verlag", Year="1990")
	--------
	Proceedings(
	Author="Evan W. Adams, Masahiro Honda, and Terrance C. Miller",
	Title="Object Management in a CASE Environment",
	Organization="ACM SIGSOFT",
	BookTitle="Proceedings of the 11th International Conference on
		   Software Engineering",
	Address="Pittsburgh, PA.", Month="May", Year="1989",
	Pages="154-163")

gupta@fornax.UUCP (Ranabir Gupta) (02/28/91)

Thanks to all those who responded to my query about products/research which
support long (upto days) transactions on shared objects by many users in a
design/planning environment. 

I'd offered to summarize on the net - here's the summary. One person sent
email asking me to mail him the summary. Sorry, I deleted your email by
mistake. I hope you're reading this ...
------------------------------------------------------------------------
The problem:
1) Many 'objects' shared by many planners/designers.
2) Designers want to commit updates to sets of these objects en masse, much
   like a transaction.
3) Catch: Designers would like to examine these objects for days before
   committing their transactions.
4) This leads to following hassles:
    a) can't lock objects accessed by one user for fear of crippling all the
       others' work.
    b) user A must have some way of knowing which other users are accessing
       or planning to modify the objects (s)he's looking at, and must be
       notified of (impending) changes to those objects, so that days worth
       of planning does not get washed away at commit time when (s)he discovers
       that some object has been changed 'on the sly' while (s)he wasn't looking
-------------------------------------------------------------------------------
Responses:
(In general, this is not a properly explored area. Most attempts seem to be
 stabs at part of the problem)

Research (Academia):
1) Matthias Jarke and group are working on ConceptBase at University of
   Passau. This system contains some of the features involved. It can
   support design groups spread over continents (over Internet). They
   are writing a "Conceptbase V3.0 manual". Contacts:
       jarke@unipas.fmi.uni-passau.de
       jeusfeld@andorfer.fmi.uni-passau.de
2) Using ConceptBase to implement cooperative software development
   (GroupWare) is an activity under John Mylopoulos at University of
   Toronto. Possible contact:
      rose@telos.ai.toronto.edu
   There's apparently some more interest in the subject there.
3) At CMU, a long transaction facility has been implemented as part of the
   Gandalf Software Environment Generator, which seems to satisfy most
   of the requirements. ref:
   Charles Krueger, Persistent Long-Term Transactions for Software Development,
   Tech Rep. CMU-CS-90-188, School of Computer Science, Carnegie Mellon
   University, Pittsburgh, PA 15213, Dec, 1990
4) Other refs:
    a) Won Kim, HF Korth, A Model for CAD Transactions, Proc. of VLDB 1985,
       Stockholm, 1985
    b) Henry F Korth, W Kim, F Bancilhon, On Long Duration CAD Transactions,
       Information SCiences, v46, 1988 pp73-107
    c) Henry F Korth, Long Duration Transactions in Software Design Projects,
       Proc. 6th Int'l Conf. on Data Engineering, Feb 1990, Los Ang. CA
    d) Patrick E O'Neil, The Escrow Transactional Method, ACM Transaction on 
       Database Systems, V11, no4, 1986, pp405-430

Commercial Systems:
1) William J. Doucette
   Object Design Inc.
   1450 E. AMerican Lane, Suite 1400
   Schaumberg IL 60173
   This company has a product which has an explicit mandate to support
   distributed design and subcequent reconciliation of the resulting
   designs.
2) Sun's Network Software Environment has a flavour of long transactions. It
   is oriented towards file-sized software 'objects'. Refs:
   a) William Courington, J Feiber, M Honda, NSE Highlights, Chapter 3, The
      SunTechnology Papers, Springer-Verlag, 1990
   b) Evan W Adams, M Honda, TC Miller, Object Management in a CASE Environment
      Proc. ACM-SIGSOFT 11th Int'l. Conf. on Software Engineering, Pittsburgh,
      PA May 1989
   c) (Mysterious One) MCC and NCR may be doing something in this area.

Thanks to:
Manfred Jeusfeld
Chris Arnold
Vinay Chaudhri
Charles Krueger
Dave Miller
-----------------------------------------------------------------------------
Disclaimer: I can't imagine why someone would like to nail me or anyone else
            for any of this, but hey! this is america, and so I disclaim all
	    knowledge of the constructive/destructive/soporific properties of
	    any of the products/papers mentioned herein, so help me God.

Ciao,
   thanks again, ranabir