Список форумов www.integro.ru www.integro.ru
ЦСИ ИНТЕГРО
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

оптимизация удаления выборки объектов

 
Начать новую тему   Ответить на тему    Список форумов www.integro.ru -> Вопросы разработчиков
Предыдущая тема :: Следующая тема  
Автор Сообщение
nawakster



Зарегистрирован: 17.06.2008
Сообщения: 59

СообщениеДобавлено: Вс 28 Июл 2013 03:36    Заголовок сообщения: оптимизация удаления выборки объектов Ответить с цитатой

Маюсь с импортом КПТ росреестра.
inm + c# dll

Создание участков быстрое, выборка старых участков по семантическим данным относительно быстро.
А вот удаление даже небольшого количества объектов заставляет программу конкретно задуматься.

Думал уже удалять напрямую из базы, но не могу разобраться со структурой.

Как можно решить проблему?)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
APopov



Зарегистрирован: 19.06.2006
Сообщения: 347
Откуда: Самара

СообщениеДобавлено: Пн 29 Июл 2013 18:50    Заголовок сообщения: Ответить с цитатой

Конкурент Smile
У нас та же картина с удалением - медленно удаляет.

Удалять через базу точно не советую: сервер данных об этом не узнает, и заставить его перечитать объекты из базы нельзя, да и не нужно - вы получите еще большие тормоза.
Короче, действовать в обход апи ингео себе дороже.

_________________
ОАО "Самара-Информспутник",
инженер-программист Попов Артем
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
nawakster



Зарегистрирован: 17.06.2008
Сообщения: 59

СообщениеДобавлено: Пн 29 Июл 2013 23:04    Заголовок сообщения: Ответить с цитатой

Печально.
Заменить удаление на смену стиля я как понимаю тоже выигрыша не даст.

Может Михаил что-нибудь дельное посоветует.

UPD: 4.6 обновился
баг с SQLEXEC у меня пропал.
На 4.6 проблем с удалением нет) Как зарелизится, пересажу всех на нее.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Михаил Власов



Зарегистрирован: 14.02.2005
Сообщения: 580
Откуда: ИНТЕГРО

СообщениеДобавлено: Вт 30 Июл 2013 12:47    Заголовок сообщения: Ответить с цитатой

nawakster писал(а):
Печально.
Заменить удаление на смену стиля я как понимаю тоже выигрыша не даст.

Даст.

Львиная доля времени при удалении объектов уходит на удаление семантических записей.

nawakster писал(а):
На 4.6 проблем с удалением нет) Как зарелизится, пересажу всех на нее.

Сегодня еще оптимизировали удаление объектов (на 4.6).
1300 объектов удаляется за 5 сек.
Будет в очередном обновлении.

_________________
С уважением, Михаил Власов.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Азаматов Азамат Хадисович



Зарегистрирован: 17.02.2005
Сообщения: 100
Откуда: г. Учалы, Респ. Башкортостан

СообщениеДобавлено: Сб 03 Авг 2013 14:43    Заголовок сообщения: Ответить с цитатой

Варианты
1. Сделайте импорт/удаление в фоне ( у меня так делает на vbscript -
Код:

sub ImportFilesWQ(filenames)
  dim i
  set swin=winmanager.MakeWindow(MakeWQSetupHTML)
  LoadWQSettings
  MainWindow.SetStatusText "идет импорт XML файла КП"
  for i=1 to ubound(filenames)
    MainWindow.SetStatusText "идет импорт XML файла КП "+filenames(i)
    ProcessMessages
    ParseAndImportWQ filenames(i)
  next
  MainWindow.SetStatusText "закончен  импорт XML файла КП"
)
2. Насколь я понимаю удалить надо только снятые с учета ЗУ - их не так много, остальные можно просто обновить - это много быстрее.

ЗЫ. мой модуль ничего не удаляет и не обновляет - никто не просил и самому не нужно было. В ингео очистка какой то территории или по номеру квартала делается в два щелчка мыши.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
BarakudaX777



Зарегистрирован: 07.07.2014
Сообщения: 26
Откуда: ООО "ГЕОГРАД" г. Орск

СообщениеДобавлено: Пн 01 Сен 2014 11:37    Заголовок сообщения: Ответить с цитатой

Прошу за прямой вопрос но как удалить все объекты с определенной карты (слоя, стиля) наиболее быстро?
Хотелось бы сделать очистку слоя от объектов для подгрузки данных с росреестра. В ингео удаление всех объектов слоя проходит почти пол часа. Я так понимаю из за перерисовки и прочего. Как программно быстрее удалить?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов www.integro.ru -> Вопросы разработчиков Часовой пояс: GMT + 5
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете добавлять приложения в этом форуме
Вы можете скачивать файлы в этом форуме


© phpBB Group
Русская поддержка phpBB