Selam.
Bir ilan sitesi kodladım herşeyi tamam ancak veri sayısı çoğaldığı zaman performans açısından beni kaygılandıran bi durum var içim rahat etmedi;
Kategori sistemi sınırsız alt kategori şeklinde ve bir ilan birden fazla kategori altına eklenebiliyor. Dolayısıyla bir ürün 10 kategoriye de ait olabiliyor. Ben ürünü eklerken ait olduğu tüm kategorileri ilan tablosunun kat sütununa bir ayraç kullanarak x12x4x75x54x1x2x3x8x53x şeklinde yazdırıyorum.
Kategoriye göre sorgu yapılırken de getle gelen kategori idyi " LIKE '%x".$_GET['katid']."x%' " şeklinde arıyorum. LIKE'lı aramalarda indexler de işe yaramıyo bildiğim kadarıyla(yanılıyosam lütfen düzeltin).
100 bin satır olduğu zaman bu şekilde sorun yaşar mıyım. Siz olsanız böyle mi yapardınız yoksa ilanların kategorilere aitliğini gösteren farklı bi tablo yapıp ilan sorgularken veriyi iki tablodan mı çekerdiniz (ki bu durumda her ilanı ortalama 5 kategori altına eklediğimizi farzedersek 50 bin ilan için 250bin satırlık fazladan bi tablo oluşmuş olcak).
Bu haliyle daha çok işime geliyo aslında ama ayrı tablo yaparsam kategori idlerini indexleyebileceğim için performansa pozitif katkısı büyük olacak gibi geldi ne dersiniz? Siz olsanız hangi yöntemi kullanırdınız veya kullanıyorsunuz? Ya da farklı bi yöntem önerebilir misiniz?
İlgilenen, fikir beyan eden arkadaşlara şimdiden teşekkürler.
Mysql Performansı açısından hangisi?
5
●471
- 27-09-2013, 19:37:26içerik sayısı arttıkça inner join daha çok zorlar. bu durumlarda iç içe sorgu bile daha performanslı olabiliyor.remoxil adlı üyeden alıntı: mesajı görüntüle
- 28-09-2013, 05:30:01Cevaplar için teşekkürler arkadaşlar.
Tutsun diye elimden geleni yapçam hocam, aksini düşünerek başlarsam zaten tutmazSefaCan adlı üyeden alıntı: mesajı görüntüle