1 / 28

Murat HANÇEROĞLU

Oracle Spatial ve Veri Kalitesi. Murat HANÇEROĞLU. Ajanda. Oracle Spatial Nedir? Neden Oracle Spatial ? Kullanım Alanları Nelerdir? Teknik Analizi Sdo_geometry MDSYS Şeması Sorgulama ve Indexleme Diğer Yetenekler 10g-11g performans karşılaştırma Veri Kalitesine Etkisi.

tarala
Download Presentation

Murat HANÇEROĞLU

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. OracleSpatial ve Veri Kalitesi Murat HANÇEROĞLU TROUG

  2. Ajanda • OracleSpatial Nedir? • Neden OracleSpatial? • Kullanım Alanları Nelerdir? • Teknik Analizi • Sdo_geometry • MDSYS Şeması • Sorgulama ve Indexleme • Diğer Yetenekler • 10g-11g performans karşılaştırma • Veri Kalitesine Etkisi TROUG

  3. OracleSpatial Nedir? • Spatial kelime anlamı olarak mekan,mekana ait anlamına gelmektedir. • OracleSpatialOracleRDBMS’emekansal veri kaydetme, sorgulama,işleme ve analiz etme yeteneklerini kazandıran, Oracle Enterprise Edition ile birlikte ayrı lisanslanan bir pakettir. • SpatialData Neler İçerir? • Ada,parsel, adres gibi kadastro datası, orman,göl,ırmak gibi doğal yapıları, • Elektrik, doğalgaz,su, fiber optik gibi altyapıyı ilgilendiren bilgiler, • Araç takip sistemleri, • Önemli Noktalar(Restoran,hastane,taksi vb..) • Müşteri konumu, baz istasyonu vs.. gibi Konum ile ilişkilendirilebilecek tüm verileri TROUG

  4. OracleSpatial Nedir? • Oracleveritabanlarının tüm versiyonlarında mekansal veriyi kaydetmeye,sorgulama ve işleme yeneteklerine sahip OracleLocatorversinyonu bulunmaktadır. TROUG

  5. OracleSpatial Nedir? Locater Spatial • Tüm Geometri tiplerini destekler(line,polyline,polygon..) • 2 boyutlu data • Tüm spatial sorgulamalar(inside,anyinteractetc..) • Utility, tuning ve validation işlemleri • Tüm koordinat sistemlerini Tüm locater yeteneklerini ve • Spatial veri işlemleri(birleştirme, fark,kesişim vs.) • Geocoder Engine • Linear Referencing • Network Data Model • PartitionedSpatial Index • Routing engine • GeoRaster • Topology Data Model • Özel 3D types (LIDAR,TINS) • OGC Web Services (WFS, OpenLS) TROUG

  6. Neler Yapılabilir? • Tüm mekansal sorgulamalar(inside,nearestneighbour, touch,intersectetc..) • İki nokta arasındaki en kısa yol, en hızlı yol, yada tüm olası yolların hesaplanması (Navigasyonvs) • Geometriler arası topolojik bağlantıların Oluşturulması • 2D objeler 3D ye çevrilebilir ve 3D Sorgulamalar yapılabilir. • Diğer veri tabanı yönetim sistemleri ile entegrasyon sağlayabilir (Open GeoSpatialConsersium standartlarında Veri üretir) TROUG

  7. Neler Yapılabilir? • Raster görüntüleri kaydedip, sorgulayabilir ve işleyebilir • AugmentedRealityuygulamaları • OracleFusionMiddleware ile tam entegre ederek Map Viewer ile Haritaların görüntülemesi Ve entegrasyonların gerçeklenmesi • LinearReferencing işlemleri TROUG

  8. Neden OracleSpatial? • Neden Spatial sorusunun cevabını bulmak için geçmişten bugüne konum bazlı uygulamalarının geçmişten bugüne evrimine bakabiliriz • 1990 başlarında • 2000 lere doğru • Bugün Standalone GIS Apps Application Traditional DBMS Spatial MiddleWare CustomAPIS Application Spatial DBMS Mapping Server Open APIs Application TROUG

  9. Neden OracleSpatial? • Big data konseptinin hayatımıza girmesiyle büyük veri kitlerinin kaydedilmesi ve analiz ihtiyaçlarının giderek artması • Veri güvenliği, kalitesi, arşivlenmesi sağlaması, client tarafında platform bağımsızlığını sağlaması, bulk işlemler, online bakım gibi klasik veritabanı için yapılan tüm yetkinliklerin spatial veri için de yapılabilmesini sağlaması • Konum bazlı analizlere dayalı kullanıcı taleplerinin hızla artması ve bu yönde hızla büyüyen Pazar.(Google Earth,Forsquare vb..) TROUG

  10. Spatial – Teknik Genel Bakış • VeritabanındaSpatail ve Locater durumu nedir? • select comp_id, comp_name, version, statusfrom dba_registrywhere comp_id in ('SDO', 'ORDIM'); COMP_ID COMP_NAME VERSION STATUS ------- ------------------ ----------- ------ SDO Spatial 11.2.0.1.0 VALID ORDIM Oracle Multimedia 11.2.0.1.0 VALID TROUG

  11. Spatial – Teknik Genel Bakış • Spatial sorgulama yapabilmek için; • Konum bilgilerini Mdsys.sdo_geomtry veri tipi İle kaydedilmesi • User_sdo_geom_metadate altına tüm sdo_geomtry kolonları için metadata bilgisini oluşturulması • CreateTable, Createsequence hakları • Sorgulama yapılacak kolon üzerinde spatialindex oluşturulması(Zorunlu) TROUG

  12. Sdo_Geometry • OracleSpatial için kullanılan temel veri tipidir. • Mdsys şeması altındadır. • CREATE TYPE sdo_geometry AS OBJECT (SDO_GTYPE NUMBER SDO_SRID NUMBER SDO_POINT SDO_POINT_TYPE SDO_ELEM_INFO SDO_ELEM_INFO_ARRAY SDO_ORDINATES SDO_ORDINATE_ARRAY); TROUG

  13. Sdo_Geometry • Sdo_gtype • Number • Geometrinin tipini belirler TROUG

  14. Sdo_Geometry • Number • Sdo_Geomtry.Srid • Verinin hangi koordinat sistemine ait olduğu bilgisini tutar. • MDSYS.CS_SRS bulunmak zorundadır. • Sdo_geomtry.sdo_point Point datalara ait x,y,z koordinatlarını içerir. • Point data tipleri için optimizasyon sağlar TROUG

  15. Sdo_Geometry • Sdo_geometry.sdo_odinates • VARRAY OF NUMBER • Geometriyi oluşturan noktaların kaydedildiği ildir. • select * from table(select a.geom.sdo_ordinates Fromscott.us_states a where rownum=1) TROUG

  16. Sdo_Geometry • Sdo_geomtry.Sdo_elem_info • VARRAY (1048576) OF NUMBER • Geometrinin nasıl bir obje olduğunu tarif eder. TROUG

  17. Sdo_Geometry • Sdo_geomtry.Sdo_elem_info • OrdinateOffset: Ilk ordinatı gösterir • Element Type: Tipini gösterir: Line,Polyline,LineString,Compund • Interpretation görevi elementype göre farklılık gösterir.Compound tiplerde eleman sayısını gösterir. Db kayıt şekli TROUG

  18. MDSYS Şeması • Spatial ile ilgili tüm paket,storedprocedure, function,metadata,index bilgileri, koordinat sistemlerine ait bilgileri barındırır. • Spatial ve locater yüklü tüm DB lerde olmak zorundadır. • Sorgulama ve indexleme yapabilmek için sdo_geomtry tüm kolonlar için mdsys.sdo_geom_metadata_table (user_sdo_geom_metadata) de mutlaka olması gerekir. • User_sdo_geom_metadata (table_name,Column_name,diminfo,srid) • Diminfocollection tipinde veridir. • X,Y koordinatlarının üst ve alt sınır değerlerini tutar ve tolerans değerlerini tutar. TROUG

  19. Sorgulama Ve Indexleme • Sorgulama Yapısı • Spatial sorgulama yapılabilmesi için spatialindex zorunludur. • Operatör ve Fonksiyonlar The SDO_FILTER operator The SDO_RELATE operator The SDO_WITHIN_DISTANCE ve SDO_NN operator SDO_FILTER( <geometry-1>,<geometry-2>)=‘TRUE’ <geometry-1> aramanın yapılacağı kolon,index zorunlu <geometry-1> değişken veya bir tablo kolonu olabilir. TROUG

  20. SpatialOperatorler ve Fonksiyonlar • SDO_FILTER • Sorgulamada en hızlı yöntemdir ancak yaklaşık bir sonuç verir. • Sadece ilk filtreleme işlemini yapar. • SDO_FILTER( <geometry-1>,<geometry-2>)=‘TRUE’ • SDO_RELATE • Tam doğru sonuç için kullanılması gereken sorgudur. SDO_RELATE ( <geometry-1>,<geometry-2>,'MASK=<mask>') = 'TRUE‘ Mask=INSIDE, CONTAINS, COVERS, COVEREDBY, EQUAL, TOUCH, … TROUG

  21. SpatialOperatorler ve Fonksiyonlar • Sdo_Relate ile kullanılan yaklaşımlar • SELECT c.county, c.state_abrvFROM us_countiesc,us_statess WHERE s.state = 'New Hampshire' AND SDO_RELATE(c.geom,s.geom,'mask=INSIDE') = 'TRUE'; • SDO_NN belirtiğiniz bir geometry en yakın geometriyi hesaplar • SDO_WITHIN_DISTANCE belirtilen geometriye belirtilen mesafekigeomtrileri hesaplar TROUG

  22. İndexleme • R-TREE INDEX Yapısı kullanılır. • MBR:MininumBoundindRectable • MBV:Mininumbounding Volume for 3D TROUG

  23. İndexleme • CREATE INDEX us_states_sxON us_states (geom) INDEXTYPE IS mdsys.spatial_index; • Index oluşturulduğunda aynı user altına mdrtxxx$ isimli bir tablo oluşturulur. • User createtable ve createsequence haklarına sahip olmalı • Ek parametreler • SDO_INDX_DIMS • SDO_RTR_PCTFREE • TABLESPACE • INITIAL • WORK_TABLESPACE • SDO_DML_BATCH_SIZE • LAYER_GTYPE TROUG

  24. İndexleme • Indexleme parça parça yapılır. • Tüm objelerin okunması • MBR ların oluşturulması • Her geometri için ortalama 10 Bytelikrollback için alan gerekli • Clusterların oluşturulması • 5 milyon kayıt için ortalama 1 Gbyte geçici alan gerekli • Her index için SGA de ortalama 10 Mbyte alan gerekli • SIZE(Mb) = SDO_TUNE.ESTIMATE_RTREE_INDEX_SIZE (NUMBER_OF_GEOMS, DB_BLOCK_SIZE [,SDO_RTR_PCTFREE] [,NUM_DIMENSIONS] [,IS_GEODETIC]) TROUG

  25. Diğer Yetenekler • LinearReferencing • Lineer bir yapı boyunca belirli bir noktaya göre olayları veya başka yapıları kaydetmeye yarar. • Demiryolları, hava trafik yönetimi,altyapı • Geocoding • Referanslı bir adres datasını baz alarak text adresleri koordinarlara çevirebilir. TROUG

  26. Diğer Yetenekler • Data Processing • Geometrileri birleştirme, ayrıştırma,alan ve uzunluk hesaplama • Network Data Model • İstenilen obje kümeleri için aralarındaki ilişkileri tanımlayarak analiz yapar • Node ve linkler tanımlayarak tüm ilişki bu yapı üzerinden sorgulanır. • Spatial sorgu kullanmaz. • Datayı oluşturmak için PL/SQL API leri, görüntülemek ve sorgulamak için JAVA API leri mevcuttur. • En kısa, en hızlı, gidilebilir güzergah gibi sorgulamalar yapılabilir TROUG

  27. Oracle 10g-11g Karşılaştırma • RedoLog Geliştirme • Yeni yöntemler ve kod iyileştirmeleri ile index kaynaklı I/O miktarı %90 civarında azalmıştır • DML işlemlerinde ki işlemler % 50 azalmıştır • Sorgulamalarda 20 kata kadar hızlanmalar(OracleUser conferece 2012) TROUG

  28. Veri Kalitesine Etkiler • Spatial datanın text veri ile birlikte tutulmasıyla Text verideki tutarlılığın denetlenmesi için 2. bir kontrol mekanizması oluşturur. • Özellikle altyapı şirketleri, maden şirketleri ve belediyeler için altyapının sağlıklı takip edilmesinde önemli katkılar sağlanabilir. TROUG

More Related