Aplicația rulează lent? Timpul de a lua precizie

Autor: Lewis Jackson
Data Creației: 12 Mai 2021
Data Actualizării: 20 Iunie 2024
Anonim
Speed Up or Slow Down an Automatic Wind Watch
Video: Speed Up or Slow Down an Automatic Wind Watch

La pachet: Gazda Rebecca Jozwiak discută problemele de soluționare a problemelor și eficiența bazelor de date cu analiștii Eric Kavanagh și Dez Blanchfield, precum și Bill Ellis de la IDERA.



În prezent nu sunteți autentificat. Vă rugăm să vă conectați sau să vă înregistrați pentru a vedea videoclipul.

Rebecca Jozwiak: Doamnelor și domnilor, salut și bine ați venit la Hot Technologies din 2016. Subiectul de astăzi, „Aplicația rulează încet? Timpul pentru a fi precis”. Și nu știm cu toții prea bine problemele care se pot întâmpla atunci când lucrurile se desfășoară lent? Aceasta este Rebecca Jozwiak, o completez pe Eric, care face un rol nou aici, astăzi. Da, anul acesta este fierbinte și, știi, când vine vorba de tehnologie, așa cum am spus, singurul lucru pe care nu-l dorești într-adevăr este să funcționezi lent, orice parte a sistemului tău. Și doar să folosiți un exemplu de consum, vreau să spun că dacă aveți un restaurant, nu contează cât de grozav este mâncarea, dacă serviciul este lent, probabil că nu veți ajunge să reveniți. Acum, este ușor, într-un restaurant, să-ți dai seama de ce ceva se desfășoară încet. Poate că bucătăria are personal scurt sau s-a produs o defecțiune cu unele echipamente, sau poate că personalul de serviciu este puțin leneș și este ușor de identificat și de remediat.


Dar când te gândești la un centru de date, este o poveste complet diferită. Ar putea fi o problemă de rețea, o interogare necorespunzătoare care să blocheze lucrurile, performanța aplicației sau un cablu defect poate chiar cauza anumite probleme. Și, în cel mai bun caz, soluționarea problemelor cu acest tip de complexitate poate fi dificilă. Cam asta ar fi să vorbim astăzi. Și noi, așa cum am spus, Eric Kavanagh a intrat în analist astăzi. Am obținut Dez Blanchfield, omul nostru de date și îl avem pe Bill Ellis de la IDERA, care va vorbi despre soluția companiilor sale care ajută la gestionarea performanței aplicațiilor. Și cu asta, voi trece mingea lui Eric. Eric, podeaua ta este.

Eric Kavanagh: Bine, sună bine, oameni buni. Și aceasta a fost o mare analogie, de fapt, pentru că ați vorbit despre dificultățile sau ușurința cu care se poate rezolva rezolvarea problemelor și vă descurcați corect. Problemele de performanță rezultă întotdeauna dintr-un fel de problemă în rețea. Adică, ar putea fi la fel de simplu ca hardware-ul vechi, de exemplu, dar linia de jos este orice situație de genul care necesită depanare. Despre asta voi vorbi azi. Și să mergem mai departe și să sară pe diapozitive aici.


Aici vine probleme. Depanarea - distracția pentru persoanele care le plac, asta este aspectul mișto. Dacă găsiți pe cineva căruia îi place să rezolve probleme, țineți-vă de persoana respectivă, obțineți-le câteva instrumente pentru a duce la bun sfârșit treaba, pentru că chestii cu adevărat bune dacă puteți găsi pe cineva care poate ajunge în fundul a ceva și se termină. Însă, linia de bază este că soluționarea problemelor este problematică și a fost întotdeauna și așa va fi întotdeauna, iar dacă începeți să vorbiți despre depanare, la ce veți obține cu adevărat este analiza cauzelor principale. Care este cauza problemei?

Ei bine, dacă stai doar și te gândești o secundă chiar și la zilele principale, au existat tot felul de probleme. Și atunci trebuia să ai oameni care știau cu adevărat lucrurile lor pentru că nu existau chiar instrumente bune pentru rezolvarea problemelor, așa că trebuia să știi promptul de comandă și să vorbești bine despre asta într-o secundă. Și am uitat, de fapt, să pun unul dintre slide-urile mele preferate, îl caut în timp ce am fost în emisiunea de azi, poate în timpul prezentării Dezs. Dar am vrut să arăt, pentru oricine nu l-a văzut, unul dintre cele mai amuzante emisiuni TV britanice, numit „The Crowd IT”. Și în ceea ce privește rezolvarea problemelor, irlandezul, care este unul dintre cei doi IT din ansamblu. compania, spune întotdeauna același lucru de fiecare dată când începe un apel: „Ați încercat să-l opriți și să îl porniți din nou?” Deci, încercați să-l opriți și să îl porniți din nou. Ai fi uimit cât de des poate acel lucru simplu poate rezolva unele probleme.

Aceia dintre voi care ați făcut rezolvarea problemelor acasă, poate, împreună cu părinții sau prietenii, probabil nu cu copiii, deoarece tind să știe ce să facă, să o oprească și să o pornească din nou. Dar, indiferent că depanarea nu este ușoară, nu va fi niciodată ușor, dar aveam de gând să vorbim astăzi despre unele dintre lucrurile pe care le puteți face pentru a fi mai ușor. Așadar, promptul de comandă - da, într-adevăr, am suficient de mult să-mi amintesc primele zile ale calculării când tot ce ai avut a fost promptul de comandă pentru a face DIR, Enter. Asta ar vedea asta, directorul fișierelor și se va simți pozitiv că de fapt a primit unele comenzi, nu? Dez, desigur, omul nostru de știință de date, știe să folosească promptul de comandă. Și dacă puteți utiliza promptul de comandă, acestea sunt lucruri minunate, deoarece majoritatea dintre noi simpli muritori folosesc un fel de GUI, o interfață grafică de utilizator, dar există întotdeauna ceva, există întotdeauna unele deconectări între GUI și linia de comandă de dedesubt. Și doar pentru a vă oferi un exemplu la întâmplare, dacă doriți să știți cât de multe coduri unele dintre programele de bază acolo se coace în documente în aceste zile, accesați cea mai recentă versiune a Microsoft Word, tastați „salut lume” și apoi „salvați ca HTML. ”Și apoi deschideți acel document rezultat într-un editor și probabil veți vedea pagini și pagini de etichete. Asta se numește cod bloat, iar cod bloat nu este foarte bun pentru rezolvarea problemelor, ci doar pentru a fi contondent.

Desigur, client-server a venit și acestea au fost lucruri minunate. Și într-un fel s-au întors într-o direcție, dar gândiți-vă doar la complexitatea care a venit cu situația, acum unde este problema, este pe client, este pe server, este rețea? Unde este? Aceste site-uri care se gândesc doar la viruși și când un virus poate intra într-unul dintr-o rețea, ce se poate întâmpla? Poate merge oriunde. Încălcările de date sunt nebunești în aceste zile. Ele provoacă probleme de performanță. Am avut hackeri ruși pe care îi putem identifica după adresa IP. Erau destul de siguri că sunt rusi sau sunt foarte apropiați sau sunt ucraineni foarte inteligenți sau polonezi sau chiar americani, folosind procuri. Dar am făcut ca hackerii să intre în micul nostru vechi site, Inside Analysis, de-a lungul anilor și să provoace tot felul de probleme. Lucrurile nu încetează să funcționeze, nu mai poți face lucrurile. Lucrurile obișnuite nu funcționează. De unde știți? De unde știi ce este? La fel ca un alt exemplu aici, este un mediu foarte complex, foarte dificil de a intra în buruieni și de a înțelege cu adevărat cum se desfășoară lucrurile și funcționează pentru noi, mai ales dacă obțineți o mulțime de plug-in-uri. Lucrurile pot înnebuni destul de repede. Am un fel de a merge înaintea mea.

Am aruncat aici, ferește-te mereu de upgrade. Upgrade-urile sperie întotdeauna lumina din ziua mea. Cu siguranță sisteme de operare. Îmi amintesc de zilele în care Microsoft ar sugera de fapt că, da, ai putea să îți upgradezi sistemul de operare de la această versiune la versiunea respectivă. Ei bine, am încercat de câteva ori și asta nu a funcționat niciodată. Amintiți-vă doar că, cu cât un mediu este mai mare și mai complex, cu atât situația va deveni mai neîngrijită. Și apoi există virtualizare. Gândiți-vă ce a făcut VMware la IT. A revoluționat IT, dar a creat și acest strat de abstractizări. Dacă ați obținut un strat de strat la acest nivel de fundamentare, acesta este un joc cu bile cu totul nou, asta este o nouă bilă de ceară și trebuie să evaluați cu adevărat ceea ce faceți și toate instrumentele vechi au trebuit să se schimbe. Și acum este desigur norul, nu? Pentru client, norul este excelent, pentru că este foarte simplu, interfața de utilizator este destul de simplă, dar bineînțeles că nu ai foarte mult control asupra norului. Dar pentru oamenii care sunt în spatele scenei, există o mulțime de lucruri pe care trebuie să le cunoască și să le înțeleagă în aceste zile. Mediul a devenit mult, mult mai complex. Și cu siguranță cu e-commerce și vă gândiți la toți banii care tranzacționează mâinile în aceste zile. De aceea nu mă veți găsi în favoarea unei societăți fără numerar în curând. Concluzia este că situația devine din ce în ce mai problematică.

