Форум программистов, компьютерный форум, киберфорум
Python: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 03.11.2019
Сообщений: 69

Долго добавляет в базу

22.03.2020, 12:19. Показов 594. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добавляю из папки txt файлы в базу, всего один столбец.

При количестве записей в базе около 100млн строки начинают добавляться очень медленно. Параллельно никаких операций чтения/записи нет

Зависит ли скорость записи от количества строк в базе или причина в чем то другом?
База postgres, добавляю локально. Всего надо добавить 1.5 миллиарда строк

Добавляю так

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
folder = "folder"
    a = os.listdir(path=folder)
    l = len(a)
    d = 0
    for i in a:
        d+=1
        count = 0
        data = []
        with open(folder+'/'+i, encoding="utf-8", errors='ignore') as f:
            print('open')
            for line in f:
                count += 1
                data.append([line.replace('\n', ''), i])
                if count == 30000: # тут пробовал много вариантов от 30000 до миллиона
                    add(data)
                    data.clear()
                    count = 0
            if len (data) != 0:
                add(data)
                data.clear ()
Python
1
2
3
4
5
6
def add(data):
        conn = psycopg2.connect (config.CONN_STRING)
        cursor = conn.cursor()
        cursor.executemany('INSERT INTO test VALUES(%s,%s);', data)
        conn.commit()
        conn.close()
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.03.2020, 12:19
Ответы с готовыми решениями:

Python pymysql не добавляет в базу данных запись
Добрый день. Такая проблема. Имеется база данных созданная в phpmyadmin. Программа подключается к этой базе данных. У меня получилось...

Бот выдает ошибку при и не добавляет значение в базу данных
вот код @bot.message_handler(commands=) def reg1(message): try: msg = bot.send_message(message.chat.id, "Ваш...

Не добавляет в базу
Здравствуйте, я новичок в php, пытаюсь добавить новую запись в таблицу, но к сожалению не получается. Вот что я сделал: 1. Подключил...

4
Заклинатель змей
 Аватар для DobroAlex
705 / 560 / 219
Регистрация: 30.04.2016
Сообщений: 2,605
22.03.2020, 12:41
Jhonat, покажите структуру базы. В целом, это неудивительно -- постргес прожорлив на ресурсы и если у Вас слабая машина, то будет тупить
0
0 / 0 / 0
Регистрация: 03.11.2019
Сообщений: 69
22.03.2020, 13:18  [ТС]
DobroAlex,

Python
1
2
3
4
5
6
7
8
9
10
conn = psycopg2.connect(config)
    cursor = conn.cursor()
    cursor.execute("""
                CREATE TABLE data(
                    mails    TEXT,
                    source TEXT
                );
            """)
    conn.commit()
    print('create OK: ' )
После создания добавил индекс
SQL
1
CREATE INDEX index_name ON DATA(mails, SOURCE);
диск 2тб ссд, 8гб рам, в конфиге постгреса отдал ему 4гб
0
0 / 0 / 0
Регистрация: 03.11.2019
Сообщений: 69
22.03.2020, 13:20  [ТС]
в момент заливки так
Миниатюры
Долго добавляет в базу  
0
0 / 0 / 0
Регистрация: 03.11.2019
Сообщений: 69
22.03.2020, 13:22  [ТС]
картина в пгадмин
Миниатюры
Долго добавляет в базу  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.03.2020, 13:22
Помогаю со студенческими работами здесь

Не добавляет в базу
здравствуйте можете подсказать в чём тут дело?я вот написал скрипт добавления баннера на сайт и в таблице у меня указано поле place и img и...

Не добавляет в базу WP
Здравствуйте, я новичок в php, пытаюсь добавить новую запись в таблицу, но к сожалению не получается. Сайт на движке wordpress Вот что...

Не добавляет в базу ДБ
Вот посмотрите скрипт мож что я не так делаю... помоему всё работает как нужно... при нажатии на кнопку изчезает табличка с регой это...

Не добавляет данные в базу
Столкнулся с проблемой, если в поле есть такой знак ' то insert into не работает. $id = ((mysql_num_rows($result))+1); $name...

Не добавляет данные в базу
Здравствуйте написал вот такой запрос на при нажатии на кнопку нечего недобавляется в базу. <? include("in/bd.php"); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru