Тестирање упита апликације (извод из "Migration Guide To Firebird 3")
Ово је извод из књиге „Migration Guide To Firebird 3“, аутора Карлоса Кантуа.
Промена са једне Firebird верзије на другу може проузроковати проблеме са постојећим упитима, од лоших перформанси до потпуног отказа када упити користе нове резервисане речи или нетачан SQL који је раније био прихваћен.
Апликација често садржи стотине упита, од прегледа информација на екрану до креирања извештаја, уноса података и валидације. Могу постојати и спољни скриптови и генератори упита који генеришу SQL упите у лету, тако да није могуће проверити све комбинације SQL упита чак ни темељним прегледом изворног кода апликације.
HQbird FBScanner компаније IBSurgeon је алат који вам може помоћи да проверите да ли постојеће апликације раде са Firebird 3 и да откријете да ли постоје грешке или спорост у SQL упитима апликација које се мигрирају. FBScanner је део пакета HQbird Standard, скупа алата за анализу који прате и оптимизују Firebird сервере. Омогућава вам да евидентирате упите на вашој тренутној верзији Firebird-а и тестирате их на новом Firebird серверу.
FBScanner ради као посредник између клијената и сервера, евидентирајући сву комуникацију: конекције, трансакције, текстове SQL изјава, број преузимања, SQL планове, грешке и време припреме и извршавања упита.
Можете инсталирати FBScanner док користите тренутну верзију Firebird-а; конфигуришите га да прати комуникацију и чува упите у бази података за евиденцију. Најпопуларнија конфигурација је да инсталирате FBScanner на исти сервер, на порту 3050, и промените Firebird порт на другу вредност (на пример, 3053): у том случају постојеће Firebird апликације ће наставити да раде са базом(ама) на серверу без икаквих промена у њиховој конекционој стринги:

Такође, могуће је поставити FBScanner на трећи рачунар и усмерити само неколико клијената кроз FBScanner како би се забележила само њихова комуникација.
Након неколико дана праћења, база података за евиденцију садржи велики број упита који се користе у вашим апликацијама. Идеално би било да покрива сву SQL активност у бази, са детаљима о временима и извршавању:
FBScanner вам омогућава да извршите упите које сте евидентирали. Користећи базу за евиденцију, можете поставити тест Firebird 3 сервер, вратити оригиналну базу на њега и користити FBScanner Log Analyzer за покретање евидентираних упита.
FBScanner приказује резултат у табели, укључујући информације о перформансама, тако да можете упоредити тренутно време извршавања са оним на старом серверу, као и упоредити стари PLAN са новим PLAN-ом.
Информације у табели могу се извести у Excel табелу.
Када упоређујете време извршавања упита, имајте на уму да спољни фактори утичу на резултат. Једна ствар коју треба узети у обзир јесте да ли су кеш меморије оперативног система или Firebird-а „хладне“ или „вруће“. Очигледно, упити који се извршавају када је већина информација већ кеширана су бржи од оних који преузимају податке са диска.
Пуну верзију књиге „Migration Guide To Firebird 3“ можете купити овде.
HQbird Standard (који садржи FBScanner) може се купити овде. Нудимо 10% попуста за HQbird Standard онима који су купили „Migration Guide To Firebird 3“ - молимо вас да нас контактирате да бисте добили код за попуст.
IBSurgeon такође нуди свеобухватну „Migration Service for Firebird“ - можемо помоћи у миграцији база података са сложеним ускладиштеним процедурама, упитима и другом логиком, са ранијих Firebird верзија (1.0, 2.0, 2.1, 2.5) на модерне (2.5, 3.0, или чак 4.0).