minor fixes, softened the XML stuff.

This commit is contained in:
Sears Russell 2005-03-31 21:39:04 +00:00
parent 09e018f72b
commit 749be80e9a

View file

@ -51,25 +51,27 @@ implemented an extensible navigational database system. We
believe that this system will support modern development practices and believe that this system will support modern development practices and
allows transactions to be used in a wider range of applications. allows transactions to be used in a wider range of applications.
*** This paragraph doesn't make sense to me: Typically, implementations of general-purpose declarative systems
are unable to keep up with the new classes of workloads introduced
by rapidly evolving applications. We believe that our architecture's
flexibility allows us to address such applications rapidly. In cases
where the development of a general-purpose system is not economical,
our system seems to be a reasonable long-term solution. XML storage
technologies, which are rapidly evolving and still fail to handle
many types of applications provide a good example.
In cases where the development of a general-purpose solution is not For instance, most general-purpose solutions for semi-structured
economical, our approach should lead to maintainable and efficient information have difficulty handling computationally intensive
long-term solutions. Semi-structured data stores provide good workloads posed by the large repositories that are typical of
examples of both types of scenarios. General XML storage technologies bioinformatics research[PDB, NCBI, Gene Ontology]. These sytems are
are improving rapidly, but still fail to handle many types of slowly transitioning to XML, which currently has clear value as an
applications. interchange format, but many of the data processing applications that
use these databases still employ ad-hoc solutions for data managment.
*** this is risky: there are many people working on XML databases Whether or not general purpose XML database systems eventually meet
For instance, the unique needs of each of these scientific applications, extensions
we know of no general-purpose solution that seriously addresses implemented on top of a more flexible data storage implementation
semi-structured scientific information, such as the large repositories could have avoided the need for ad-hoc solutions, and could serve
typical of bioinformatics research efforts[PDB, NCBI, Gene Ontology]. as a partial prototype for higher level implementations.
Although many scientific projects are moving toward XML for their data
representation, we have found that XML is used primarily as a data
interchange format, and that existing XML tools fail to address the
needs of automated data mining, scientific computing and interactive
query systems.
LLADD is based upon an extensible version of ARIES but does not LLADD is based upon an extensible version of ARIES but does not
hard-code details such as page format or data structure hard-code details such as page format or data structure
@ -183,8 +185,8 @@ behavior during recovery is equivalent to the behavior that would
result if an abort() was issued on each prefix of the log that is result if an abort() was issued on each prefix of the log that is
generated during normal forward operation. generated during normal forward operation.
*** below implies that two operations have two latches and can thus run in parallel *** By using coarse latches that are held throughout entire logical
By using coarse latching (one latch per logical operation), we can operation invocations, we can
drastically reduce the size of this space, allowing conventional drastically reduce the size of this space, allowing conventional
state-state based search techniques (such as randomized or exhaustive state-state based search techniques (such as randomized or exhaustive
state-space searches, or unit testing techniques) to be state-space searches, or unit testing techniques) to be
@ -207,11 +209,15 @@ latching/unlatching behavior, but this would greatly complicate the
API that application developers must work with, and complicate any API that application developers must work with, and complicate any
application code that made use of such optimizations. application code that made use of such optimizations.
*** code hoisting might be a better example Compiler optimization techniques such as code hoisting and partial common
Compiler optimization techniques such as partial common subexpression subexpression elimination solve analogous problems to remove redundant
elimination solve an analogous problem to remove redundant algebraic computations. Code hoisting moves code outside of loops and conditionals, while
computations. We hope to extend such techniques to reduce the number partial common subexpression elimination inserts checks that decide at runtime
of buffer manager and locking calls made by existing code at runtime. whether a particular computation is redundant.
We hope to extend such techniques to reduce the number
of buffer manager and locking calls made by existing code. In
situations where memory is abundant, these calls are a significant
performance bottleneck, especially for read-only operations.
Anecdotal evidence and personal experience suggest that similar Anecdotal evidence and personal experience suggest that similar
optimization techniques are applicable to application code. Because optimization techniques are applicable to application code. Because
@ -222,7 +228,6 @@ implementation. This class of optimizations would be very difficult
to implement with existing transactional storage systems but should to implement with existing transactional storage systems but should
significantly improve application performance. significantly improve application performance.
*** no reason to say this: Our implementation of LLADD is still unstable and inappropriate for use on important data.
We hope to validate our ideas about static analysis by incorporating We hope to validate our ideas about static analysis by incorporating
them into the development process as we increase the reliability and them into the development process as we increase the reliability and
overall quality of LLADD's implementation and its APIs. overall quality of LLADD's implementation and its APIs.