Märkus
Juurdepääs sellele lehele nõuab autoriseerimist. Võite proovida sisse logida või kausta vahetada.
Juurdepääs sellele lehele nõuab autoriseerimist. Võite proovida kausta vahetada.
Kehtib selle Power Platform hästi läbimõeldud jõudluse tõhususe kontroll-loendi soovituse kohta:
PE:08 | Optimeerige andmete jõudlust. Optimeerige andmesalvestusi nende kavandatud ja tegelikuks kasutamiseks töökoormuses. |
---|
Selles juhendis kirjeldatakse soovitusi andmete jõudluse optimeerimiseks. Andmete jõudluse optimeerimine tähendab töökoormuse töötlemise ja salvestamise tõhususe täpsustamist. Iga töökoormuse toiming, tehing või arvutus sõltub tavaliselt andmete kiirest ja täpsest hankimisest, töötlemisest ja salvestamisest. Kui andmete jõudlus on optimeeritud, töötab töökoormus sujuvalt. Ohustatud andmejõudlus tekitab halva jõudluse doominoefekti. Andmete jõudluse optimeerimata jätmine põhjustab vastus viivitusi, kõrgendatud latentsust ja piiratud skaleeritavust. See ohustab kogu töökoormuse tõhusust.
Mõisted
Mõiste | Määratlus |
---|---|
andmesalv | Ressurss, mis salvestab andmeid (nt andmebaas, objektisalve või failiketas). |
Index | Andmebaasistruktuur, mis võimaldab üksustele kiiret juurdepääsu. |
Veebipõhine analüütiline töötlus (OLAP) | Tehnoloogia, mis korraldab suurte ettevõtete andmebaase, toetab keerukat analüüsi ja teostab keerulisi analüütilisi päringuid, mõjutamata negatiivselt tehingusüsteeme. |
Veebipõhine tehingute töötlemine (OLTP) | Tehnoloogia, mis salvestab ärisuhtluse nii, nagu see toimub organisatsiooni igapäevases tegevuses. |
Eraldamine | Andmete füüsilise jagamise protsess eraldi andmehoidlatesse. |
Päringu häälestamine | Protsess, mis optimeerib andmebaasipäringu kiirust. |
Peamised disainistrateegiad
Andmekasutuse optimeerimiseks veenduge, et andmesalved oleksid optimeeritud nende kavandatud kasutuseks ja tegelikuks kasutamiseks töökoormuses. Optimeeritud andmekasutus võib parandada päringu jõudlust, vähendada ressursitarbimist ja suurendada süsteemi üldist tõhusust. Mõelge järgmistele strateegiatele:
Profiili andmed. Mõistke oma andmeid ja veenduge, et teie andmemudel sobib hästi teie töökoormusega. Mõelge sellistele teguritele nagu andmete normaliseerimine ja partitsioonitehnikad. Andmete tõhusaks hankimiseks veenduge, et valite sobivad andmetüübid ja määratlete tabelitevahelised seosed.
Optimeerige päringu jõudlust. Analüüsige ja optimeerige töökoormuses töötavaid päringuid. Kasutage selliseid meetodeid nagu päringu optimeerimine ja vahemällu salvestamine. Andmete eelfiltreerimiseks kasutage serveripoolseid vaateid. Kitsaskohtade tuvastamiseks kasutage jõudluse jälgimise tööriistu ja tehke seejärel vajalikud parandused.
Jälgige ja häälestage süsteemi regulaarselt. Jälgige pidevalt oma töökoormuse toimivust ja korrake andmesalvestuse konfiguratsiooni ja päringute optimeerimist. Jõudluse häälestamise parimate tavade põhjal analüüsige süsteemi mõõdikuid, tuvastage täiustamist vajavad valdkonnad ja rakendage muudatused. Andmete kasvades peate võib-olla oma päringuid värskendama, et need toimiksid.
Profiili andmed
Andmete profileerimine hõlmab andmete uurimist allikast ja nende kohta teabe kogumist. Eesmärk on mõista töökoormuse andmete kvaliteeti, struktuuri ja omadusi. See protsess võimaldab tuvastada selliseid probleeme nagu puuduvad väärtused, duplikaadid, ebajärjekindlad vormingud ja muud anomaaliad.
Andmete tõhusaks profileerimiseks kaaluge järgmisi strateegiaid:
Mõista andmestruktuuri. Uurige oma andmete struktuuri, sh tabeleid, veerge ja seoseid. Määratlege igale veerule rakendatavad andmetüübid, pikkused ja piirangud. Andmestruktuuri hindamine aitab teil mõista, kuidas andmed on korraldatud ja kuidas need on seotud muude andmeelementidega.
Analüüsige andmemahtu. Hinnake oma andmete mahtu, et mõista üldist suurust ja kasvumustreid. Määrake kirjete või dokumentide arv ja üksikute tabelite või kogude suurus. See teave aitab teil hinnata salvestusvajadusi ja tuvastada skaleeritavuse probleeme.
Andmeseoste tuvastamine. Uurige andmeelementide vahelisi seoseid. Saate aru, kuidas andmed on omavahel ühendatud, et saaksite määrata, kuidas ühes tabelis või dokumendis tehtud muudatused võivad seotud andmeid mõjutada.
Hinnake andmete kvaliteeti. Hinnake oma andmete kvaliteeti, uurides selliseid tegureid nagu täielikkus, täpsus, järjepidevus ja ainulaadsus. Saate tuvastada andmete anomaaliaid, puuduvaid väärtusi või duplikaatkirjeid, mis võivad mõjutada andmete terviklikkust ja päringujõudlust. See samm aitab teil tuvastada valdkondi, kus andmeid puhastada ja täiustada.
Jäädvustage andmete levitamine. Analüüsige väärtuste jaotust igas veerus, et määrata andmemustrid. Tuvastage sagedased ja haruldased väärtused, võõrväärtused ja andmeviltused. Päringu jõudluse optimeerimiseks analüüsige, kas alternatiivvõtmed oleksid parema jõudluse tagamiseks sobivad.
Andmete jõudluse jälgimine
Andmete jõudluse jälgimine on andmehoidlate tõhususe pidev jälgimine. See hõlmab andmetoimingutele omaste jõudlusmõõdikute kogumist ja analüüsimist, kasutades süsteemitaseme, andmebaasipõhiste või kolmanda osapoole jälgimislahenduste jaoks kohandatud tööriistu. Tõhus andmete jõudluse jälgimine võimaldab teil ennetavalt tuvastada ja leevendada võimalikke kitsaskohti, tagades andmetega seotud protsesside ja ülesannete tõhususe.
Andmete jõudluse jälgimiseks kaaluge järgmisi strateegiaid.
Koguge andmepõhiseid mõõdikuid. Koguge kokku peamised mõõdikud, mis on otseselt seotud andmete jõudlusega. Need mõõdikud hõlmavad päringute vastus korda ja andmete läbilaskevõimet.
Seadistageandmeteatised. Seadistage teatised spetsiaalselt andmemõõdikute jaoks. Kasutage hoiatuste käivitamiseks nendes mõõdikutes eelmääratletud lävesid või anomaaliaid. Hoiatused võimaldavad teil saada märguandeid, kui toimivusmõõdikud ületavad vastuvõetavaid vahemikke või näitavad ebanormaalset käitumist; näiteks kui andmebaasipäring võtab oodatust kauem aega või kui andmete läbilaskevõime väheneb märkimisväärselt. Neid märguandeid saate seadistada spetsiaalsete jälgimistööriistade või kohandatud skriptide abil.
Andmete jõudluse probleemide diagnoosimine. Vaadake regulaarselt üle kogutud andmemõõdikud, et teha kindlaks võimalikud toimivuse kitsaskohad või andmetoimingute halvenemine. Visualiseerimistööriistad või armatuurlauad võivad selles protsessis olla hindamatud, aidates esile tuua andmete jõudluse suundumusi, kitsaskohti ja võõrväärtusi. Kui see on tuvastatud, uurige nende probleemide algpõhjuseid ja kavandage asjakohased parandusmeetmed.
Partitsiooni andmed
Jaotamine hõlmab suurte andmekogumite või suuremahuliste töökoormuste jagamist väiksemateks, hallatavateks alamhulkadeks. Eraldamine suurendab andmete jõudluse tõhusust, jaotades töökoormust ja parandades paralleelset töötlemist. Samuti tagab see tõhusama juurdepääsu andmetele, mis põhinevad konkreetsetel vajadustel ja päringumustritel. Saate andmeid jaotada vertikaalselt või horisontaalselt (nimetatakse ka tükeldamiseks). Näiteks, kui kasutate Dataverse elastseid tabeleid, kaaluge, milline peaks olema partitsioonivõti.
Strateegia | Määratlus | Näide | Kasutusjuhtumid |
---|---|---|---|
Vertikaalne jaotamine | Jagage tabel väiksemateks tabeliteks, valides iga sektsiooni jaoks kindlad veerud või väljad. Iga partitsioon tähistab täielike andmete alamhulka. | Kui teil on tabel veergudega A, B, C ja D, võite luua ühe tabeli veergudega A ja B ning teise tabelitega C ja D. | - Tabel sisaldab palju veerge, kuid päringud ei pääse kõigile veergudele kokku. - Mõned veerud on suuremad kui teised ja nende eraldamine võib suurendada I / O jõudlust. - Erinevatel andmeosadel on erinevad juurdepääsumustrid. |
Horisontaalne jaotamine | Tükeldage andmed väärtuste ridade või vahemike põhjal (nimetatakse ka killustamiseks). Iga partitsioon sisaldab sarnaste omadustega ridade alamhulka. | Kui teil on ridadega 1–1000 tabel, võite luua ühe sektsiooni ridadega 1–500 ja teise ridadega 501–1000. | - Andmekogum on ühe asukoha või serveri jaoks liiga suur. - Andmetele pääseb ligi konkreetsete vahemike või filtrite alusel. - Vajadus jaotada töökoormus füüsiliste sõlmede või serverite vahel, et parandada jõudlust. |
Andmete jaotamiseks kaaluge järgmisi samme.
Analüüsige andmeid ja päringuid. Analüüsige andmeid ja päringumustreid, et tuvastada sobivad jaotamis- või killustamisstrateegiad. Mõistke andmete olemust, juurdepääsumustreid ja levitamisnõudeid.
Määrake võti. Valige partitsiooni- või shartimisvõti, et jaotada andmeid partitsioonide või kildude vahel. Valige võti hoolikalt, lähtudes andmete omadustest ja päringunõuetest.
Määrake loogika. Määrake valitud klahvi põhjal partitsioneerimis- või lõhestamisloogika. Kaaluge andmete jagamist vahemikesse, räsialgoritmide rakendamist või muude partitsioonitehnikate kasutamist.
Päringute optimeerimine
Päringute optimeerimine täpsustab päringuid, et vähendada kvalifitseeruvaid andmeid ja tagastatud andmeid. Need kohandused suurendavad andmete hankimise tõhusust ja kiirust. Tänu sellele on andmebaasi töökoormus väiksem, ressursid töötavad tõhusamalt ja kasutajad naudivad sujuvamat suhtlust.
Andmebaasipäringute optimeerimiseks kaaluge järgmisi strateegiaid.
Kirjutage päringud ümber. Vaadake üle ja analüüsige keerukaid päringuid, et leida võimalusi nende ümberkirjutamiseks. Kaaluge päringuloogika ümberstruktureerimist, üleliigsete toimingute kõrvaldamist või päringu süntaksi lihtsustamist.
Vältige päringu N+1 probleemi. Minimeerige andmebaasi edasi-tagasi reiside arv, kasutades seotud andmete tõhusaks toomiseks liitumisi ja partiitoomist.
Järjesta liitumised ümber. Hinnake ja kaaluge ühenduse ümberkorraldamist, et minimeerida ridade arvu igas liitumistoimingus. Tabelite ühendamise järjekord võib mõjutada päringu toimivust.
Vahemälu päringud. Salvestage sageli esitatavate päringute tulemused hõlpsaks taaskasutamiseks. Päringu vahemällu salvestamine välistab vajaduse sama päringu korduvalt käitada ja vähendab päringu töötlemise üldkulusid.
Jälgige ja häälestage. Jälgige päringu jõudlusmõõdikuid, nagu käitusaeg, ressursikasutus ja päringu läbilaskevõime. Kasutage halvasti toimivate päringute tuvastamiseks andmebaasi profiilide koostamise tööriistu ja jälgimisfunktsioone. Kasutage seda teavet päringu toimivuse optimeerimiseks.
Arhiveeri ja tühjenda andmed
Arhiveerimine ja tühjendamine on strateegiad, mis lihtsustavad andmete salvestamist. Arhiveerimine paigutab vanemad, harvemini kasutatavad andmed ümber kuluefektiivsemasse salvestusruumi. Andmete puhastamine eemaldab jäädavalt üleliigsed andmed. Mõlemad meetodid suurendavad jõudlust, vähendades andmemahtu, suurendades andmetele juurdepääsu kiirust ning vähendades varundamise ja taastamise aega.
- Andmemahu vähendamine: vähem andmemahtu tähendab kiiremat töötlemisaega, tagades kasutajate päringutele kiire vastuse.
- Andmejuurdepääsu kiiruse suurendamine: kärbitud andmekogum võimaldab kiiremaid päringuid ja andmete toomist, optimeerides süsteemi reageerimisvõimet.
- Varundus- ja taasteaja lühendamine: väiksemad andmekogumid kiirendavad varundamise ja taastamise protsesse, minimeerides seisakuid ja tagades ühtlase jõudluse.
Arhiveerimine ja tühjendamine on andmepõhiste süsteemide jõudluse tipptõhususe säilitamisel olulised.
Salvestuskoormuse optimeerimine
Salvestuskoormuse optimeerimine tähendab salvestussüsteemi päringute ühtlustamist. See aitab kõrvaldada tarbetuid päringuid, tõhustab andmete otsimist ja väldib salvestussüsteemi ülekoormamist. Salvestuskoormuse optimeerimine tagab, et salvestussüsteem vastab seaduslikele päringutele ja säilitab tippjõudluse. Rakendage strateegiaid, et vähendada andmesalv töötlemiskoormust. Andmesalv koormuse optimeerimiseks kaaluge järgnevaid strateegiaid.
Kasutage vahemällu salvestamist
Vahemällu salvestamine salvestab tavapäraselt juurdepääsetavad andmed kiire juurdepääsuga salvestusalal, muutes andmete hankimise kiiremaks kui põhiallikast tõmbamise. See meetod suurendab andmete jõudlust, vähendades juurdepääsuaegu ja vältides korduvaid andmete toomisi. Vahemällu salvestamine parandab lugemiskiirust ja kasutaja vastus aega, eriti sageli kasutatavate andmete puhul. See meetod on kõige tõhusam staatiliste või harva muutuvate andmete puhul.
Optimaalse vahemällu salvestamise tõhususe tagamiseks võtke arvesse selliseid tegureid nagu aegumispoliitika, väljatõstmisstrateegiad ja vahemälu suuruse haldamine. Optimaalse jõudluse saavutamiseks kohandage sätteid, nagu näiteks elamisaeg (TTL). Vahemälu kasutamiseks salvestuskoormuse optimeerimiseks kaaluge järgmisi strateegiaid.
Mälusisene vahemällu salvestamine: tehke mälusisene vahemällu salvestamine, et salvestada sageli kasutatavad andmed mällu kiireks taastamiseks. Seda tehnikat saate kasutada rakendusandmete jaoks, mille arvutamine või andmebaasist toomine on kallis. Mälusisene vahemällu salvestamine on kasulik andmete puhul, mida loete sageli, kuid mida sageli ei muudeta. Näiteks saate andmete vahemällu salvestamiseks kasutada muutujaid pilvevoogudes või lõuendirakenduste kogudes.
Andmebaasipäringu vahemällu salvestamine: kasutage seda tehnikat andmebaasipäringute tulemuste vahemällu salvestamiseks, et vältida sama päringu mitmekordset käitamist. Andmebaasipäringute vahemällu salvestamine on kasulik keerukate ja aeganõudvate andmebaasipäringute jaoks. Kui salvestate päringu tulemused vahemällu, tagastatakse sama päringu järgmised päringud kiiresti. Samuti kaaluge võimaluse korral serveripoolsete vaadete kasutamist andmete eelfiltreerimiseks, et kitsendada teie päringu jaoks olulisi andmeid.
Sisu edastamise võrgu vahemällu salvestamine: kasutage seda tehnikat veebisisu vahemällu salvestamiseks hajutatud võrguserverites, et vähendada latentsust ja parandada sisu edastamist. Sisu edastamise võrgu vahemällu salvestamine on efektiivne staatilise sisu, näiteks piltide, CSS failide ja JavaScript-failide puhul. Sisu edastamise võrgud salvestavad sisu koopiaid mitmes kohas üle maailma, nii et kasutajad pääsevad sisule juurde geograafiliselt lähedal asuvast serverist.
Andmevärskenduste optimeerimine
Andmete värskenduste optimeerimine hõlmab andmete värskenduste hindamist, et tagada nende toimivus. Värskendused võivad jõudlust rohkem mõjutada kui muud toimingud, kuna need võivad vallandada tarbetut tööd ja põhjustada lukustuskonflikte.
Andmevärskenduste optimeerimise hindamiseks kaaluge järgmist.
Andmete muudatused. Optimeerige automatiseerimist, et kasutada andmete eelkujutisi või filtreid, et minimeerida tööd, kui tegelikke muudatusi pole toimunud. Vältige muutmata andmete automatiseerimise käivitamist.
Automatiseerimine. Andmete muudatuste põhjal hinnake, millal ja kuidas värskendused käivitatakse, ning optimeerige käivitajad filtri kaasamiseks. Näiteks automatiseerimise käivitamiseks ainult siis, kui andmeallikas konkreetset välja muudetakse. Hinnake värskendusi, mis käivitavad järk-järgult automatiseerimise mitu korda. Selle asemel kaaluge, kas saate luua kohandatud toimingu, mis käsitleb kogu töötlemist. Näiteks kui tellimus tarnitakse ning tarnekuupäeva ja jälgimisnumbrit värskendatakse eraldi, saab neid mõlemaid kohandatud toimingu „ShipOrder” raames värskendada korraga.
Ummikud. Hinnake aeglaseid värskendustoiminguid, mis võivad põhjustada probleeme mitme voo tõttu, mis värskendavad samu andmeid erinevates järjestustes. See ebatõhusus võib viia konfliktide lukustamiseni või isegi potentsiaalsete ummikseisudeni, mille tulemuseks on tarbetu ümbertöötamine. Värskendage erinevaid ressursse samas järjestuses, et tülisid minimeerida.
Hulgivärskendused. Kui käitate toiminguid mitmel tabelireal, kaaluge selle kasutamist hulgitoimingud.
Andmete liikumise ja töötlemise optimeerimine
Andmete liikumise ja töötlemise optimeerimine hõlmab andmete ekstraheerimise, teisendamise, laadimise ja töötlemisega seotud toimingute tõhususe ja jõudluse parandamist. Mõelge andmete liikumise ja töötlemise optimeerimise järgmistele põhiaspektidele.
Ekstrakti, teisenduse ja laadimise (ETL) optimeerimine : optimeerige ETL-protsesse, et minimeerida töötlemisaega. Saate ekstraheerimisprotsessi sujuvamaks muuta, tõhusaid teisendusalgoritme rakendada ja laadimisprotsessi optimeerida. Kui muudate iga samm tõhusaks, optimeerite üldist töövoogu.
Paralleelne töötlemine : Kasutage jõudluse parandamiseks paralleeltöötlustehnikaid. Kui jagate andmetöötlusülesandeid mitme lõime või sõlme vahel, saate töökoormuse samaaegselt jagada ja töödelda, mille tulemuseks on kiire töötlemine.
Partii töötlemine : rühmitage sarnased ülesanded kokku, et vähendada korduvatest toimingutest tulenevaid üldkulusid. Töötlege mitut ülesannet korraga, et vähendada üldist töötlemisaega.
Disain andmete läheduse jaoks
Andmete lähedus viitab andmete strateegilisele paigutamisele neile kõige sagedamini juurdepääsu saavatele kasutajatele või teenustele lähemale. Füüsilise või loogilise kauguse vähendamine andmete ja nende kasutajate vahel tagab kiirema juurdepääsu andmetele ja parema reageerimisvõime. Kujunduse optimeerimiseks vahetus läheduses kaaluge järgmisi strateegiaid.
Hinnake andmetele juurdepääsu mustreid : hinnake oma töökoormuse juurdepääsumustreid ja sageli kasutatavaid andmeid. See analüüs võib aidata määrata, kuhu andmed maksimaalse kasu saamiseks paigutada.
Andmete ümberpaigutamist toetavate lahenduste valimine: kaaluge lahendusi, mis pakuvad dünaamilist andmete ümberpaigutamist, mis põhineb muutuvatel juurdepääsumustritel, tagades andmete optimaalse positsioneerimise.
Andmete sünkroonimist toetavate lahenduste valimine: kui teenindate hajutatud kasutajabaasi, valige lahendused, mis võimaldavad andmete sünkroonimist eri piirkondades, et tagada andmete paljundamise kättesaadavus kasutajate läheduses.
Kompromiss: kui aluseks olevaid andmeid sageli muudetakse, rakendage vahemälu kehtetuks tunnistamise mehhanism, et tagada vahemällu salvestatud andmete ajakohasus.
Power Platform Hõlbustamine
Andmete jõudluse jälgimine: andmete jõudluse jälgimiseks kaaluge taristumõõdikute, logide ja rakenduste andmete kogumiseks ja analüüsimiseks Azure Monitori kasutamist. Monitori saate integreerida teiste teenustega, näiteks Application Insights. Application Insights pakub rakenduste jõudluse jälgimist ja toetab paljusid platvorme.
Application Insights kogub kasutus- ja jõudlusandmeid. Saate kasutada logianalüüsi , et korreleerida neid andmeid Azure ressursside konfiguratsiooni- ja toimivusandmetega. Andmevoog Application Insights Dataverse pakub praegu API sissetulevate kõnede, Dataverse lisandmooduli täitmiskõnede ja Dataverse SDK-kõnedega Dataverse seotud jõudlusandmeid.
Päringuandmete mustrite optimeerimine lõuendirakendustes: järgige dokumenteeritud juhiseid ja soovitusi. Vt teemat Optimeeritud päringuandmete mustrid Power Apps.
Optimeerige kohandamist, laiendamist või integreerimist Dataverse: Järgige dokumenteeritud häid tavasid ja juhiseid. Vaadake teemat Head tavad ja juhised kasutamisel Microsoft Dataverse.
Andmebaasipäringute ja registrijõudluse optimeerimine: päringute, tabelite ja andmebaaside optimeerimiseks kasutage Azure SQL andmebaasi päringujõudluse ülevaate funktsiooni. Seda funktsiooni saate kasutada ka päringu jõudlusprobleemide tuvastamiseks ja tõrkeotsinguks.
Relatsiooniliste andmebaaside puhul järgige registri kujundamise juhiseid, SQL Serveri registri juhiseid ja Azure Cosmos DB registrijuhiseid. Kasutage SQL andmebaasi päringute automaatseks häälestamiseks , et parandada nende toimivust.
SQL andmebaaside puhul peaksite indekseid regulaarseltümber korraldama või uuesti üles ehitama. Tuvastage aeglased päringud ja häälestage neid jõudluse parandamiseks. Paljudel andmebaasimootoritel on päringute häälestamise funktsioonid. Lisateavet leiate päringujõudluse headesttavadest.
Azure-l Cosmos DB on vaikimisi indekseerimispoliitika , mis indekseerib iga üksuse iga atribuudi ja jõustab vahemiku indeksid mis tahes stringi või numbri jaoks. See poliitika tagab teile tõhusa päringujõudluse ja te ei pea indekseid eelnevalt haldama.
Salvestuskoormuse optimeerimine: Paljud Azure andmebaasiteenused toetavad lugemisreplikaid. Lugemiskoopiate kättesaadavus ja konfiguratsioon varieerub sõltuvalt Azure andmebaasiteenusest. Vaadake iga teenuse ametlikku dokumentatsiooni, et mõista üksikasju ja võimalusi.
Seotud teave
- Ülevaade performanti loomisest Power Apps
- Valige oma rakendusele Azure andmesalv
- Voo päästiku kohandamine Power Automate tingimuste lisamisega
- Dataverse elastsed lauad
Jõudlustõhususe kontroll-loend
Vaadake kõiki soovitusi.