Een bedrijfskritieke gatewayoplossing plannen, schalen en onderhouden

Dit artikel is bedoeld voor iedereen die van plan is een on-premises gegevensgateway te implementeren in een bedrijfskritiek scenario. Een on-premises gegevensgateway is bedrijfskritiek als het essentieel is voor de normale werking van uw bedrijf en omgaat met bedrijfskritieke gegevens.

Als bedrijfskritieke gateways niet goed worden beheerd, ondervindt u mogelijk mislukte query's of trage prestaties. Wanneer u uw bedrijfskritieke gatewayoplossing op de juiste manier plant, schaalt en onderhoudt, kan de kans op een probleem met bedrijfsimpact worden geminimaliseerd.

Terminologie

In dit artikel worden de volgende belangrijke termen gebruikt:

  • Gateway: de on-premises gegevensgatewaytoepassing die op een computer is geïnstalleerd.
  • Gatewayserver: een Windows-computer (virtuele machine of fysieke computer/server) waarop de on-premises gegevensgatewaytoepassing is geïnstalleerd.
  • Gatewaycluster: een set gateways die samenwerken (en mogelijk taakverdeling hebben).
  • Gatewaylid: Een gateway die deel uitmaakt van een gatewaycluster.

In de volgende afbeelding ziet u de relatie tussen de hierboven gedefinieerde concepten.

Image of a gateway cluster as part of three gateway servers, each containing a separate gateway

Aanbevelingen voor bedrijfskritieke gateways

Voor bedrijfskritieke gateways moeten de gateways correct worden geïmplementeerd en beheerd om hoge beschikbaarheid, goede prestaties en onderhoudbare schaalbaarheid te garanderen. Het onjuist implementeren van gateways kan leiden tot slechte prestaties, mislukte query's en problemen bij het diagnosticeren van mogelijke problemen. Het kan ook uw vermogen om de gateways omhoog en uit te schalen belemmeren naarmate het gebruik toeneemt.

Volg de aanbevelingen in de volgende secties om optimale schaalbaarheid, prestaties en doorvoer te garanderen.

Al uw gatewayherstelsleutels kennen

Zorg ervoor dat alle herstelsleutels van de gateway bekend zijn en op een veilige plaats worden bewaard. Zonder een herstelsleutel kunnen gateways niet worden hersteld of gedowngraded. Deze beperking is standaard. Als u uw herstelsleutels kwijtraakt, kunt u alleen nieuwe gateways maken en de gegevensbronnen opnieuw maken. U kunt ook geen nieuwe gateways toevoegen aan het cluster zonder de herstelsleutel, waardoor de schaalbaarheid in de toekomst wordt beperkt.

Sla uw herstelsleutels op een veilige plaats op, net zoals u beheerdersreferenties opslaat, zoals een wachtwoordkluis, die alleen toegankelijk is voor geautoriseerde beheerders.

Als u momenteel niet al uw gatewayherstelsleutels kent, is dit een aanzienlijk bedrijfsrisico. Maak onmiddellijk nieuwe gatewayclusters en begin met het migreren van workloads naar de gatewayclusters.

Workloads ontwikkelen en bedrijfskritieke workloads

Scheid ontwikkelworkloads van bedrijfskritiek door een of meer ontwikkelingsgatewayclusters en een of meer productiegatewayclusters in te stellen, zoals hieronder wordt beschreven.

Image of a development and test gateway cluster with three gateways and a separate production cluster with three gateways

Gebruik een ontwikkelgatewaycluster om nieuwe semantische modellen, rapporten, query's enzovoort te testen. Zodra een nieuwe workload is geverifieerd, migreert u deze naar een bedrijfskritiek gatewaycluster. Met dit proces voorkomt u dat nieuwe, niet-geteste of experimentele workloads prestatie-invloed hebben op productieworkloads.

Gebruik ook uw ontwikkelgatewayclusters om nieuwe gateway-updates te testen voordat u updates toepast op uw bedrijfskritieke gatewayclusters. Nieuwe gateway-updates moeten minimaal 24 uur worden geïmplementeerd in de ontwikkelgatewayclusters voordat ze worden gebruikt op bedrijfskritieke gatewayclusters.

Meerdere gatewayclusters gebruiken

Als u een gatewaycluster maakt voor een groot aantal gebruikers in uw organisatie, moet u meerdere gatewayclusters maken op basis van bedrijfseenheden of kleiner om mogelijke gevolgen voor de prestaties te beperken tot een kleine subset van gebruikers.

Het wordt afgeraden om één bedrijfskritiek gatewaycluster te gebruiken voor een heel bedrijf (tenzij het bedrijf klein is). In één gatewayclusterscenario kan één gebruiker een query verzenden die een aanzienlijke invloed heeft op de prestaties van al het verkeer in de gateway. Als de gateway wordt gebruikt in het hele bedrijf, kan de invloed op de prestaties van invloed zijn op het hele bedrijf. Wanneer een gatewaycluster wordt gebruikt in een heel bedrijf, kan het lastiger zijn om te bepalen welke query een prestatieprobleem kan veroorzaken bij het gebruik van de functie voor het bewaken van de gatewayprestaties.

