Kora | Spatial & Locator
Posted by Mustafa Katrancı | Ekim 24, 2011	| Spatial | No Comments
Coğrafik veriler özel formatlı dosyalarda saklanır ve kullanılmak istenildiği zaman özel GIS programları kullanmak gerekirdi. Oracle Database 10g ile birlikte Spatial ve Locator adı verilen coğrafi veri yönetim çözümleri sunmaya başladı. Bütün coğrafi veri türlerini veritabanında saklayabilir, spatial(mekansal, konumsal) indexler yaratarak veriye hızlı bir şekilde erişebilir ve yalnızca sql kullanarak bu dataları sorgulayabilirsiniz.
Spatial ürünü Oracle Database’in Enterprise versiyonu ile sunulan bir opsiyon ancak buna alternatif olan ve daha kısıtlı fonksiyonlar sunan opsiyon olan locator bütün database versiyonlarında ücretsiz olarak gelmektedir. Burada önemli olan noktalar ne kadar kısıtlı ve bizim projemiz ne kadar büyük? Bu kısıt projemizin büyüklüğüne göre tercihlerimizin şekillenmesini sağlayacak, locator ihtiyaçlarımızı karşılayacaksa bunu kullanmak maliyet azaltmak anlamında mantıklı bir tercih olacaktır.
Veritabanında lokasyon tabanlı verilerimizi tutmak için kullanacağımız veri tipi SDO_GEOMETRY dir. Bu alanı tablo oluştururken veya daha sonra ALTER komutu kullanarak tablomuza ekleyebilir, aynı tablo için birden fazla SDO_GEOMETRY tipinde sütun tanımı yapabiliriz. Sütün isimlendirmesi için genel Oracle kuralları geçerlidir.
SDO_GEOMETRY tipi bir alanda saklanabilecek coğrafi veri türlerine örnek olarak;
Figure 1: linestring (Yol, ırmak vb. coğrafi verilerin tutulması için)
Figure 2: polygon (İl sınırı, park, göl gibi geniş alanlara sahip coğrafi verilerin tutulması için)
Bu tür verilerin veritabanında ne kadar kolay saklanabileceğini aşağıda bulunan senaryo üzerinden inceleyelim;
Figure 2 için: Geometrik şeklin köşe koordinatları verilmiş. Şeklin önemi yok, bu şeklin koordinatlarının daha fazla sayıda ve şeklin kenarlarının bu şekilde doğru olarak değil daha girintili çıkıntılı verildiğini düşünürsek bir göl veya bir şehrin il sınırlarıda olabileceği açık. Bu şeklin veritabanına kaydedilebilmesi için gereken sql;
CREATE TABLE t_sdo_sample (shp_id NUMBER PRIMARY KEY, shp_name VARCHAR2(32), shape SDO_GEOMETRY);
INSERT INTO t_sdo_sample VALUES(1,’Tuz Gölü’,SDO_GEOMETRY(2003,NULL,NULL, SDO_ELEM_INFO_ARRAY(1,1003,1), SDO_ORDINATE_ARRAY(5,1,8,1,8,6,5,7,5,1) ));
Böylece şeklimizi veritabanına kaydetmiş olduk.
Coğrafi bir verinin bu şekilde kaydedilmiş olması kullanıcı tarafından bir anlam ifade etmeyecektir. Kaydetmiş olduğumuz veriyi bir harita üzerinde gösterebiliyor olmak kullanıcı için tek anlamlı sonuçtur. Bu noktada devreye Mapviewer girmektedir.
Mapviewer ile Oracle coğrafi veri yönetim sistemi özelliğini tamamlamakta diyebiliriz. Veritabanında saklanmış olan coğrafi verilerin web tabanlı olarak görüntülenmesini sağlayan Mapviewer WebLogic server, Oracle application server, Jdeveloper/ADF ve Toplink içerisinde yer alan bir J2EE componentidir.
Mapviewer mimarisi şu şekildedir;
SDO_GEOMETRY tipinde sakladığımız datayı mapviewer ile görsel olarak anlamlandırmak istersek şu sonuçlar ortaya çıkacaktır;
Linestring tipinde kaydettiğimiz şekil bir nehir veya bir yol olabilir.
Diğer şeklimiz olan polygon için de park, il sınırı gibi bir şekil olabileceğini belirtmiştik.
Bu haritaları elde etmek için ihtiyacımız olan veriyi daha önce veritabanımıza SDO_GEOMETRY tipi ile kaydetmiştik artık yapmamız gereken kaydetmiş olduğumuz verilerimizi Mapviewer apilerini kullanan uygulamamız içerisinden çağırmak. Mapviewer ile lokasyon tabanlı servisler, yerel yönetimler, mimari data sunan webservisler için geliştirilen uygulamalar kolayca entegre edilebilir.
Yollar, ırmaklar gibi ulaşım alternatiflerini harita üzerinde görüntülemek
Ulusal veya lokal bölge sınırlarını görüntülemek
Verilerimizi satış metrikleri, popülasyon dağılımı gibi özelliklere göre harita üzerine oturtarak araştırdığımız özellikleri görsel bir platform üzerinde incelemek
Jdeveloper veya başka bir araç ile geliştirilen web üzerinden iletilebilecek harita verilerinin hazırlanması
gibi ihtiyaçlarımız için kullanabiliriz.
Mapviewer OTN üzerinden indirilebileceği gibi FMW Companion DVD si içerisinde de bulunmaktadır.
OTN linki; http://www.oracle.com/technology/products/mapviewer/index.html