Dažniausios drobių programų efektyvumo problemos ir jų sprendimai

Galite kurti drobės programas su skirtingu duomenų šaltinių pasirinkimu. Pasirinkite tinkamą duomenų šaltinį ir jungtį, priklausomai nuo veiklos reikmių ir scenarijų, kuriems kuriate programą. Įmonėms skirtoms programoms "Microsoft" Dataverse yra rekomenduojama duomenų šaltinis, nes ji suteikia keletą našumo pranašumų. Programoms, kuriose yra mažai operacijų, galite naudoti bet kuriuos kitus galimus duomenų šaltinius savo aplinkoje.

Kad apsvarstytumėte programos efektyvumą, pagalvokite apie tai, kiek vartotojų naudos programą, kai ji bus publikuota; kūrimo, naujinimo, gavimo ir naikinimo (CRUD) perlaidų apimtis; duomenų sąveikos tipas; geografinė prieiga ir įrenginių, kuriuos turi vartotojai, tipas.

Šiame straipsnyje sužinosite apie kai kurias iš dažniausiai pasitaikančių efektyvumo problemų, dėl kurių drobės programos gali neveikti našiai ir kaip jas išspręsti. Ši informacija jums padės pagerinti programos efektyvumą atsižvelgiant į jūsų veiklos planą ir plėtrą.

Pradėsime nuo kai kurių dažniausių efektyvumo problemų, kurios atsitinka neatsižvelgiant į naudojamą jungtį. Vėlesniuose skyriuose sužinosite apie efektyvumo problemas ir sprendimus, labiau susijusius su įvairiomis jungtimis.

Prieš pradėdami įsitikinkite, kad suprantate drobės programų vykdymo etapus ir duomenų skambučių srautą. Taip pat, skaitykite bendri lėto drobės programų veikimo šaltiniai tam, kad sužinotumėte apie bendrus pavojus, kurių galite išvengti kurdami ar naujindami drobės programas.

Dideli duomenų rinkiniai lėtai įkeliami skirtingose platformose

Programos našumas gali skirtis, kai įkeliami dideli duomenų rinkiniai skirtingose platformose, pvz., iOS arba Android. Taip nutinka dėl skirtingų kiekvienos platformos tinklo užklausos apribojimų. Pavyzdžiui, leidžiamų vienalaikių tinklo užklausų skaičius skirtingose platformose gali skirtis. Šis skirtumas gali turėti didelę įtaką didelių duomenų rinkinių duomenų rinkinių įkėlimo laikui.

Rekomenduojame įkelti tik duomenis, kuriuos reikia nedelsiant rodyti ekrane. Kitus duomenis skirstykite puslapiuose ir talpinkite savo duomenis. Daugiau informacijos: Patarimai ir geriausia praktika drobės programos efektyvumo pagerinimui

Per daug nuskaitytų stulpelių

Rekomenduojame jums pasirinkti tik reikiamus stulpelius, būtinus programai. Įtraukus daugiau arba visus stulpelius iš duomenų šaltinio, atsisiunčiami visi stulpelių duomenys. Šiam veiksmui atlikti reikia daug tinklo pridėtinių skambučių, todėl kliento įrenginyje naudojama labai daug atminties. Ši problema gali turėti dar daugiau įtakos vartotojams, naudojantiems mobiliuosius įrenginius, jei tinklo pralaidumas yra ribotas, jei įrenginyje yra ribota atmintis ar senesnis procesorius.

Pavyzdžiui, jei naudojate „Dataverse” kaip savo programos duomenų šaltinį, įsitikinkite, kad įjungėte Išplėstinis stulpelių pasirinkimas funkciją. Ši funkcija leidžia „Power Apps” apriboti duomenų nuskaitymą tik programoje naudojamiems stulpeliams.

Norėdami įjungti atskirą stulpelio pasirinkimo funkciją drobės programoje, eikite į Parametrai > Būsimos funkcijos > Peržiūra, tada įjunkite perjungiklį Aiškus stulpelių parinkimas toggle.

