Медленное чтение данных из прилинкованной таблицы (MS Dynamics NAV)


: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/users/d/dm9/domains/mokshin.su/includes/unicode.inc on line 311.

Интересное наблюдение. Обнаружено на версии 2009, на других не проверялось.

Обнаружилось медленное (ооочень медленное) чтение данных из прилинкованной таблицы, которая ссылается на таблицу на удаленном прилинкованном SQL сервере.

При этом, если смотреть по времени обращения в цикле по записям, то картина такая:

1. Первая запись считывается быстро (миллисекунды)
2. Чтение следующих - быстрое (возможно, они уже считаны и находятся в кэше/буффере - но здесь это не суть)
3. 3-я запись считывается долго (секунды!)
4. Следующие 4 - быстро
5. 8-я - долго (секунды!)
6. Следующие 19 - быстро
7. 28-я - долго (секунды!)
- большее количество строк не проверялось

Удалось "победить" заменой первого оператора поиска FINDFIRST на FINDSET - чтения "всех" строк в цикле происходят быстро (миллисекунды), но есть одно НО:
- FINDSET практически всегда лучше для использование в цикле, чем FINDFIRST, т.к. FINDSET считывает сразу порцию записей - порция определяется настройках в свойстве БД (Advanced, Caching / Record Set)
- если в настройках стоит 50, то выполняется запрос типа SELECT TOP 51 .....
- и если в цикле строк больше чем в настройке, то потом начинается такая же вышеописанная картинка - после обработки, в данном примере, 51-й записи - тормоза на следующих: 3-й, 8-й и т.п.

Всё дело в том, что, как я понимаю, после того как NAV обработал все считанные записи, он берет следующие, но запрос при этом конструируется на значениях первичного ключа - что-то типа:
SELECT .... FROM .... WHERE ..... AND ID > (@LastReadID)
- где ID - это первичный ключ, а условно @LastReadID - ID в последней обработанной записи в цикле
Ну и если первичный ключ сложный (из нескольких полей), то можно представить какая там будет комбинация...
SQL сервер может в этом случае не особо оптимально делать выборку (т.к. есть еще и дополнительные условия по отбору записей, конечно), особенно если нет адекватных индексов.

Почему 3-я, 8-я, 28-я? Не знаю :-) Не вникал. Какая-то внутренняя логика NAV'а.

Ссылки по теме:
Difference between Find('-') and FindFirst
Работа с переменными типа Record в Navision
Работа с Record. Часть четвертая, практическая


Side effects of Renacidin, Finasteride cost