Și menținerea performanței optime va implica întotdeauna un element de depanare. Nu-mi pasă ce vă spune cineva, nu există un instrument perfect, nu există un glonț de argint și nu va fi niciodată pentru că - într-o altă perspectivă interesantă aici - încă învățam să vorbim de siliciu. Încă am învățat să înțelegem cum funcționează chiar și rețelele la nivelul năprasnic. Dacă te uiți la software-ul de gestionare a sistemelor, în zilele noastre este destul de bine. Dar totuși, te uiți la linii care urcă și coboară și te uiți la reprezentări ale realității, va duce o persoană care știe ce urmează să se potrivească cu indicii pe care ai putea să-i privești instrumente optime pentru a putea înțelege ce funcționează și ceea ce nu este și o mulțime de încercare și eroare, doar pentru a fi contondent. Cu asta, o voi înmâna lui Dez Blanchfield și apoi voi auzi bine de Bill Ellis de la IDERA, care ne va pune în rușine cu cunoștințele sale. Cu asta, Dez, ia-o.

Dez Blanchfield: Hei, mulțumesc Eric. Mulțumesc. M-am dus frumos în mica mea continuare. Titlul meu, „Performance Art”, cred că este extrem de potrivit în ceea ce discută astăzi, pentru că, în multe feluri, când ne gândim la arta performanței, ne gândim la dans și muzică și la alte lucruri creative. Și sincer, mai des, dacă s-ar rezolva probleme și în medii IT și sisteme de afaceri la scară foarte mare, există într-adevăr un element de artă și de multe ori art negru, deoarece situația din experiența mea în aproximativ 25 de ani este că aplicația modernă stivele, cresc foarte rapid complexitatea într-un ritm pe care nu l-am mai văzut niciodată. Și s-au străduit sincer să țină pasul și există organizații precum Uber, de exemplu, și orice altceva, precum și echipa de dezvoltare Pokémon Go, vreau să spun că se confruntă cu creștere și complexitate și creșterea complexității la rate care sunt doar astronomice. Nu există chiar cărți scrise despre asta pentru că nu am conceput acest nivel de creștere. Părerea mea este că definiția de bază a unei stive de aplicații s-a transformat exponențial și voi explica de ce cred că este cazul, și apoi va conduce la provocarea la îndemână, că prietenii mei buni de la IDERA par să aibă o soluție de rezolvat.

Foarte pe scurt, toate le știm, dar doar să le recapitulăm, știți, în primele zile am avut ceea ce numesc eu, arhitectură de aplicații, versiunea 1.0. A fost un computer server, în acest caz, mainframe-ul cu o grămadă de terminale atașate, a fost relativ ușor să diagnosticați probleme dacă nu vedeați lucrurile pe terminal - puteți urmări cablul dintre terminal și apoi computerul server și a fost fie un cablu zero, fie un conector sau o problemă dacă nu are legătură cu terminalul și vedeți lucruri pe ecran, a fost destul de ușor să vă dați seama că lucrurile care au provocat problemele se găseau în mașina în sine. Și puteți diagnostica lent încotro se află în stiva care se afla de la hardware până la stratul de software și interfața de utilizator. În ceea ce numesc versiunea 1.1, am făcut-o un pic mai complexă. Punem dispozitive la mijloc, astfel încât să putem pune mai multe terminale pe loc. Și erau un fel de dispozitiv de comunicații și deseori erau mux-uri sau multiplexori și urmau să treacă peste o linie dedicată sau o linie dial-up și deci aveai un mainframe într-o locație îndepărtată - poate fi interstatal sau internațional - și un dispozitiv conectate printr-o legătură SMA sau un fel de conectivitate WAN și acele terminale funcționează în același mod. Însă aveai un pic mai multă complexitate, deoarece trebuia să îți dai seama dacă problema era între terminale și dispozitivul de comutare sau dispozitivul de comutare și mainframe. Dar stiva a rămas relativ similară în cadrul mainframe-ului.

Versiunea 1.2, un pic mai complexă din nou, deoarece acum am adăugat mai multe dispozitive, am adăugat mesaje și alte lucruri și am grupat aceste lucruri și mă gândesc la un procesor front-end care să se ocupe de toate problemele dispozitivelor la nivel local. și terminale și așa mai departe cu mainframe-ul care se află la capătul îndepărtat. Un pic mai mult de complexitate. Dar, din nou, tema consistentă a mainframe-ului au fost aplicațiile care rulau la nivel local, astfel încât rezolvarea problemelor a rămas destul de similară în cadrul stivei de aplicații. Și atunci am avut oameni cu abilități care rezolvau problemele cu terminalele și terminalele și controlerele de cluster. Dar apoi am complicat lucrurile și am construit rețele și, dintr-o dată, același fel de arhitectură introduce un strat de rețea. Brusc, am avut un comutator de rețea, iar stațiile de lucru au fost mult mai complexe. Și această versiune de arhitectură aveam adesea aplicații grafice de interfață de utilizator la stația de lucru. Nu numai că am avut un server care rulează stiva de aplicații, dar am avut și un alt teanc de aplicații care rulează local și, desigur, același model de bază de dispozitive care se conectează la un server. Apoi am făcut un salt cuantic către modelul mai recent al ceea ce numesc 2.1, care este locul în care am luat acea stivă de aplicații și am făcut-o mult mai complexă, mult mai greu de diagnosticat. Și am introdus mult mai multe dispozitive la front-end, pe browsere web și PC-uri și dispozitive mobile, etc. Și aici stiva de aplicații a început apoi să se scufunde puțin mai adânc în integrare ca sistem de operare și ipervizor.

Această imagine aici din partea dreaptă am obținut întreaga stivă, inclusiv infrastructura de rețea, serverele de stocare, mașinile virtuale, sistemul de operare și apoi tradiționalele trei niveluri ale aplicațiilor de bază de metale de bază, etc., în partea dreaptă din față. Diagnosticarea problemelor de aplicare și a performanței pe acest model au devenit mult mai dificile. Există atât de multe piese în mișcare, iar încercarea de a explora această grămadă a fost doar, știți, a devenit un coșmar și a trebuit să implicați seturi de competențe suplimentare și organizație pentru a face față. Nu mai era doar echipa ta de aplicații, dintr-o dată acum ai avut oameni de infrastructură, aveți specialiști în baze de date, lucrau pur și simplu pe baze de date și nimic altceva - spre deosebire de un programator de sisteme care știa în jurul bazelor de date. Acum avem un scenariu în care departamentele IT trebuie să se ocupe de o complexitate semnificativ mai largă a „ca serviciu” și acest lucru în care lumea tocmai a explodat și au devenit provocările noastre de rezolvare a problemelor, de la a fi un coșmar la doar ceva care este aproape intolerabil. în unele moduri.

Iar aceasta s-a produs pe măsură ce scara rezolvabilă, încercau să furnizeze servicii la. Versiunea 3 a ceea ce consider stiva de aplicații - a introdus acest lucru ca un model de serviciu, în care modelul tradițional din partea stângă, stiva IT a întreprinderii, unde totul trebuia gestionat la sfârșitul nostru în calitate de consumator și furnizor de servicii - din baza de date de securitate a aplicațiilor, sisteme de operare, stocare servicii de virtualizare, centre de date în rețea - a trebuit să le gestionăm pe toate, dar am avut acces la toate acestea, astfel încât să putem extinde capabilitățile și seturile noastre de abilități tehnice și am putea perfora drumul în jos prin stiva respectivă și am putea găsi lucruri. Dar, pe măsură ce serviciul de infrastructură și serviciul de platformă și modelul de servicii software au venit, dintr-o dată, accesul nostru la infrastructura de back-end, accesul nostru la platforme și la instrumentul de la care am furnizat serviciile, au fost cam retrase de la noi. Pe măsură ce am început să consumăm servicii de infrastructură, am avut la dispoziție doar primele patru piese din sistemul de operare, baza de date, stiva aplicațiilor de mediu de securitate și mai sus. Totul sub asta era magie neagră. Și devine și mai interesant atunci când treceți la serviciul platformei, deoarece de asemenea, gestionați doar stiva de aplicații.

Când ajungeți la software ca serviciu și un model tradițional al acestuia este serviciul de e-mail sau internet banking, tot ce aveți este accesul la un browser web, astfel încât să încercați să diagnosticați ce se află în spatele acestui lucru este intolerabil. Și am împărțit acest lucru în zone orare, în spații de timp sau zone de timp dacă doriți sau generații, în aceea de la stânga la dreapta, am plecat de la un fel de anii 2000 înainte și stiva tradițională unde am avut acces la întregul mediu și am putea explora asta. Dar în timp a devenit din ce în ce mai complex. Până la începutul anilor 2000 până la mijlocul anului 2000, până la sfârșitul anului 2000 până în zilele noastre actuale, unde am plecat de la servicii de infrastructură, servicii de platformă, servicii software, acum se referea în mod esențial la un serviciu de afaceri. Iar complexitatea a crescut dramatic. Există atât de multe piese în mișcare. Dar disponibilitatea competențelor devine din ce în ce mai grea și din ce în ce mai dificil să ne folosim. Găsirea persoanelor cu seturi de abilități potrivite, cu accesul corect la instrumentele potrivite pentru a intra și a vă cufunda în această stivă și a afla, unde este ceva care rulează lent. Este laptopul sau desktopul meu, este telefonul sau tableta mea, este conectivitatea mea peste 3 sau 4G, sau legătura mea dedicată cu ADSL sau ISDN ce ar fi? Sau chiar dial-up, deși acest lucru este din ce în ce mai puțin în aceste zile. Este sfârșitul serverului web, este ceva din interiorul serverului web? Este serverul de aplicații? Este ceva în jurul memoriei și al discului performanței procesorului și rețelei din serverul de aplicații? Baza de date funcționează acolo?

Și vă puteți imagina, trageți foarte repede această imagine a complexității care începe să se extindă ca o imagine de tip big bang, a acestei bule în continuă creștere, care încercau să ne învârtim și să avem abilitățile de a scufunda și cunoștințele și de unde să se disecă și să se desprindă. Și acum eram foarte mult în epoca în care, știi, ființele umane nu pot face față scării fizice, chiar dacă ai capabilitatea de a distrage mediul bazei de date și de a îndepărta acea bază de date și de a te afunda în detaliile din baza de date.Numărul de baze de date pe care trebuie să le gestionați acum crește rapid. Totul este acum alimentat de o bază de date. Foarte puține aplicații în aceste zile nu sunt alimentate de o bază de date. Și tipurile de baze de date sunt în creștere rapidă. Nu mai sunt doar bazele de date tradiționale SQL, uneori SQL, alteori non-SQL, alteori este o bază de date grafică, alteori este o bază de date de documente. Și există toate aceste tipuri diferite de funcții pe care le au aceste tipuri diferite de baze de date și, ca urmare, fiecare dintre ele are provocări diferite de performanță și criterii diferite de performanță. Înregistrarea bazelor de date și a bazelor de date cu documente efectuează foarte, foarte diferit și îndeplinesc o funcție diferită de o bază de date tradițională conformă cu ACID, ANSI 92-compatibilă cu ACSI. Și tipurile de lucruri pe care le-am depozitat acolo.

La un moment dat, în mintea mea, unde - și cred că Eric a făcut aluzie la acest lucru - că ființele umane se luptă să țină pasul cu complexitatea a ceea ce construiau și viteza cu care se construiau și acum se aflau în punctul în care singura cale pentru noi de a gestiona această infrastructură și singura cale de a monitoriza și de a aprofunda problemele cu care se confruntă sunt instrumentele și tipurile de instrumente potrivite. Și apoi invariabil, generația potrivită de instrumente. Instrumente care înțeleg de fapt infrastructura de back-end. Nu mai este OK doar să aruncați un monitor SQL sau un instrument de interogare SQL la ceva și să începeți să eliminați o interogare și să vedeți ce o face să funcționeze. Avem nevoie, de fapt, de un instrument care să înțeleagă formarea de interogări și modalitatea adecvată de formare a interogărilor și modalitățile potrivite pentru căutările de a vorbi cu infrastructura în partea din spate și cum sunt performanțele în timp ce fac acest lucru. Și să analizeze sincronizarea acelor interacțiuni și ordinea în care au loc.

Și aceasta este o provocare mult mai complexă și asta mă conduce la punctul meu de întrebare, și este că, pe măsură ce complexitatea stivelor de aplicații se dezvolta, instrumentele de performanță și instrumentele pe care le folosim pentru a le gestiona, trebuie neapărat să devină din ce în ce mai inteligent și mult mai capabil să privească mai multe lucruri. Dar, de asemenea, mult mai inteligent în ceea ce privește ceea ce rulează la back-end și ce pot descoperi despre asta și, eventual, chiar și un fel de analize care sunt efectuate peste asta pentru a înțelege că interacțiunile și performanța sunt livrate și de ce este mai lent sau mai rapid.

Și apoi, cu asta, voi trece la dragul nostru prieten de la IDERA, Bill Ellis, și să văd ce are de spus astăzi despre cum rezolvă această problemă. Bill, te-a dat.

Bill Ellis: În regulă. Numele meu este Bill Ellis și vă mulțumesc foarte mult. Aveam de gând să vorbesc despre că aplicația mea rulează încet, este timpul să obțin Precis. Vă rugăm să vedeți ce poate face Precise, un produs IDERA și cum vă poate ajuta. De multe ori aflați doar că acolo a fost o problemă de performanță, deoarece un utilizator final v-a sunat și asta este într-adevăr o mare problemă în sine. Din toată lumea din IT, nimeni nu știa până când sună telefonul. Acum, următoarea mare problemă este cum ajutăm acest individ, și nu este o problemă banală. Nu există o problemă pentru a lua acest lucru. Acest lucru este mai presus de acest diapozitiv, deasupra și dincolo de celelalte. Și vreau să vedeți dacă puteți obține ce este. Dar, așa cum am menționat, o aplicație necesită, se bazează pe o mulțime de tehnologii diferite, stiva de aplicații este înaltă și în creștere. Și multe persoane accesează o aplicație printr-un browser și, în mod surprinzător, există tot mai multe prelucrări care se întâmplă în browser cu scripturi etc. Și, desigur, aveți rețeaua, serverul web, codul logicii de afaceri și baza de date. Ce vreau să luați în considerare este faptul că fiecare tranzacție comercială semnificativă interacționează cu baza de date, indiferent dacă este raportată cartea de timp, căutarea stocurilor, o comandă de cumpărare, baza de date este actualizată. Și astfel, baza de date devine într-adevăr fundamentul performanței. Și, desigur, baza de date se poate porni sau se bazează pe stoc în aval. Fiecare dintre aceste tehnologii este strâns cuplată și poate vedea ce se întâmplă. Trebuie să știi ce se întâmplă pentru a putea măsura este esențial.

Acum, un lucru pe care îl găsim este că mulți dintre clienții noștri au un instrument și au un instrument pentru fiecare tehnologie, dar ceea ce nu au este con. Iar con este practic capacitatea de a conecta punctele între fiecare nivel din stiva de aplicații, iar acest lucru este de fapt relativ simplu. Am avut o limitare de douăsprezece niveluri, dar practic am schimbat-o, avem niveluri nelimitate și sprijinim medii mixte, astfel încât, practic, ne putem complica extrem de mult cu o soluție precisă.

Acum, la un nivel ridicat, acesta este modul în care rezolvăm problema și concentrarea acesteia pe tranzacție, tranzacția utilizatorului final de la clic pe disc, ne spune care dintre acestea rulează lent, care consumă resurse, dar cheia este aceasta - vă permitem să ridicați și să identificați utilizatorul locația lor și nu numai întregul timp al tranzacției, ci cât timp este petrecut la fiecare pas în parte. Timpul este moneda performanței și apare, de asemenea, unde se consumă resursele. Nu știm în prealabil unde va fi problema, așa că trebuie să avem metrici și analitice adecvate la fiecare dintre niveluri pentru a putea diagnostica care este problema, unde ar putea fi problema.

Acum, în prezentarea de astăzi pe care o voi concentra în acest domeniu, vreau să vă asigurați că, practic, oferim același nivel de vizibilitate la fiecare nivel din stiva de aplicații și aspectul crucial, aceasta ne va spune cine, ce, unde și apoi această parte, aceasta ne va spune de ce. Și este de fapt motivul pentru care este absolut esențial pentru rezolvarea problemelor, nu doar cunoașterea lor. Acum, celălalt lucru care a ieșit foarte clar în prezentare a fost acela că este imposibil să faci acest lucru. Ai nevoie de automatizare. Iar automatizarea înseamnă că aveți alertă, că aveți ceva care vă spune, cu speranță, în fața comunității utilizatorilor finali, că aveți tendință continuă, abatere construită de la alertarea tendințelor. Și atunci oferim și o linie în nisip, de fapt încălcați SLA. Acum oferiți o mulțime de informații diferite - nu toată lumea trebuie să consume bufetul, unii doresc doar să aibă o gustare ușoară, aceasta este salată și, prin urmare, oferim un portal putem încărca informații, are nevoie doar de un anumit utilizator sau o comunitate anume are nevoie de informații despre performanță. Aplicația rulează încet, timpul necesar pentru a obține precizie. Chiar urma să ne concentrăm pe patru lucruri. Una este locația, introducând utilizatorul final. Încă o dată, acel con care conectează punctele, iar a treia parte a cercetării arată că aproape 90 la sută probleme de aplicații se află în baza de date și deci este un fel de travestie pe care majoritatea soluțiilor de performanță v-ar putea spune o declarație SQL. Dar ei nu vă spun de ce această declarație SQL rulează lent.

