2010-06-14 15 views
6

Çok uygun bir sqlite db kullanıyorum ve bu noktada tüm ihtiyaçlarımı karşılıyor gibi görünüyor.büyük veritabanları - dosya boyutu ile ilgili düşünceleriniz var mı?

Şu anda db boyutum < 50MB'dir, ancak şimdi büyük metin lekelerini depolayacak yeni bir tablo eklemem gerekiyor; bu da db'nin gelecek yıl içinde 5 GB'a ulaşmasına neden olacak.

sqlite 5GB boyutunda bir db ile ilgilenebilecek mi? Bu mysql ile karşılaştırıldığında, herhangi bir uyarılar?

+1

büyük sqlite DB'lerde tam ayrıntıları görmek için: http://stackoverflow.com/q/784173/462865, kısaca 5GB sqlite tarafından ele alınabilir. –

cevap

4

Veritabanlarında büyük bir uzman değilim, ancak SQL ile yaptığım DB ile ilgili çalışmaların çoğunu kullanıyorum. Deneyimlerime göre, veritabanını daha büyük kendi içinde yapmak büyük bir performans isabetine neden olmamalıdır. Doğal olarak daha fazla veriye sahip olacaksınız, bu yüzden sorgulamak için daha fazla zaman harcamanıza hazırlanın!

Bu düşünce deneyi düşünün: DB'de her zaman kullandığınız mydata adlı bir tablonuz var. Şimdi, ilişkisiz bir tabloyu otherdata ekleyin. mydata için yaptığınız sorgular otherdata'daki bilgilere bağlı değildir. GB'leri otherdata içine soksanız bile, mydata kullanımınızda gerçek bir performans artışı hissetmezsiniz. SQLite mimarisi AFAIK bu iddiayı desteklemektedir.

3

SQLite, yapmak istediğiniz şey için iyi olmalıdır. Boyut gerçekten bir endişe değil. Veri dosyanız arama yapan aynı bilgisayarda kaldığı sürece, iyi olmalısınız. Ağa koyarsanız, sorun yok, ama çok kullanıcılı erişim, kayıtların kilitlenmesi söz konusu olduğunda işletim sisteminin hatalarına tabidir. Sunucuyu elediğinizden beri, mysql ile karşılaştırmaya göre, ayrıca veri alma ile ilişkili ağ trafiğini de ortadan kaldırmıştır. Bu işleri hızlandırmalı.

SQLite FAQS belirtildiği gibi -don

3

, nokta 12 en FAQ

görünüm, bu oracle db maksimum bir sınır 140 TB kadar olabilir söyler !!

+0

140TB (şimdiki haliyle) diyor, 14TB değil. –

+0

Sadece 140 TB'nin teorik bir sınır olduğunu ve hiçbir zaman test edilmediğini eklemek istiyorum: "Geliştiriciler bu sınıra ulaşabilecek donanıma erişemedikleri için bu üst sınır test edilmemiştir." Ama muhtemelen 5GB SQlite veritabanı sorun değil. – Galabyca

İlgili konular