[url=http://alopeciawiki.unblog.fr/2019/02/05/buy-finasteride-3/]Buy Finasteride[/url] price. Mail Order [url=http://alopeciahq.wikidot.com/contact]Finasteride 5 Mg[/url]. What side effects can women have from taking Fincar (Finasteride)? Best online site for Propecia reviews. How to deal with Propecia (Finasteride) side effects? [url=http://alopeciawiki.unblog.fr/2019/02/05/buy-fincar-2/]Fincar[/url] side effects for women. Read reviews on online media sites for [url=https://sat386.wixsite.com/mysite/blog/medication-nitrofurantoin]Nitrofurantoin[/url] without prescription. Order Propecia tablets. Propecia (Finasteride) drug coupon and drug side effects. Alcohol and Propecia safe? Propecia tablets coupon. Truth about Propecia side effects? Best company to buy [url=http://furadantin.unblog.fr/2019/02/03/furadantin-nitrofurantoin-100mg/]Furadantin[/url] online reviews. [url=http://alopeciawiki.unblog.fr/2019/02/05/propecia-5mg/]Propecia 5mg[/url] generic. Real american reviews for [url=http://alopeciawiki.unblog.fr/2019/02/05/propecia-5mg/]Propecia 5mg[/url] purchased from Canada. Finpecia (Finasteride) 1 mg - canada pharmacy. [url=http://alopeciahq.wikidot.com/about]Buy Proscar 5 Mg[/url]. Cheap Propecia (Finasteride) 1 mg. Generic drug for Finpecia (Finasteride). [url=http://pharmaciesergent.com/anti/information-on-the-tablets-labetalol]Information on the tablets Labetalol[/url]
Order Diltiazem Diltiazem Hcl 60mg 90mg [url=http://pharmaciesergent.com/anti/olmesartan-interaction-with-alcohol]Olmesartan interaction with alcohol[/url]
Verampil generic [url=http://pharmaciesergent.com/anti/inderal-propranolol-40mg-80mg-coupon]Inderal Propranolol 40mg 80mg coupon[/url]

https://forum.cryptorescue.org/viewthread.php?tid=1454396#pid1466452
http://www.test-stage.com/pc419/showthread.php?tid=594660&pid=627059#pid...
http://irdaneshyar.com/forums/topic/can-i-drink-alcohol-with-renacidin-p...
http://www.strengthandflexibility.com/forum/viewtopic.php?pid=178849#p17...
https://www.coinssouq.com/forum/showthread.php?287703-Can-I-order-online...

Order Renacidin (Propecia), Finpecia (Finasteride) online

Propecia 1mg - generic. [url=http://alopeciawiki.unblog.fr/2019/02/05/cost-of-finasteride/]Cost of Finasteride[/url]. Buy Proscar 5mg. How to order Finasteride. Proscar medication coupon and interaction with alcohol. Can i drink alcohol and take Finasteride, is mixing Renacidin (Propecia) and alcohol bad? Propecia online store reviews. How many men suffer side effects from Propecia? Reviews for safe for men generic [url=http://alopeciawiki.unblog.fr/2019/02/05/cost-of-finasteride/]Finasteride[/url]. [url=https://sat386.wixsite.com/mysite/blog/nitrofurantoin-100mg-medical-uses]Nitrofurantoin 100mg[/url] pills. Best place buy [url=http://alopeciahq.wikidot.com/contact]Proscar 5 Mg[/url] online reviews. [url=http://furadantin.unblog.fr/2019/02/03/generic-for-nitrofurantoin-100mg/]Nitrofurantoin[/url] side effects. Medication [url=http://furadantin.unblog.fr/2019/02/03/nitrofurantoin-100mg-generic/]Nitrofurantoin[/url]. Low dose Finasteride side effects|? Best online pharmacy for generic Propecia reviews. When do side effects of Propecia start? [url=http://furadantin.unblog.fr/2019/02/03/nitrofurantoin-100mg-capsules-cost/]Nitrofurantoin[/url] review. Health & beauty generic [url=https://furadantin-nitrofurantoin-97.webself.net/nitrofurantoin-100mg-capsules-cost]Nitrofurantoin 100mg[/url] reviews. Order Fincar (Finasteride) generic. [url=http://pharmaciesergent.com/anti/inderal-propranolol-40mg-80mg-coupon]Inderal Propranolol 40mg 80mg coupon[/url]
Order Diltiazem Diltiazem Hcl 30mg 60mg [url=http://pharmaciesergent.com/anti/trandate-labetalol-100mg-capsules-cost]Trandate Labetalol 100mg capsules cost[/url]
Calan generic [url=http://pharmaciesergent.com/anti/hytrin-terazosin-hydrochloride-1mg-2mg-tablets-generic]Hytrin Terazosin hydrochloride 1mg 2mg tablets generic[/url]

http://adslife.ru/showthread.php?p=160137#post160137
http://chinonusa.com/forum/viewtopic.php?f=6&t=325272
http://www.glitchforums.com/showthread.php?tid=8758&pid=392063#pid392063
http://realtimecheats.com/forum/showthread.php?tid=81760&pid=83408#pid83...
http://prospectiva.eu/blog/181?url=http%3A%2F%2Falopeciawiki.over-blog.c...

Нравится