3. Zastosowania języków zapytań
Istnieje praktycznie nieograniczone pole różnorodnych zastosowań języków zapytań w systemach baz danych i językach programowania. Wśród nich wymienimy następujące:
- Narzędzie dla powszechnego użytkownika umożliwiające interakcyjne zapytania (tzw. ad hoc), z generacją odpowiedzi lub raportów w pewnych z góry zadanych formatach.
- Interakcyjne (ad hoc) aktualizacje bazy danych. Tego rodzaju udogodnienia mogą również być wykorzystane przez powszechnego użytkownika.
- Konstrukcje języka programowania umożliwiające programowanie na bardzo wysokim poziomie abstrakcji i konceptualizację programów.
- Definiowanie ograniczeń integralnościowych (integrity constraints), inaczej więzów integralności, zapobiegających niedopuszczalnym operacjom na bazie danych lub wykrywających błędy w danych.
- Definiowanie podschematów, ograniczeń dostępu i innych środków autoryzacji lub bezpieczeństwa danych.
- Definiowanie wirtualnych perspektyw (views), zmaterializowanych perspektyw (materialized views), danych pochodnych (derived), replikacji danych, procedur zapamiętanych w bazie danych (stored procedures, database procedures) i innych abstrakcji lub udogodnień w danych lub programach.
- Składowe konstrukcji językowych skryptów (scripts) w językach czwartej generacji (4GL) i narzędziach do prototypowania.
- Definiowanie aktywnych reguł, dedukcyjnych reguł, aktywnych agentów
i innych elementów w bazie danych umożliwiających zwiększenie jej "inteligencji".
- Sterowanie przetwarzaniem transakcji i równoległym (concurrent) dostępem do bazy danych.
- Określanie danych do transmisji w rozproszonych bazach danych.
- Określanie danych do transmisji pomiędzy różnymi rodzajami pamięci, np. pomiędzy pamięcią optyczną typu jukebox a pamięcią dyskową.
- Umożliwienie współpracy pomiędzy heterogenicznymi i/lub odległymi bazami danych.
- Narzędzia do wyszukiwania informacji w danych półstrukturalnych (semi-structured), w natywnych repozytoriach XML, RDF i innych repozytoriach zasobów Internetu; definiowanie perspektyw nad danymi określanymi jako półstrukturalne i nad repozytoriami XML.
- Narzędzia do eksploracji danych (data mining) i analitycznego przetwarzania (OLAP).
Zbudowanie języka zapytań, który odpowiadałby wszystkim wymienionym wyżej zastosowaniom, jest trudne. Tym bardziej istotne staje się więc stworzenie precyzyjnej i uniwersalnej podstawy semantycznej dla tej klasy języków. |