v2.5.2
Giriş yap

Veri Saklama veya saklanan veriyi en hızlı yayınlama?

Anonim
515 defa görüntülendi

bu konuda biraz kafam karışık arkadaşlar.

mysql de veriler tek sütünda json olarak saklamakmı yoksa
10 sütün lü bir tabloda her sütüne ayrı olarak saklamakmı
döküm tarafından hız farklı sağlar.

yada yukardaki her 2 olaydada
site tarafında json_encode decode işlemleri ile mi
verilerin sayfaya daha çabuk yüklenmesini sağlar.

burda sunucuveya hosting faktörüde esas alınmalıdır muhtemelen
ama
backend tarafında hangisi daha performanslı olur.

bi sunucuda datatables ile 100 veriyi 1.21 sn de dökerken
aynı kodlara sahip başka sunucu 0,25 sn de dökebiliyor.
çoklu sütün json çıktı ile.

bunu o yavaş sunucuda daha hızlı hale nasıl getirebiliriz.

Cevap yaz
Cevaplar (4)
makifgokce
1361 gün önce

cache kullanarak sürekli sql sorgusu sormasını engellersen hem şişme yapmayacaktır hemde daha hızlı yüklenecektir.

aydinkeskin
1361 gün önce

index oluşturmanın yararları da faydalarını arasında kalmamakta icap eder

günümüz veri yöneticileri genellikle hep okuma ağırlıklıdır yazma tarafıda iyidir fakat yazma tarafı biraz daha yavaş olabiliyor.

10 sütünlü bir tabloda zaten id nin bir primary_key olduğunu var sayarsak ki oda bir index dir oluşturacağın
5 ve sonrası indexler bu sefer insert create işlemlerini yavaşlatacak veritabanında daha çok alan işgal edicek vb dezavantajları da vardır tabi.

çok nadiren kullanıyordum index olayını genellikle arama alanlarında aracak sütün adlarına atama yapardım tablolardki
bir çok tabloyu birleştirip gruplayıp o tablolardan daha hızlı sonuç almak için.

qplot
1362 gün önce

tayfunun bahsettiği index belirlemesi okadar ama okadar önemli ki bunu zmanla anlayacaksınız

örnek urun tablosu ile kategori tabloları ilişkili ise urun_id veya kategori_id index leyince inanılmaz hızlanıyor sıstem

verıler coğalınca yavaslama goreceksın sonra index yap farkı gör

tayfunerbilen
1362 gün önce

burada önemli olan veritabanı mimarin.
mysql ilişkisel bir veritabanı olduğu için en doğru yaklaşım verileri birden fazla tabloya dökmektir.
Yani bir tabloda 10 sütunun olmasından sa 3 tabloya bölerek bunlar arasındaki ilişkiyi kurarak verileri göstermen daha performanslı olur.
elbette performans işin içine girince mysql'de sorgularda bilinmesi ve kullanılması gereken bir sürü küçük-büyük detay var. Bunların en basiti index'lerin belirlenmesi gibi.
yani sadece bu konularla ilgili mysql derslerine bakarsan internetten anlamanı daha kolaylaştıracaktır