Есть файл с SQLite базой данных, размером примерно 100 мегабайт. При загрузке ее объем становится равным примерно двум гигабайтам.
Подскажите как можно уменьшить размер занимаемой оперативной памяти, чтобы при этом была возможность выполнять поиск по базе.
2 гигабайта не так много. Но база будет расти и оперативной памяти в итоге может не хватить.
Загрузка выполняется средствами EF, при помощи библиотеки SQLite.EF6.
Фрагмент кода загрузки:
await Task.Run(() =>
{
_databaseContext = new DatabaseContext();
_databaseContext.Profiles.LoadAsync(ProgressViewModel.CancellationToken);
});
DatabaseContext это класс производный от DbContext
public class DatabaseContext : DbContext
{
public DatabaseContext() : base(new SQLiteConnection
{
ConnectionString = new SQLiteConnectionStringBuilder
{
DataSource = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, Properties.Settings.Default.DatabaseFileName),
ForeignKeys = true
}.ConnectionString
},true)
{
}
public DbSet<Profile> Profiles { get; set; }
}