Я использую простой сценарий для извлечения данных из базы данных Oracle и записи данных в файл CSV с помощью средства записи CSV.
Таблица, к которой я обращаюсь, содержит около 25 тыс. Записей, сценарий выполняетсяотлично за исключением его на самом деле очень медленно.Это займет 25 минут.
Каким образом я могу ускорить это, изменив код?Любые советы от ваших героев приветствуются.
#
# Load libraries
#
from __future__ import print_function
import cx_Oracle
import time
import csv
#
# Connect to Oracle and select the proper data
#
con = cx_Oracle.connect('secret')
cursor = con.cursor()
sql = "select * from table"
#
# Determine how and where the filename is created
#
path = ("c:\\path\\")
filename = time.strftime("%Y%m%d-%H%M%S")
extentionname = (".csv")
csv_file = open(path+filename+extentionname, "w")
writer = csv.writer(csv_file, delimiter=',', lineterminator="\n",
quoting=csv.QUOTE_NONNUMERIC)
r = cursor.execute(sql)
for row in cursor:
writer.writerow(row)
cursor.close()
con.close()
csv_file.close()