Nepalaikomos ar senstelėjusios naršyklės

Vartotojams, naudojantiems nepalaikomas arba pasenusias naršykles, gali kilti efektyvumo problemų. Užtikrinkite, kad vartotojai naudoja tik palaikomas naršykles drobės programų vykdymui.

Lėtas efektyvumas dėl geografinio atstumo

Aplinkos geografinė vieta ir duomenų šaltinio artumas galutiniams vartotojams turi įtakos efektyvumui.

Rekomenduojame, kad jūsų aplinka būtų arti vartotojų. Nors „Power Apps” turiniui naudoja „Azure Content Delivery Network“, duomenų skambučiai vis tiek gauna duomenis iš duomenų šaltinio. Duomenų šaltinis, esantis kitoje geografinėje vietoje, gali turėti neigiamos įtakos programos efektyvumui.

Per didelis geografinės vietos atstumas turi įtakos efektyvumui įvairiomis formomis, pavyzdžiui, gaištis, žemesnis našumas, mažesnis pralaidumas ir paketų praradimas.

Leidžiamųjų sąrašas nesukonfigūruotas

Įsitikinkite, kad reikalingi aptarnavimo URL neužblokuoti arba įtraukti į užkardos leidžiamųjų sąrašą. Norėdami gauti išsamų visų aptarnavimo URL, kuriuos turite leisti „Power Apps”, eikite į Reikiamas aptarnavimas.

Neperduodamų funkcijų ir netinkamo duomenų eilučių limito naudojimas neperduodamoms užklausoms

Perduodamos funkcijos paskirsto duomenų apdorojimą duomenų šaltinyje tam, kad sumažintų perteklių klientui. Kai perdavimas neįmanomas, galite apriboti neperduodamų užklausų duomenų eilučių limitą, kad iš serveriu pagrįsto ryšio grąžintų eilučių skaičius liktų optimalus.

Neperduodamų funkcijų ir netinkamo duomenų eilučių limito neperduodamos užklausoms naudojimas sukuria papildomą perteklių duomenų perdavimui. Šis perteklius įtakoja gautų duomenų tvarkymą į JS netvarkųjį masyvą kliento pusėje. Užtikrinkite perduodamų funkcijų naudojimą programai, kai tik galima, ir optimalų duomenų eilutės limitą neperduodamoms užklausoms.

Daugiau informacijos: Perdavimo naudojimas, Perdavimo apžvalga

„OnStart” įvykiui reikia nustatymo

„OnStart“ įvykis paleidžiamas įkeliant programą. Didelių apimčių duomenų iškvietimas naudojant programos „OnStart“ ypatybės funkcijas turės įtakos lėtam programos įkėlimui. Ekrano, daug priklausančio nuo valdiklių ir verčių, apibrėžtų kitame ekrane, naršymas sulėtės.

Toliau skyriuose aprašomos kelios dažniausiai pasitaikomos šių situacijų problemos.

Didelis „OnStart” įvykio skambučių skaičius, dėl kurio programa pasileidžia lėtai

Įmonėje duomenų skambučių į centrinį duomenų šaltinį apimtis gali sukelti serverio spartos ribojimą arba išteklių nesutapimą.

Naudokite talpyklos mechanizmą ir optimizuokite duomenų skambučius. Viena programa gali būti naudojama daugelio vartotojų, todėl vienas vartotojas gali naudoti daug duomenų skambučių, pasiekiančių serverio galinius punktus. Šie duomenų skambučiai gali būti taškas, kuriame gali įvykti spartos ribojimas arba lėtinimas.

„OnStart” įvykio gaištis, nes yra sunkių scenarijų

Sunkūs įvykio scenarijai „OnStart“ yra viena iš dažniausiai pasitaikančių klaidų kuriant drobės programas. Turėtumėte gauti tik programai pradėti reikalingus duomenis.

Optimizuokite formulę „OnStart“ įvykyje. Pavyzdžiui, vietoj to perkelkite kai kurias funkcijas „OnVisible“ ypatybę. Tokiu būdu leidžiate programai įsijungti greitai ir kiti veiksmai gali būti vykdomi toliau, kol programa atidaroma.

Daugiau informacijos: Ypatybės „OnStart" optimizavimas

Arbatpinigiai

Rekomenduojame naudoti ypatybę App.StartScreen, nes ji supaprastina programos paleidimą ir padidina programos efektyvumą.

Atminties spaudimas klientui

Drobės programų atminties naudojimo tikrinimas yra svarbus, kadangi dauguma atvejų programa veikia mobiliuosiuose įrenginiuose. Atminties išimtys netvarkiajame masyve yra labiausiai tikėtina priežastis, dėl kurios kai kuriuose įrenginiuose sugenda arba užstringa drobės programa.

„JavaScript” (JS) netvarkusis masyvas gali trenktis į lubas dėl to, kad kliento pusėje veikia sunkūs scenarijai tam, kad būtų įtraukti, sujungti, filtruoti, surikiuoti ar sugrupuoti stulpeliai. Daugeliu atvejų, „trūksta atminties” išimtis kliento netvarkiajame masyve gali sukelti programos gedimą arba strigimą.

Naudodami duomenis iš šaltinių, pavyzdžiui, „Dataverse” arba SQL serverio, galite naudoti Žiūrėti objektą tam, kad užtikrintumėte, jog sujungimas, filtravimas, grupavimas arba rikiavimas vyktų serveryje, o ne kliente. Taip sumažinama tokių veiksmų scenarijų kliento apkrova.

Jei klientą sunkinančios operacijos, pavyzdžiui „JOIN“ ar Grupuoti pagal įvyko kliento pusėje su duomenų rinkiniu, turinčiu 2000 ar daugiau įrašų, netvarkiojo masyvo objektai padidės, todėl bus viršyta riba.

