Oracle Spatial

Oracle Spatial hakkında hazırladığım detaylı sunumu aşağıdaki bağlantıdan indirebilirsiniz:

Oracle Spatial Giriş Sunumu (PDF)

 

Oracle Spatial en genel anlamda Oracle veritabanına mekansal yetenekler ilave eden bir Oracle opsiyonudur. Spatial kelime olarak “mekansal, uzaysal” anlamlarına geliyor. (“Space” den türeyen bir kelime). Daha teknik bir tanımla, çok boyutlu verilerin -veya nokta, çizgi, çokgen vs. coğrafi nesnelerin diyelim- Oracle veritabanında saklanması, sorgulanması, update edilmesi gibi işlemlerin yapılabilmesini sağlayan; özel bir SQL şeması ve özel SQL fonksiyonlarını içeren Oracle opsiyonu. Spatial temel olarak 4 ana bileşenden oluşur:

1) “MDSYS” isimli ve geometrik veri tiplerinin saklanması, syntax i ve tanımlarını öngören Oracle şeması.

2) Mekansal indeksleme; ki bu olmasaydı bazı spatial sorgular saatlerce sürebilirdi!

3) Komşuluk ve yakınlık analizi, kesişme, içerme vb. muhtelif mekansal sorguların yapılabilmesini sağlayan özel coğrafi fonksiyonlar.

4) Yönetimsel araçlar.

Spatial seçeneği Oracle Enterprise Edition ile birlikte geliyor. Standart Edition’da Locator adlı, sadece temel mekansal fonksiyonalite sağlayan ve Spatial’ın “light” versiyonu diyebileceğimiz bir opsiyon mevcut. Kompleks GIS projelerinde Locator muhtemelen yetersiz kalacağı için büyük projelerde Spatial’ı kullanmak daha doğru. “Spatial mı yoksa Locator mı” sorusunun cevabı bazen önemli olabilir çünkü Spatial demek Enterprise Edition yani ekstra lisans ücreti demek. Spatial ve Locator arasındaki farkı aşağıdaki linkten detaylı olarak öğrenebilirsiniz.

Nasıl kullanıldığına gelirsek; mesela MapInfo’daki verilerinizi EasyLoader adlı ücretsiz MapInfo yazılımıyla kolayca Oracle’a yükleyebilirsiniz ve yine Spatial desteği olan MapInfo, Autodesk Map3D, Autodesk MapGuide, Intergraph gibi programlardan okuyabilirsiniz. Yani Spatial burada farklı GIS programlarının standart bir ortak paydası görevi görüyor aynı zamanda. Bir diğer güzel tarafı; sözel ve sayısal veriyi tek bir tabloda tutuyorsunuz ve bu tablodan hem normal hem de mekansal SQL sorgularınızı yapabiliyorsunuz. Şöyle bir örnek verirsek sanırım spatial SQL lerin nasıl çalıştığı daha iyi anlaşılır:

select IL_ADI from IL where SDO_RELATE(GEOLOC, mdsys.sdo_geometry(2001, 8307, mdsys.sdo_point_type(28.00,39.00, null), null, null), 'mask=anyinteract querytype=window') = 'TRUE'

Bu spatial SQL bize (28.00, 39.00) koordinatlarına sahip (lon, lat formatında) bir noktanın hangi ile düştüğünü döndürüyor. Bu SQL ile mesela bir araç takip sisteminde araçtan gelen koordinata göre aracın o an hangi il, ilce, mahalle vs. de bulunduğunu belirleyebiliriz. Burada sdo_relate yukarıda bahsettiğimiz özel spatial fonksiyonlardan biri ve nesnelerin birbirleriyle ilişkileriyle ilgili sorguları bu fonksiyonla yapabiliyoruz. Fonksiyonun parametrelerinden 2001 nokta nesnesine, 8307 ise koordinat sistemine karşılık geliyor.

Spatial’ı öğrenmek için aşağıdaki adres iyi bir başlangıç noktası olabilir:

http://www.oracle.com/technology/products/spatial/index.html

  1. Betül
    14/12/2011 at 19:19

    Merhaba,

    900 tane koordinatları(enlem ve boylam) verilen noktanın belli bir merkeze olan rectilinear mesafesini km cinsinden bulmak istiyoruz. Spatial bu konuda bize yardımcı olabilir sanırım. Peki Oracle Spatial’ e nasıl sahip olabiliriz? Lisans öğrencisiyiz ve bitirme projesi yapıyoruz.

    İlginize Teşekkürler..

    • 14/12/2011 at 22:51

      Oracle Spatial, Oracle Enterprise Edition’nın (opsiyonel) bir bileşenidir. Spatial’ı kullanmak için Oracle web sitesinden ücretsiz olarak Oracle Enterprise Edition’ı indirebilirsiniz.

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: