Prostorová databáze

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

Prostorová databáze (prostorový databázový systém) je postrelační databázový systém schopný spravovat (ukládat, zpracovávat, manipulovat, dotazovat se) prostorová data (např. bod, úsečka, polygon). Prostor zde znamená 2 a více dimenzí. Prostorové databázové systémy mohou s výhodou využít geografické informační systémy. Příkladem prostorového databázového systému je Oracle Spatial.

V prostorových databázích nalezneme množiny entit z určitého prostoru, u kterých je zřejmá identifikace, umístění a vztah k okolí.

Protože v počítači nemůžeme zachytit každé reálné číslo (pouze s omezenou přesností), používají se k popisu entit například přístupy:

  • simplexy (skládání složitějších entit z jednodušších)
Simplex je nejmenší nevyplněný objekt dané dimenze, 0-simplex je bod, 1-simplex úsečka, 2-simplex trojúhelník, 3-simplex je čtyřstěn atd. Každý d-simplex se skládá z d+1 simplexů rozměru d-1, tyto se nazývají styky. Kombinace simplexů do složitějších struktur je povolena jen, když je průnik libovolných dvou simplexů styk.
  • úplné deskriptory/realms (kompletní popis modelované oblasti)
Úplné popisy, či deskriptory (realms) jsou množinou bodů, úseček, případně vyšších celků s následujícími vlastnostmi. Každý (koncový) bod (i složitějšího celku) je bodem sítě, žádný vnitřní bod (složitějšího celku) není zaznamenán v síti a žádné dvě úsečky (složitější celky) nemají ani průsečík ani se nepřekrývají.

Aby bylo možné ukládat prostorová data a provádět nad nimi požadované operace musí databáze podporovat prostorové datové typy (např. bod, lomená úsečka, region apod.) a operace, kde takové datové typy vstupují jako parametry, případně vystupují jako výsledek. Tyto operace se dělí na predikáty (např. je_uvnitř()), relace (např. průnik()) a ostatní operace (např. plocha()). Dále musí databázový systém zajistit funkci již existujících operací (např. projekce, selekce).

Algebra ROSE[editovat | editovat zdroj]

Příkladem algebry pro podporu prostorových databázových systémů je algebra ROSE (RObust Spatial Extension). Tato algebra vychází z deskriptorů (realms) a složitější objekty získává jejich skládáním. Základem jsou body, úsečky a oblasti (plochy, které mohou mít i díry). Je zde definován tzv. R-cyklus, což je uzavřená lomená úsečka, která je vytvořena podle pravidel ukládání deskriptorů a u které na sebe jednotlivé dílčí úsečky navazují. Dále je zde definována R-plocha, což je dvojice (c, H), kde c je R-cyklus a H je množina R-cyklů, přičemž všechny R-cykly z H jsou hranově vnořené v c a vzájemně hranově disjunktní, a platí také, že žádný jiný cyklus není možné ze segmentů popisujících tuto plochu dále vytvořit. Pro R-plochy je definováno vnoření. Algebra ROSE pak specifikuje datový typ regions, což je množina hranově disjunktních R-ploch. Navíc rozšiřuje definici plošného vnoření z dvou R-ploch na dvě množiny R-ploch.

Algebra ROSE definuje polohu dvou objektů jako:

  • plošně vnořené,
  • hranově vnořené,
  • vrcholově vnořené,
  • plošně disjunktní,
  • hranově disjunktní
  • a vrcholově (úplně) disjunktní.