Image of an example organization with separate gateway clusters for enterprise BI and apps, the finance department, the marketing department, and personal BI and apps.

De functies voor hoge beschikbaarheid en taakverdeling van de gateway gebruiken

Gebruik altijd de functies voor hoge beschikbaarheid en taakverdeling voor gateways voor elk bedrijfskritiek gatewaycluster.

  • Hoge beschikbaarheid: elimineert een single point of failure.
  • Taakverdeling: hiermee wordt de workload automatisch verdeeld over alle gatewayservers in het cluster.

Stel minimaal twee gateways per gatewaycluster in voor het geval een gateway om welke reden dan ook offline gaat. Deze installatie zorgt ervoor dat één gatewayfout niet tot gevolg heeft dat het hele gatewaycluster mislukt. Daarnaast kunnen CPU-, geheugen-, gelijktijdigheidslimieten worden ingeschakeld op de gateways om de belasting beter over het gatewaycluster te verdelen.

Schaalbaarheid van gatewayclusters plannen en onderhouden

Het instellen van een gatewaycluster met behulp van onze aanbevolen hardware- en softwarerichtlijnen zorgt ervoor dat het cluster wordt uitgevoerd met goede prestaties. Gateways die niet goed worden geschaald, kunnen leiden tot slechte prestaties. Er zijn veel factoren die u moet overwegen om goede prestaties op uw gatewaycluster te hebben.

Hardwarespecificaties voor gatewayservers bepalen

Specificaties van gatewayservers (CPU, geheugen, schijf, enzovoort) zijn een belangrijke factor, zoals in de meeste gevallen de Power Query-transformaties worden toegepast op de gegevens op de gatewayserver. Als zodanig moet een gatewayserver voldoende resources, geheugen en verwerkingskracht hebben om alle gegevenstransformaties af te handelen.

Wanneer u een servergrootte moet kiezen, zijn er twee metrische gegevens die het belangrijkst zijn: geheugen en CPU. U hebt zowel voldoende geheugen als CPU-vermogen nodig om de stappen voor gegevenstransformatie van Power Query op de gateway te verwerken. Het is belangrijk dat uw gatewayserver krachtig genoeg is om de hoogste workload te verwerken die u hebt. Als de gatewayserver de werkbelasting niet kan verwerken, mislukt de directe query of het vernieuwen van gegevens. Het is ook belangrijk om te begrijpen hoeveel query's tegelijkertijd worden uitgevoerd.

Deze verschillende queryopties hebben een ander effect op uw gatewayserver.

Querytype Limietfactor
Import Geheugen
DirectQuery CPU
Live Verbinding maken CPU

Tijdens het importeren moet de hele set gegevens worden opgevraagd en verwerkt. Dit is een zware geheugentaak. Deze invoer duurt vaak ook langer. DirectQueries en Live Verbinding maken ions zijn vaak cpu-intensief. In de meeste gevallen worden directe query's vaak uitgevoerd om slechts een klein deel van de gegevens te verwerken. Omdat slechts een klein deel van de gegevens wordt verwerkt, zijn deze directe query's normaal gesproken geen zware geheugentaak. Omdat de query's echter vaak op aanvraag worden uitgevoerd, kan dit CPU-intensief zijn.

Afhankelijk van uw workload kunt u overwegen om uw gatewayserver te optimaliseren voor geheugen of CPU.

Wanneer moet u een gatewaycluster schalen

Schalen is een belangrijk aspect van een bedrijfskritiek gatewaycluster. Naarmate uw gebruik met het gatewaycluster groeit, moet het gatewaycluster omhoog worden geschaald en/of uitgeschaald om goede prestaties te garanderen. Het is raadzaam om een gatewaycluster uit te schalen als u de gateways in het cluster eerder hebt opgeschaald.

Het schalen en distribueren van verkeer over afzonderlijke knooppunten binnen een cluster is een complex proces dat afhankelijk is van elk afzonderlijk scenario. Hoewel er geen definitief model is om ervoor te zorgen dat al het gatewayverkeer voorspelbaar wordt onderhouden, geven de onderstaande limieten een schaalbehoefte aan. Over het algemeen raden we u aan om uit te schalen (knooppunten toevoegen aan het cluster) om omhoog te schalen (cpu, RAM of schijfruimte op afzonderlijke knooppunten te vergroten). Uitschalen is over het algemeen effectiever in de mogelijkheid van het systeem als geheel om extra verkeer af te handelen. Uitschalen heeft ook een positieve invloed op de totale bandbreedte die het cluster kan verwerken, terwijl omhoog schalen in het algemeen niet. Wanneer een of meer gatewayknooppunten indicaties tonen van het bereiken van de drempelwaarden die hieronder worden beschreven, moet het uitschalen van het cluster sterk worden overwogen.

  • CPU: CPU ligt boven de 80% gedurende langere tijd, maar af en toe korte pieken (minder dan 5 minuten) die cpu's maximaal verhogen, zijn niet abnormaal.

  • RAM: Beschikbare geheugendips lager dan 20% regelmatig.

  • Schijf: Vrije schijfruimte dips lager dan 5 GB vaak. Deze dip kan ook duiden op een noodzaak om cache- of spoolingmappen strategischer te configureren.

  • Gelijktijdigheid: meer dan 40 query's tegelijk uitvoeren op één knooppunt.

