Asp.net core api geliştirme

Burak Çelebi
04-07-2020, 13:40   |  #1  
Burak Çelebi avatarı
OP Taze Üye
Teşekkür Sayısı: 0
2 mesaj
Kayıt Tarihi:Kayıt: Tem 2020

Merhaba, kendi işletmem için c# .net framework bir uygulama geliştirdim. Sürekli gelişimle birlikte gelişmek ile beraber bir server ara birimine ihtihaç duydum. bana asp.net core önerdildi apiler ile tüm platformlarla haberleşebilirsin dendi. bende hem asp.net core api ve entity framework üzerine araştırmaya başladım. lakin benim kafamdaki yapıyı bir türlü oturtamadım.

Kafamdaki yapı şu şekil Bir serverda örnek db2020 adında bir veritabanı var tüm veriler burda bir sonraki yıl yani 2021 yılında bu serfer db2021 adında bir veritabanı oluşturacaz. ve aynı anda 2 veritanında da sorgulama yapabilmek istiyoruz. yani sistem serverda db başlaklı kaç veritabanı var bunlar hangi yıla ait bunu kendi bulacak kullanıcı tüm yıllardaki verileri istediğinde tüm veritabanlarındaki verileri bir listeleyecek. veya seçili yıllarda veri sorgulayacak güncelleyecek. bu işlermleri entity ile yapmaya çalıştım çoklu connectionstring için güzel bir örnek bulamadım. entity StoredProcedure ile yıl parametesi göndermeyi denedim managment daki testler başarılı ancak entity tarafında StoredProcedureler geriye tablo döndürmedi. bana nasıl bir yol izlemem gerektiği ile ilgili bilgi verirseniz çok sevinirim. biraz karışık yazdım umarım derdimi anlatabilmişimdir.

White-Fox
04-07-2020, 22:28   |  #2  
White-Fox avatarı
Yıllanmış Üye
Teşekkür Sayısı: 155
1,102 mesaj
Kayıt Tarihi:Kayıt: Eyl 2010

Her yıla bir veritabanı yapmak niye neden bunları ilgili tablolarınıza bir datetime kolonu açıp kontrol etmiyorsunuz ?

Burak Çelebi
06-07-2020, 08:19   |  #3  
OP Taze Üye
Teşekkür Sayısı: 0
2 mesaj
Kayıt Tarihi:Kayıt: Tem 2020

çünkü her yıl biriken veri sistemi yavaşlatıyor. ve kullanıcı tarafında karışıklığa neden oluyor.

White-Fox
06-07-2020, 12:50   |  #4  
White-Fox avatarı
Yıllanmış Üye
Teşekkür Sayısı: 155
1,102 mesaj
Kayıt Tarihi:Kayıt: Eyl 2010
Alıntı: Burak Çelebi  
çünkü her yıl biriken veri sistemi yavaşlatıyor. ve kullanıcı tarafında karışıklığa neden oluyor.
 

Veritabanı tasarımınız yanlış o zaman, tekrar oturup kontrol edin. Bahsettiğimiz veritabanı tipleri (server-client) 500 Terabaytlık kapasiteye sahip (MSSQL için konuşuyorum).

Doğru indexleme, hash mekanizmaları ve doğru tablo tasarımı ile bir yavaşlık yaşamanız hiç olası değil. Ama beni dinlemeyip bu şekilde giderseniz 10 yıl sonra hangi veritabanına sorgu atacağınızı şaşar kalırsınız :) 

Atıyorum üyeler tablonuz var. Son 10 yılda kaydolmuş üyeleri almak istesem 10 tane veritabanına sorgu mu atıcam yani :) Bu senaryo gerçekten sürdürülebilir değil.