• 02-01-2024, 14:26:13
    #10
    Bu size siparişler üzerinde yapılacak arama vb. gibi durumlarda zorluk çıkartır. "Sepetteki ürünlere göre öneri", "Sepetteki ürünlere göre indirim kuponu", "X siparişini veren müşteriler" vb gibi işlemlerde sorgularınız baş ağrıtmaya, geliştirmeyi zorlaştırmaya başlar. Eğer projenizi gelecekte mümkün mertebe genişletmek istiyorsanız verilerinizi tek kolona sıkıştırmayın. json saklama işini daha çok üzerinde fazla işlem yapmayacağınız verilerde kullanın. Burada uygun olanı ilişkisel veritabanının gücünü kullanmak. Sepeti bir tablo, sepet ögelerini bir tablo olarak ayırmanızda fayda var.
    cloudguy adlı üyeden alıntı: mesajı görüntüle
    Hocam ürün detaylarını sipariş tablosunda bir sütun içinde json ile tutsak nasıl olur sizce?
  • 03-04-2024, 19:12:30
    #11
    cloudguy adlı üyeden alıntı: mesajı görüntüle
    Hocam ürün detaylarını sipariş tablosunda bir sütun içinde json ile tutsak nasıl olur sizce?
    Mesajını biraz geç gördüm kusura bakma.

    Bunun avantajı gibi dez avantajıda var tabiki. Json veriler için veritabanında tutacağın alan Longtext olmak zorunda ve search yaptırmak istediğinde büyük verili tablolarda optimizasyon sıkıntısı çekersin. Ben json verisi tutacağım zaman querylerde search yaptırmayacağım alanları genelde daha çok tercih ediyorum. Tabiki projenizin veri akışıda bu konuda etkenlerden birisi.

    SQL de optimizasyon yapmak istediğimizde bildiğiniz üzere WHERE e soktuğumuz field ları index ekleriz. Böylelikle daha hızlı sonuç elde etmeye çalışırız. Longtext alanlara bir indexleme yapmak istediğinizde türü karşılık vermeyeceği için sorun yaşanacaktır. Belli alanları tabloda field açarak tutabilir ve where sorgularına sokabilirsiniz. Fakat search yapılmayacak gereksiz bilgileri json olarak tutabilirsiniz.

    Yukarıda söylediğim şeyleri eğer sql de ön bellekleme aracı kullanmıyorsam bu kurala uymaya çalışıyorum.