• 17-02-2023, 10:46:05
    #1
    Merhabai



    İçerik düzenleme sayfamda ajax ile dinamik input kullanacağım. Veritabanındaki bir satırı düzenlerken dinamaik input ile çoklu veriyi nasıl eklemelimiyim? Virgül atarak tek sütüna mı kaydetmeliyim?
  • 17-02-2023, 10:50:45
    #2
    bildiğim kadarı ile virgül ile ayırıp array gibi bir şey yaparsanız ve tek stun içinde upuzun bir yazı olursa ayrı ayrı yapmaktan daha yavaş çalışacaktır eğer büyük datalar ile uğraşıyorsanız ayrı ayrı yapmanız sql performansınızı arttırır, ama diyorsanız 1 milyon veriden az olur uzun vadede, o zaman muhtemelen pek sorun yaşamazsınız
  • 17-02-2023, 10:52:09
    #3
    1. post ve media düşünün üst model'iniz post dersek media'lar dinamik olduğunu düşünün "medias" tablonuzda "post_id" ref göstererek çoklu olarak ayrı tabloya store ettirebilirsiniz. (Tavsiye ederim.)
    2. JSON olarak tutabilirsin. Çekerken veriyi json_decode ederek array ile veriyi kullanabilirsin.
    3. Seperatör olarak virgül ile ayırabilirsin tek sutünda saklayıp..
  • 17-02-2023, 13:30:38
    #4
    muraatydn adlı üyeden alıntı: mesajı görüntüle
    bildiğim kadarı ile virgül ile ayırıp array gibi bir şey yaparsanız ve tek stun içinde upuzun bir yazı olursa ayrı ayrı yapmaktan daha yavaş çalışacaktır eğer büyük datalar ile uğraşıyorsanız ayrı ayrı yapmanız sql performansınızı arttırır, ama diyorsanız 1 milyon veriden az olur uzun vadede, o zaman muhtemelen pek sorun yaşamazsınız
    performans optimizesi içinde şöyle şeyler önerebilirim. Mysql'de sutünlarınıza type değerlerini saklanacak veri uzunluklarına göre belirlemeniz çok önemli bunu 3000-5000' veride hissetmezsiniz fakat 25-50k'lara geldiğinde sorgularınız yavaş yanıtlar verir. Misal type türlerinin lenght limitlerini inceleyin ve misal örnek vereyim status durumu tutacaksınız sutün da sadece 1 ve 0 olacaksa bunun en az boyut kaplayan tinyint olması size faydası olur veri bigdata'ya girdiğinde katlanarak gidiyor kapladığı alan gereksiz büyük veri türlerini baştan kısmaya çalışın ihtiyaç olacak türleri belirleyin. Ayrıca çok fazla sutünu olan ve big dataya ait tablolarınıza sorgu atarken select ile ihtiyacınız olabilcek sutünları seçerek sorgunuzu atın bu big data'da sorgularınızın gereksiz sutünlara hiç bulaşmayarak hızlı response almanızı sağlar. Limit kullanmaktanda çekinmeyin 5-10 adetlik veri ihtiyacı var ise filtre uyguluyor iseniz ihtiyacınız olan 5 veri başta geliyorsa diğer tüm verileri limit ile kesin sorgunuz hızlı olsun. Cache kullanmanında faydası büyük ölçüde performans kazandırır. Misal 1000 kullanıcı ziyaretçiniz var sitenize giriş yapıyorlar istek atıyorlar 1000 kişi her isteğinde tekil olarak anasayfa verilerini görebilmek için anasayfadaki veriler için hepsi tek tek sorgu atıyor. Fakat cache ile verileri sunucudan tek seferlik cachede tutup ve belirlediğiniz bir süre kadar yada o veri değişip cache yeniden set edilene kadar sunucunuz her ziyaretçiniz için veritabanına tekrar tekrar istek atmak yerine cache'deki yansıtıcaktır siteye Buda sunucunuzun mysql'inizin gereksiz yorulması kaynak tüketmesi yada sitenizin açılış sürelerini ciddi şekilde etkileyecektir. Çok uzattım gibi neyse başka yazılar da görüşürüz
  • 17-02-2023, 20:26:42
    #5
    DOS adlı üyeden alıntı: mesajı görüntüle
    performans optimizesi içinde şöyle şeyler önerebilirim. Mysql'de sutünlarınıza type değerlerini saklanacak veri uzunluklarına göre belirlemeniz çok önemli bunu 3000-5000' veride hissetmezsiniz fakat 25-50k'lara geldiğinde sorgularınız yavaş yanıtlar verir. Misal type türlerinin lenght limitlerini inceleyin ve misal örnek vereyim status durumu tutacaksınız sutün da sadece 1 ve 0 olacaksa bunun en az boyut kaplayan tinyint olması size faydası olur veri bigdata'ya girdiğinde katlanarak gidiyor kapladığı alan gereksiz büyük veri türlerini baştan kısmaya çalışın ihtiyaç olacak türleri belirleyin. Ayrıca çok fazla sutünu olan ve big dataya ait tablolarınıza sorgu atarken select ile ihtiyacınız olabilcek sutünları seçerek sorgunuzu atın bu big data'da sorgularınızın gereksiz sutünlara hiç bulaşmayarak hızlı response almanızı sağlar. Limit kullanmaktanda çekinmeyin 5-10 adetlik veri ihtiyacı var ise filtre uyguluyor iseniz ihtiyacınız olan 5 veri başta geliyorsa diğer tüm verileri limit ile kesin sorgunuz hızlı olsun. Cache kullanmanında faydası büyük ölçüde performans kazandırır. Misal 1000 kullanıcı ziyaretçiniz var sitenize giriş yapıyorlar istek atıyorlar 1000 kişi her isteğinde tekil olarak anasayfa verilerini görebilmek için anasayfadaki veriler için hepsi tek tek sorgu atıyor. Fakat cache ile verileri sunucudan tek seferlik cachede tutup ve belirlediğiniz bir süre kadar yada o veri değişip cache yeniden set edilene kadar sunucunuz her ziyaretçiniz için veritabanına tekrar tekrar istek atmak yerine cache'deki yansıtıcaktır siteye Buda sunucunuzun mysql'inizin gereksiz yorulması kaynak tüketmesi yada sitenizin açılış sürelerini ciddi şekilde etkileyecektir. Çok uzattım gibi neyse başka yazılar da görüşürüz
    aynen dediğinizin neredeyse hepsini mc-at botumda kullanıyorum kesinlikle yeni başlayan arkadaşların da bu şekilde ilerlemesini tavsiye ederim elimde milyar veri yok ama onmilyonlarca veri var ve saliseler içinde işeyebiliyorum çok iyi