28
16 Ocak 2014 TROUG (1) Murat HANÇEROĞLU Oracle Spatial ve Veri Kalitesi

Murat HANÇEROĞLU

  • Upload
    tarala

  • View
    99

  • Download
    1

Embed Size (px)

DESCRIPTION

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. - PowerPoint PPT Presentation

Citation preview

Page 1: Murat HANÇEROĞLU

16 Ocak 2014TROUG

(1)

Murat HANÇEROĞLU

Oracle Spatial veVeri Kalitesi

Page 2: Murat HANÇEROĞLU

TROUG

Ajanda

16 Ocak 20142

Oracle Spatial Nedir?Neden Oracle Spatial?Kullanım Alanları Nelerdir?Teknik Analizi

Sdo_geometryMDSYS ŞemasıSorgulama ve IndexlemeDiğer Yetenekler10g-11g performans karşılaştırma

Veri Kalitesine Etkisi

Page 3: Murat HANÇEROĞLU

TROUG 16 Ocak 20143

Spatial kelime anlamı olarak mekan,mekana ait anlamına gelmektedir.

Oracle Spatial Oracle RDBMS’e mekansal veri kaydetme, sorgulama,işleme ve analiz etme yeteneklerini kazandıran, Oracle Enterprise Edition ile birlikte ayrı lisanslanan bir pakettir.

Spatial Data 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

Oracle Spatial Nedir?

Page 4: Murat HANÇEROĞLU

TROUG 16 Ocak 20144

Oracle veritabanlarının tüm versiyonlarında mekansal veriyi kaydetmeye,sorgulama ve işleme yeneteklerine sahip Oracle Locator versinyonu bulunmaktadır.

Oracle Spatial Nedir?

Page 5: Murat HANÇEROĞLU

TROUG 16 Ocak 20145

• Tüm Geometri tiplerini destekler(line,polyline,polygon..)

• 2 boyutlu data • Tüm spatial

sorgulamalar(inside,anyinteract etc..)

• 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 • Partitioned Spatial Index• Routing engine• GeoRaster• Topology Data Model • Özel 3D types (LIDAR,TINS)• OGC Web Services (WFS,

OpenLS)

Locater Spatial

Oracle Spatial Nedir?

Page 6: Murat HANÇEROĞLU

TROUG 16 Ocak 20146

Tüm mekansal sorgulamalar(inside,nearest neighbour,touch,intersect etc..)

İki nokta arasındaki en kısa yol, en hızlı yol, yada tüm olası yolların hesaplanması(Navigasyon vs)

Geometriler arası topolojik bağlantıların Oluşturulması

2D objeler 3D ye çevrilebilir ve 3D Sorgulamalar yapılabilir.

Diğer veri tabanı yönetimsistemleri ile entegrasyon sağlayabilir(Open GeoSpatial Consersium standartlarında Veri üretir)

Neler Yapılabilir?

Page 7: Murat HANÇEROĞLU

TROUG 16 Ocak 20147

Raster görüntüleri kaydedip, sorgulayabilir ve işleyebilir

Augmented Reality uygulamaları

Oracle Fusion Middleware ile tam entegre ederek Map Viewer ile Haritaların görüntülemesi Ve entegrasyonların gerçeklenmesi

Linear Referencing işlemleri

Neler Yapılabilir?

Page 8: Murat HANÇEROĞLU

TROUG 16 Ocak 20148

Neden Spatial sorusunun cevabını bulmak için geçmişten bugüne konum bazlı uygulamalarının geçmişten bugüne evrimine bakabiliriz1990 başlarında

2000 lere doğru

Bugün

Application Standalone GIS Apps

ApplicationSpatial

MiddleWareTraditional DBMS

Custom APIS

Application

Mapping Server Spatial

DBMS

Open APIs

Neden Oracle Spatial?

Page 9: Murat HANÇEROĞLU

TROUG 16 Ocak 20149

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..)

Neden Oracle Spatial?

Page 10: Murat HANÇEROĞLU

TROUG 16 Ocak 201410

Veritabanında Spatail ve Locater durumu nedir?

select comp_id, comp_name, version, status from dba_registry where comp_id in ('SDO', 'ORDIM');

Spatial – Teknik Genel Bakış

COMP_ID COMP_NAME VERSION STATUS------- ------------------ ----------- ------SDO Spatial 11.2.0.1.0 VALIDORDIM Oracle Multimedia 11.2.0.1.0 VALID

Page 11: Murat HANÇEROĞLU

TROUG 16 Ocak 201411

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ı

Create Table,Create sequence hakları

Sorgulama yapılacak kolon üzerinde spatial index oluşturulması(Zorunlu)

Spatial – Teknik Genel Bakış

Page 12: Murat HANÇEROĞLU

TROUG 16 Ocak 201412

Oracle Spatial için kullanılan temel veri tipidir.

Mdsys şeması altındadır.

CREATE TYPE sdo_geometry AS OBJECT (SDO_GTYPE NUMBERSDO_SRID NUMBERSDO_POINT SDO_POINT_TYPESDO_ELEM_INFO SDO_ELEM_INFO_ARRAYSDO_ORDINATES SDO_ORDINATE_ARRAY);

Sdo_Geometry

Page 13: Murat HANÇEROĞLU

TROUG 16 Ocak 201413

Sdo_gtype NumberGeometrinin tipini belirler Geometry Type 2D 3D

1 POINT 2001 3001

2 POLYLINE-LINE 2002 3002

3 POLYGON 2003 3003

4 COLLECTION 2004 3004

5 MULTI-POINT 2005 3005

6 MULTI-(POLYLINE-LINE) 2006 3006

7 MULTI-POLYGON 2007 3007

Sdo_Geometry

Page 14: Murat HANÇEROĞLU

TROUG 16 Ocak 201414

Number

Sdo_Geomtry.SridVerinin hangi koordinat sistemine ait olduğu bilgisini tutar.MDSYS.CS_SRS bulunmak zorundadır.

Sdo_geomtry.sdo_pointPoint datalara ait x,y,z koordinatlarını içerir.

Point data tipleri için optimizasyonsağlar

Sdo_Geometry

Page 15: Murat HANÇEROĞLU

TROUG 16 Ocak 201415

Sdo_geometry.sdo_odinatesVARRAY OF NUMBER

Geometriyi oluşturan noktaların kaydedildiği ildir.

select * from table(select a.geom.sdo_ordinatesFrom scott.us_statesa where rownum=1)

Sdo_Geometry

Page 16: Murat HANÇEROĞLU

TROUG 16 Ocak 201416

Sdo_geomtry.Sdo_elem_infoVARRAY (1048576) OF NUMBERGeometrinin nasıl bir obje olduğunu tarif

eder.

Sdo_Geometry

Page 17: Murat HANÇEROĞLU

16 Ocak 2014TROUG17

Sdo_geomtry.Sdo_elem_infoOrdinate Offset: Ilk ordinatı gösterirElement Type: Tipini gösterir: Line,Polyline,Line

String,CompundInterpretation görevi elementype göre farklılık

gösterir.Compound tiplerde eleman sayısını gösterir.

Sdo_Geometry

Db kayıt şekli

Page 18: Murat HANÇEROĞLU

TROUG 16 Ocak 201418

Spatial ile ilgili tüm paket,stored procedure, 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)

Diminfo collection tipinde veridir.X,Y koordinatlarının üst ve alt sınır değerlerini tutar ve

tolerans değerlerini tutar.

MDSYS Şeması

Page 19: Murat HANÇEROĞLU

TROUG 16 Ocak 201419

Sorgulama Yapısı

Spatial sorgulama yapılabilmesi için spatial index zorunludur.

Operatör ve FonksiyonlarThe SDO_FILTER operatorThe SDO_RELATE operatorThe SDO_WITHIN_DISTANCE ve SDO_NN operatorSDO_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.

Sorgulama Ve Indexleme

Page 20: Murat HANÇEROĞLU

TROUG 16 Ocak 201420

SDO_FILTERSorgulamada 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, …

Spatial Operatorler ve Fonksiyonlar

Page 21: Murat HANÇEROĞLU

TROUG 16 Ocak 201421

Sdo_Relate ile kullanılan yaklaşımlar

SELECT c.county, c.state_abrv FROM us_counties c,us_states s 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 mesafeki

geomtrileri hesaplar

Spatial Operatorler ve Fonksiyonlar

Page 22: Murat HANÇEROĞLU

TROUG 16 Ocak 201422

R-TREE INDEX Yapısı kullanılır. MBR:Mininum Boundind Rectable MBV:Mininum bounding Volume for 3D

İndexleme

Page 23: Murat HANÇEROĞLU

TROUG 16 Ocak 201423

CREATE INDEX us_states_sx ON us_states (geom) INDEXTYPE IS mdsys.spatial_index;

Index oluşturulduğunda aynı user altına mdrtxxx$ isimli bir tablo oluşturulur.

User create table ve create sequence haklarına sahip olmalı

Ek parametreler SDO_INDX_DIMS SDO_RTR_PCTFREE TABLESPACE INITIAL WORK_TABLESPACE SDO_DML_BATCH_SIZE LAYER_GTYPE

İndexleme

Page 24: Murat HANÇEROĞLU

TROUG 16 Ocak 201424

Indexleme parça parça yapılır.• Tüm objelerin okunması• MBR ların oluşturulması

• Her geometri için ortalama 10 Byte lik rollback için alan gerekli

• Clusterların oluşturulması5 milyon kayıt için ortalama 1 Gbyte geçici alan gerekliHer 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])

İndexleme

Page 25: Murat HANÇEROĞLU

TROUG 16 Ocak 201425

Linear ReferencingLineer bir yapı boyunca belirli bir noktaya göre

olayları veya başka yapıları kaydetmeye yarar. Demiryolları, hava trafik yönetimi,altyapı

GeocodingReferanslı bir adres datasını baz alarak text adresleri

koordinarlara çevirebilir.

Diğer Yetenekler

Page 26: Murat HANÇEROĞLU

TROUG 16 Ocak 201426

Data ProcessingGeometrileri birleştirme, ayrıştırma,alan ve uzunluk

hesaplamaNetwork 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

Diğer Yetenekler

Page 27: Murat HANÇEROĞLU

TROUG 16 Ocak 201427

Redo Log GeliştirmeYeni yöntemler ve kod iyileştirmeleri ile index kaynaklı I/O

miktarı %90 civarında azalmıştırDML işlemlerinde ki işlemler % 50 azalmıştırSorgulamalarda 20 kata kadar hızlanmalar(Oracle User

conferece 2012)

Oracle 10g-11g Karşılaştırma

Page 28: Murat HANÇEROĞLU

TROUG 16 Ocak 201428

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.

Veri Kalitesine Etkiler