Și deci, motivul pentru care este întotdeauna esențialul și Precise este excelent pentru a arăta de ce, pentru fiecare nivel și în special baza de date, și doar pentru a împărtăși un pic despre matricea noastră de asistență cu dvs., pe care o susținem SQL Server, Sybase, DB2 și / sau Bulk. Aspectul soluției este foarte asemănător, așa că dacă te uiți la mai multe aplicații, dar arhitecturi ușor diferite. Informațiile pe care le împărtășesc aici au aspectul și senzația, abordarea, este aceeași indiferent de tehnologiile care stau la baza utilizării. Precis este activat web. Intrăm, autentificăm Precis și, prin aceasta, intrăm și primul lucru la care am putea dori să analizăm este performanța în funcție de locație. Și astfel puteți vedea aici diferitele locații în care oamenii accesează de fapt execuțiile lor. Puteți vedea dacă cineva a abandonat o pagină înainte de a fi redată complet sau dacă există erori.

Acum, un lucru cu aceste aplicații, este rețeaua sau distanța față de serverul de aplicații face diferit. Este foarte ușor să văd aici că există un anumit nivel de rețea. Pot vedea când oamenii s-au ocupat și apoi un alt lucru interesant, am vorbit despre modul în care acestea sunt procesarea în cadrul browserului, ei observă de fapt că unele dintre diferitele tipuri de browser oferă un mediu mai bun pentru procesarea rapidă. Și deci știind dacă oamenii accesează Chrome sau IE, sau orice s-ar întâmpla, puteți afla foarte des că inversarea unui browser este de fapt superioară alteia. Acum, uneori aveți o vedere publică, nu controlați browserul, alteori aplicațiile sunt orientate spre interior, unde puteți recomanda utilizatorilor un tip de browser comunității utilizatorilor finali și, astfel, acestea sunt tipurile de vizibilitate profundă și analitice care sunt precise. capabil să ofere. Acum, ne uităm la o aplicație.

Nu sunt sigur dacă voi puteți vedea indicatorul meu, dar am vrut să vă descriu graficul de sus. Axa y indică un timp mediu de răspuns. Axa x este timpul pe parcursul unei zile. Și există de fapt un grafic de bare stivuit și acel grafic de bare stivuit, totalul vă arată care este performanța și apoi arată un nivel de timp petrecut în fiecare etapă individuală sau în fiecare nivel individual al aplicației. De la client, prin serverul web, verde este Java, acest loc folosea Tuxedo și jos în baza de date. Acum jumătatea inferioară a ecranului arată diferitele meniuri web accesate și apoi am asortat doar o mică săgeată verde orientată în jos. Este într-o ordine descrescătoare și se balonează până în partea de sus, meniul web începe să-l afișeze. Arătăm de fapt timpul de execuție, timpul de răspuns al fiecărei tehnologii individuale și apoi există de fapt un grafic de bare pentru fiecare din acele meniuri web și astfel vom începe să ne facem o idee despre ce se întâmplă. Acum amintiți-vă că am sortat toate acestea cu un apel final, dar cum pot găsi utilizatorul final? Vin aici, deschid un meniu, care îmi permite să filtrez pe un anumit utilizator, așa că l-am setat pe Alex Net, dau clic pe OK, apoi am fost concentrat doar pe activitatea de la Alex Net. Acum, ceea ce face acest lucru, este faptul că permite gestionarea IT și IT să răspundă direct la un utilizator final și în special că se uită la gestionarea conținutului care a avut șase execuții cu un timp de răspuns de puțin peste trei secunde. Ei bine, trei secunde este destul de bun, nu este groaznic, dar, poate, mai lent.

Ce pot face cu acest lucru, este să pot tăia și reda aceste informații în moduri diferite. Aș putea spune, bine, tranzacția este lentă pentru toată lumea? Este mai lent astăzi pentru Alex decât fusese ieri? Este lent pentru fiecare utilizator dintr-o anumită locație? Sau, ceea ce face este că îmi permite să fel de felii și zaruri și să îmi fac o idee despre ce se întâmplă, cât de universal este problema și foarte importantă pentru a putea identifica utilizatorul final, deoarece nu este vorba doar de software, infrastructura, de asemenea, despre modul în care utilizatorii finali exercită aplicația. De multe ori este posibil să aveți un angajat nou sau cineva cu o funcție nouă, și nu sunt familiarizați cu anumite ecrane SAP sau cu anumite panouri PeopleSoft și au nevoie de un pic de indicator, poate vor lăsa câmpurile goale sau le introduc în wildcards și forțează rezultate mari să fie returnat din baza de date. Însă având ID-ul de utilizator, îi puteți efectiv suna înainte să vă sune. Celălalt lucru pe care îl găsim este că, odată ce comunitatea de utilizatori este conștientă de faptul că IT-ul știe ce fac, de multe ori acestea se comportă mai bine și o mulțime de probleme, o mulțime de lucruri care au fost probleme, doar un fel de evaporă, pentru că oamenii se comportă, operează doar mai atent. Ei folosesc sistemul cu mai mare grijă.

Identificarea utilizatorului final este esențială. La final este esențial ca IT-ul să poată ajuta un anumit utilizator final. Acum, ceea ce s-a făcut aici, am plecat în fila „Flux”. Puteți vedea asta în colțul din stânga sus. Și ne-am concentrat asupra unei componente particulare a meniului web. Și pe partea dreaptă este o analiză a acelei tranzacții anume, deci în partea de sus este de fapt browserul și apoi View, doar pentru a vă familiariza cu un pic din pictogramele din GUI este pentru serverul web, deci putem vedea punctul atributului. Și atunci „J” este pentru Java și „T” este pentru Tuxedo și în mod natural „Q” este SQL. Ei bine, această valoare a numerarului identifică practic o declarație SQL particulară. Luați în considerare ce face acest lucru. Am identificat un utilizator la o tranzacție, la codul aplicației de bază, inclusiv instrucțiunile SQL individuale. Acum, când mă uit la acele declarații SQL individuale, pot vedea că din timpul total de răspuns, fiecare dintre ele este responsabilă de aproximativ șase la sută, iar când adaugă primele patru declarații SQL, au luat aproximativ un sfert din tranzacție. timp.

De multe ori, baza de date este cea mai ușor de manipulat. De obicei este cel mai ușor să obții o performanță ieftină, mult superioară. Acum trebuie să merg un pic mai adânc pentru a afla ce se întâmplă și ce, vreau ca exemplul să poată face este să dezvăluie de fapt instrucțiunea SQL individuală și știi că vă pot garanta aproape doar cu fiecare fotografie pe linie. a avut un fel de instrument de bază de date și ceea ce face instrumentul de bază de date, ci doar să privești o tehnologie în mod izolat, este că te uiți la, să te concentrezi asupra sănătății acelei tehnologii. Și de multe ori oamenii se uită la lista primilor zece. Acum, această declarație SQL este destul de rapidă, nu va fi în top zece listă, dar este instrucțiunea SQL pe care se bazează această tranzacție. Și deci ceea ce pot face înapoi la acest cuvânt, con, este acum pot aduce acest lucru în atenția privirii profunde, dar în conținutul instrucțiunii SQL individuale.

Acum, acea persoană poate deschide Precise în concordanța instrucțiunii SQL individuale, iar Precise surprinde planul de execuție real pe care îl folosește, timpul de execuție este chestii importante pentru DBA, se va arăta, puteți vedea că 50 la sută din timpul este petrecut în așteptarea depozitării. Cincizeci la sută din timp este folosit în procesor, astfel încât să începeți să vă faceți idei despre locul în care este petrecut timpul, cum aș putea să pierd acest timp, iar ideea este să ofer oamenilor opțiuni, deoarece răspunsurile diferite au costuri diferite și riscuri asociate. . În mod ideal, au fost după soluția la o problemă cu risc redus, cu costuri reduse. Acum, că instrucțiunea SQL este urmărită de o valoare hash și theres, în partea stângă a mijlocului ecranului există acest mic buton „Tune” și ceea ce va face, te va duce la o sarcină SQL. Și această sarcină SQL este un fel de banc de lucru pre-construit și ceea ce face acest lucru, îmi permite să analizez în mod specific ce afectează instrucțiunea SQL începând cu planul de execuție. Planul de execuție este ales de optimizator atunci când instrucțiunea este analizată, acesta - înapoi la analogia alimentară, rețeta ei urmată pentru a rezolva instrucțiunea SQL.

