Mysql'de unique kullansam ise yarar mi acaba? Yani soyle DB Kontrolu kastiriyor bende. Yani insert islemini devre disi birakinca da cok fark olmuyor performansta. Bu kontrolden kurtulmaliyim. Ama islemler de cok hizli olmali.

unique index eklersen aynı olan sadece 1 tane kayıt olabilir database nde..

Problemin php probleminden çok veritabanı problemi senin. Kolay ve basit çzümleri anlatayım. 1) Prepared Statement kullanırsan parsing derdinden kullanır hız kazanırsın. 2) Autocommit i kapat. Her statementtan sonra PHP otomatik olarak single transaction başlatır ve statment sonrasında commit gnderir. Autocommit i nce kapatıp sonra transaction başlatıp insert işlemlerin bittikten sonra commit yaparsan bariz bir hız kazanacaksın. 3) Mümkünse stored procedure yaz. Stored procedure doğrudan mysql server üzerinde çalışacağı için iş phpden çok mysql'e yıkılacaktır 4) Unique index kullanmak karşılaştırdığın değerler sayı ise mantıklı olabilir ancak text compare yapıyorsa çokta bir faydasını greceğini zannetmiyorum. 5) Yapacağın işi RAM'de yapıp en son veritabanına atabilirsin 6) @DesertSun' ın dediği gibi kuyruk protokolleri kullanıp işini doğrudan onlara yıkabilirsin. PHP' de bu tarz libraryler varmı bilmiyorum. Araştırmak lazım. Hadi hayırlı traşlar

Php ve mysql konusunda bir bilgim yok ama mssql'de olsa benzersiz olmasını istediğim sütunları unic sütun yapardım. Kayıt işlemlerini de try catch ile yapardım. Aynı kayıttan daha nce varsa catch bloğu çalışacağı için kaydetmeyecek, yoksa try komutu çalışacağı için kaydedecektir.

Kuyruk protokolleri bunun için var windows sa msmq linux sa ki en iyisi rabbitmq kullan bir servis yaz kuyrugu okuyup db ye ekleyen bitti gitti veri kaybın olmaz 😉 ::: REALHACKERS. NET ADMIN :::

Merhaba a dostlar, Saniyelik gelen 200 ile 4000 arasi veriyi mysql db de kontrol edip yoksa eklettiriyorum. Ama mukemmel yavas isliyor. Dusundum ki ekliyim, coklu kayitlari sileyim. O da yaramadi. Hepsini nasil hizli bir sekilde ekleyebilirim, ve huncelleyebilirim? Tesekkurler.

Hız dediğin greceli bir kavramdır belki de sunucunun donanımına gre optimum hızla çalışıyor olabilir daha fazla detay, daha fazla yardım seçeneği doğurur. Bütçen yeterliyse sunucunda SSD disk hatta bütçene gre raid konfigurasyonlar oluşturarak disk i/o'yu hızlandırabilirsin ek olarak nce kontrol ediyorsan her halukarda index kullanman gerekiyor. https://dev.mysql.com/doc/refman/5.5/en/optimization-indexes.html buradan index kullanımıyla ilgili detaylı bilgi bulabilirsin. İlgili işlemi gerçekleştirirken requestleri mvc'den geçirmen ek olarak sunucuya apache yükü eklenmesi demek mümkün olan minimum kodla işi halletmen senin yararına olacaktır. Minimum kod derken az kod yazmanı değil, az yoran kod demek istiyorum. https://github.com/nafigator/php-bench/tree/master/Tests burada bazı fonksiyonların testleri var test ederken gelen requestleri farklı metodlarla almayı denemek de hızı arttırabilir. rneğin veriyi json veya xml alman belki yararına olabilir test etmeni neririm. Son olarak bu nerilerin hepsini anlık olarak request alman gerektiğini düşünerek yaptım elinde sabit bir veri var ve bunu işlemeye çalışıyorsan en mantıklı olan bunu gerekiyorsa excel yardımıyla sql verisi haline getirip bigDum PhpMyAdmin, veya direk komut satırından import etmen (http://dev.mysql.com/doc/refman/5.7/en/mysql.html) daha hızlı sonuç verecektir. fak yu

Hocam gelen verileri çektiğin yerden farklı şekilde çekmen mümkünse en mantıklısı o, onun dışında saniyelik gelen 200 ile 4k arası veriyi sorgutman hangi db olsa kasar. Ya da seninde ddiğin gibi tüm kayıtları ekler sonra aşağıdaki sql koduyla kısa sürede benzersiz kayıtları silebilirsin CREATE TABLE Benzersizkayitlar as SELECT FROM Tablo GROUP BY Sutun nceleri Kızlar Utanınca Kızarırdı Şimdilerde Kızarınca Utanıyorlar..

@S2buyuk : Hocam butun onerilerin icin tesekkur ederim. Ozellikle arastiracagim.

Framework kullanmak biraz daha rahat ettirebilir. Veritabani icin Redbeanphp kullanabilirsin hocam En iyisi olmadan nce, her zaman en ktüsü olmaz mı?

iki kez tiklamisim. orde tarafından 26/Kas/15 18:07 tarihinde düzenlenmiştir