У меня есть программа, которая работает, возможно, 100M выбирает и вставляет.Когда закрыть/открыть соединение MySQL
Есть ли какая-либо польза от закрытия и повторного открытия курсора после N числа утверждений? Или я должен просто открыть его один раз - в начале - и затем закрыть его в конце?
два варианта:
def connect(self):
if self.conn:
self.conn.close()
self.conn = MySQLdb.connect (...)
self.cursor = self.conn.cursor()
1)
self.connect()
# all statements
self.conn.close()
2)
self.connect()
for num, sql_statement in enumerate(sql_statements):
if num == N:
self.connect()
# sql statement
self.conn.close()
есть ли преимущество использования второго маршрута? Есть ли разница между двумя вариантами?
Довольно уверенно, что постоянное создание и удаление соединений является дорогостоящим и ненужным накладными расходами. Большинство приложений имеют тенденцию использовать одно соединение от начала до конца, если совершенно необходимо повторно подключиться посередине. Если вам не нужно это делать, зачем это делать? Я почти думал, что постоянное повторное подключение будет убивать время исполнения. – 2014-09-09 17:53:01