| Предыдущая тема :: Следующая тема   | 
	
	
	
		| Автор | 
		Сообщение | 
	
	
		nawakster
 
 
  Зарегистрирован: 17.06.2008 Сообщения: 59
 
  | 
		
			
				 Добавлено: Вс 28 Июл 2013 03:36    Заголовок сообщения: оптимизация удаления выборки объектов | 
				     | 
			 
			
				
  | 
			 
			
				Маюсь с импортом КПТ росреестра.
 
inm + c# dll
 
 
Создание участков быстрое, выборка старых участков по семантическим данным относительно быстро.
 
А вот удаление даже небольшого количества объектов заставляет программу конкретно задуматься.
 
 
Думал уже удалять напрямую из базы, но не могу разобраться со структурой.
 
 
Как можно решить проблему?) | 
			 
		  | 
	
	
		| Вернуться к началу | 
		 | 
	
	
		  | 
	
	
		APopov
 
 
  Зарегистрирован: 19.06.2006 Сообщения: 347 Откуда: Самара
  | 
		
			
				 Добавлено: Пн 29 Июл 2013 18:50    Заголовок сообщения:  | 
				     | 
			 
			
				
  | 
			 
			
				Конкурент  
 
У нас та же картина  с удалением  - медленно удаляет.
 
 
Удалять через базу точно не советую: сервер данных об этом не узнает, и заставить его перечитать объекты из базы нельзя, да и не нужно - вы получите еще большие тормоза.
 
Короче, действовать  в обход апи ингео себе дороже. _________________ ОАО "Самара-Информспутник",
 
   инженер-программист Попов Артем | 
			 
		  | 
	
	
		| Вернуться к началу | 
		 | 
	
	
		  | 
	
	
		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. Насколь я понимаю удалить надо только снятые с учета ЗУ - их не так много, остальные можно просто обновить - это много быстрее.
 
 
ЗЫ. мой модуль ничего не удаляет и не обновляет - никто не просил и самому  не нужно было. В ингео очистка какой то территории или по номеру квартала делается в два щелчка мыши. | 
			 
		  | 
	
	
		| Вернуться к началу | 
		 | 
	
	
		  | 
	
	
		BarakudaX777
 
  
  Зарегистрирован: 07.07.2014 Сообщения: 26 Откуда: ООО "ГЕОГРАД" г. Орск
  | 
		
			
				 Добавлено: Пн 01 Сен 2014 11:37    Заголовок сообщения:  | 
				     | 
			 
			
				
  | 
			 
			
				Прошу за прямой вопрос но как удалить все объекты с определенной карты (слоя, стиля) наиболее быстро?
 
Хотелось бы сделать очистку слоя от объектов для подгрузки данных с росреестра. В ингео удаление всех объектов слоя проходит почти пол часа. Я так понимаю из за перерисовки и прочего. Как программно быстрее удалить? | 
			 
		  | 
	
	
		| Вернуться к началу | 
		 | 
	
	
		  | 
	
	
		 |