Și unele rețete sunt mai complicate decât altele, și astfel oferim concluzii. Și se va arăta de fapt aici, hei, o mulțime de timp efectuând E / S secvențiale pe un anumit indice. Și vezi acum, când, revenind la oxigen, urmează acest indice. Acest indice a fost defragmentat recent, care este sănătatea dacă? În ce spațiu de masă locuiește? Este separat spațiul tabelelor din tabelul la care face referire? Așadar, începe să vă ofere tot felul de idei despre cum puteți rezolva problema. În mod evident, știi, construiau într-un index. Este un risc mult mai mic, mult mai ușor decât poate muta un index dintr-un spațiu de masă într-un alt spațiu de masă, deci ceea ce doream să facem este un fel de opțiuni de acumulare, astfel încât să putem implementa opțiunea cu cel mai mic cost, cu cel mai mic risc de rezolvat. problema.

Precis poate face, de asemenea, lucruri precum variabilele de legare a capturilor care sunt aruncate la o instrucțiune SQL. Evident, variabilele aruncate vor controla dimensiunea setului de rezultate. Și va controla cât timp durează executarea instrucțiunii SQL și cât de multe date trebuie transmise și procesate de către aplicație prin Java, prin .NET, în distribuția serverului web plus rețeaua, în cele din urmă redate în browserul utilizatorului final . Ceea ce se întâmplă în baza de date are un impact direct asupra timpului browserului. Și, astfel, va fi crucial să avem acest nivel de vizibilitate, astfel încât să putem ști exact ce se întâmplă și să oferim DBA cele mai multe opțiuni, astfel încât să poată alege care este cea mai sensibilă, având în vedere o anumită situație.

Acum, acestea sunt câteva dintre ghilimele și acestea se întâmplă dintr-un magazin PeopleSoft care are implementare globală. Suportul precis acceptă aplicațiile PeopleSoft și SAP, Siebel, Oracle, E-Business Suite, aplicații Java și .NET. Sprijinim, astfel încât dacă efectuați apeluri de servicii web la mai multe JVM-uri, de la Java la .NET înapoi la Java, putem urmări toate acestea. Ar putea fi on-prem, ar putea fi în nor. Lucrul crucial este că lucrurile trebuie instrumentate.

Și deci, doar câteva citate de la unul dintre clienții noștri. „Înainte de precizie, DBA-urile noastre foloseau OEM” - acesta este un instrument bazat doar pe baze de date și, practic, au spus: „Hei, instanțele arată grozav.” Dar ar putea ajutați să spuneți sau să adresați o problemă cu o anumită tranzacție. Precis a oferit vizibilitatea pentru a face acest lucru. Așadar, faptul că informațiile despre instrucțiunile SQL au fost esențiale pentru a le oferi DBA-urilor vizibilitatea pentru a reduce pe deplin performanța din baza de date. Și așa a fost foarte drăguț. Un fel de mai sus și dincolo de unele instrumente la care s-ar putea să te uiți.

Și atunci conducerea IT a iubit cu adevărat faptul că Precise a putut să traducă o adresă URL complexă într-un nume de panou. Și în acest fel dacă un utilizator final sună și spune: „Hei am probleme cu asta”, puteți izola și vedea cine este acel utilizator, ce execută ei, ce fel de performanță, ei măsoară efectiv randarea timp în browserul utilizatorului final. Este o adevărată măsură a experienței utilizatorului final. Și, de asemenea, deținerea acestui ID de utilizator este absolut esențială pentru a ajuta o anumită persoană care apelează.

Cum face Precise acest lucru? Și deci am dori să împărtășim arhitectura noastră. Precis trebuie să locuiască în propriul server și să trăiască într-o mașină virtuală, poate trăi în cloud. În partea frontală, Precise este activat web, indiferent dacă utilizați tablouri de bord, interfața de alertă sau GUI pentru experți. În ceea ce privește colectarea de date, putem efectua fără agent pentru mai multe tehnologii diferite. Cu toate acestea, de multe ori, vom avea nevoie de un agent și există plusuri și minusuri pentru a avea un agent. Un plus important este faptul că datele colectate pot fi preprocesate înainte de a fi trimise prin LAN. Și, astfel, înseamnă că putem minimiza impactul total al soluției de monitorizare asupra mediului țintă.

Acum luați în considerare ca o alternativă, dacă aveți „agent fără”, există încă un colector de date, este doar o problemă de unde locuiește și face apeluri și transmite date brute despre aplicația țintă din LAN. Și este de fapt destul de scump. Și astfel, prin preprocesare, putem minimiza efectiv piciorul. Veți putea monitoriza atât fizic, cât și virtual.Și un lucru pe care am vrut să-l spun despre tehnologia virtuală este faptul că se concentrează cu adevărat pe utilizarea. Pe ce se concentrează Precise este contenția. Când tehnologia VMware minimizează de fapt resursele pentru VM-ul oaspete? Și astfel devine cu adevărat ușor. Dacă te uiți doar la un VM invitat, nu ai decât o parte din imagine. Fiind capabil să detecteze și să alerteze în mod automat despre contenție, este esențial.

Precisele pot monitoriza până la 500 de instanțe, astfel încât implementările foarte mari au, practic, mai multe servere precise. Și pentru o implementare globală, de obicei, va fi un server precis în fiecare centru de date. De altfel, pentru cele mai mari implementări, puteți să le federatați împreună, astfel încât să puteți analiza ceea ce se întâmplă și să puteți oferi raportări, etc. Acum, așa cum am menționat, avem o mulțime de analize tehnice. Nu toată lumea trebuie să intre în GUI-ul expert, așa că oferim un tablou de bord personalizabil. Și fiecare dintre aceste portleturi sau widget-uri, toate sunt opționale. Și cineva poate dorește doar să meargă: „Hei, cum poți atinge o alertă pe orice nivel din mediul nostru? Cum fac grupurile de utilizare finală din perspectiva performanței? ”Sau poate că aveți o întrebare despre infrastructură, ajungând chiar la performanța Tuxedo. Sau chiar echilibrarea sarcinii. Este interesant aici în această parte de echilibrare a sarcinii. Mă uit la portletul din mijloc, în partea stângă. Puteți vedea că numărul de execuții este foarte similar între fiecare servere web. Dar timpul de răspuns este foarte diferit pe cel de sus. Puteți efectua dezactivarea și afla exact motivul pentru care timpul de răspuns pe serverul respectiv a fost mult mai lent decât celelalte.

Un lucru despre echilibrarea sarcinii, acest lucru este foarte important, iar politicile de echilibrare a sarcinii, știți, nu fiecare politică de echilibrare a sarcinii este potrivită pentru fiecare aplicație. Este într-adevăr util să vă validați politica de echilibrare a sarcinilor. Vedem de fapt cu unele aplicații precum noua GUI Fluid PeopleSoft, unde de fapt unele servere web vor fi deconectate. Și deci este ceva care este într-adevăr critic. Dacă implementați GUI pentru Fluid PeopleSoft, vă rugăm să ne contactați. Vă putem oferi o mulțime de cunoștințe și o mulțime de cunoștințe despre ceea ce s-au confruntat alți clienți. Fiecare portlet poate fi destul de detaliat. La fel ca la mijlocul drept, cu albastru și verde, arată de fapt modelul vârfului sabiei, arată un fel de colectare a gunoiului din cadrul nivelului WebLogic funcționează așa cum vă așteptați. Fiecare dintre aceste portlet-uri poate fi puternic concentrat sau poate fi la un nivel foarte ridicat. Și motivul pentru care acest lucru este important sau ar putea fi important, este de multe ori nu este suficient de bun pentru a avea doar aceste informații în cadrul IT, uneori trebuie să împărtășești aceste informații cu proprietarii de aplicații și uneori cu managementul superior, despre ceea ce se întâmplă .

Am vrut să împărtășesc cu voi câteva povești, genul de „Succes în Datacenter”. Și acestea sunt axate pe baza de date și am alte povești care sunt concentrate pe nivel intermediar. Dar astăzi vreau foarte mult să mă concentrez asupra nivelului bazelor de date. Să aruncăm o privire la înghețurile ecranului. Acum, ceea ce s-a întâmplat aici este că acest magazin special avea un SLA de afaceri, că dacă o comandă este primită până la 15:00, comanda expediază în acea zi. Astfel depozitul este extrem de ocupat în acest interval de timp. Și apoi, odată cu obținerea înghețării ecranului, a fost foarte frustrant. Și deci supraveghetorul - aceasta este o companie mai mică - supraveghetorul a intrat de fapt în IT și, desigur, merge până la DBA și spune: „Acum, ce se întâmplă?” Și, deci, ce am făcut, am putut să arătăm exact ce s-a intamplat. Acum este JD Edwards, o aplicație cu mai multe niveluri, acesta este ecranul comenzilor de vânzare. Vă puteți face o idee despre ce a fost afacerea, practic un inventar la timp și, în consecință, te uiți la aplicațiile din depozit. Și acum trimiteți practic la mai multe site-uri pentru clienți, magazine diferite. Și ceea ce am făcut este să deschidem Precis.

