Скорость загрузки большого точечного слоя

Вопросы по свободной ГИС QGIS. Сообщения об ошибках, предложения по улучшению, локализация.
Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Скорость загрузки большого точечного слоя

Сообщение Максим Дубинин » 07 июл 2009, 19:13

Не мог бы кто-нибудь посчитать примерно, на пальцах, сколько секунд у QGIS занимает загрузка и показ большого точечного слоя - вот этого. С момента нажатия на кнопку "Открыть"

У меня в 1.0.2, 1.1, 1.2-trunk везде примерно одинаково - около 30 сек.
пристегивайтесь, турбулентность прямо по курсу

Аватара пользователя
SS_Rebelious
Гуру
Сообщения: 1304
Зарегистрирован: 24 фев 2009, 16:51
Репутация: 99
Ваше звание: GIS pro-fan
Откуда: Lahti / Газ-ПУТИНбург
Контактная информация:

Re: Скорость загрузки большого точечного слоя

Сообщение SS_Rebelious » 07 июл 2009, 22:05

22 секунды QGIS 1.0.2.

Но работать с ним нереально)))
Look for something long enough, and you will find it. Look for something without understanding, and it will find you...
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: Скорость загрузки большого точечного слоя

Сообщение Voltron » 08 июл 2009, 19:31

Проверял с секундомером под WinXP Pro SP3.
QGIS 1.0.2 - 57.3
QGIS 1.1 - 54.2
QGIS 1.2 - 54.4
В среднем получается ~55 с. Правда, машину я не разгружал перед проверкой. Возможно, если поотключать некоторые сервисы, выгрузить программы, то было бы чуть быстрее, но это как раз моя рабочая среда.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Скорость загрузки большого точечного слоя

Сообщение Максим Дубинин » 08 июл 2009, 19:38

Voltron, SS_Rebelious - спасибо
отключать ничего не надо, я думаю смысл понятен и так
пристегивайтесь, турбулентность прямо по курсу

KolesovDmitry
Гуру
Сообщения: 810
Зарегистрирован: 22 авг 2007, 14:58
Репутация: 123
Откуда: Казань

Re: Скорость загрузки большого точечного слоя

Сообщение KolesovDmitry » 13 июл 2009, 21:32

qGIS 1.1.0 - 1 минута 35 секунд.
Celeron 2.8 GHz, 750 Mb Ubuntu 9.4

manisha
Завсегдатай
Сообщения: 410
Зарегистрирован: 24 авг 2006, 17:35
Репутация: 10

Re: Скорость загрузки большого точечного слоя

Сообщение manisha » 26 ноя 2009, 13:57

24.6 секунды.
Транк 12231, Intel Core 2 2GHz.

manisha
Завсегдатай
Сообщения: 410
Зарегистрирован: 24 авг 2006, 17:35
Репутация: 10

Re: Скорость загрузки большого точечного слоя

Сообщение manisha » 06 дек 2009, 14:44

Вообще, из-за большого размера (полтора Гб) этот слой не подходит для тестов скорости QGIS. Скорее это тест на скорость чтения с винчестера.
Сейчас попробовал с разных винчестеров загрузить в одном компе.
С первого 1 мин 10 сек (винт не системный, но давно не дефрагментировался).
Со второго 17 сек (винт под временные файлы, но почти пустой и потому не фрагментированный).
Разница в 4 раза.

QGIS Mimas, 2.53 GHz Core 2 Duo, 4Gb памяти.

Понятно, что с таким файлом QGIS работает очень медленно независимо от винчестера, но тем не менее, как тест на скорость (если мы хотим отслеживать, есть ли прогресс по мере выхода новых версий) он не подходит.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Скорость загрузки большого точечного слоя

Сообщение Максим Дубинин » 14 янв 2010, 23:26

Транк 1.5, r12752, ровно 30 сек

С пространственным индексом (свойства\общие\создать индекс), кугис и слой перезагружен - тоже 30 сек.

Т.е. на загрузку индекс не влияет, а вот на работу со слоем - значительно быстрее с индексом.
пристегивайтесь, турбулентность прямо по курсу

Punkster
Интересующийся
Сообщения: 39
Зарегистрирован: 24 дек 2009, 10:45
Репутация: 0

Re: Скорость загрузки большого точечного слоя

Сообщение Punkster » 22 фев 2010, 18:32

Может вопрос немного не в той теме, но просто чтоб новую не создавать. Раз уж речь шла о скорости. Как, кроме пространственного индекса, можно увеличить скорость работы с большим полигональным слоем (более 150000 объектов). Естественно работа не в полном экстенте, но даже при крупных масштабах скорость прорисовки оставляет желать лучшего. Можно ли что-нибудь с этим сделать?

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: Скорость загрузки большого точечного слоя

Сообщение Voltron » 22 фев 2010, 20:02

Попробуйте включить кеширование. Установки-Параметры-Отрисовка, поставить галку "Использовать кэш для ускорения отрисовки"

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Скорость загрузки большого точечного слоя

Сообщение Максим Дубинин » 23 фев 2010, 03:13

а что не так с индексом? почему "кроме"?
пристегивайтесь, турбулентность прямо по курсу

yellow-sky
Гуру
Сообщения: 588
Зарегистрирован: 30 мар 2009, 21:53
Репутация: 55
Откуда: Королев

Re: Скорость загрузки большого точечного слоя

Сообщение yellow-sky » 24 фев 2010, 11:48

Очень часто для полигональных\линейных слоев скорость зависит не только от наличия\правильности кэша, но и от самих данных.
К сожалению кугис рисует геометрию полностью, независимо от экстента отображения. Это означает, что если у вас имеется полигон РФ, а экстент отображения равен городу, то полигон России будет отрисовываться полностью в невидимой части канваса (кстати SharpMap имеет средства, для борьбы с большими полигонами).
Так же следует учесть, что индекс индексу рознь. При размере индекса, равным самому слою, эффективность первого резко теряется. Такое может происходить при большом количестве протяженных\сильно распределенных мульти геометриях.
Опять же, рассматриваемый слой (150k объектов) достаточно критичен к выбранному хранилищу. Я бы не стал хранить такой слой в шейпфайле.
Существует еще ряд параметров, на которые следует обращать внимание - многовертексность геометрий, чрезмерное количество внутренних рингов, ошибки самих геометрий и тд и тп.
Бороться за скорость можно только после анализа самих данных. Поэтому совет один - плотнее работайте и изучайте ваши данные.

yellow-sky
Гуру
Сообщения: 588
Зарегистрирован: 30 мар 2009, 21:53
Репутация: 55
Откуда: Королев

Re: Скорость загрузки большого точечного слоя

Сообщение yellow-sky » 24 фев 2010, 11:50

Забыл еще один немаловажный параметр быстродействия - стиль отображения :)

Punkster
Интересующийся
Сообщения: 39
Зарегистрирован: 24 дек 2009, 10:45
Репутация: 0

Re: Скорость загрузки большого точечного слоя

Сообщение Punkster » 25 фев 2010, 10:34

sim, с индексом всё нормально. просто хотелось узнать, какие ещё есть способы ускорить работy

yellow_sky, а если не в шейп, то в каком формате посоветуете?

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: Скорость загрузки большого точечного слоя

Сообщение Voltron » 25 фев 2010, 17:42

Попробуйте какую-нибудь БД: SpatiaLite или PostGIS

Ответить

Вернуться в «QGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя