我创建这段代码是为了将数据从 Python
但是太慢了。我基本上把一个表转换成一个数组,以避免检索时出现一些错误。
arr2 = np.array(tbl2)
``` `tbl2` 包含以下列:
cols1 = ['DATE1', 'DATE2', 'REGION', 'STATE', 'CITY', 'N_SAMPLE', 'UOM', 'AVG_RESALE', 'STD_RESALE',
'P_MIN_RESALE', 'P_MAX_RESALE', 'MARGEM_RESALE', 'COEF_RESALE', 'AVG_DISTRI', 'STD_DISTRI', 'P_MIN_DISTRI',
'P_MAX_DISTRI', 'COEF_DISTRI', 'MATERIAL']
然后,插入数据的代码:
sql_insert = f"INSERT INTO prd_product_123.table ({', '.join(cols1)}) VALUES ({', '.join(list('?'*len(cols1)))}) ;"
for i in range(0, len(arr2)):
cursor.execute(sql_insert, list(arr2[i].transpose()))
cursor.commit()
print('Row ' + str(i) + ' loaded!')
问题是原来的表 `tbl2` 有超过1000000行,顺便说一下,它需要几天才能载入 Impala 。
有没有办法更有效地加载它?
暂无答案!
目前还没有任何答案,快来回答吧!