În acest caz, înainte de a ne uita la Oracle, aici ne uităm la SQL Server, iar acum jumătatea de sus ne arată un grafic de bare stivuit în care instrucțiunile SQL își petrec timpul în timpul executării. Fiecare stare slabă este contabilizată în axa y. Axa x, dacă este bineînțeles de-a lungul timpului și puteți vedea că graficul de bare stivuit se schimbă de la secțiunea de timp, în funcție de ce execută și de modul în care folosește sistemul. Acum, în acest caz particular, ne-am concentrat pe a treia secvență SQL din partea de sus. Este selectat SELECT DIN PS_PROD și puteți vedea în acea coloană că am capturat planul de execuție real. Și puteți vedea de-a lungul numărului de execuții. Faptul că respectiva declarație SQL a fost responsabilă pentru 9,77 la sută din consumul de resurse în acest interval de timp pe care îl analizăm - și acesta este un punct important, intervalul de timp, Precise păstrează un istoric continuu - și aș putea, practic, să apelez și aflați ce s-a întâmplat la un moment dat sau în timp. Sunt în măsură să văd trending.

Acum, această afirmație SQL, vedeți graficul de bare stivuit acolo, este albastru închis. Asta spune că folosim tot procesorul. Haideți să mergem mai departe și să ne concentrăm făcând clic pe acest buton „TUNE” din respectiva instrucțiune SQL. Ce facem este să îl luăm în acel atelier, atelier pre-construit, care este conceput să spună: „Păi ce va ști DBA despre această afirmație SQL specială?” Și puteți vedea pe partea dreaptă, o filă numită „ Istoric ”care a fost selectat. Și ceea ce mi-aș dori să fac acum este un fel de mutare spre partea stângă unde scrie „Modificări în raport cu durata medie”, durata medie. Și fiecare dintre aceste baruri reprezintă evenimente pe zi.

Puteți vedea miercuri, joi, vineri, timpul de execuție a fost, urmează să mă rotunjesc la punctul doi. Axa y indică punctul patru secunde, deci punctul doi. Foarte puține blocuri de ecran, operațiunile merg excelent, în SLA. Din păcate, pe 27 februarielea planul de execuție s-a modificat și asta a provocat o schimbare imediată a timpului de execuție. Tot timpul brusc de execuție este în creștere, patru X, poate cinci X, iar lucrurile merg foarte prost. Acum Precise, în depozitul său, de fapt, jurnalează toate modificările care ar putea afecta comportamentul. Și puteți vedea aici că am capturat modificările planului axei. Cea din mijloc spune „Volumul tabelului schimbat”. Deci, tabelele sunt în creștere și avem dreptate pe cusp, când instrucțiunea SQL este analizată, optimizatorul alege un plan de execuție sau un alt plan de execuție.

Acum, din fericire, în această săptămână, aici luni, a răsturnat, așa că a fost la un moment bun. Din păcate, este din nou flip-flops, și știi ce, utilizatorii finali încep să anticipeze înghețarea ecranului și încep să retrimită acel ecran și împing numărul de execuție în sus și în sus. Avem o cantitate foarte mare de detalii, dar pentru a rezolva această problemă și apoi a o evita în viitor, avem nevoie de o informație suplimentară. Și asta mi-a fost arătat în comparație cu planurile de execuție. Pe 5 martielea când a fost rapid și eficient, pe partea stângă arată planul de execuție. Când a fost lent și ineficient pe 12 martielea, puteți vedea că face o alăturare la filtru. Unirea filtrului forțează doar mult mai mult consum de procesor, făcând mult mai multă muncă. Rezultatul este identic, lucrează doar mult mai mult. Este ca și cum ai merge să-ți livrezi un singur ingredient simultan, mai degrabă decât să mergi la cămară și să obții toate ingredientele simultan. Și deci există un fel de mod mai eficient de a face acest lucru. Acum, de obicei, știind acest lucru, DBA a fost capabil să folosească planul de interogare pentru a evita acest plan lent de execuție și a bloca performanțe rapide și ridicate.

Acum, următorul tip de poveste de război a fost „Rapoartele sunt târzii”. Cred că o mulțime de oameni se pot identifica cu acest scenariu. Este posibil să aveți raportări ad hoc, puteți utiliza un instrument precum NVISION, puteți avea un instrument de raportare de la terți. Și ceea ce se întâmplă este că instrumentul dezvoltă SQL. Și, de multe ori, SQL nu este într-adevăr bine codat. Și acest lucru s-ar putea aplica și într-o situație în care, știți, aveți o aplicație terță parte, corect, în care SQL nu a fost scris în casă, și deci ca DBA, „Nu controlez SQL, ce Am de gând să fac despre asta? ”Ei bine, Precise oferă ceva care nu sunt conștient de niciun alt instrument de bază de date furnizat și care este o vizualizare obiect. Combinat cu recomandări și modelare. Și deci ceea ce putem face este să transformăm vizibilitatea pe capul său. Mai degrabă decât să ne uităm la activitate, să investigăm, ce obiect este cel mai greu din sistem? Și în felul părții inferioare a ecranului puteți vedea linia de comandă SQL și puteți vedea coloana „în MS-SQL”. Iar masa de linie a comenzilor este de zece ori mai ocupată decât oricare altă tabelă din sistem. Cred că ceea ce veți observa și în jumătatea superioară, alocarea spațiului este în creștere și puteți consulta, de asemenea, specificațiile de pe server ce versiune de software rulăm. Precis va verifica efectiv modificările urmărite la setările principale. Încă o dată, cauza și efectul.

Acum, concentrându-mă pe tabelul de linii de comandă, ceea ce pot face cu depozitul meu istoric detaliat este că pot corela de fapt instrucțiunile SQL care merg împotriva tabelului de linii de comandă. Și puteți începe să priviți clauza unde în acele instrucțiuni SQL. Și începeți să observați că clauza unde este destul de similară între diferitele instrucțiuni SQL. Și v-aș sugera că în sistemul dvs. de înregistrare veți găsi același lucru. Deoarece utilizatorii de afaceri, analiștii de afaceri vor dori să facă lucruri precum activitatea de activitate cumulată în ultima zi, ultima săptămână, ultima lună, ultimul trimestru, ultimul an. Veți vedea foarte asemănător în cazul în care clauzele, ordonate, grupate după, și asta înseamnă că vor exista anumite indexuri care să aibă sens pentru acele declarații SQL.

Și deci Precise are un motor de recomandare, puteți vedea asta în colțul din dreapta sus, iar ceea ce putem face este să obținem de fapt recomandări. Spune: „Hei, eu rulez toate declarațiile SQL, ce indici le-ar fi adresate?” Indexurile îți sunt prezentate și puteți vedea efectiv DBL. Acum Precise este doar citit, nu oferă posibilitatea de a face clic pe un buton și de a crea indexul, dar este destul de ușor de făcut în afara Precis. Dar aici este un lucru crucial, este că Precizia vă permite să evaluați și să modelați modificările, astfel încât există acest buton Evaluare în colțul din stânga jos al ecranului. Și ceea ce face este să arate instrucțiunile SQL din înainte și după.

Să ne uităm la aceste declarații SQL. Puteți vedea această coloană aici care spune „în MS-SQL” și care spune o oră, patru minute? Aceste declarații SQL de top execută sau consumă resurse în valoare de aproximativ 64 de minute. Și îmbunătățirea proiectată este de 98 la sută. Aceste modificări vor economisi o valoare de ore de procesare. Următoarea declarație SQL este de 27 de minute și va salva practic o treime. Este vorba de aproximativ zece minute de procesare. Rezumat împreună, veți economisi de fapt ore și ore de procesare prin aceste modificări propuse. Și, astfel, să știi acest lucru în față, să fii capabil să modelezi acest lucru. Puteți utiliza, de asemenea, capacitatea „ce-dacă” pentru a spune: „Ei bine, nu vreau să fac acel index sau ce se întâmplă dacă modific ordinea coloanei?” Și aș putea folosi această capacitate de modelare. pentru a afla exact ce se va întâmpla.

Celălalt lucru care este crucial este că atunci când fac modificarea, pot măsura efectiv pentru o declarație SQL individuală. Ați văzut istoricul declarațiilor SQL în exemplul precedent și pot verifica de fapt dacă am realizat economiile care au fost modelate. Și astfel încât feedback-ul, completarea buclei de feedback este absolut crucială.

Bine, iată ultimul exemplu pe care aveam să-l am pentru tine. Acesta este un magazin SAP și, știți, au apelat la o actualizare majoră, făceau unele chestii cu tranzacții personalizate și, practic, un utilizator final nu era mulțumit de performanță. Și deci, ceea ce am făcut este că am putut să ne concentrăm pe ceea ce a experimentat acel utilizator final. Și puteți vedea în partea de sus a listei, „CHOUSE”, iar timpul de răspuns este puțin peste 61 de secunde. Acest lucru durează un minut pentru a executa. Acum puteți vedea că avem un grafic de bare stivuit care este orientat către SAP. În partea dreaptă arată timpul clientului, timpul de așteptare. Albastrul este timpul de aplicare și într-un mediu SAP, acesta este codul ABAP, apoi baza de date. Și deci baza de date, știți, ar putea fi Oracle, ar putea fi SQL, ar putea fi HANA. Practic suntem capabili să arătăm asta.

