2015-04-24 6 views
3

Я работаю в R с базой данных mySQL, к которой я подключаюсь с RMySQL (и DBI).Оставьте подключение к базе данных открытым для сеанса или подключитесь к нему, когда оно будет полезно

У меня есть функция, которая читает таблицу SQL (и импортирует их как объекты R) «на лету», когда пользователю это нужно. Он часто читает таблицу или не отправляет запрос в базу данных в течение длительного времени, я не знаю.

Разрешена только операция SQL - чтение таблицы (SELECT *, без условий).

Фактически я открываю новое соединение каждый раз, когда мне нужно прочитать новую таблицу, а затем закрыть соединение. Но я ищу некоторые советы и рекомендации.

Я точно знаю, что я создаю функцию связи как «singleton», чтобы не открывать в parrallel два соединения с одной базой данных.

Неправильно ли отправлять запросы на соединение в базу данных? (Даже если предыдущие подключения закрыты) Могу ли я позволить SQL-соединение открываться в течение длительного времени, даже если нет взаимодействия?

Спасибо за любые советы.

ответ

0

В 98% случаев вы не должны управлять своими подключениями db вручную и должны просто оставить его в ActiveRecord для подключения по мере необходимости. Возможно, адаптер RMySQL уже оптимизирован для обработки большинства случаев. Будьте осторожны, не предварительно оптимизируйте и просто прибегайте к постоянному соединению на строго нулевой основе.

 Смежные вопросы

  • Нет связанных вопросов^_^