• 19-03-2022, 18:58:29
    #10
    Her seferinde de execute yapilmasinada gerek yok aslinda.
    INSERT INTO
    projects(name, start_date, end_date)
    VALUES
    ('AI for Marketing','2019-08-01','2019-12-31'),
    ('ML for Sales','2019-05-15','2019-11-20');
    Seklinde query hazirlanip tek seferde execute edilebilinir. Her seferinde execute etmekte performansli sayilamaz.
  • 19-03-2022, 19:09:45
    #11
    Ecancan adlı üyeden alıntı: mesajı görüntüle
    Her seferinde de execute yapilmasinada gerek yok aslinda.
    INSERT INTO
    projects(name, start_date, end_date)
    VALUES
    ('AI for Marketing','2019-08-01','2019-12-31'),
    ('ML for Sales','2019-05-15','2019-11-20');

    Seklinde query hazirlanip tek seferde execute edilebilinir. Her seferinde execute etmekte performansli sayilamaz.
    50 tane kolonu 100 bin adet veriyi bu şekilde nasıl yazacaksınız en iyi ihtimalle array_fill kullanılan bir fonksiyonla yazılabilir tabii ama ben dediğim gibi uğraşmadım. Siz yazarsanız her seferinde execute etmeden 50 kolonlu 100 bin datayı kaydedecek fonksiyon seve seve paylaşırım
  • 19-03-2022, 19:25:57
    #12
    blap adlı üyeden alıntı: mesajı görüntüle
    50 tane kolonu 100 bin adet veriyi bu şekilde nasıl yazacaksınız en iyi ihtimalle array_fill kullanılan bir fonksiyonla yazılabilir tabii ama ben dediğim gibi uğraşmadım. Siz yazarsanız her seferinde execute etmeden 50 kolonlu 100 bin datayı kaydedecek fonksiyon seve seve paylaşırım
    Buyrun yazilmisi mevcut
    https://stackoverflow.com/questions/...n-single-query
    Ek olarak tek bir queryde yapilmasi bu islemin daha stabil calismasi demektir. Sizin bu sekilde loop icerisinde execute ettiginiz yontemde sql tarafinda bir sorun olmasi durumunda mevcut islem yarim olarak kalmis olacaktir. 50k eklenebilir ama kalan 50k eklenemeyebilir veya daha koturusu kimisi execute edilir kimisi edilmeyebilir.
  • 19-03-2022, 19:38:33
    #13
    Ecancan adlı üyeden alıntı: mesajı görüntüle
    Buyrun yazilmisi mevcut
    https://stackoverflow.com/questions/...n-single-query
    Ek olarak tek bir queryde yapilmasi bu islemin daha stabil calismasi demektir. Sizin bu sekilde loop icerisinde execute ettiginiz yontemde sql tarafinda bir sorun olmasi durumunda mevcut islem yarim olarak kalmis olacaktir. 50k eklenebilir ama kalan 50k eklenemeyebilir veya daha koturusu kimisi execute edilir kimisi edilmeyebilir.
    tek bir döngüyle 10k veriyi basitçe eklemek varken, niçin tek sorgu yazmak uğruna bu kadar ekstra işlem yapıyorsunuz? 50k veri eklemeye çalışırken transaction kullanmıyorsanız pek tabii ki kimisi execute edilir, kimisi edilmez. transaction bunun için var.
  • 19-03-2022, 20:19:23
    #14
    ghergedan adlı üyeden alıntı: mesajı görüntüle
    tek bir döngüyle 10k veriyi basitçe eklemek varken, niçin tek sorgu yazmak uğruna bu kadar ekstra işlem yapıyorsunuz? 50k veri eklemeye çalışırken transaction kullanmıyorsanız pek tabii ki kimisi execute edilir, kimisi edilmez. transaction bunun için var.
    Performans icin tek bir queryde atiyorum. Ayrica o queryide hazirlamak zor bir islem degil. Bir kere query olusturacak sinifi yazarim ve istedigim yerde tekrar tekrar kullanirim. Hem performansli olur hem basit olur artik .
    Ayrica best practices olarakta bu oneriliyor zaten.
    https://www.cockroachlabs.com/docs/v...existing-table
  • 19-03-2022, 20:49:24
    #15
    Ecancan adlı üyeden alıntı: mesajı görüntüle
    Buyrun yazilmisi mevcut
    https://stackoverflow.com/questions/...n-single-query
    Ek olarak tek bir queryde yapilmasi bu islemin daha stabil calismasi demektir. Sizin bu sekilde loop icerisinde execute ettiginiz yontemde sql tarafinda bir sorun olmasi durumunda mevcut islem yarim olarak kalmis olacaktir. 50k eklenebilir ama kalan 50k eklenemeyebilir veya daha koturusu kimisi execute edilir kimisi edilmeyebilir.
    Dediğim şekilde array doldurulacak şekilde yapılmış. Laravel de bu şekilde kullanıyor. Zaten 2022 yılında benim konu açtığım şekilde kod yazmak mı kaldı? Ben dediğim gibi bir arkadaşın öğretim videosunda görmüştüm zaten 1 dakikada düzeltilmişini yazdım. Dümdüz php pdo şeklinde kod yazmak kalmadı. En azından pure php kullanılacaksa oop ve patternler ile yazmalı yazacak kişi yani bana göre işin doğrusu budur. Eğer framework kullanmıyorsa attığınız örnek gibi sorguları bir class içinde fonksiyonlara yazar çağırır. Ben en azından bind edilmesi için yazdım. Yoksa attığınız örnek daha doğru tabii ki. Ben arkadaşlara basit bir dille ifade ettim. Size de basit ve kullanışlı bir şekilde ifade edecek şekilde paylaşırsanız tabii seve seve paylaşırım. Attığınız örnek benim 8 saniyelik işlemi 1 saniyenin biraz altına indirdi. Ancak ben arkadaşlara nasıl kullanacaklarını şu an yazarak anlatmak gereksiz vakit kaybı olarak geliyor. Performans arayan arkadaşlar zaten çözümün mvc mimarisi ve doğru sınıf yapılandırmaları olduğunu zaten anlayacaklardır.
  • 19-03-2022, 20:57:42
    #16
    blap adlı üyeden alıntı: mesajı görüntüle
    Dediğim şekilde array doldurulacak şekilde yapılmış. Laravel de bu şekilde kullanıyor. Zaten 2022 yılında benim konu açtığım şekilde kod yazmak mı kaldı? Ben dediğim gibi bir arkadaşın öğretim videosunda görmüştüm zaten 1 dakikada düzeltilmişini yazdım. Dümdüz php pdo şeklinde kod yazmak kalmadı. En azından pure php kullanılacaksa oop ve patternler ile yazmalı yazacak kişi yani bana göre işin doğrusu budur. Eğer framework kullanmıyorsa attığınız örnek gibi sorguları bir class içinde fonksiyonlara yazar çağırır. Ben en azından bind edilmesi için yazdım. Yoksa attığınız örnek daha doğru tabii ki. Ben arkadaşlara basit bir dille ifade ettim. Size de basit ve kullanışlı bir şekilde ifade edecek şekilde paylaşırsanız tabii seve seve paylaşırım. Attığınız örnek benim 8 saniyelik işlemi 1 saniyenin biraz altına indirdi. Ancak ben arkadaşlara nasıl kullanacaklarını şu an yazarak anlatmak gereksiz vakit kaybı olarak geliyor. Performans arayan arkadaşlar zaten çözümün mvc mimarisi ve doğru sınıf yapılandırmaları olduğunu zaten anlayacaklardır.
    Aynen öyle. Benimde amacım zaten mevcut konuyu genişletmek. Forumun amacı bu değil midir? Bir fikir kapısı aralamak. Daha iyi nasıldır araştırmaya sevk etmek. Araştırılanlarıda aktararak faydalı bir konu oluşturmaktır. Zaten bu konuda da eğer kişi araştırmayı önüne gelene göre yapıyor ve ona göre referans alıyorsa yüksek ihtimal sizin ilk çözümünüzü alıp kapatacaktır. Araştırmayı seven kişi için biraz daha işini kolaylaştırmak istedim ve bende dahil olmuş oldum o kadar