Acum, ceea ce facem cu Precise este să concentrăm, pentru acea tranzacție și acel utilizator, ceea ce au apărut instrucțiunile SQL. Încă o dată, acel con pentru a conecta punctele. Acum această declarație SQL de top, puteți vedea că este înconjurată, se execută în două milisecunde. Chiar nu poți acuza baza de date dacă se execută atât de repede. Numărul de execuție este foarte mare. De fapt, putem reveni la codificatorul ABAP și să spunem: „Hei, ce se întâmplă?” Am descoperit de fapt că codul din baza de date a fost pus în locul greșit, a fost cuibat în locul greșit în buclă, a făcut schimbă și apoi putem măsura după. Puteți vedea care este performanța după. Nu numai la nivel de declarație SQL, ci și la nivel de cod personalizat. Și astfel au putut trăi cu un timp de execuție de patru și jumătate de secundă. Așadar, acestea sunt doar câteva exemple despre modul în care ar putea fi exploatate Precizia, este posibil să o utilizați. La fel ca o recapitulare rapidă, Precise arată performanța în funcție de locație, de ID-ul utilizatorului final, furnizează concomitent prin stiva de aplicații. Puteți perfecționa din cauza rădăcinii. Și cred că unul dintre marii diferențiatori este să poți cunoaște, nu doar instrucțiunea SQL, ci de ce instrucțiunea SQL rulează încet și să poată identifica conținutul și să ofere practic mai multe opțiuni pentru rezolvarea problemelor. Acest lucru este oferit de Precise și ne puteți consuma, știți, într-un mod ușor sau dacă aveți probleme foarte profunde, foarte provocatoare, ne place să le luăm și pe acestea.

Eric Kavanagh: Bine, trebuie să spun că a fost o mulțime de detalii fantastice, Bill. Vă mulțumim că ați arătat toate capturile de ecran. Și din perspectiva mea ai într-adevăr îndeplinit ceea ce am fost un fel de a explica la începutul orei, care este, numărul unu, trebuie să ai instrumentul potrivit. Trebuie să aveți un instrument care vă permite cantitatea de con necesară pentru a identifica toate elementele din ecuație, așa cum a spus cineva într-un film o dată, a fost cam amuzant. Dar permite-mi să merg mai departe și să-l predau lui Dez pentru că pun pariu că el are câteva întrebări pentru tine și vreau să împing încă una din aceste diapozitive doar pentru bomboane vizuale, dacă vrei. Sunt de fapt, stai, lasă-mă să o iau înapoi. Dar Dez, sunt sigur că ai câteva întrebări, scoate-l.

Dez Blanchfield: Da, da, uau. Acest instrument a parcurs mult timp de când îl știam inițial și nu eram conștient că acum ai ajuns destul de adânc în teanc. Este destul de neplăcut. Chiar repede, câteva lucruri. Modelul de desfășurare, puteți contura foarte repede într-un minut sau două, doar să conturați modelul de implementare tradițional sau tipic. Ai menționat că este disponibil ca o mașină virtuală. Poate fi rulat în cloud. Și cred că una dintre întrebările care va apărea probabil și cred că au fost câteva întrebări care au apărut în secțiunea Q&A. Doar să le recapitulăm în rezumat, deci modelul normal de desfășurare și tipul de axa necesară, este, în mod tradițional, desfășurat la fața locului sau găzduit sau în cloud? Care sunt tipurile de modele de implementare pe care le vedeți în mod normal? Și ce tip de axă este necesară pentru a obține acel lucru? Trebuie să schimbăm lucrurile la nivel de securitate în jurul accesului la rețea și așa mai departe? Sau se poate comporta doar ca utilizator final?

Bill Ellis: Da, deci, în prezent, majoritatea instalațiilor sunt în prim-plan. Din ce în ce mai mulți oameni introduc componente din stiva aplicației în cloud și, astfel, ne putem ocupa și de asta. Desfășurarea pe care avem nevoie de un server pe care să o rulăm, va îndeplini anumite specificații. Trebuie să avem o bază de date care să stocheze depozitul istoric, așa că îndeplinirea acestor condiții preliminare este un fel de prim pas. Următorul lucru este că, cu siguranță, trebuie să avem cunoștințe despre aplicația în sine, iar instalarea este condusă de vrăjitor și completăm, practic, semifabricatele. Din cauza profunzimii informațiilor pe care le obținem, știți, de la un nivel de proces web până la codul care se execută, trebuie să avem anumite privilegii. Avem un model securizat de date sau un model de securitate, trebuie să spun, pentru că agenții se execută cu date de acreditare care sunt complet separate de persoanele care folosesc metadatele despre tranzacții etc.? Comunicare precisă prin TCP prin IP și astfel avem nevoie de anumite porturi deschise. Ca un exemplu rapid, cum ar fi portul nostru implicit este 2702. Acest tip de lucruri detaliate este ceva dacă oamenii sunt interesați, am putea intra în el mai detaliat. Dar, de obicei, avem o valoare foarte rapidă în timp. Dacă cineva se confruntă cu o mare problemă, adesea putem să instalăm lucrul și să strălucească o lumină puternică asupra unei situații în câteva ore.

Dez Blanchfield: Da, cu siguranță am și eu acest sens. În modelul de implementare ați vorbit despre o scară foarte mare și până la 500 de instanțe și despre modul în care acest lucru ar putea fi federat. La nivel de intrare, cum arată dacă vrea cineva - pentru că știu că IDERA este foarte mare în ceea ce privește accesul la încercări gratuite, demo-uri gratuite și îmi amintesc că am văzut pe site aproape că se poate juca. Pentru oamenii de aici și cred că mi-a lipsit mai devreme, dar cred că a apărut o întrebare despre cum arată un site tipic și cum accesează oamenii la acest lucru și încep să se joace cu acesta și să obțină acel tip. experiență în care pot vedea dacă au o modalitate de a aborda unele probleme de performanță? Își pot descărca un ODS și îl pot roti pe hipervizorul lor, Hyper-V sau laptop sau au nevoie de o mașină dedicată pentru a o folosi? Ați conturat arhitectura înainte, dar foarte pe scurt, într-un minut sau două, cum arată asta pentru implementarea nivelului de intrare doar pentru a face o dovadă a conceptului, de exemplu?

Bill Ellis: Da, deci modelul nostru este puțin diferit de instrumentele IDERA. Ne încadrăm mai mult în scenariul Embarcadero unde doriți să contactați una dintre reprezentanțele noastre de vânzări. Am dori să discutăm doar cu voi care sunt provocările și apoi, în mod obișnuit, să știm, unul dintre SE ar fi atribuit și practic ar lucra prin instalare cu cineva. De obicei, nu rulați Precis pe laptop. Ați dori să aveți o mașină virtuală sau un server în centrul de date unde locuiește aplicația, pentru a face colecțiile. Dar noi te vom ajuta să treci la fiecare pas. Dacă cineva este interesat să urmărească acest lucru, cu siguranță doriți să contactați IDERA.

Dez Blanchfield: Unul dintre celelalte lucruri care m-au lovit a fost că, adică, multe din cele pe care le-am acoperit astăzi sunt în jurul reacției la problemele de performanță.Dar mi s-a părut că, și în mediile live, pe măsură ce oamenii le folosesc așa, la prima prezentare de diapozitive, cineva ridică telefonul și îmi spune: „Aplicația funcționează lent, ajutor”. Dar m-a părut că în timpul prerelegerii aplicațiilor sau upgrade-uri sau corecții și corecții noi, puteți parcurge o grămadă de planificare a capacității și testare a stresului și să vă uitați cu precizie la întregul mediu și să găsiți de fapt probleme înainte de a pune utilizatorii finali în mediul înconjurător. Este un caz de utilizare pe care l-ați văzut anterior sau sunt și oamenii care fac asta, sau nu este un caz de utilizare obișnuit?

Bill Ellis: În mod absolut, am dori să folosim Precis pe tot parcursul ciclului de viață al dezvoltării aplicației sau al ciclului de viață de actualizare. Precis oferă o vizualizare scalabilă, va afișa numărul de execuții suprapuse cu timpul de răspuns. Evident, dacă atât numărul de execuții, cât și timpul de răspuns cresc împreună, nu veți face scalări și trebuie să faceți ceva. Acest lucru a ajutat imens. Cred că este puțin mai puțin adevărat acum, dar atunci când oamenii au început să pună aplicații de producție pe VMware, au fost puțin șovăitori și a fost ca, în primul rând, să fie așa: „Oh, trebuie să trecem la asta fizic. ”Și ceea ce putem face de fapt este să arătăm care este consumul de resurse, astfel încât să poți face aplicația mai eficientă. La fiecare pas al ciclului de viață al aplicației, doriți cu siguranță să utilizați Precise. Dar ar trebui să spun că producția este într-adevăr acolo unde performanța contează cel mai mult, iar Precise este orientată către monitorizarea producției 24/7 și deci nu doriți să rulați aplicațiile de producție fără vizibilitate.

