The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Как увеличить скорость вставки большого числа INSERT в PostgreSQL
Для увеличения скорости помещения большого числа INSERT запросов (например,
дамп в формате pg_dump -D):

    SET autocommit TO 'off';
    строки с INSERT
    COMMIT;
    SET autocommit TO 'on';

Или заключить набор INSERT'ов в одну транзакцию:
    BEGIN;
    INSERT....
    COMMIT;

Вместо INSERT лучше использовать "COPY таблица (список полей) FROM stdin;"
 
10.06.2005
Ключи: postgresql, insert, speed, sql, optimization / Лицензия: CC-BY
Раздел:    Корень / Программисту и web-разработчику / SQL и базы данных / PostgreSQL специфика / Оптимизация и администрирование PostgreSQL

Обсуждение [ RSS ]
  • 1, Критик (?), 08:06, 15/06/2005 [ответить]  
  • +/
    >>> COPY таблица (список полей) FROM stdin;

    А это как, скажите?

     
     
  • 2, const (??), 17:52, 15/06/2005 [^] [^^] [^^^] [ответить]  
  • +/
    Это так, как делает pg_dump без лишних ключиков...
     

  • 3, Vladimir Kr. (?), 16:59, 16/06/2005 [ответить]  
  • +/
    Для экстремального ускорения рекомендую перед использованем pg_dump удалить ключи и индексы в таблице.
    Вы будите гарантированно поражены скоростью.
    Правда база должна быть соответственно под это спроектирована и данные должны быть чистые, чтобы потом вернуть все ключи и индексы.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Спонсоры:
    Слёрм
    Inferno Solutions
    Hosting by Ihor
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2019 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру