• Sonuç bulunamadı

Mevcut ve gelecek zaman endeksleme yapıları

2. HAREKET EDEN NESNELERİN ENDEKSLEME YAPILARI VE VERİ

2.1 Endeksleme Yapıları

2.1.3 Mevcut ve gelecek zaman endeksleme yapıları

Hareket eden nesnelerin gelecekteki yerlerini tahmin etmek için, hız ve hedef gibi ek bilgilerin de saklanması gerekmektedir. Nesnelerin doğrusal hareketlerini modellemek için xt =at+b

denkleminden faydalanılarak tek boyutlu olarak modellenmektedir. Bu tip endeksleme yapısı olarak; PMR-quadtree, RUM-tree, Bx-tree, Bdual-tree ve STRIPES verilebilir.

PMR-quadtree, gelecek gezinge noktalarını endeksler. Hareket eden nesnenin bilgisi değiştiğinde, tüm endeks yapısı bozularak yeni bilgiye göre yeni endeks oluşturulur. Çok sayıdaki değişim işlemlerinde, endeks ∆T zaman sonra tekrar oluşturulur. Kavramsal düzeyde, sonsuz zaman, eşit zaman dilimlerine bölünmektedir. Her bir dilim için, hareket denklemine göre PMR-quadtree oluşturulmaktadır. Bellek sınırlarından dolayı da sadece mevcut zaman için PMR-quadtree yaratılır (Tayeb, J.vd. 1998).

Geleceğe ait gezingeleri endeksleme metotlarında iki sakınca oluşmaktadır. Birincisinde en küçük dikdörtgende gezingeyi tutmak için, çok büyük ölü alanlar oluşmaktadır. İkincisinde ise zamanın bitiş değerleri hep aynı olduğu için gezingelerde, tüm veri bir tarafa yönelmektedir (skewed).

Hem uzaya hem zamana bağlı endeksleme yapısında oluşan sorunları engellemek için zaman- uzay alanı, başka bir uzaya dönüştürülür (duality transformation). Burada daha kolay bilginin temsil edilmesi ve sorgulanması temel olarak ele alınmaktadır. Bu konuda gerçekleştirilen çalışmalar, devimsel veri yapısı ile duality transformation, SV-Model, PSI (Parametric Space Indexing Technique)’dir. Genel olarak ele alındığında dönüştürme teknikleri, üç sorunla karşılaşmaktadır. İlk olarak, ana uzaydaki tüm hareketleri dual uzay yakalayamamaktadır. İkinci olarak, ana uzayda yan yana olan nesnelerin dual uzayda da hala yan yana olması belirsizdir. Üçüncü olarak ana uzaydaki dikdörtgen şeklindeki aralık sorguları, dual uzayda

poligon aralık sorgularına her zaman dönüştürülmektedir. Bu da algoritmaların geliştirilmesini karmaşıklaştırmaktadır (Mokbel, M. F.vd. 2003).

RUM-tree (R-Tree with Update Memo) yapısında, nesnenin bilgisinin değişmesi sırasında eski bilginin silinmesinde disk erişimlerini azaltmak için ana-belek memo’nun kullanmasını teklif etmektedir. Bu nedenle bilginin değişim maliyeti, bilgiyi eklemeye denktir. Özellikle, nesne bilgilerinin değişimi işleme (processing) zamanına göre sıralıdır. Değişim memo’sunu sağlayarak, bir nesne için birden fazla öğe bulunabilmektedir. Kullanılmayan öğeler tembelce arka planda (batch mode)’da silinirler. Kullanılmayan öğelerin ağaçta bulunma oranını sınırlayan çöp toplayıcı bulunmaktadır ve değişim memosunun büyüklüğü kontrol edilebilmektedir (Chen, S.vd. 2008). RUM-tree, R-tree’yi genişlettiği için zamanın doğrusal fonksiyonları ile nokta yerlerini endeksler. (Xiong, X.ve Aref, W. G. 2006).

Bx-tree yapısı, özel bir veri dönüştürümü kullanarak doğrusal fonksiyonlara eşleştirir. Ayrıca, B+-tree endeks yapısını (Jensen, C. S.vd. 2004) kullanır. Böylece dört-boyutlu uzaydaki noktalar, tek-boyutlu uzaya dönüştürülürler. Bunun için ilk olarak, yakın zaman bilgisi argüman olarak alınarak, doğrusal fonksiyona eşleştirilir. Daha sonra space-filling eğrisi (Peano veya Hilbert eğrisi) uygulanarak, tek boyutlu nokta elde edilir. B+-tree bilgisi değiştirilen noktaların aynı zamanda olanları aynı bölümde (partition) saklanırlar. Sorgulamaları sağlamak için orijinal sorgular, veri dönüşümlerinden dolayı dönüştürülmek zorundadırlar. Bu dönüşümler, endekslenen nesnelerin hızlarına window genişletilmesine, bölümleme sayısına, B+-tree’deki her bölüme çevrilmiş sorguların sorgu zamanına bağlıdır. Hızın sapmasının ve aykırı değer almasının zararlı etkilerini azaltmak için Bx-tree, dikkatli olarak ayarlanmış sorgu genişletme algoritmaları teklif edilmiştir (Jensen, C. S.vd. 2006). Bdual-tree, hız bilgisini en etkin olarak sorgu performansını artırmak için teklif edilmiştir. Bdual-tree, uzay ve hız vektörlerini tek-boyutlu noktaya indirgemek için dört-boyutlu Hilbert eğrisi kullanır. Bir Bdual-tree, iki tane B+-tree yapısından oluşur ve bu iki ağaç en yüksek değişim aralığı (herhangi bir nesne tarafından verilen değişim çiftleri arasındaki en fazla zaman) olarak adlandırılan durumlar arasında geçiş yapar. Bdual-tree’deki her giriş, hareket eden nesne dikdörtgenler (MORs) kümesi ile ilişkilendirilmiştir. Her MOR, kare büyüklüğündedir ve alt ağaçlarda eşleştirilen sürekli Hilbert değerleri saklanır. MOR’lar, TPR-tree’deki BR’ler (sınırlayan dikdörtgenler) gibi düşünülebilir. Böylece TPR-tree’deki algoritmalar Bdual-tree’ye küçük değişiklikler yapılarak eklenebilir. Fakat, bu sorgu algoritması B+-tree temelli olmadığı için varolan veri tabanı sistemlerine kolaylıkla entegre edilememektedir (Yiu, M. L.vd. 2008).

STRIPES da B -tree gibi uzay ve hız verisini dual endeksler. STRIPES, iki boyutlu hareket eden nesneleri, dört-boyutlu noktalara çevirir ve PR bucket quad-tree ile endeksler. Bu şekilde düzenleme, etkin değişimleri ve daha az etkin sorguları destekler. Bunun nedeni de, STRIPES yapısında her düğümde az sayıda giriş olması, bundan dolayı da sorgu sonucunu oluşturmak için çok fazla sayfaya erişilmek zorunda kalınmasıdır. Quad-tree temelli endeks kullanır (Jensen, C.vd. 2006). Düşük sayfa kullanımı da çok fazla bellek alanı tüketmektedir. Tüm bu problemlerin etkisini azaltmak için, yaprak düğümlerin sayfaların %50’sini işgal etmesi ve bir sayfanın %50’sinin dolu olması tavsiye edilmektedir. Fakat, bu da eşzamanlılık kontrolü mekanizmasını karmaşıklaştırarak DBMS’e entegre edilmesini zorlaştırmaktadır (Patel, J. M.vd. 2004).

2.1.3.1 Parametrik uzay erişim metotları

Orijinal zaman-uzayı parametrik dikdörtgenlerle endekslenmektedir. En küçük sınırlayan dikdörtgenler zamana bağlı fonksiyonlarla gösterilerek, kapsanan hareket eden nesnenin aynı dikdörtgen içinde yer alması sağlanmaktadır. Bu durumda, herhangi bir t zamanında, endeks yapısı hesaplanabilir ve sorgu için değerlendirilebilir. Bu şekilde geliştirilen erişim yöntemleri; TPR-tree, TPR*-tree, PR-tree, NSI, VCI R-tree, STAR-tree, REXP-tree ve TPR*- tree’dir.

