Как улучшить скорость вставки с индексом по текстовому столбцу - PullRequest
1 голос
/ 30 января 2012

Я использую базу данных Postgresql для нашего проекта и провожу некоторое тестирование производительности. Нам нужно вставить миллионы записей с индексированными столбцами. У нас есть 5 столбцов в таблице. Я создал индекс по целому числу только тогда, когда производительность хорошая, но когда я также создал индекс по текстовому столбцу, производительность снизилась в 1/8 раза. У меня вопрос, как я могу улучшить производительность при вставке данных, используя индекс для текстового столбца?

1 Ответ

1 голос
/ 30 января 2012

Короткий ответ: Вы не можете .

Общеизвестно, что добавление индексов в столбцы БД похоже на двухгранный меч:

  • с одной (положительной) стороны добавляет улучшенную скорость чтения запросов
  • с другой стороны, это добавляет снижение производительности к insert/update/delete операциям, и ваши данные будут занимать немного больше дискового пространства

Возможным решением будет использование некоторых полнотекстовых поисковых систем, таких как Sphinx , которые будут индексировать ваши текстовые объекты в вашей БД

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...