View Single Post
Sponsorlu Bağlantılar
Zoque.Forum
Advertisement
Old 17.03.2008   #14 (permalink)
BYK
 
BYK's Avatar
 
Üyelik Tarihi: 08.04.2003
Yer: Ankara
Yaş: 20
Mesaj: 689
Görsel: 8
Re: Ağaç kategori sstemine tersten bakış

Asıl değindiğim nokta aynı sizin yaptığınız gibi her döngüde sorgu çalıştıran bir sistemdi ancak bu while döngüsüne dayanıyordu. Bunun daha doğru olmasının 2 sebebi var. Birinci sebep döngüsel bir mantığı kurup fonksiyonunu yazmanın özyinelemeli olanlara göre daha kolay olması ama asıl sebep olan ikinci sebep özyinelemeli yapıldığında bu işlemin fazladan bellek tüketmesi. Bu da şöyle oluyor, özyinelemeli sistemde birinci çağrı sonlanmadan hemen önce kendisine yeni bir çağrı yapıyor, ve bu çağrı da aynı işlemi en tepedeki düğüme gidene kadar yapıyor, en tepedeki düğüme ulaşıldığında aynı anda aktif olan n tane işlev örneği oluyor(instance). Yani çağrılan her işlevin değişkenleri bellekte ayrı ayrı yer kaplıyor çünkü bir işlevin içinde yapılan işlev çağrıları sonlanmadan o çağrıları yapan işlev de sonlanmaz. Halbuki döngüsel sistemde sadece 1 işlevin haracayacağı normal bellek miktarı harcanıyor.

Bir diğer yaklaşımım da düğüm bağlantı sayısı/kayıt sayısı oranı fazla olduğunda tüm kayıtları WHERE ifadesi kullanmadan çekip sonra onlar içinde locate metodu ile gezmenin daha hızlı olacğaıydı ki bunu da deneyerek gördüm zaten. İkincisi tecrübeye dayanıyor zaten Ama sizin de belirttiğiniz gibi 1000 kayıt ve üzerinde, hele ki en fazla 3-4 kademelik bir bağlanma varsa bu sistem daha yavaş olacaktır muhtemelen.
__________________
Hayata gülümse!

Fotoğraf Sergim - www.fototonik.com/madbyk@gmail.com/Denemeler
BYK şu an çevrimdışı   Mesajdan alıntı yaparak yeni bir cevap ekleyin