Низкая производительность по запросу PostgreSQL

ОБНОВЛЕНИЕ: Мне пришло в голову: возможно ли, что pgAdmin считает не фактическое время запроса, а время, необходимое для отображения результатов в сетке?

Я просто выполнил запрос с помощью командной строки (psql) и вывел результаты в текстовый файл, и он был очень быстрым (1-2 секунды).

В этом случае проблема не в конфигурации сервера postgresql / ubuntu; это скорее проблема адаптера дисплея.

Я прав или ищу в неправильном направлении?

На моем «старом» ПК (Core 2 Duo, 4 ГБ ОЗУ, 250 ГБ SATA HD), работающем в Arch Linux 64bit, я могу выполнить простой запрос «SELECT * FROM sometable» за 0,4 мс (я использую pgAdmin 3). База данных - это PostgreSQL 9.1 (с PostGIS), и таблица содержит около 60 000 строк.

Я перенес базу данных на более новый компьютер (Core i5, 8 ГБ ОЗУ, 1 ТБ Western Digital Black SATA III), и тот же запрос занимает целых 22 секунды (!!!). На новом компьютере установлен Ubuntu Server 13.04 64bit.

Для дальнейшего тестирования я скопировал базу данных на 64-битный ПК с Windows 7 (Core i5, 6 ГБ ОЗУ), и запрос выполняется примерно за 10 секунд.

Это явно проблема конфигурации, но я немного запутался, является ли это проблемой конфигурации PostgreSQL или Ubuntu Server.

Я уже пытался поиграться с conf-файлами PostgreSQL (kernel.shmmax, shared_buffers и т. Д.), Но безрезультатно. И конечно я VACUUMed, VACUUM ANALYZed и воссоздал все показатели.

Есть идеи? Я заинтересован в решении Ubuntu Server, а не о Windows 7.

Заранее спасибо,

Ebl

Ответы на вопрос(2)

Ваш ответ на вопрос