24-10-2018, Saat: 02:15
MSSQL kullanıyorsunuz ve DB'de tutmak istiyorsanız bence dökümanları tek başına ayrı bir DB'de tutun. Diğer verilerin yedeklenmesini engellemesin.
MS SQL Server'a görsel yükleme
|
24-10-2018, Saat: 02:15
MSSQL kullanıyorsunuz ve DB'de tutmak istiyorsanız bence dökümanları tek başına ayrı bir DB'de tutun. Diğer verilerin yedeklenmesini engellemesin.
24-10-2018, Saat: 09:29
(Son Düzenleme: 24-10-2018, Saat: 10:03, Düzenleyen: csunguray.
Sebep: Yazım
)
(24-10-2018, Saat: 02:15)mustafaozpinar Adlı Kullanıcıdan Alıntı: MSSQL kullanıyorsunuz ve DB'de tutmak istiyorsanız bence dökümanları tek başına ayrı bir DB'de tutun. Diğer verilerin yedeklenmesini engellemesin. Bu doğru bir yaklaşım. Ama MS-SQL Server'da sadece bir FileGroup'u yedek alabiliyorsunuz. Binary data (Blob, image, varbinary) dosyaları içeren tabloları ayrı bir filegroup'ta konumlandırırsak benzer bir çözüm elde etmiş oluruz. Veritabanı file group yapısı ve büyük tablolarımızı başka bir file group’ta yeniden oluşturmak SQL Server Filegroups ile preformans ve yedekleme avantajı
24-10-2018, Saat: 12:27
(24-10-2018, Saat: 09:29)csunguray Adlı Kullanıcıdan Alıntı:(24-10-2018, Saat: 02:15)mustafaozpinar Adlı Kullanıcıdan Alıntı: MSSQL kullanıyorsunuz ve DB'de tutmak istiyorsanız bence dökümanları tek başına ayrı bir DB'de tutun. Diğer verilerin yedeklenmesini engellemesin. Çok teşekkür ediyorum ilgi ve alakanıza , bir soru daha sormak istiyorum konu ile ilgili izin verirseniz. Bu yapıda arşivlenen dosyaların aranması bulunması gibi işlemler için AdoQuery veya AdoTable Kullanarak grid üzerinden bir listeleme yapmayı düşünüyorum. Kayıt işlemlerini ben store procedure ile yapıyorum daha hızlı olduğunu düşünüyorum "TAdoQuery veya TAdoTable " a göre bu konuda sizinde fikrinizi almak istiyorum. Listeleme işlemini de Store Procedure ile yapmak performans olarak daha mı iyidir elimde çok fazla veri olmadığı için deneme şansım olmadı daha önce bu konuda tecrübesi olan arkadaşlardan da fikir alabilirsem çok sevinirim. Listeleme de önereceğiniz başka bir şey varsa onada yok demem İlgili ve alaka gösteren, vakit ayırıp cevap yazan herkese çok teşekkür ediyorum. Çok sağolun.
24-10-2018, Saat: 14:00
(24-10-2018, Saat: 12:27)Bay_Y Adlı Kullanıcıdan Alıntı: Çok teşekkür ediyorum ilgi ve alakanıza , bir soru daha sormak istiyorum konu ile ilgili izin verirseniz. Bu yapıda arşivlenen dosyaların aranması bulunması gibi işlemler için Stored procedure'e ne yazıyorsunuz? Kayıt işlemini stored procedure ile yapmak ne demek? Bu şekilde yapmak bizi nasıl hızlandıracak? Eğer kayıtları bir grid üzerinde listeleyecekseniz select * kullanmak yerine MUTLAKA sütun seçmeli ve ICERIK (varbinary olan sütun) sütununu hariç bırakmalısınız. Çünkü o kadar bilginin serverdan gelmesi çok uzun süre alacaktır ve programram kilitlenmiş hissi verecektir. Arşivlenen dosyaların aranması bulunması konusunda MD5 kodlamasından yardım alabilirsiniz. uses frxMD5; function TForm1.MD5Stream(AStream: TStream): AnsiString; begin Result := UpperCase(frxMD5.MD5Stream(AStream)); end; function TForm1.MD5String(AString: String): AnsiString; begin Result := UpperCase(frxMD5.MD5String(AString)); end; procedure TForm1.BelgeKontrol(DataSet: TDataSet); const MaksimumDosyaBoyutum = 1024 * 1024 * 5; // 5 MB var Stream1: TADOBlobStream; Q1: TADOQuery; begin inherited; Stream1 := TADOBlobStream.Create(Dataset.FieldByName('ICERIK') as TBlobField, bmRead); try if Stream1.Size > MaksimumDosyaBoyutum then raise Exception.Create(IntToStr((MaksimumDosyaBoyutum div 1024) div 1024) + ' MB''tan büyük dosya yükleyemezsiniz!'); Dataset.FieldByName('ICERIK_MD5').AsString := MD5Stream(Stream1); Q1 := TADOQuery.Create(Self); try Q1.Connection := XXXXXX Q1.SQL.Text := 'select * from TBL_BELGE where ICERIK_MD5 = ' + QuotedStr(Dataset.FieldByName('ICERIK_MD5').AsString); Q1.Open; if Q1.RecordCount > 0 then then raise Exception.Create('Aynı içeriğe sahip başka bir dosya önceden yüklenmiş!'); Q1.Close; finally Q1.Free; end; finally Stream1.Free; end; end; Ben FastReport dosyaları içerisinde bulunan MD5 modülünü kullanıyorum. Bir dosyanın veya bir stringin MD5 kodunu veren başka kütüphaneler de kullanabilirsiniz.
24-10-2018, Saat: 14:35
Bu değerli bilgiler için çok teşekkür ediyorum. Uyarılarınızı dikkate alarak uygulamayı geliştirmeye çalışacağım.
24-10-2018, Saat: 14:43
Stored procedure'ler işlemler hızlandırmaz. Hele tek bir döküman eklerken hiç fark etmez. Ancak eğer topluca bir DB'ye ekleme yapacaksanız, her türlü süre optimizasyonunu kullanmalısınız. Hatta o durumda, aktarım programını ADO ile değil FireDac ya da UniDAC benzeri DB erişim paketleriyle ve bunların Batch desteğini (yanlış hatırlamıyorsam bunların batch işlemleri vardı) kullanarak yapın. Aksi halde aktarım çok uzun sürer. Ayrıca C.Sunguray'ın select * from xxx konusundaki önerisini de ciddiye alın.
C.Sunguray'a : Sayın C.Sunguray, MD5 şifreleme yöntemi değil miydi? Ben mi yanlış hatırlıyorum acaba? Yoksa bahsettiğiniz aynı isimde farklı bir şey mi acaba?
24-10-2018, Saat: 17:20
(24-10-2018, Saat: 14:43)mustafaozpinar Adlı Kullanıcıdan Alıntı: Stored procedure'ler işlemler hızlandırmaz. Hele tek bir döküman eklerken hiç fark etmez. Ancak eğer topluca bir DB'ye ekleme yapacaksanız, her türlü süre optimizasyonunu kullanmalısınız. Hatta o durumda, aktarım programını ADO ile değil FireDac ya da UniDAC benzeri DB erişim paketleriyle ve bunların Batch desteğini (yanlış hatırlamıyorsam bunların batch işlemleri vardı) kullanarak yapın. Aksi halde aktarım çok uzun sürer. Ayrıca C.Sunguray'ın select * from xxx konusundaki önerisini de ciddiye alın. MD5'e özellikle şifreleme demekten kaçındım. Daha çok özet çıkarma fonksiyonu deniliyor. Siz sorunca Wikipedi'ye baktım. Orada kriptografik özet fonksiyonu olarak bahsedilmiş.
24-10-2018, Saat: 17:42
(24-10-2018, Saat: 14:43)mustafaozpinar Adlı Kullanıcıdan Alıntı: Stored procedure'ler işlemler hızlandırmaz. Hele tek bir döküman eklerken hiç fark etmez. Ancak eğer topluca bir DB'ye ekleme yapacaksanız, her türlü süre optimizasyonunu kullanmalısınız. Hatta o durumda, aktarım programını ADO ile değil FireDac ya da UniDAC benzeri DB erişim paketleriyle ve bunların Batch desteğini (yanlış hatırlamıyorsam bunların batch işlemleri vardı) kullanarak yapın. Aksi halde aktarım çok uzun sürer. Ayrıca C.Sunguray'ın select * from xxx konusundaki önerisini de ciddiye alın. Teşekkürler.
30-10-2018, Saat: 10:37
Yapabiliyorsan imageları ayrı bir storage'da tutmanı öneririm.
Anladığım kadarıyla dikey mimari kullanıyorsun 3 gün sonra disk performans vs.. sorunları yaşayabilirsin. Tabi data sayısı düşükse bunlara gerek yok.
İmam Süleyman Yakub <--> Molla Mustafa Mansur
Evlatlarım! Cismanımız TÜRK ruhumuz ise İSLAM. Bu yolda daim olalım her an.
30-10-2018, Saat: 15:25
Teşekkür ederim değerli fikirleriniz için.
|
« Önceki Konu | Sonraki Konu »
|
Konu ile Alakalı Benzer Konular | |||||
Konular | Yazar | Yorumlar | Okunma | Son Yorum | |
Uzak Sunucuya (Server) Lokalden Veri Tabanı Oluşturma Hk. | glagher | 7 | 270 |
Dün, Saat: 12:32 Son Yorum: glagher |
|
MS SQL Server - Arama Yaklaşık Değerleri Bulma | hi_selamlar | 5 | 536 |
17-01-2024, Saat: 22:53 Son Yorum: Mr.X |
|
Sql Server Otomatik Kurulum | narkotik | 11 | 7.864 |
21-12-2023, Saat: 14:25 Son Yorum: Bay_Y |
|
MS SQL server tarih formatı değiştirme | MEK | 15 | 5.658 |
13-09-2022, Saat: 23:19 Son Yorum: MEK |
|
SQl Server Guruplama ve Toplama | Bay_Y | 6 | 3.749 |
25-02-2021, Saat: 10:39 Son Yorum: Bay_Y |