我正在加载django模型中的excel文件,并使用xlrd读取并存储在数据库中。
加载大约20k行需要1分钟。但是我的文件有160k行,大约需要8分钟,所以我需要将这种大容量文件的读取和存储时间减少到一分钟以内。我应该做些什么来减少加载时间。所有可能的方法是什么??在def upload_file(request):
if request.method == 'POST':
form = UploadFileForm(request.POST, request.FILES)
if form.is_valid():
newdoc = Upload(file = request.FILES['file'])
newdoc.save()
xlbook = open_workbook(newdoc.file.name)
sheet = xlbook.sheet_by_index(0)
field = [sheet.cell_value(0,c) for c in range(sheet.ncols)]
temp = [sheet.cell_value(c,0) for c in range(sheet.nrows)]
value = [[sheet.cell_value(r,c) for c in range(sheet.ncols)]for r in range (sheet.nrows)]
data = {}
if request.POST.get('check'):
Sales.objects.filter(OrderID__in = temp[1:]).delete()
for n in range(0,sheet.nr