Daugelio naršyklių kūrėjų įrankiai suteikia galimybę nustatyti atminties profilį. Tai padeda vizualizuoti netvarkiojo masyvo dydį, dokumentus, mazgus ir klausytojus. Profilį programos efektyvumą naudodami naršyklę, kaip aprašyta „Microsoft Edge“ („Chromium") programų kūrėjų įrankių apžvalgoje. Patikrinkite scenarijus, kurie viršija JS krūvio atminties ribą. Daugiau informacijos: Atminties problemų sprendimas

Programos atminties spaudimo pavyzdys, matomas naršyklės programų kūrėjų įrankiuose.

Efektyvumo aspektai naudojant SQL serverio jungtį

Galite naudoti SQL serverio jungtį, skirtą „Power Apps“ norėdami prisijungti prie vietinio SQL serverio arba „Azure SQL” duomenų bazės. Šiame skyriuje aprašomos bendrosios su našumui susijusios problemos ir sprendimai, kaip naudoti šią jungtį drobės programėlei. Daugiau informacijos: Prisijungimas prie SQL serverio naudojant Power Apps, Drobės programos kūrimas iš „Azure" SQL duomenų bazės

Pastaba

Nors šiame skyriuje apžvelgiama SQL serverio jungtis efektyvumo problemoms ir jų sprendimams, dauguma rekomendacijų taip pat taikomos naudojant bet kurį duomenų bazės tipą—kaip duomenų šaltinį, pavyzdžiui, „MySQL” arba „PostgreSQL”—.

Pažvelkime į dažnas efektyvumo problemas ir sprendimus, drobės programoms naudojant SQL serverio jungtį.

N+1 užklausa

Galerijos, generuojančios per daug užklausų į serverius, sukėlė N+1 užklausos problemą. „N+1“ užklausos problema yra viena iš dažniausiai pasitaikančių problemų naudojant Galerijos valdiklį.

Norėdami išvengti problemos, naudokite SQL pabaigos rodinio objektus arba pakeiskite vartotojo sąsajos scenarijus.

Lentelių žvalgymas, o ne rodyklės skaitymas

Programa gali sulėtėti, jei programos funkcijos vykdo užklausas duomenų bazėje ir tai lemia lentelės nuskaitymą vietoj rodyklės paieškos. Daugiau informacijos: Užuominos, Lentelė NUSKAITYTI ir Rodyklė IEŠKOTI

Norėdami išspręsti tokias problemas, naudokite „StartsWith“ vietoj „IN“ formulėje. Naudodami SQL duomenų šaltinį, operatorius „StartsWith“ lemia rodyklės ieškojimą; bet „IN“ operatorius lemia rodyklės arba lentelės nuskaitymą.

Lėtos užklausos

Galite nustatyti profilį ir suderinkite lėtas užklausas ir rodykles SQL duomenų bazėje. Pavyzdžiui, jei yra formulė, gaunanti tam tikrus duomenis mažėjimo (DESC) tvarka tam tikrame stulpelyje, tas rikiavimo stulpelis turi turėti rodyklę mažėjimo tvarka. Pagal numatytąjį indeksą, rodyklės raktas sukuria didėjimo (ASC) tvarką.

Taip pat galite patikrinti duomenų užklausų URL adresą. Pavyzdžiui, šis duomenų užklausos fragmentas (dalinis „OData” skambutis) prašo SQL sugrąžinti 500 įrašų, atitinkančių stulpelį Reikšmė ir surikiuotų pagal ID mažėjimo tvarka.

Items? \$filter=Column eq 'Value' & Orderby = ID desc & top 500

Tai padeda suprasti rodyklės reikalavimus, kad jie apimtų tokias užklausos sąlygas. Šiame pavyzdyje ID stulpelio rodyklė turi būti mažėjimo tvarka tam, kad užklausą būtų galima atlikti greičiau.

Patikrinkite lėtų užklausų vykdymo planą lentelės ar rodyklės nuskaitymui peržiūrėti. Stebėkite bet kokias per didelės vykdymo plano pagrindinės peržvalgos išlaidas.

Daugiau informacijos:

Duomenų bazės išteklių nesutapimas

Įsitikinkite, duomenų šaltinis—SQL duomenų bazėje—neturi jokių išteklių nesutapimų, pavyzdžiui, procesoriaus spartos ribojimo, I/O nesutapimo, atminties spaudimo arba tempDB nesutapimo. Taip pat patikrinkite, ar nepasibaigė užrakto, laukimo, aklavietės ir užklausų skirtasis laikas.

Arbatpinigiai

Naudokite automatinį derinimą įžvalgoms apie galimas užklausų efektyvumo problemas, rekomenduojamus sprendimus ir automatinį nustatytų problemų sprendimą.

Tankus klientas arba perteklinės užklausos

Programa, kurioje veikia Grupuoti pagal, Filtruoti pagal ar „JOIN“ operacijos kliento pusėje naudoja procesorių ir atminties išteklius iš kliento įrenginių. Priklausomai nuo duomenų dydžio, šios operacijos gali užtrukti daugiau scenarijų vykdymo laiko kliento pusėje ir padidinti kliento JS netvarkiojo masyvo dydį. Naudojant vietinį duomenų šaltinį, ši problema didėja, nes kiekvienas duomenų peržvalgos skambutis per duomenų šliuzą patenka į duomenų šaltinį.

Tokiais atvejais operacijoms Grupuoti pagal, Filtruoti pagal arba JOIN naudoti SQL duomenų bazės objektą Rodinys . Rodiniai gali naudoti pasirinktinius stulpelius ir pašalinti nebūtinus stulpelius su didelių duomenų tipais, pavyzdžiui, „NVARCHAR(MAX)“, „VARCHAR(MAX)“ ir „VARBINARY(MAX)“.

Arbatpinigiai

Šis metodas taip pat padeda adresuoti N+1 užklausos problemą.

Klientui perduotų duomenų dydis

Pagal numatytuosius nustatymus, drobės programoje rodomi duomenys naudojant lenteles arba galimų duomenų bazės objektų rodinius. Nuskaitant visus lentelės stulpelius atsakas gali būti lėtas, ypač naudojant didelių duomenų tipus, pavyzdžiui „NVARCHAR(MAX)“.

Didelių kiekių duomenų perdavimas klientams užtrunka laiko. Šis perdavimas taip pat lemia daugiau scenarijų vykdymo laiko, kai kliento pusėje yra daug duomenų JS krūvoje, kaip aprašyta šiame straipsnyje.

Norėdami sumažinti į klientą perkeliamą duomenų dydį, naudokite rodinius su konkrečiais programai reikiamais stulpeliais ir įsitikinkite, kad įjungtas aiškus stulpelių pasirinkimas, kaip aprašyta šiame straipsnyje.

Vietinio SQL serverio aspektai

Drobės programų, kuriose naudojama SQL serverio jungtis su vietiniu duomenų šliuzu, efektyvumas gali būti paveiktas įvairiais būdais. Šiame skyriuje išvardytos dažnos efektyvumo problemos ir sprendimai, susiję su vietinio duomenų šaltinio naudojimu.

Netinkamas vietinis duomenų šliuzas

Organizacijos gali apibrėžti kelis vietinių duomenų šliuzų mazgus. Net jei vienas iš mazgų yra nepasiekiamas, duomenų užklausos į netinkamą mazgą negrąžins rezultatų per tinkamą skirtąjį laiką arba sukels klaidos pranešimus palaukus kurį laiką.

Įsitikinkite, kad visi vietinio duomenų šliuzo mazgai yra tinkami ir sukonfigūruoti taip, kad tarp mazgų ir SQL egzemplioriaus būtų minimali tinklo gaištis.

Vietinio duomenų šliuzo vieta

Duomenų šliuzas reikalauja tinklo skambučius į vietinius duomenų šaltinius interpretuoti „OData” užklausas. Pavyzdžiui, duomenų sąsajos turi suprasti duomenų lentelės schemą, kad "OData" užklausos būtų išverstos į SQL duomenų išsacijų kalbos (DML) išrašus. Papildomos pridėtinės išlaidos pridedamos, kai duomenų šliuzas sukonfigūruotas atskiroje vietoje su didele tinklo delsa tarp duomenų šliuzo ir SQL egzemplioriaus.

Įmonės aplinkoje rekomenduojama naudoti keičiamo mastelio duomenų šliuzo grupę, kai tikimasi didelių duomenų užklausų. Patikrinkite, kiek ryšių yra nustatyta tarp duomenų šliuzo mazgų ir SQL egzemplioriaus.

Tikrindama vienalaikius ryšius vietiniame duomenų šliuze ar SQL serveryje, jūsų organizacija gali nuspręsti, kada reikia išplėsti duomenų šliuzą ir su kiek mazgų.

Duomenų šliuzo sritis

Jei tikitės pasiekti didelį duomenų kiekį iš vietinio duomenų šliuzo, net vienas vietinio duomenų šliuzo mazgas gali tapti kliūtis apimti tokį didelį užklausų kiekį.

Vieno vietinio duomenų šliuzo mazgo gali užtekti susitvarkyti su 200 ar mažiau vienalaikių ryšių. Nepaisant to, jei visi šie vienalaikiai ryšiai aktyviai vykdo užklausas, kitos užklausos laukia prieinamo ryšio.

Informacijos apie vietinis, pagal duomenų ir užklausų apimtį naudojant vietinių vartų skales, rasite apsilankę Duomenų vietinis efektyvumo stebėjimas ir optimizavimas.

„Azure SQL” duomenų bazės aspektai

Drobės programos gali prisijungti prie „Azure SQL” duomenų bazės naudojant SQL serverio jungtį. Naudojant „Azure SQL" duomenų bazę dažnai kyla veikimo problemų pasirenkant netinkamą verslo reikalavimų pakopą.

„Azure SQL” duomenų bazė yra pasiekiama skirtingose aptarnavimo pakopose su skirtingomis galimybėmis, atitinkančias veiklos reikalavimus. Norėdami gauti daugiau informacijos apie pakopas, eikite į „Azure SQL” duomenų bazės dokumentacija.

Naudojant dideles duomenų užklausas, jūsų pasirinktoje pakopoje esantys ištekliai gali būti apriboti, pasiekus ribinę reikšmę. Toks ribojimas sumažina kito užklausų rinkinio efektyvumą.

Patikrinkite „Azure SQL” duomenų bazės aptarnavimo pakopą. Žemesnė pakopa turės tam tikrų apribojimų ir suvaržymų. Iš efektyvumo perspektyvos, CPU, I/O pralaidumas ir gaištis yra svarbūs. Todėl periodiškai tikrinkite SQL duomenų bazės efektyvumą ir patikrinkite, ar išteklių naudojimas viršija ribinę vertę. Pavyzdžiui, vietinis SQL serveris paprastai nustato CPU naudojimo ribinę vertę į maždaug 75 procentų.

Efektyvumo aspektai naudojant „SharePoint“ jungtį

Galite kurti programas SharePoint ryšiu naudodami duomenis iš „Microsoft Lists“. Taip pat galite kurti drobės programas tiesiai iš sąrašo rodinio. Pažvelkime į dažnas efektyvumo problemas ir sprendimus, drobės programoms naudojant „SharePoint” duomenų šaltinį.

Per daug dinaminės peržvalgos stulpelių

„SharePoint“ palaiko įvairius duomenų tipusįskaitant dinamines peržvalgas, pavyzdžiui Asmuo, Grupė ir Apskaičiuota. Jei sąrašas apibrėžia per daug dinaminių stulpelių, reikia daugiau laiko tvarkyti šiuos dinaminius stulpelius SharePoint prieš grąžinant duomenis klientui, kuriame veikia drobės programa.

Nenaudokite pernelyg daug dinaminių peržvalgos stulpelių „SharePoint”. Dėl šio pernelyg didelio naudojimo gali kilti išvengiama ir papildoma apkrova tvarkant duomenis „SharePoint” pusėje. Vietoje to, galite naudoti statinį stulpelį el. laiškų pseudonimų arba žmonių vardų išsaugojimui.

Paveikslėlio stulpelis ir priedas

Vaizdo ir pridėto failo dydis lemti lėtą atsaką, nuskaitant duomenis klientui.

Peržiūrėkite savo sąrašą ir įsitikinkite, kad tik reikiami stulpeliai buvo apibrėžti. Sąrašo stulpelių skaičius turi įtakos duomenų užklausų efektyvumui. Taip nutinka dėl suderintų įrašų arba dėl to, kad įrašai, neviršijantys duomenų eilučių limitų, yra nuskaitomi ir perduodami atgal klientui su visais stulpeliais, apibrėžtais sąraše—nepriklausomai nuo to, ar programa naudoja juos visus ar ne.

Įjunkite funkciją Išplėstinis stulpelių pasirinkimas tik stulpelių, naudojamų programos, užklausoms.

Dideli sąrašai

Jei turite didelį sąrašą su šimtais tūkstančių įrašų, apsvarstykite galite suskaidyti sąrašą arba padalyti sąrašą į kelis sąrašus, atsižvelgiant į parametrus, pavyzdžiui, kategorijas arba datą ir laiką.

Pavyzdžiui, jūsų duomenys gali būti saugomi skirtinguose sąrašuose kasmet arba kas mėnesį. Tada galite įdiegti programą ir leisti vartotojui pasirinkti laiko langą, skirtą to diapazono duomenims nuskaityti.

Kontroliuojamoje aplinkoje efektyvumo sąlyginis etalonas rodo, kad „OData” užklausų efektyvumas, palyginti su „Microsoft Lists” arba SharePoint yra labai susijęs su nuskaitomų sąrašo stulpelių ir eilučių skaičiumi (ribojamas duomenų eilučių limitu neperduodamoms užklausoms). Dėl mažesnio stulpelių skaičiaus ir mažesnio duomenų eilučių apribojimo parametro drobės programa gali veikti efektyviau.

Tačiau realybėje, programos sukurtos taip, kad atitiktų tam tikrus veiklos reikalavimus. Gali būti, kad sumažinti duomenų eilučių limitą arba sąrašo stulpelių skaičių sąraše nebus greita ar paprasta. Tačiau rekomenduojama stebėti „OData” užklausas kliento pusėje ir nustatyti duomenų eilučių limitą neperduodamoms užklausoms ir „” sąrašo stulpelių skaičių.

Efektyvumo aspektai naudojant „Dataverse” kaip duomenų šaltinį

Kai naudojate kaip "duomenų šaltinis", duomenų užklausos tiesiai į aplinkos egzempliorių neperekamos „Microsoft Dataverse“ naudojant „Azure" API valdymą. Daugiau informacijos: Duomenų skambučių eiga jungiantis prie „Microsoft Dataverse“

Arbatpinigiai

Naudojant pasirinktines lenteles, gali reikėti papildomos saugos konfigūracijos, kad vartotojai galėtų peržiūrėti įrašus naudodami „Dataverse“ drobės programas. Daugiau informacijos: Saugos sąvokos „Dataverse“, Konfigūruokite vartotojo saugą ištekliams aplinkoje ir Saugos vaidmenis ir teisės

Drobės programa, sujungta su „Dataverse“ gali veikti lėtai, jei paleisti klientą apsunkinantys scenarijai, pavyzdžiui, Filtruoti pagal ar „JOIN“ kliento, o ne serverio pusėje.

Naudokite „Dataverse” rodinius, kai įmanoma. Rodinys su reikalingais sujungimo arba filtravimo kriterijais padeda sumažinti visos lentelės naudojimo apkrovą. Pavyzdžiui, jei reikia prisijungti prie lentelių ir filtruoti jų duomenis, galite apibrėžti rodinį sujungdami juos ir apibrėždami tik stulpelius, kurių jums reikia. Tada naudokite šį rodinį savo programoje, kuri sukuria sujungimo/filtravimo apkrovą serveryje, o ne kliente.Šis metodas sumažina ne tik papildomas operacijas, bet ir duomenų perdavimą. Norėdami gauti informacijos apie filtravimo ir rikiavimo kriterijų redagavimą, eikite į Filtravimo kriterijų redagavimas.

Efektyvumo aspektai naudojant „Excel“ jungtį

„Excel” jungtis sukuria ryšį tarp drobės programos ir duomenų „Excel” failo lentelėje. Ši jungtis turi apribojimų, palyginti su kitais duomenų šaltiniaispavyzdžiui, ribotos perduodamos funkcijos—pavyzdžiui, ribotos perduodamos funkcijos—leidžiančios drobės programoms įkelti duomenis iš lentelės iki 2000 įrašų. Jei norite įkelti daugiau nei 2000 įrašų, suskaidykite savo duomenis į skirtingas duomenų lenteles kaip kitus duomenų šaltinius.

Pažvelkime į dažnas efektyvumo problemas drobės programoms naudojant „Excel” kaip duomenų šaltinį ir kaip išspręsti tas problemas.

Per daug duomenų lentelių ir didelis duomenų dydis

Programa gali lėtai veikti, kai ji naudoja „Excel” failą su per daug duomenų lentelių arba duomenų lentelių duomenys yra labai dideli, besitęsiantys per kelis stulpelius. „Excel” failas nėra santykinė duomenų bazė arba duomenų šaltinis, kuriame yra perduodamos funkcijos. Power Apps turi pirmiausia įkelti duomenis iš apibrėžtų duomenų lentelių, tada naudoti funkcijas, pvz., Filtras, Rikiuoti, PRISIJUNGTI Grupuoti pagal ir Ieškoti.

Pernelyg daug duomenų lentelių su dideliu eilučių ir stulpelių skaičiumi veikia programos efektyvumą ir kliento pusės apkrovą, kadangi kiekviena duomenų lentelė turi būti tvarkoma JS netvarkomajame masyve. Dėl šio poveikio programa taip pat sunaudoja daugiau kliento pusės atminties.

Norėdami užtikrinti, kad jūsų programos nepaveiks tokie veiksmai, apibrėžkite tik būtinus „Excel” failo duomenų lentelės stulpelius.

Sunkios operacijos

„Excel" nėra santykinė duomenų bazės sistema. Bet kokius programos pakeitimus valdo „Excel” taip pat, kaip ir vartotojas, keičiantis duomenis „Excel” faile. Jei programoje yra didelis skaitymų skaičius, bet mažiau CRUD (Kūrimo/Naujinimo/Naikinimo) operacijų, ji gali veikti efektyviai. Tačiau, jei programa atlieka sunkias operacijas, tai gali neigiamai paveikti programos efektyvumą.

Nėra konkrečios ribinės operacijų skaičiaus vertės, kadangi tai priklauso ir nuo tvarkomų duomenų. Programos efektyvumui taip pat turi įtakos ir kai kurie veiksniai pavyzdžiui, tinklo apkrova arba vartotojo įrenginys.

Jei turite tik skaitomus duomenis, galite importuoti tokius duomenis į programą vietoje, o ne įkelti juos iš duomenų šaltinio. Įmonės programoms naudokite duomenų šaltinius, pavyzdžiui, „Dataverse”, SQL serverį arba „SharePoint”.

Failo dydis

Galite rinktis iš įvairiausių debesų debesų saugyklos parinkčių su kintamu—ar konfigūruojamu—„Excel” failo saugojimo pajėgumu. Tačiau vienas didelis „Excel” failas su visomis lentelėmis, apibrėžtomis viename faile, prideda papildomą apkrovą programai, atsisiunčiant failą ir skaitant duomenis įkėlimui į kliento pusę.

Vietoj to, kad naudotumėte vieną didelį failą, padalinkite duomenis į kelis „Excel” failus su minimaliomis duomenų lentelėmis. Tada prisijunkite prie kiekvieno failo tik tada, kai reikės. Tokiu būdu duomenų įkėlimas iš duomenų lentelės vyksta fragmentiškai, taip sumažinus didelio skaičiaus lentelių arba didelio duomenų rinkinio apkrovą.

Failo vieta

Dėl duomenų šaltinio geografinės vietos ir jos artumo kliento vietoms gali atsirasti bendras programos efektyvumo spartos ribojimas ir tinklo gaištis. Šis poveikis gali sustiprėti, jei mobilaus kliento ryšio pralaidumas yra apribotas.

Geriausia failą laikyti šalia galutinių vartotojų (arba daugelio galutinių vartotojųvisuotinei auditorijai), kad failą būtų galima greitai atsisiųsti.

Paskesni veiksmai

Patarimai ir geriausia praktika drobės programos efektyvumo pagerinimui

Taip pat žr.

Drobės programos vykdymo etapų ir duomenų iškvietimo srautų supratimas
Bendri lėto vykdymo šaltiniai drobės programai
Dažnos problemos ir jų sprendimai „Power Apps“
„Power Apps” paleisties trikčių diagnostika

Pastaba

Ar galite mums pranešti apie dokumentacijos kalbos nuostatas? Atlikite trumpą apklausą. (atkreipkite dėmesį, kad ši apklausa yra anglų kalba)

Apklausą atliksite per maždaug septynias minutes. Asmeniniai duomenys nėra renkami (privatumo nuostatos).