Я не знаю каких-либо потерь производительности при частом закрытии / открытии базы данных (независимо от ее размера).Я думаю, что ответ на этот вопрос также зависит от того, какое приложение обращается к базе данных.
Вы много раз «повторно запрашиваете» базу данных? Тогда кажется исправленным, чтобы он оставался открытым.
Вы получаете разные данные каждый раз, когда что-то получаете? Опять же, кажется разумным оставить его открытым (поскольку вместо этого вы не выиграете в кэшировании данных).
Существуют ли другие приложения, обращающиеся к той же базе данных? Если существует риск возникновения проблем с параллелизмом или блокировкой, возможно, было бы целесообразно закрыть базу данных после завершения чтения / записи из нее / в нее.
Как правило, я бы сказал, что вы можете получить больше при кэшировании данных, чем при выходебаза данных открыта (против закрытия) при оптимизации производительности.