【问题标题】:Leveraging multithreading/multiprocessing to insert data into database with sqlalchemy利用多线程/多处理通过 sqlalchemy 将数据插入数据库
【发布时间】:2021-09-25 12:47:59
【问题描述】:

我有一系列需要插入数据库的平面文件,目前我有一个循环的 python 脚本,它将逐个文件读取和执行。这非常慢,因为我有 ~5000k+ 文件和 ~1B 记录。如何使用多线程或多处理执行以下操作?

import os
import pandas as pd
import personal_functions as fns

# establish parameters
table_name = 'sql_table_name'
contents = os.listdir(dir_of_files)
contents.sort()

# loop through each file and insert into db
for file in contents:
    temp = pd.read_csv(dir_of_files + file)
    fns.special_insert_function(temp, table_name)

【问题讨论】:

标签: python sql pandas sqlalchemy singlestore


【解决方案1】:

根据文件的格式,使用 LOAD DATA 命令从磁盘提取文件可能比使用 INSERT 语句快得多:https://docs.singlestore.com/managed-service/en/load-data.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-03
    • 2020-08-08
    • 1970-01-01
    • 2011-01-13
    • 2014-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多