12,508 research outputs found
Query processing of geometric objects with free form boundarie sin spatial databases
The increasing demand for the use of database systems as an integrating
factor in CAD/CAM applications has necessitated the development of database
systems with appropriate modelling and retrieval capabilities. One essential
problem is the treatment of geometric data which has led to the development of
spatial databases. Unfortunately, most proposals only deal with simple geometric
objects like multidimensional points and rectangles. On the other hand, there has
been a rapid development in the field of representing geometric objects with free
form curves or surfaces, initiated by engineering applications such as mechanical
engineering, aviation or astronautics. Therefore, we propose a concept for the realization
of spatial retrieval operations on geometric objects with free form
boundaries, such as B-spline or Bezier curves, which can easily be integrated in
a database management system. The key concept is the encapsulation of geometric
operations in a so-called query processor. First, this enables the definition of
an interface allowing the integration into the data model and the definition of the
query language of a database system for complex objects. Second, the approach
allows the use of an arbitrary representation of the geometric objects. After a
short description of the query processor, we propose some representations for free
form objects determined by B-spline or Bezier curves. The goal of efficient query
processing in a database environment is achieved using a combination of decomposition
techniques and spatial access methods. Finally, we present some experimental
results indicating that the performance of decomposition techniques is
clearly superior to traditional query processing strategies for geometric objects
with free form boundaries
A posteriori metadata from automated provenance tracking: Integration of AiiDA and TCOD
In order to make results of computational scientific research findable,
accessible, interoperable and re-usable, it is necessary to decorate them with
standardised metadata. However, there are a number of technical and practical
challenges that make this process difficult to achieve in practice. Here the
implementation of a protocol is presented to tag crystal structures with their
computed properties, without the need of human intervention to curate the data.
This protocol leverages the capabilities of AiiDA, an open-source platform to
manage and automate scientific computational workflows, and TCOD, an
open-access database storing computed materials properties using a well-defined
and exhaustive ontology. Based on these, the complete procedure to deposit
computed data in the TCOD database is automated. All relevant metadata are
extracted from the full provenance information that AiiDA tracks and stores
automatically while managing the calculations. Such a protocol also enables
reproducibility of scientific data in the field of computational materials
science. As a proof of concept, the AiiDA-TCOD interface is used to deposit 170
theoretical structures together with their computed properties and their full
provenance graphs, consisting in over 4600 AiiDA nodes
Reify Your Collection Queries for Modularity and Speed!
Modularity and efficiency are often contradicting requirements, such that
programers have to trade one for the other. We analyze this dilemma in the
context of programs operating on collections. Performance-critical code using
collections need often to be hand-optimized, leading to non-modular, brittle,
and redundant code. In principle, this dilemma could be avoided by automatic
collection-specific optimizations, such as fusion of collection traversals,
usage of indexing, or reordering of filters. Unfortunately, it is not obvious
how to encode such optimizations in terms of ordinary collection APIs, because
the program operating on the collections is not reified and hence cannot be
analyzed.
We propose SQuOpt, the Scala Query Optimizer--a deep embedding of the Scala
collections API that allows such analyses and optimizations to be defined and
executed within Scala, without relying on external tools or compiler
extensions. SQuOpt provides the same "look and feel" (syntax and static typing
guarantees) as the standard collections API. We evaluate SQuOpt by
re-implementing several code analyses of the Findbugs tool using SQuOpt, show
average speedups of 12x with a maximum of 12800x and hence demonstrate that
SQuOpt can reconcile modularity and efficiency in real-world applications.Comment: 20 page
- …