|
|
Databßze prostorov²ch objekt∙
Klasickß data organizovanß pomocφ zßznam∙ p°estavujφ hlavnφ zdroj pro databßzovΘ zpracovßnφ. V 90. letech se zaΦφnajφ realizovat po₧adavky na ·dr₧bu dat odpovφdajφcφch objekt∙m v n∞jakΘm prostoru. V 2D m∙₧e jφt o geografickΘ aplikace typu GIS, plßnovßnφ zßstavby aglomeracφ, VLSI design apod., ve 3D o objekty pou₧φvanΘ v CAD, CIM, CASE, Φi v astronomick²ch aplikacφch. Zßjem vznikß i v tzv. biocomputing, tj. zpracovßnφ dat biologick²ch struktur. UvedenΘ p°φklady se obecn∞ zahrnujφ pod netradiΦnφ aplikace. Jejich spoleΦnou charakteristikou je nutnost podpory velkΘho mno₧stvφ relativn∞ jednoduch²ch geometrick²ch objekt∙. Zmφn∞nΘ objekty majφ svΘ umφst∞nφ v prostory, tvar a identitu, na rozdφl od rastrovan²ch obrßzk∙ umφst∞n²ch v prostoru. Je proto vhodnΘ rozliÜovat databßze prostorov²ch objekt∙ a databßze obrßzk∙. SystΘm °φzenφ databßzφ prostorov²ch objekt∙ (S╪DBPO) je softwarov² systΘm
O jakΘ objekty jde? VÜeobecn∞ znßm²m p°φkladem v 2D m∙₧e b²t t°eba mapa, na kterou se lze dφvat jako na polygon. Jin²m dob°e studovan²m typem objektu jsou polygony s dφrami, kter²mi lze nap°. modelovat zemi s jezery. K objekt∙m typu mapa mohou existovat indexovΘ struktury umo₧≥ujφcφ nalΘzt k danΘmu objektu nap°. sousednφ objekty, prostorov²m spojenφm jezer a m∞st m∙₧eme obdr₧et m∞sta na b°ehu jezera. TradiΦnφ databßzovΘ techniky nejsou pro reprezentaci takov²ch objekt∙ vhodnΘ. P°edstavme si nap°. t∞leso slo₧enΘ (nebo aproximovanΘ) z disjunktnφch Φty°st∞n∙. ╚ty°st∞ny jsou dßny pomocφ rovin, hran a bod∙. Vyu₧ijeme-li relaΦnφ databßzi, lze odpovφdajφcφ data ulo₧it ve Φty°ech relacφch: ╚TY╪ST╠NY, ROVINY, HRANY a BODY. Relace ╚TY╪ST╠NY obsahuje dvojice (t,f), kde t je identifikßtor Φty°st∞nu, f je identifikßtor jednΘ z jeho rovin. Relace ROVINY obsahuje dvojice (f,e), kde f je identifikßtor roviny a e je jedna z hran v tΘ rovin∞. Relace HRANY obsahuje trojice (e,p,q), kde e je identifikßtor hrany, p a q jsou koncovΘ body hrany. Relace BODY obsahuje Φtve°ice (p,x,y,z), kde p je identifikßtor bodu a x, y, z jeho sou°adnice. Je z°ejmΘ, ₧e tato reprezentace nepodporuje geometrii pot°ebnou pro prostorovΘ dotazy. NalΘzt nap°. odpov∞∩ na dotaz, zdali danß p°φmka protφnß dan² Φty°st∞n vy₧aduje vφce vstup∙ do vφce relacφ, kterΘ obecn∞ mohou b²t ulo₧eny na vφce mφstech na disku. Zachßzφme zde s prostorov²mi daty jako s jin²mi daty, nevyu₧φvßme geometrick²ch vlastnostφ prostoru. Existujφ t°i podstatnΘ rysy prostorov²ch objekt∙:
D∙le₧itΘ je, v Φem se odliÜujφ dotazy na prostorovΘ objekty od databßzov²ch dotaz∙ na data formßtovßna v relaΦnφ databßzi nebo v textech. Zdßl-li se v²Üe uveden² dotaz n∞komu p°φliÜ ôgeometrick²ö, p°edstavme si, ₧e prostorovΘ objekty jsou °eky a m∞sta. Pak mß smysl dotaz ôNalezni m∞sta, kter²mi protΘkß °eka nebo je od jejich katastru vzdßlenß 1 kmö. Je patrnΘ, ₧e datovß struktura pro efektivnφ °eÜenφ tohoto problΘmu by m∞la podporovat ôprostorovostö nebo lΘpe geometrickΘ vlastnosti objekt∙. NalΘzt efektivnφ mo₧nosti p°φstupu k prostorov²m objekt∙m v databßzi uvedlo jejich tv∙rce do °ady problΘm∙. Ani indexovΘ struktury zalo₧enΘ na klasick²ch datov²ch strukturßch (nap°. B-stromech) se neukßzaly pro vyhledßvßnφ prostorov²ch objekt∙ p°φliÜ vhodnΘ. Jde o to, ₧e je jednak po₧adovßno intervalovΘ vyhledßvßnφ a navφc je pot°eba vφce dimenzφ. Vhodn∞jÜφ vφcerozm∞rnΘ datovΘ struktury, jako nap°. 4-stromy, jsou zase definovßny ve vnit°nφ pam∞ti a obtφ₧n∞ se implementujφ v diskovΘm prost°edφ. Ve druhΘ polovin∞ 80. let se objevila °ada nov²ch datov²ch struktur pro organizaci dat prostorov²ch objekt∙ a technik, kterΘ byly vytvo°eny p°φmo pro prostorovΘ objekty. Pat°φ sem novΘ typy strom∙, aproximace a r∙znΘ transformace objekt∙ apod. V podstat∞ je nutnΘ °eÜit t°i problΘmy:
V dneÜnφ databßzovΘ abeced∞ se budeme v∞novat podrobn∞ji prvnφmu z nich. Druh² problΘm souvisφ s tφm, ₧e prßce s objekty definovan²mi pomocφ slo₧it²ch geometrick²ch k°ivek je pro °eÜenφ prostorov²ch dotaz∙ v mnoha p°φpadech zbyteΦn∞ komplikovanß. VystaΦφ se s jednoduch²mi aproximacemi objekt∙. Studium t°etφho problΘm vede k definici operacφ podobn²m nap°. relaΦnφ algeb°e (Φi prostorov²m variantßm SQL). Reprezentace prostorov²ch objekt∙ znamenß °eÜit souΦasn∞ organizaci a reprezentaci prostoru. jako takovΘho. Jednou z mo₧nostφ je rozd∞lit prostor do disjunktnφch oblastφ, zvan²ch Φasto bu≥ky, a umφstit objekty do t∞chto oblastφ. D∙le₧itß je korespondence mezi bu≥kami a objekty. Vyhledßvacφ struktura m∙₧e existovat nad bu≥kami a teprve v dalÜφch fßzφch hledßnφ se p°istupuje k objekt∙m. PravidelnΘ rozd∞lovßnφ do hierarchickΘ soustavy bun∞k se obvykle zadßvß pomocφ radixov²ch strom∙ zvan²ch tΘ₧ rd-stromy, kde d oznaΦuje dimenzi. 4-strom je radixov² strom s d=2 a r=2. Na obrßzku 1 je ukßzka 4-stromu spolu s prostorov²m objektem, kter² je pomocφ 4-stromu p°φstupn². Zßkladnφ ideou 4-strom∙ je dekomponovat datov² prostor do nep°ekr²vajφcφch se bun∞k, kterΘ se poΦφtajφ rekurzivnφm d∞lenφm prostoru, zde do Φty° Φßstφ stejnΘ velikosti. Pro ·plnost poznamenejme, ₧e 4-stromy byly uvedeny Finkelem a Bentleyem u₧ v r. 1974, tj. jsou jen o n∞co mladÜφ ne₧ B-stromy.
Obr.1 Objekt a jeho reprezentace 4-stromem Bu≥ky lze Φφslovat r∙zn²m zp∙sobem. Na obrßzku 2 a) je ukßzßno tzv. z-uspo°ßdßnφ, jak je uvßd∞jφ Orenstein a Merrett v r. 1984. V z-uspo°ßdßnφ jsou bu≥ky identifikovßny k≤dem umφst∞nφ, tzv. z-hodnotou, a k≤dem velikosti bu≥ky, tzv. ·rovnφ. Bu≥ky mohou b²t ulo₧eny nap°. do relaΦnφ databßze, do B-strom∙ apod. z-uspo°ßdßnφ vznikne ze sou°adnic bun∞k prolo₧enφm bit∙ jejich binßrnφch reprezentacφ. Jsou-li sou°adnice bu≥ky (x1x0, y1y0), pak (lineßrnφ) adresa bu≥ky je x1y1x0y0. Na obrßzku 2 b) je ukßzßna k°ivka, kterß odpovφdß z-uspo°ßdßnφ. Naz²vß se Peanova k°ivka. K°ivek, kterΘ umo₧≥ujφ vhodn∞ vyplnit prostor je vφce typ∙. Peanova je vÜak nejznßm∞jÜφ.
11 5 7 13 15
10 4 6 12 14 0 01 1 3 9 11
00 0 2 8 10
00 01 10 11 a) b) Obr. 2 ╚φslovßnφ bun∞k v 2D pomocφ z-uspo°ßdßnφ Nev²hodou t∞chto technik je, ₧e stejn² odkaz na objekt se m∙₧e vyskytovat v mnoha bu≥kßch. Pom∞r poΦtu odkaz∙ ku poΦtu reprezentovan²ch objekt∙ m∙₧e b²t vysok² a zt∞₧ovat vyhodnocovßnφ dotaz∙. V²hodou z-uspo°ßdßnφ je linearizace 2D. Lze si vÜimnout, ₧e v∞tÜina bod∙ blφzk²ch v prostoru bude blφzko sebe i na Peanov∞ k°ivce. DalÜφ mo₧nostφ, jak organizovat prostor, je technika p°ekr²vajφcφch se oblastφ. ╚asto jde o minimßlnφ ohraniΦujφcφ obdΘlnφky, kdy skuteΦn² objekt je ohraniΦen nejmenÜφm mo₧n²m obdΘlnφkem, jeho₧ reprezentace i manipulace je jednoduchß. V tΘto technice je ka₧d² objekt p°i°azen prßv∞ jednΘ oblasti. Nejznßm∞jÜφmi technikami vyu₧φvajφcφ p°ekr²vajφcφ se oblasti jsou R- a R* -stromy. KoneΦn∞ transformaΦnφ techniky zobrazujφ objekty z d-rozm∞rnΘho prostoru jako body v 2d-rozm∞rnΘm prostoru. Pro indexaci takov²ch objekt∙ - bod∙ pak lze pou₧φt jako datovou strukturu techniky pro vφceatributovΘ klφΦe znßmΘ z klasick²ch databßzφ. Databßze prostorov²ch objekt∙ majφ rozsßhlΘ vyu₧itφ i v IS v pohyblivΘm prost°edφ. Jedeme v aut∞ a chceme v∞d∞t, kde je nejbli₧Üφ Φerpacφ stanice. K ·sp∞ÜnΘ odpov∞di staΦφ chyt°e konstruovan² GIS a napojenφ osobnφ stanicφ v aut∞ vzduchem na n∞jak² blφzk² server. Ka₧d² tuÜφ, ₧e dnes u₧ nejde o ₧ßdnΘ utopie. <seznam dφl∙ serißlu> <COMPUTERWORLD> |