Şimdi Ara

MSSQL VERİ YOĞUNLUĞU HAKKINDA YARDIM

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
3 Misafir - 3 Masaüstü
5 sn
11
Cevap
0
Favori
329
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhabalar,


    MSSQL 2014 Server üzerinde bir veritabanım var bu veritabanı bir web sitesinin dosyalarını tutmaktadır. bir tabloda 27.000 adet kayıt var tek bir sorgulamada bekleme süresi yaşamaktayım. Acaba bu durumu hızlandırabilmek için yapabileceğim bir durum var mıdır ?



  • Mevcut MySQL 'i hızlandırmak için tek yöntem ek sunucu. Ek sunucu almadan yazılım ile çözmek için veritabanını EAV (Entity Attribute Value) yöntemiyle tasarlayıp mevcut verileri EAV sistemine geçirmelisiniz. MySQL'de EAV kullanılınca milyonlarda kayıt dahi kısa sürede sorgulanabiliyor. Hiçbirisi ile uğraşmayayım diyorsanız, Facebook'un büyük veritabanı cözümü Cassandra (ücretsiz, açık lisanslı) veritabanına migrasyon yapabilirsiniz.

    < Bu ileti mini sürüm kullanılarak atıldı >
  • Mysql i duzgun konfigure edip, index yapisini dogru belirlersen hizlanir. 27 bin bir sey degil. Query cache ya da 2nd level cache tutabilirsin uygulama katmaninda.

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Yukarıda cevap yazan arkadaşlar MSSQL i sanırım MySQL olarak algılayıp ona göre cevaplar yazmışlar.

    27000 kayıt database için çok büyük bir veri değil.

    Doğru yönlendirebilmemiz için:

    - Sorgu cümlenizi paylaşabilirmisiniz?
    (where cümlenizdeki karşılaştırmalara uygun indexler oluşturulması gerekir, join kullanıyorsanız hatalı kullanımdan dolayı performans kaybı yaşıyor olabilirsiniz)

    - Sorgu sonucunda kaç satırlık bir sonuç dönüyor?
    (Çok fazla kolon ve satır dönüyorsa, network katmanında veya bu verileri gösterdiğiniz grid yapısında bekliyor olabilirsiniz)

    - Database sunucusu ile sorguyu çalıştırdığınız makina arasında nasıl bir network bağlantısı var?
    (İki makina arasındaki network bağlatısı hızı/kalitesi dar boğaz olabilir)

    - Dönen cevap içerisinde resim, video gibi yüksek boyutlu alanlar içeriyormu?
    (MB veya GB seviyesinde veri çekiyorsanız bunun diskden okunması ve network katmanından iletilmesi zaman alıyor olabilir.)

    Yukarıdakiler sadece aklıma gelen olası tahminler. Sizin yapınıza göre ve vereceğiniz bilgilere göre daha doğru yönlendirmeler yapılabilir.



    < Bu mesaj bu kişi tarafından değiştirildi rafet32 -- 29 Şubat 2020; 9:40:1 >




  • Öncelikle MSSQL veritabanı kullanıyorum sorgum baist bir sorgu

    Sorgum : select * from sayfa where id=x
    Sorgu Satırı : 5 sutün alıyorum
    Sunucu & İstemci : Web sitesinde çalıştığı için benim internet hızım 50/50 radiolink, sorguyu herkes gönderebilir istemci hızı belli değil
    Dönen cevapta sadece text var herhangi bir veri çalışmıyor aynı sayfada



    < Bu mesaj bu kişi tarafından değiştirildi ZeroOneTec -- 29 Şubat 2020; 13:38:4 >
  • ZeroOneTec Z kullanıcısına yanıt
    Tablonuzdaki id alani için index tanimladinizmi?

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • rafet32 kullanıcısına yanıt
    Sanırım hayır
  • MSSQL - MySQL çok fark etmez.

    Google BigTable 'ı dahi yanlış programlarsan, yavaş çalışır.

    < Bu ileti mini sürüm kullanılarak atıldı >
  • Peki burada yapmam gereken nedir ?

    Verinin hızlı çekilebilmesi için sağlıklı olan yol nedir ?

    yukarıda verilen indexleme işlemi tam olarak nasıl sağlanıyor ve çalışma yapısı nasıldır
  • ZeroOneTec Z kullanıcısına yanıt
    Kullandığınız tablonuzun create scriptini veya dizayn ekran görüntüsünü paylaşırsanız cevap vermek isteyenler için yol gösterici olacaktır.

    Veya index oluşturma ile ilgili şu adrese bakabilirsiniz.

    https://www.cozumpark.com/sql-server-index-olusturma/
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.