W artykule zostały opisany ogólne zasady optymalizacji zapytań przez indeksowanie dla obiektowego języka zapytań SBQL (Stack-Based Query Language). Opracowane metody zostały zaimplementowane i przetestowane w prototypie systemu ODRA. Implementacja indeksowania na potrzeby systemu ODRA opiera się na liniowym haszowaniu i działa lokalnie w zakresie samodzielnej bazy danych. Składa się ona z przezroczystej optymalizacji zapytań, automatycznej aktualizacji indeksów oraz modułu zarządzającego. Na kilku przykładach zostały omówione kwestie semantycznej równoważności zaproponowanych metod optymalizacji w kontekście obiektowego modelu danych i języka zapytań.
EN
In paper we present an overview of query optimization by indexing for SBQL (Stack-Based Query Language). Developed methods have been implemented and tested in ODRA prototype system. The ODRA index implementation is based on linear hashing and works in a scope of a standalone database. It consists of transparent optimization, automatic index updating and management facilities. The semantic equivalence of proposed query optimization methods in the context of object data model and query language is discussed on several examples.
The paper presents the concepts related to the design of query optimization methods for nested queries. The proposed methods are dedicated for queries having so called weakly dependent subqueries. A subquery is weakly dependent from its direct operator if it depends only on expressions typed by enumerations. We have successfully developed the weakly dependent subqueries method in the context of object-oriented database management systems based on Stack-Based Approach. Systems storing XML data which are queried using XQuery can be considered simplified object-oriented databases. For this reason we try to adopt SBQL query optimization methods to XQuery expressions.
3
Dostęp do pełnego tekstu na zewnętrznej witrynie WWW
The paper describes aspects of integrating relational resources in an object-oriented data intensive grid with extensive description of a grid architecture. The presented solution is generic and allows utilizing native query optimizers of a relational resource (indices, fast joins, etc.), which can be effectively combined with an object query language (SBQL) optimization.
W artykule opisujemy uogólnione podejście do problemu automatycznej aktualizacji indeksów w reakcji na zmiany odpowiadających im danych. W celu umożliwienia tworzenia i przezroczystej konserwacji indeksów wspierających klucze oparte na dowolnych, deterministycznych i wolnych od efektów ubocznych wyrażeniach autorzy zaproponowali zastosowanie specjalnego rodzaju procedur wyzwalanych. Języki zapytań dla obiektowych modeli (klasy, dziedziczenie, polimorfizm, metody, itp.) pozwalają na łatwe definiowanie bardziej złożonych warunków selekcji. W celu zapewnienia pełnej przezroczystości indeksowania, mechanizmy aktualizacji indeksów wymagają znaczącej rewizji. Niewystarczająca kontrola poprawności indeksów może prowadzić do poważnych błędów podczas przetwarzania zapytań. Praca autorów jest oparta na architekturze stosowej SBA (Stack-Based Architecture) i została zaimplementowana w prototypowej obiektowej bazie danych ODRA (Object Database for Rapid Developmeni).
EN
We describe a generalized approach to the problem of the automatic index updating in response to modification of corresponding data. To enable creation and transparent maintenance of indices supporting keys defined using arbitrary, deterministic and side effects free expressions the authors propose applying a special kind of database triggers. Query language for object-oriented model (classes, inheritance, polymorphism, class methods, etc.) allows easy defining of more complex selection predicates; nevertheless, in order to provide full indexing transparency, index updating requires substantial revising. Inadequate index maintenance can lead to serious errors in query processing. The authors work is based on the Stack-Based Architecture (SBA) and has been implemented in the ODRA (Object Database for Rapid Applications Development) OODBMS prototype.
Artykuł prezentuje wyniki badań dotyczących implementacji otwartej platformy transportowej przeznaczonej do realizacji sieci grid utworzonej z obiektowych baz danych. Opisana implementacja jest oparta na wcześniej publikowanych założeniach. Prezentowanie zagadnienia obejmują: scentralizowaną architekturę sieci, w której działa platforma transportowa, wykorzystanie technologii JXTA do budowy wirtualnej sieci, podstawy budowy protokołu komunikacyjnego wraz z przykładem jego rozbudowy oraz zastosowanie platformy do integracji z zewnętrzną aplikacją użytkownika. Wszystkie opisane cechy działają w zrealizowanym prototypie.
EN
The paper presents the results of investigations concerning an open transport platform that can be used to build grid applications based on object-oriented databases. The described research has been focused on implementation of previously published project assumptions. The presented cases comprise: centralized architecture of a network for a transport platform, utilization of the JXTA technology for building a virtual network, foundations of a communication protocol for the network and an example of its application. An example of a transport platform integrated with an external user application is presented. All the described features are operating within the prototype.
W artykule przedstawiono pierwszy etap realizacji koncepcji DataGrid przy wykorzystaniu otwartej platformy transportowej opartej o sieć "każdy z każdym". Opisano część implementacyjną dotyczącą integracji obiektowych baz danych z istniejącym prototypem platformy transportowej. Prototypowe rozwiązanie daje możliwość realizacji sieci grid integrującej rozproszone obiektowe bazy danych.
EN
The paper presents the first stage of accomplishing a DataGrid concept by utilizing an open transport platform based on the peer--to-peer architecture. Implementation details concerning integration of object-oriented databases with the prototype of a transport platform are described. The prototype solution enables one to accomplish a grid network integrating distributed object-oriented data-bases.
7
Dostęp do pełnego tekstu na zewnętrznej witrynie WWW
Recursive queries arę reąuired for many tasks of database applications. Among them we can mention Bill-Of-Material (BOM), various kinds of networks (transportation, telecommunication, etc.), processing semi-structured data (XML, RDF), and so on. The support for recursive queries in current query languages is limited and lacks of theoretical foundations. In particular, this concerns corresponding extensions of SQL in Oracle and DB2 systems. In this report we present recursive query processing capabilities for the object-oriented Stack-Based Query Language (SBQL) and compare them with similar capabilities in yariants of SQL. SBQL offers very powerful and flexible recursive querying capabilities due to the fact that recursive processing operators arę fully orthogonal to other features of this language. This report specifies corresponding SBQL constructs, such as transitive closures and fixed point equations. We compare them to other query languages, in particular to Datalog. We also present briefly optimization possibilities for recursive queries.
PL
Rekurencyjne zapytania są wymagane dla wielu zadań występujących w rzeczywistych aplikacjach baz danych. Wśród nich możemy wymienić rachunek materiałów (BOM), różne typy sieci (transportowa, telekomunikacyjna, itp.), przetwarzanie danych półstrukturalnych (XML, RDF) itd. Wspomaganie dla rekurencyjnych zapytań w obecnych językach zapytań jest ograniczone i pozbawione podstaw teoretycznych. W szczególności, dotyczy to odpowiednich rozszerzeń SQL w systemach Oracle i DB2. W raporcie przedstawiamy możliwości w zakresie rekurencyjnych zapytań w języku zorientowanym obiektowo Stack-Based Query Language (SBQL) i porównujemy je do podobnych możliwości w wariantach SQL. SBQL oferuje bardzo mocne i elastyczne możliwości w zakresie rekurencyjnych zapytań dzięki temu, że operatory służące do przetwarzania rekurencyjnego są całkowicie ortogonalne w stosunku do innych cech języka. Raport specyfikuje odpowiednie konstrukcje SBQL, takie jak tranzytywne domknięcia oraz równania stałopunktowe. Porównujemy je do innych języków zapytań, w szczególności do Datalogu. Na zakończenie prezentujemy krótko możliwości optymalizacji zapytań rekurencyjnych.
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.