Вставка PyMon go занимает слишком много времени - PullRequest
0 голосов
/ 03 марта 2020

У меня есть несколько файлов ".csv", которые я хотел бы вставить в свою БД, но там много данных, и мой код отнимает слишком много времени. Я хотел бы спросить, если есть другой подход к вставке данных, как это? Btw. Я не хочу использовать os.system(mongoimport ... ), потому что он удаляет фронт 0 из моих телефонных колонок.

вот код

def do_sync():
    path = "share"
    extension = ".csv"
    results = glob.glob(f"{path}/*{extension}")
    for result in results:
        print(result)
        csvfile = open(result, 'r')
        reader = csv.DictReader( csvfile )
        db=mongo_client.media_mongo
        header= [ "No", "phone", "location"]

        for each in reader:
            row={}
            for field in header:
                row[field]=each[field]

            db.main_hikanshou.insert(row)

1 Ответ

1 голос
/ 03 марта 2020

Попробуйте использовать функцию массовой вставки из pymon go

Сначала необходимо создать запросы на вставку, а затем отправить все их в базу данных за один go.

...