Dez Blanchfield: Absolut. O altă întrebare rapidă doar pe acea specificație - test de profunzime, imigrare, UAT și așa mai departe - Adică, este minunat să ai acest instrument și îmi imaginez că dezvoltatorii de aplicații ar adora absolut acest lucru prin ciclurile de viață ale ciclului de viață de dezvoltare. . Cu arhitecturile mai complexe pe care le vedeți acum, așa că am trecut de la serviciul dedicat la virtualizări și virtualizare, acum trecem la un fel de adoptare a externalizării la cloud hosting și vedem și o tranziție la containerizare. Ați văzut multe persoane care desfășoară acest lucru și modelează tipul de regiuni sau zone, așa că cineva ar putea avea - și în Australia avem o problemă foarte mare în privința vieții private și știu că în Europa este același lucru și cred că devine mai mult un caz în SUA, unde datele care mă pot identifica personal trebuie să fie adesea într-un mediu mai sigur cu stratul de aplicație real pentru stratul web. Și astfel avem acum aceste implementări în care oamenii ar putea să își păstreze baza de date și aplicațiile lor în interior, dar își pot pune stratul web și livrarea și sfârșitul aplicației și așa mai departe într-un furnizor de cloud precum Azure sau, sau Amazon Web Services și software. . Cum funcționează asta cu implementarea dvs. normală? Este cazul în care tocmai ai primit un alt set de colecționari din regiune și doar au adăugat altele? Cum arată asta în lumea precisă, în tipul de abordare bimodală de a folosi IT-ul vechilor lucruri vechi într-un singur loc, iar bunurile dvs. sunt uneori în cloud?

Bill Ellis: Da, deci susținem un mediu mixt. Un lucru de luat în considerare este faptul că există contracte diferite cu furnizorii de cloud. Unele dintre ele nu vor permite niciun fel de agent sau niciun fel de monitorizare exterioară în cloud. Pentru a instala și monitoriza cu Precise, trebuie să aveți un tip de contract care să permită acel tip de acces. Cu siguranță, există anumite restricții pe care uneori trebuie să le îndeplinim, astfel încât acestea sunt un tip important de criterii pe care le iei în considerare atunci când ești, cred, mai întâi să semnezi acele contracte și apoi și / sau dacă trebuie să implementezi Precis.

Dez Blanchfield: Da, am văzut o serie de cazuri în care chiar și cu mediul de bază tradițional al bazelor de date, dacă achiziționați acest lucru ca parte a serviciului, în special cu cele ale Azure, în timp ce obțineți like-urile HDInsight sau SQL ca un serviciu, ca o platformă, uneltele tale obișnuite nu se pot scufunda atât de adânc, deoarece nu prea sunt atât de dornici să privești ce este sub capotă. Și, astfel, ajungeți cu un anumit nivel sau adâncime pe care îl puteți monitoriza și, dintr-odată, pe care nu îl puteți vedea în spatele cortinei magice. Autoservirea este un lucru? Este, în mod tradițional, ceva care ar rula în interiorul unui centru de operații de rețea în care echipa tehnică, cei de la CIO vor avea acces doar la, sau este și ceva pe care îl puteți oferi un nivel de acces utilizatorilor finali? Poate că nu neapărat recepția și oamenii tradiționali de resurse umane și finanțe, ci utilizatori mai experimentați care fac, știți, de exemplu, oamenii de știință de date, actuarii, statisticienii, oamenii care realizează sarcini de muncă cu adevărat mari. Este cazul să poată avea acces la un fel de acces de autoservire pentru a vedea ce se întâmplă atunci când se execută aceste interogări grele și unde se întâmplă durerea, astfel încât să poată să regleze modul în care se desfășoară volumul lor de muncă?

Bill Ellis: Există o securitate destul de bună în Precise, astfel încât să puteți configura utilizatori care au niveluri diferite de acces. La niveluri foarte de bază, doar tablourile de bord oferă supraveghere. Și apoi în cadrul, știți, dacă cineva a vrut să intre în GUI-ul Expert, puteți să restricționați ceea ce pot vedea și ce pot face. Și un fel de a ne întoarce la întrebarea anterioară pe care o știți, în asistența medicală aveți toate legile HIPAA și, deci, există cu siguranță anumite considerente și există de fapt unele opțiuni de implementare, astfel încât să putem lucra cu acesta în ambele medii. Un lucru de luat în considerare cu datele pe care le-ați văzut în această prezentare este că este vorba despre toate metadatele legate de performanță, nu de conținutul tabelelor, știți și, deci, nu va intra în tipurile de tipuri de preocupări de confidențialitate

Dez Blanchfield: Da, am făcut așa. Am avut un moment eureka despre al patrulea sau al cincilea diapozitiv al clipurilor de ecran și mi-am dat seama că trageți doar performanță, nu numai, dar trageți date de performanță, trageți lucruri, cum spuneți, metadate din diferitele niveluri ale stivei, nu te uiți la conținut. Și cred că acesta este un lucru interesant, deoarece este unul dintre acele instrumente în care puteți să îl implementați pe termen scurt și să priviți ce se întâmplă în mediu, dar nu trebuie să aveți acces la datele în sine. Puteți chiar privi modul în care sunt echipate echipajele. Ultimul lucru, cred, doar repede, și apoi o să-i înapoiez lui Eric așa că dacă ai o întrebare, atunci o vei face pe Rebecca să se învețe, ai menționat înainte că aerul general este nominal, este un caz că este chiar și o depășire vizibilă din partea monitorizării lucrurilor și doar urmărește fundalul sau este o cantitate neglijabilă de cheltuieli aeriene încât nu merită să fie luată în considerare?

Bill Ellis: Da, așa că cred că în baza de date, știți, fiecare tehnologie este puțin diferită. Pe baza de date nivelul precis este destul de bine cunoscut pentru a învinge cel mai mic nivel general. Pe nivelul intermediar există, știți, există un fel de act de echilibrare, știți, nu este doar precis, ci aplicat tuturor, din punct de vedere al vizibilității și al aerului. Și, astfel, unul dintre lucruri este să oferim o serie de instrumente sofisticate pentru a controla ceea ce este deasupra capului. Suntem concepute pentru producție și, știți, este cu siguranță util să încercați cât mai multe probleme în dezvoltarea dezvoltării și a QA, dar, știți, nu este nimic ca să știți ce se întâmplă în producție.

Dez Blanchfield: Eric, de lângă tine, ai întrebări finale?

Eric Kavanagh: Da, voi spune doar că cred că ai făcut o treabă excelentă în a sublinia faptul că con este într-adevăr cheia și este aproape ca dacă ne îndreptăm către această epocă a internetului lucrurilor, vrei totul instrumentat. Și cred că standardul de acum în producție este să faci asta, ceea ce este o veste bună, nu? Pentru că doriți să puteți trage informații din toate aceste medii diferite și să le coaseți împreună. Și cred că o voi transmite doar pentru câteva comentarii ulterioare. Pe aceea că voi sunteți concentrați este să oferiți o interfață vizuală prin care un analist, un analist IT, în esență, să poată monitoriza și analiza ce se întâmplă în acest mediu complex și apoi să își dea seama ce să schimbe. Pentru că nu este doar un instrument. Trebuie să aveți instrumentul, dar aveți nevoie de acea persoană care va săpa în acel detaliu și va găsi răspunsurile, nu?

Bill Ellis: Da, am văzut că fierbe până în vârf și prioritizând unde este cel mai rabatabil, știi? Dacă se dovedește că este o situație diferită, deoarece nu toate problemele sunt în baza de date. Dacă baza de date este, știți, lucrurile se execută într-o zecime de secundă, dar pe nivelul aplicației lucrurile durează trei secunde, acolo este cea mai mare răscumpărare. Și deci un fel de a putea izola nivelul problemelor și apoi ce se întâmplă în interiorul nivelului pentru a vă concentra cu adevărat pe locul unde se află răscumpărarea. Aceasta accelerează într-adevăr rezoluția și optimizarea aplicației și este mult mai rapidă și mult mai bună și mult mai amuzantă decât oamenii adunați într-o sală de conferințe care merge: „Ei bine, nu sunt eu, trebuie să fie altcineva”.

Eric Kavanagh: Asta e corect. Am văzut o memorie minunată a doua zi care spunea ceva de genul: „Fii informat, nu doar opinat.” Intri într-o ședință, ai informații, poți să îndrepți spre date. Aceasta este cheia și ajungem acolo, mulțumesc bunătate. Bine, oamenii o să mergem înainte și să ne încheiem, dar arhivăm toate aceste transmisii web pentru vizualizare ulterioară. Nu ezitați să o verificați oricând. Listăm acum toate transmisiile noastre web, seria Hot Tech și seria Briefing Room de la Techopedia.com, deci saltați online și verificați aceste persoane. Cu asta, vă vom lua rămas bun. Mulțumesc pentru timpul petrecut astăzi, Bill. Mulțumesc ție și tuturor muncii tale grele, Dez. Și vom vorbi data viitoare, oameni buni. Ai grijă. Pa! Pa.