с6.3 ABC Временные файлы
Модератор: Дед Пахом
					Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
	При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
с6.3 ABC Временные файлы
Промежуточные таблицы вывожу  в  tps  файлы  ( записей  30000  ) -  Щас борюсь за скорость расчетов - лучше в очередь загонять такие записи ?   Или есть ограничения по кол-ву записей ?
			
			
									
						с6.3 ABC Временные файлы
Можно для начала не портить алгоритм, а в tps использовать монопольный режим записи, команду Stream или, возможно, Logout-Commit ( скажем, делать транзакцию на 2-3 тысячи записей). Может быть, и этого хватит?  Да, ещё временный файл лучше у себя на компе держать, а не на сервере. Как ни странно,  в несколько раз ускориться можно. 
И да, конечно, 30000 записей для очереди - пустяк. А ещё есть Inmemory драйвер...
			
			
									
						И да, конечно, 30000 записей для очереди - пустяк. А ещё есть Inmemory драйвер...
с6.3 ABC Временные файлы
Понял.  И в догонку работаю с  ms sql  хочу понять  какой оператор  быстрее в кларе-  get ( по ключу ) или select  через  prop  ?
			
			
									
						с6.3 ABC Временные файлы
Дык, сервер в любом случае выполнит Select. Причём в случае Get кларионовский ключ будет использоваться для формирования Select, а на самом сервере этого ключа может не быть.  Get по ключу дёрнет все поля, а через Prop можно и выбрать...
			
			
									
						с6.3 ABC Временные файлы
Принято. О другом.  У  меня все работают с программой через удаленные раб. столы на серваке.  Если программу поместить у клиента - то расчеты с sql  таблицами ( которые на серваке )  почему-то - занимают больше времени чем через RDP
			
			
									
						с6.3 ABC Временные файлы
И тут понятно. При выполнении расчётов программы комп клиента может быть  тормознее сервера, а запросы и данные для расчётов перегоняются по сетке от сервера клиенту.
			
			
									
						с6.3 ABC Временные файлы
Если запрос написан грамотно, то через PROP однозначно будет быстрее, причем, возможно, значительно. Запусти Profiler и увидишь разницу в выполнении, можешь замерить время выполнения в Клаше
			
			
									
						- 
				kreator
 - ✯ Ветеран ✯
 - Сообщения: 5235
 - Зарегистрирован: 28 Май 2009, 15:54
 - Откуда: Москва
 - Благодарил (а): 11 раз
 - Поблагодарили: 26 раз
 
с6.3 ABC Временные файлы
Это скорее неправда. Если канал слабый, то да, естественно, rdp быстрее. А если, скажем, это локальная сеть, то разницы нет. Более того, при работе с SQL рекомендуется минимизировать трафик. Например, загонять все подзапросы в один огромный запрос. Я соглашусь, что неоптимизированный броуз будет заметно медленнее при работе без rdp. Но, повторюсь, это при слабом канале.talgat55 писал(а): 20 Июль 2017, 16:37 Принято. О другом. У меня все работают с программой через удаленные раб. столы на серваке. Если программу поместить у клиента - то расчеты с sql таблицами ( которые на серваке ) почему-то - занимают больше времени чем через RDP
We are hard at work… for you.   
			
						- finsoftrz
 - ✯ Ветеран ✯
 - Сообщения: 5567
 - Зарегистрирован: 06 Ноябрь 2014, 12:48
 - Благодарил (а): 18 раз
 - Поблагодарили: 78 раз
 
с6.3 ABC Временные файлы
В очередь значительно быстрее. Я давным давно экспериментировал, прирост производительности формирования отчетов весьма приличный, даже если запись в tps производить одной порцией через logout/commit. Поэтому изначально отказался от временных tps. Заодно не надо лишних структур прописывать в словаре.talgat55 писал(а): 20 Июль 2017, 15:19Промежуточные таблицы вывожу в tps файлы ( записей 30000 ) - Щас борюсь за скорость расчетов - лучше в очередь загонять такие записи ? Или есть ограничения по кол-ву записей ?
C6/C12, ШВС, tps/btrieve.
			
						- finsoftrz
 - ✯ Ветеран ✯
 - Сообщения: 5567
 - Зарегистрирован: 06 Ноябрь 2014, 12:48
 - Благодарил (а): 18 раз
 - Поблагодарили: 78 раз
 
с6.3 ABC Временные файлы
Тут не надо ничего придумывать. Попробуйте поработать через интернет в обоих вариантах и увидите разницу.kreator писал(а): 20 Июль 2017, 20:56Это скорее неправда. Если канал слабый, то да, естественно, rdp быстрее. А если, скажем, это локальная сеть, то разницы нет. Более того, при работе с SQL рекомендуется минимизировать трафик. Например, загонять все подзапросы в один огромный запрос. Я соглашусь, что неоптимизированный броуз будет заметно медленнее при работе без rdp. Но, повторюсь, это при слабом канале.talgat55 писал(а): 20 Июль 2017, 16:37 Принято. О другом. У меня все работают с программой через удаленные раб. столы на серваке. Если программу поместить у клиента - то расчеты с sql таблицами ( которые на серваке ) почему-то - занимают больше времени чем через RDP
C6/C12, ШВС, tps/btrieve.
			
						- finsoftrz
 - ✯ Ветеран ✯
 - Сообщения: 5567
 - Зарегистрирован: 06 Ноябрь 2014, 12:48
 - Благодарил (а): 18 раз
 - Поблагодарили: 78 раз
 
с6.3 ABC Временные файлы
Сорри, невнимательно прочитал. На локальной сетке все то же самое, но может быть не так заметно на глаз. Огромный запрос улучшает производительность. Но написание , отладка и сопровождение таких запросов весьма трудоемко.
			
			
									
						C6/C12, ШВС, tps/btrieve.
			
						с6.3 ABC Временные файлы
Да запрос-то по сути один - select  посещений  в поликлинике  всех за диапазон дат-  результат во временный sql файл -потом его Loop- ом прохожу
			
			
									
						- 
				kreator
 - ✯ Ветеран ✯
 - Сообщения: 5235
 - Зарегистрирован: 28 Май 2009, 15:54
 - Откуда: Москва
 - Благодарил (а): 11 раз
 - Поблагодарили: 26 раз
 
с6.3 ABC Временные файлы
У Вас локальная сеть или через интернет и т.д.?talgat55 писал(а): 21 Июль 2017, 11:01 Да запрос-то по сути один - select посещений в поликлинике всех за диапазон дат- результат во временный sql файл -потом его Loop- ом прохожу
We are hard at work… for you.   
			
						с6.3 ABC Временные файлы
А в SQL-базе есть ключик по датам? А то в Кларионовской программе есть, а в SQL-отнюдь, вот и лопатит всю базу...
			
			
									
						