Omdat vernieuwingen en query's die zijn gedistribueerd over gatewayknooppunten zeer verschillende profielen kunnen hebben, raden we u ook aan om extra controle uit te voeren op langlopende of geheugenintensieve taken. Queryoptimalisatie in dergelijke gevallen kan een enorme invloed hebben op prestaties en schaalbaarheid, niet alleen voor de afzonderlijke rapporten en vernieuwingen, maar op het systeem als geheel. We raden u aan vernieuwingen in kwestie te isoleren naar één toegewezen gatewaycluster om prestatiekenmerken te evalueren en optimalisatie uit te voeren met behulp van diagnostische queryplannen, vouwindicatoren en alle andere gepubliceerde prestatieaanbevelingen. Deze isolatie minimaliseert de hoeveelheid opgehaalde gegevens en de hoeveelheid vereiste naverwerking. Deze isolatie kan ook worden gebruikt als een langetermijnstrategie voor het sequentiëren van langlopende ETL-taken naar een toegewezen gatewaycluster om conflicten met andere typische vernieuwingen in de organisatie te verminderen.

Een gatewaycluster omhoog schalen

Image of a query failure using a gateway cluster with two gateways that have 5 GB of memory and a query success using a custer with two gateway, with one gateway that has 7 GB of memory

Omhoog schalen is wanneer u de specificaties (CPU, geheugen, schijf, enzovoort) van uw gatewayservers verhoogt.

Omhoog schalen is mogelijk vereist als het maximale CPU- of geheugen wordt bereikt wanneer de gateway een of meer query's uitvoert. Een query kan slechts op één gatewayserver worden uitgevoerd. Daarom moet de gatewayserver voldoende resources hebben om de hele query samen met de resulterende gegevens te verwerken.

Een gatewaycluster uitschalen

Image of a query failure using a cluster with two gateways with 5 GB of memory each and a query success using a cluster with three gateways with 5 GB of memory each

Uitschalen is vereist als de gatewayserver al hoge specificaties heeft (met andere woorden, de gatewayserver is al omhoog geschaald) of als u de limieten hebt bereikt van wat een enkele gatewayserver kan beheren vanwege het aantal gelijktijdige query's dat wordt uitgevoerd. Een brede belastingverhoging voor de hele gatewaylidset is een goede indicatie dat het schalen van een cluster door knooppunten toe te voegen de juiste actie is. Wanneer een gatewaycluster moet worden geschaald, biedt specifieke drempelwaarden die aangeven wanneer het tijd is om te schalen. Ga naar De functies voor hoge beschikbaarheid en taakverdeling van de gateway gebruiken voor meer informatie over uitschalen.

Schalen door nieuwe gatewayclusters te maken

Als het resourcegebruik van uw gatewaycluster hoog is of een uitzonderlijk groot aantal gebruikers afhankelijk is van een gatewaycluster, kan er een nieuw gatewaycluster worden gemaakt. Een subset van de workload kan vervolgens worden gemigreerd naar het nieuwe gatewaycluster. Wanneer een groot aantal gebruikers afhankelijk is van één gatewaycluster, neemt de kans dat een gebruiker een query verzendt die een aanzienlijke invloed heeft op de prestaties in het hele gatewaycluster aanzienlijk toe.

Een uitzonderlijk groot aantal gebruikers dat afhankelijk is van één gatewaycluster, is een indicator dat er een nieuw gatewaycluster moet worden gemaakt.

Gatewayprestaties bewaken en problemen oplossen

Het is belangrijk om de algehele prestaties van bedrijfskritieke gateways te bewaken met behulp van de functie voor het bewaken van gatewayprestaties. U kunt deze functie ook gebruiken om prestatieproblemen op te lossen, knelpunten te identificeren en query's te identificeren die invloed hebben op de algehele gatewayprestaties. Deze functie is ook een belangrijk hulpmiddel waarmee u kunt bepalen wanneer u een gatewaycluster wilt schalen.

Als u een query identificeert als een zware impact op de gateway, wat resulteert in slechte algehele prestaties, kunt u de query mogelijk herschrijven om efficiënter te zijn en de invloed op de prestaties te minimaliseren.

Als Microsoft slechte prestaties identificeert die worden veroorzaakt door een gateway of een gatewayonderdeel, zoals een Overbelaste Power BI Premium-capaciteit, moet het overbelaste onderdeel worden verholpen door te schalen of de belasting te verminderen. Microsoft onderzoekt geen slechte prestaties wanneer een gateway of een gatewaygerelateerd onderdeel overbelast is.