Merhaba 9 milyon dan fazla veri tutan bir mariadb tablomun sütünü var ve buradaki yavaşlık ve veri boyutu bir çok sistemini yavaşlatıyor sizce nasıl bir önlem almalıyız tasviyeler için teşekkür ederim
Etkilenen kısımlar
Veri görüntüleme kısmı
Gerekli veriye ait ayarlar kısmı
Ana panel kısmı
Ram CPU vs birçok donanım artırıyoruz sürekli şekilde
Özellikle API tarafın hariç bir çok kısım hantal kalıyor
9 milyon fazla veri ve database yavaşlığı
11
●512
- 10-09-2023, 04:41:52
- 10-09-2023, 04:50:16WhatsApp ile iletişime geçmek için Tıkla.
3 milyonluk işletme verisi tutuyorum bir sorun yaşamıyorum detay verirseniz yardımcı olurum ücretsiz şekilde - 10-09-2023, 04:57:19Hocam kusura bakma detay vermeyi unutmuşum çok AKTİF bır tablo hem veri yazılıp siliniyor (200-500/s ) ortlama işlem gerçekleşiyor ve aynı anda sorgular da oluyorwontew adlı üyeden alıntı: mesajı görüntüle
- 10-09-2023, 04:59:50WhatsApp dan yazarsanız yardımcı olurum hocamkoksalkesici adlı üyeden alıntı: mesajı görüntüle
- 10-09-2023, 05:02:53https://youtu.be/lLrzoyU4BPc?si=DzvqPxXz2qD7_Vx9
https://youtu.be/O3PwuzCvAjI?si=jHsn-Iy0_ph6Av43
Hocam bu videolarda discord un nasıl bir çözüm bulduğunu anlatıyorlar. Anlık milyonlarca işlem yapıyorlar - 10-09-2023, 07:27:11Öncelikle bu veri büyük veri falan değil. Büyük verinin yanından bile geçmiyor. Sıcak sayılabilecek küçük bir veri kütlesi.
Verinin tasarımı burada büyük öneme sahip. Bu veri seti içinde yapılan her bir select sorgusu sütunların tiplerinden ve index'li olup olmamasından çok etkilenir (bunlar yapıldıysa partitioning'de unutulmamalı). Arama yapılıyorsa ve kriterler çok fazla ise Elasticsearch kullanmanızı önerebilirim.
Aynı zamanda eğer sonuçların değişimi anlık olarak sorun yaratmıyorsa cachelemenizi de şiddetle öneririm. Sonuçta vertiabanı üzerinde yapılan her sorgu bir maliyet doğuracaktır. Sorguları iyileştirmek kadar azaltmakta önemli bir şey.
Son olarak istediğiniz kadar kaynak arttırın ortada bir darboğaz varsa ve bu dar boğaz veritabanı ise ne yazık ki pek işe yaramaz. Emin olmamakla beraber (bu özellik MySQL'de var) master-slave replikasyonunu deneyebilirsiniz. Read için ayrı sunucu, create ve update için ayrı sunucu oluşturup master altında çalışmalarını sağlayabilirsiniz (teorik olarak mariadb'de de çalışmalı).
Bunlar hala çözüm değilse NoSQL veritabanlarını kullanmak için bir plan yapmalısınız.