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 tulemuslikkuse ja efektiivsuse kontrollnimekirja soovituse kohta:
| PE:08 | Optimeerige andmete jõudlust. Optimeerige andmesalve nende kavandatud ja tegelikuks kasutamiseks töökoormuses. |
|---|
Selles juhendis kirjeldatakse soovitusi andmete jõudluse optimeerimiseks. Andmete jõudluse optimeerimine seisneb töökoormuse andmete töötlemise ja salvestamise tõhususe täpsustamises. 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, toimib töökoormus sujuvalt. Andmete jõudluse kahjustamine tekitab halva jõudluse efektiivsuse doominoefekti. Andmete jõudluse optimeerimata jätmine põhjustab reageerimisviivitusi, suurenenud latentsust ja piiratud skaleeritavust. See seab ohtu kogu töökoormuse tõhususe.
Mõisted
| Mõiste | Määratlus |
|---|---|
| Andmehoidla | Ressurss, mis talletab andmeid (nt andmebaas, objektisalv või failikettad). |
| Index | Andmebaasi struktuur, mis pakub kiiret juurdepääsu üksustele. |
| Veebipõhine analüütiline töötlemine (OLAP) | Tehnoloogia, mis korraldab suuri äriandmebaase, toetab keerulist analüüsi ja teostab keerulisi analüütilisi päringuid ilma tehingusüsteeme negatiivselt mõjutamata. |
| 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 andmesalvestiteks. |
| Päringu häälestamine | Protsess, mis optimeerib andmebaasipäringu kiirust. |
Peamised disainistrateegiad
Andmekasutuse optimeerimiseks veenduge, et andmesalvestid on optimeeritud nende kavandatud kasutuseks ja nende tegelikuks kasutamiseks töökoormuses. Optimeeritud andmekasutus võib parandada päringute 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 teie töökoormusega hästi. Mõelge sellistele teguritele nagu andmete normaliseerimine ja partitsioneerimistehnikad. Andmete tõhusaks toomiseks 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 tehnikaid nagu päringute optimeerimine ja vahemällu salvestamine. Kasutage andmete eelfiltreerimiseks serveripoolseid vaateid. Kitsaskohtade tuvastamiseks kasutage tulemuslikkuse jälgimise tööriistu ja seejärel tehke vajalikud parandused.
Jälgige ja häälestage süsteemi regulaarselt. Jälgige pidevalt oma töökoormuse jõudlust ning itereerige andmesalvestuse konfiguratsiooni ja päringute optimeerimist. Analüüsige jõudluse häälestamise parimate tavade põhjal süsteemi mõõdikuid, tuvastage parendusvaldkonnad ja rakendage muudatusi. Andmete kasvades peate võib-olla oma päringuid värskendama, et need toimiksid.
Profiili andmed
Andmete profileerimine hõlmab allikast pärit andmete uurimist 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 kõrvalekalded.
Tõhusaks andmeprofiilide koostamiseks kaaluge järgmisi strateegiaid:
Andmestruktuuri mõistmine. Uurige oma andmete struktuuri (sh tabelid, veergud ja seosed). Määrake igale veerule rakendatavad andmetüübid, pikkused ja piirangud. Andmestruktuuri hindamine aitab teil mõista, kuidas andmed on korraldatud ja kuidas need on seotud teiste andmeelementidega.
Analüüsige andmemahtu. Hinnake oma andmete mahtu, et mõista üldist suurust ja kasvumustreid. Kirjete või dokumentide arvu ja üksikute tabelite või kogumite mahu määramine. See teave aitab teil hinnata salvestusruumi nõudeid ja tuvastada skaleeritavuse probleeme.
Andmeseoste tuvastamine. Uurige andmeelementide vahelisi seoseid. Saate teada, kuidas andmed on omavahel seotud, et saaksite kindlaks teha, kuidas ühe tabeli või dokumendi 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. Tuvastage andmete kõrvalekalded, puuduvad väärtused või duplikaatkirjed, mis võivad mõjutada andmete terviklikkust ja päringu jõudlust. See samm aitab teil tuvastada andmete puhastamise ja täiustamise valdkonnad.
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 andmete moonutused. Päringu jõudluse optimeerimiseks analüüsige, kas alternatiivsed võtmed oleksid jõudluse parandamiseks sobivad.
Andmete jõudluse jälgimine
Andmete jõudluse jälgimine on andmehoidlate tõhususe järjepidev jälgimine. See hõlmab andmetoimingutele omaste jõudlusmõõdikute kogumist ja analüüsimist, kasutades süsteemi-, andmebaasi- 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.
Andmepõhiste mõõdikute kogumine. Koguge põhimõõdikuid, mis on otseselt seotud andmete jõudlusega. Need mõõdikud hõlmavad päringu reageerimisaegu ja andmete läbilaskevõimet.
Seadistageandmeteatised. Seadistage teatised spetsiaalselt andmemõõdikute jaoks. Kasutage nendes mõõdikutes teatiste käivitamiseks eelmääratletud lävesid või kõrvalekaldeid. Hoiatused võimaldavad teil saada teatisi, kui jõudlusmõõdikud ületavad vastuvõetavaid vahemikke või näitavad ebatavalist käitumist; Näiteks kui andmebaasipäring võtab oodatust kauem aega või kui andmete läbilaskevõime väheneb oluliselt. Neid hoiatusi saate seadistada spetsiaalsete jälgimistööriistade või kohandatud skriptide abil.
Andmete jõudlusprobleemide diagnoosimine. Vaadake kogutud andmemõõdikud regulaarselt üle, et tuvastada võimalikud jõudluse 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 kõrvalekaldeid. Kui need on tuvastatud, uurige nende probleemide algpõhjuseid ja kavandage sobivad parandusmeetmed.
Andmete partitsioonimine
Partitsioneerimine hõlmab suurte andmekogumite või suuremahuliste töökoormuste jagamist väiksemateks, hallatavateks alamhulkadeks. Partitsioneerimine 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 sektsioonida vertikaalselt või horisontaalselt (nimetatakse ka killustamiseks). Näiteks kui kasutate Dataverse elastseid tabeleid, kaaluge, milline peaks olema sektsioonivõti.
| Strateegia | Määratlus | Näide | Kasutusjuhtumid |
|---|---|---|---|
| Vertikaalne eraldamine | Jagage tabel väiksemateks tabeliteks, valides iga sektsiooni jaoks konkreetsed veerud või väljad. Iga partitsioon esindab 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 veergudega C ja D. | - Tabel sisaldab palju veerge, kuid päringud ei pääse kõigile veergudele koos. - Mõned veerud on suuremad kui teised ja nende eraldamine võib suurendada I/O jõudlust. - Erinevatel andmeosadel on erinevad juurdepääsumustrid. |
| Horisontaalne eraldamine | Andmete tükeldamine ridade või väärtusvahemike alusel (nimetatakse ka killustamiseks). Iga partitsioon sisaldab sarnaste omadustega ridade alamhulka. | Kui teil on tabel ridadega 1 kuni 1000, võite luua ühe partitsiooni ridadega 1 kuni 500 ja teise ridadega 501 kuni 1000. | - Andmestik on ühe asukoha või serveri jaoks liiga suur. - Andmetele pääsetakse ligi konkreetsete vahemike või filtrite alusel. - Jõudluse parandamiseks on vaja töökoormust jaotada füüsiliste sõlmede või serverite vahel. |
Andmete partitsioonimiseks kaaluge järgmisi samme.
Analüüsige andmeid ja päringuid. Analüüsige andmeid ja päringumustreid, et tuvastada sobivad sektsiooni- või killustamisstrateegiad. Mõista andmete olemust, juurdepääsumustreid ja levitamisnõudeid.
Määrake võti. Valige sektsiooni- või killustamisvõti, et jaotada andmed sektsioonide või kildude vahel. Valige võti hoolikalt andmete omaduste ja päringunõuete põhjal.
Määrake loogika. Määrake valitud võtme põhjal sektsiooni- või killustamisloogika. Kaaluge andmete jagamist vahemikesse, räsialgoritmide rakendamist või muude partitsioneerimistehnikate kasutamist.
Päringute optimeerimine
Päringute optimeerimine täpsustab päringuid, et vähendada kvalifitseeruvaid andmeid ja tagastatavaid andmeid. Need kohandused suurendavad andmete hankimise tõhusust ja kiirust. Selle tulemusena 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 keerulisi päringuid, et tuvastada võimalused nende ümberkirjutamiseks. Kaaluge päringuloogika ümberkorraldamist, üleliigsete toimingute kõrvaldamist või päringusüntaksi lihtsustamist.
Vältige N+1 päringu probleemi. Minimeerige andmebaasi edasi-tagasi sõitude arvu, kasutades seotud andmete tõhusaks toomiseks ühendusi ja partii toomist.
Ümberjärjestamine liitub. Hinnake ja kaaluge ühendamisjärjestuse ümberkorraldamist, et minimeerida ridade arvu igas ühendamistoimingus. Tabelite ühendamise järjekord võib mõjutada päringu jõudlust.
Vahemälu päringud. Salvestage sageli esitatavate päringute tulemused hõlpsaks taaskasutamiseks. Päringu vahemällu salvestamine välistab vajaduse sama päringu korduva käitamise järele 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 andmebaasi profileerimise tööriistu ja jälgimisfunktsioone, et tuvastada halvasti toimivaid päringuid. Kasutage seda teavet päringu jõudluse optimeerimiseks.
Andmete arhiivimine ja puhastamine
Arhiveerimine ja puhastamine on strateegiad, mis muudavad andmete salvestamise sujuvamaks. Arhiivimine paigutab vanemad, harvemini kasutatavad andmed ümber kulutõhusamasse salvestusruumi. Andmete puhastamine eemaldab jäädavalt üleliigsed andmed. Mõlemad meetodid aitavad kaasa jõudluse tõhususele, vähendades andmemahtu, suurendades andmetele juurdepääsu kiirust ning vähendades varundamis- ja taastamisaega.
- Andmemahu vähendamine: Vähem andmeid tähendab kiiremat töötlemisaega, tagades kiire reageerimise kasutajate päringutele.
- Andmetele juurdepääsu kiiruse suurendamine: kärbitud andmestik võimaldab kiiremaid päringuid ja andmete otsimist, optimeerides süsteemi reageerimisvõimet.
- Varundamise ja taastamise aja vähendamine: Väiksemad andmekogumid kiirendavad varundamis- ja taastamisprotsesse, minimeerides seisakuid ja tagades ühtlase jõudluse.
Arhiveerimine ja puhastamine on andmepõhiste süsteemide tippjõudluse tõhususe säilitamisel olulised.
Salvestusruumi koormuse optimeerimine
Salvestuskoormuse optimeerimine tähendab salvestussüsteemile esitatud päringute sujuvamaks muutmist. See aitab kõrvaldada tarbetuid päringuid, parandab andmete otsimist ja väldib salvestussüsteemi ülekoormamist. Salvestuskoormuse optimeerimine tagab, et salvestussüsteem reageerib õigustatud päringutele ja säilitab tippjõudluse. Rakendage strateegiaid andmesalve töötlemiskoormuse vähendamiseks. Andmesalve koormuse optimeerimiseks kaaluge järgmisi strateegiaid.
Kasutage vahemällu salvestamist
Vahemällu salvestamine salvestab sageli kasutatavad andmed kiirjuurdepääsuga salvestusalale, muutes andmete hankimise kiiremaks kui nende tõmbamine põhiallikast. See tehnika suurendab andmete jõudlust, lühendades juurdepääsuaegu ja vältides korduvaid andmete toomist. Vahemällu salvestamine parandab lugemiskiirust ja kasutaja reageerimisaega, eriti sageli kasutatavate andmete puhul. See meetod on kõige tõhusam staatiliste andmete või harva muutuvate andmete puhul.
Vahemällu salvestamise optimaalse tõhususe tagamiseks kaaluge selliseid tegureid nagu aegumispoliitikad, väljatõstmisstrateegiad ja vahemälu suuruse haldamine. Optimaalse jõudluse tagamiseks reguleerige sätteid, näiteks eluaega (TTL). Vahemälu kasutamiseks salvestusruumi koormuse optimeerimiseks kaaluge järgmisi strateegiaid.
Mälusisene vahemällu salvestamine: tehke mälusisene vahemällu salvestamine, et salvestada sageli kasutatavad andmed mällu kiireks toomiseks. Seda tehnikat saate kasutada rakenduse andmete puhul, 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 kogumites.
Andmebaasipäringu vahemällu salvestamine: kasutage seda tehnikat andmebaasipäringute tulemite vahemällu salvestamiseks, et vältida sama päringu mitmekordset käivitamist. Andmebaasipäringute vahemällu salvestamine on kasulik keerukate ja aeganõudvate andmebaasipäringute puhul. Päringu tulemite vahemällu salvestamisel tagastatakse sama päringu järgmised taotlused kiiresti. Võimaluse korral kaaluge ka serveripoolsete vaadete kasutamist andmete eelfiltreerimiseks, et kitsendada päringuga seotud 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 tõhus staatilise sisu, näiteks piltide, CSS failide ja JavaScripti failide puhul. Sisu edastamise võrgud salvestavad sisu koopiaid mitmes kohas üle maailma, nii et kasutajad pääsevad sisule juurde nende geograafiliselt lähedal asuvast serverist.
Andmevärskenduste optimeerimine
Andmevärskenduste optimeerimine hõlmab tehtud andmete värskenduste hindamist, et tagada nende toimivus. Värskendused võivad mõjutada jõudlust rohkem kui muud toimingud, kuna need võivad käivitada tarbetut tööd ja põhjustada lukustuskonflikte.
Andmevärskenduste optimeerimise hindamiseks kaaluge järgmist.
Andmete muudatused. Optimeerige automatiseerimist, et kasutada andmete eelpilte või filtreid, et minimeerida tööd, kui tegelikke muudatusi pole toimunud. Vältige muutmata andmete automatiseerimist.
Automatiseerimine. Hinnake, millal ja kuidas värskendused käivitatakse andmete muudatuste põhjal, ning optimeerige päästikud filtri kaasamiseks. Näiteks automaatika käivitamiseks ainult siis, kui andmeallika kindlat välja muudetakse. Hinnake värskendusi, mis käivitavad järk-järgult automatiseerimisi mitu korda. Selle asemel kaaluge, kas saate luua kohandatud toimingu kogu töötlemise käsitlemiseks. Näiteks kui tellimus tarnitakse ning lähetuse kuupäeva ja jälgimisnumbrit värskendatakse eraldi, saab neid mõlemaid värskendada korraga kohandatud toimingus "ShipOrder".
Ummikseisud. Hinnake aeglasi värskendustoiminguid, mis võivad põhjustada probleeme, kuna mitu voogu värskendavad samu andmeid erinevates järjestustes. Selline ebaefektiivsus võib põhjustada lukustuskonflikte või isegi võimalikke ummikseisu, mille tulemuseks on tarbetu ümbertegemine. Vaidluste minimeerimiseks värskendage erinevaid ressursse samas järjestuses.
Hulgivärskendused. Kui käivitate toiminguid tabeli mitmel real, kaaluge hulgitoimingute kasutamist.
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:
Ekstraktimise, teisendamise ja laadimise (ETL) optimeerimine: optimeerige ETL-protsesse, et minimeerida töötlemisaega. Saate ekstraheerimisprotsessi sujuvamaks muuta, rakendada tõhusaid teisendusalgoritme ja optimeerida laadimisprotsessi. Kui muudate iga sammu tõhusaks, optimeerite üldist töövoogu.
Paralleeltöötlus: jõudluse parandamiseks kasutage paralleelse töötlemise tehnikaid. Kui jaotate andmetöötlusülesandeid mitme lõime või sõlme vahel, saate töökoormust jagada ja töödelda samaaegselt, mille tulemuseks on kiire töötlemine.
Paketttöötlus: rühmitage sarnased ülesanded kokku, et vähendada korduvatest toimingutest põhjustatud üldkulusid. Töötle mitut ülesannet partiina, et vähendada üldist töötlemisaega.
Andmete läheduse kujundamine
Andmete lähedus viitab andmete strateegilisele paigutamisele lähemale kasutajatele või teenustele, kes neile kõige sagedamini juurde pääsevad. Andmete ja nende kasutajate vahelise füüsilise või loogilise kauguse vähendamine tagab kiirema juurdepääsu andmetele ja parema reageerimisvõime. Disaini optimeerimiseks läheduse jaoks kaaluge järgmisi strateegiaid.
Andmetele juurdepääsu mustrite hindamine: hinnake oma töökoormuse juurdepääsumustreid ja sageli kasutatavaid andmeid. See analüüs aitab kindlaks teha, kuhu andmed maksimaalse kasu saamiseks paigutada.
Valige lahendused, mis toetavad andmete ümberpaigutamist: kaaluge lahendusi, mis pakuvad dünaamilist andmete ümberpaigutamist, mis põhineb muutuvatel juurdepääsumustritel, tagades andmete optimaalse positsioneerimise.
Valige lahendused, mis toetavad andmete sünkroonimist: kui teenindate hajutatud kasutajabaasi, valige lahendused, mis võimaldavad andmete sünkroonimist erinevates piirkondades, et tagada andmete koopiate kättesaadavus kasutajate läheduses.
Kompromiss: kui aluseks olevad andmed muutuvad sageli, 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 Azure Monitori kasutamist infrastruktuuri mõõdikute, logide ja rakendusandmete kogumiseks ja analüüsimiseks. Saate integreerida Monitori 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. Log Analyticsi abil saate korreleerida neid andmeid Azure’i ressursside konfiguratsiooni- ja jõudlusandmetega. Andmevoog Application Insights Dataverse pakub praegu jõudlusandmeid, mis on seotud Dataverse API sissetulevate kõnede, Dataverse pistikprogrammide käivitamiskutsete ja Dataverse SDK kutsetega.
Päringuandmete mustrite optimeerimine lõuendirakendustes: Järgige dokumenteeritud juhiseid ja soovitusi. Vt Optimeeritud päringu andmemustrid Power Apps.
Optimeerige kohandamist, laiendamist või integreerimist Dataverse:Järgige dokumenteeritud parimaid tavasid ja juhiseid. Vaadake jaotist Head Microsoft Dataverse tavad ja juhised kasutamisel.
Andmebaasipäringute ja indeksi jõudluse optimeerimine: kasutage päringute, tabelite ja andmebaaside optimeerimiseks Azure SQL Database’i päringu jõudluse ülevaate funktsiooni. Seda funktsiooni saate kasutada ka päringu jõudlusprobleemide tuvastamiseks ja tõrkeotsinguks.
Relatsiooniliste andmebaaside puhul järgige indeksi kujundamise juhiseid,SQL Serveri indeksi juhiseid ja Azure’i Cosmos DB indeksi juhiseid. Kasutage SQL-andmebaasi päringute automaatseks häälestamiseks , et parandada nende jõudlust.
SQL-andmebaaside puhul peaksite indekseid regulaarseltümber korraldama või ümber ehitama. Tuvastage aeglased päringud ja häälestage neid jõudluse parandamiseks. Paljudel andmebaasimootoritel on päringute häälestamise funktsioonid. Lisateabe saamiseks vaadake päringu jõudluse häid tavasid.
Azure’il Cosmos DB on vaikimisi indekseerimispoliitika , mis indekseerib iga üksuse kõik atribuudid ja jõustab vahemiku indeksid mis tahes stringi või arvu jaoks. See poliitika tagab teile tõhusa päringujõudluse ja te ei pea indekseid eelnevalt haldama.
Salvestuskoormuse optimeerimine: paljud Azure’i andmebaasiteenused toetavad lugemiskoopiaid. Loetavate koopiate saadavus ja konfiguratsioon sõltuvad Azure’i andmebaasiteenusest. Üksikasjade ja valikute mõistmiseks vaadake iga teenuse ametlikku dokumentatsiooni.
Seotud teave
- Ülevaade esineja loomisest Power Apps
- Valige oma rakenduse jaoks Azure’i andmesalv
- Voo päästiku kohandamine Power Automate tingimuste lisamisega
- Dataverse elastsed lauad
- SQL Serveri kasutamine lõuendirakendustega
- Dataverse'i kasutamine lõuendirakenduste andmeallikana
Toimivuse efektiivsuse kontroll-leht
Vaadake kõiki soovitusi.