TPR-tree (Time Parameterized R-tree)’de parametrik dikdörtgenler R-tree’de bulunur. TPR- tree yapısı, doğrusal zaman fonksiyonuna göre hızları endeksleyen R*-tree yapısına

eklenmiştir. Bir nesne, uzayına referans veren zaman ve hız vektörü ile gösterilmektedir. Endeksin oluşturulmasında, tutucu olarak hareket eden nesneyi sınırlayan dikdörtgenlerle oluşturulur. Tutucu dikdörtgenin alt sınırı içerdiği noktaların en düşük hızla hareket etmesi ve üst sınırı da en yüksek hızla hareket etmesi durumuna göre ayarlanır. Bu durumda tutucu dikdörtgen ne daralır ve de daima hareketli nesneleri içerir. Sınırlayan dikdörtgenlerin çok büyük olmasını engellemek için o nesnesi konumunu değiştirdiğinde, tüm sınırlayan dikdörtgende saklanan düğümler tekrar hesaplanır. TPR-tree’de değişimler olmadığında, sınırlayan dikdörtgenler genişleyeceği için sorgu ve değişim performansı düşer (Saltenis, S.vd. 2000).

TPR*-tree yapısı, TPR-tree ile aynı veri yapısını kullanır fakat, endeks yapısını yönetme için

farklı veri yapıları kullanır. TPR-tree yapısında time-slice sorgusunu en iyileştirme yerine zaman-aralık sorgularını en iyiler (Tao, Y.vd. 2003).

PR-tree, TPR-tree’ye benzemektedir. Fakat her parametrik dikdörtgen hareketin başlangıç ve bitiş zamanlarını da tutar. TPR-tree’de nesnelerin sonsuza kadar hareket edeceği düşünülmesine rağmen, PR-tree’de hareketin ne zaman sonlanacağı bilgisi de tutulur. Böylece hareket eden nesne gezinge yerine poligon olarak temsil edilebilir (Cai, M.ve Revesz, P. 2000).

NSI-tree, TPR-tree’ye benzemektedir. Fakat, sınırlayan dikdörtgenler iki yöntemde de farklı olarak tanımlanmaktadır (Porkaew, K.vd. 2001).

VCI R-tree (Velocity Constrained Indexing)’de R-tree düğümüne her nesnenin yapabileceği en yüksek hız vmax eklenir. Herhangi t sorgu zamanında, sınırlayan dikdörtgenler vmax kadar

genişletilir. Bu endeks yapısında nesnenin gerçek hızını bilmeye gerek yoktur. Bunun yerine nesneler belirli en yüksek hız değerini aşamazlar. TPR-tree’de ise nesnelerin gerçek hızlarına gerek duyulmaktadır (Prabhakar, S.vd. 2002).

STAR-tree (Spatio-temporal Self Adjusting R-tree) yapısı, TPR-tree’ye benzemektedir. Bu yapıya ek olarak kendini-ayarlama bilgisi eklenmiştir. Sorgu performansı düşer düşmez, STAR-tree kullanıcıdan herhangi bir bilgi almadan kendisini ayarlar (Procopiuc, C. M.vd. 2002).

REXP-tree yapısı, hareket eden nesnelerin yaşlanma zamanları ile uğraşmak için TPR-tree’nin

geliştirilmiş halidir. Burada oluşan en önemli sorun, hareketli nesnelerin uzun süre hareketlerini değiştirmemesidir. Yaşlanma zamanı bilgisinden faydalanarak, REXP-tree yeni

bir tip sınırlama alanlarını tanımlamaktadır. Bunlara ek olarak REXP-tree, sınırlayan dikdörtgenlerin tekrar hesaplanmasına kadar yaşlanan nesneleri tembelce endeksten siler (Saltenis, S.ve Jensen, C. S. 2002).

TPR*-tree yapısı, TPR-tree yapısını ve varsayımlarını kullanır. TPR-tree’den farklı olarak, farklı ekleme ve silme algoritmaları kullanmaktadır (Tao, Y.vd. 2003).

Benzer Belgeler