Delen via


Beleid voor aanvraagfrequentielimiet

Van toepassing op: ✅Microsoft FabricAzure Data Explorer-

Met het beleid voor aanvraagsnelheidslimieten van de workloadgroep kunt u het aantal gelijktijdige aanvragen beperken dat is geclassificeerd in de workloadgroep, per workloadgroep of per principal.

Frequentielimieten worden afgedwongen op het niveau dat is gedefinieerd door de het afdwingingsbeleid voor aanvraagfrequentielimieten.

Het beleidsobject

Een beleid voor aanvraagsnelheidslimiet heeft de volgende eigenschappen:

Naam Ondersteunde waarden Beschrijving
IsEnabled true, false Geeft aan of het beleid is ingeschakeld of niet.
Draagwijdte WorkloadGroup, Principal Het bereik waarop de limiet van toepassing is.
LimitKind ConcurrentRequests, ResourceUtilization Het type aanvraagsnelheidslimiet.
Eigenschappen Eigenschapstas Eigenschappen van de limiet voor aanvraagsnelheid.

Frequentielimiet voor gelijktijdige aanvragen

Een aanvraagsnelheidslimiet van het type ConcurrentRequests bevat de volgende eigenschap:

Naam Type Beschrijving Ondersteunde waarden
MaxConcurrentRequests int Het maximum aantal gelijktijdige aanvragen. [0, 10000]

Notitie

  • Als een workloadgroep geen opgegeven limiet heeft voor de maximale gelijktijdige aanvragen, is deze onderworpen aan de standaard maximumwaarde van 10000.

Wanneer een aanvraag de limiet overschrijdt voor het maximum aantal gelijktijdige aanvragen:

  • De status van de aanvraag, zoals weergegeven door systeeminformatieopdrachten, wordt Throttled.
  • Het foutbericht bevat de oorsprong van de beperking en de capaciteit die is overschreden.

In de volgende tabel ziet u enkele voorbeelden van gelijktijdige aanvragen die de maximumlimiet overschrijden en het foutbericht dat deze aanvragen retourneren:

Scenario Foutmelding
Een beperkte .create table opdracht die is geclassificeerd voor de default workloadgroep, met een limiet van 80 gelijktijdige aanvragen binnen het bereik van de workloadgroep. De beheeropdracht is afgebroken vanwege beperking. Het opnieuw proberen na enige uitstel kan lukken. CommandType: 'TableCreate', Capacity: 80, Origin: 'RequestRateLimitPolicy/WorkloadGroup/default'.
Een beperkte query die is geclassificeerd voor een workloadgroep met de naam MyWorkloadGroup, met een limiet van 50 gelijktijdige aanvragen binnen het bereik van de workloadgroep. De query is afgebroken vanwege beperking. Het opnieuw proberen na enige uitstel kan lukken. Capaciteit: 50, Oorsprong: 'RequestRateLimitPolicy/WorkloadGroup/MyWorkloadGroup'.
Een beperkte query die is geclassificeerd aan een workloadgroep met de naam MyWorkloadGroup, met een limiet van 10 gelijktijdige aanvragen binnen het bereik van een principal. De query is afgebroken vanwege beperking. Het opnieuw proberen na enige uitstel kan lukken. Capaciteit: 10, Oorsprong: 'RequestRateLimitPolicy/WorkloadGroup/MyWorkloadGroup/Principal/aaduser=9e04c4f5-1abd-48d4-a3d2-9f58615b4724; 6ccf3fe8-6343-4be5-96c3-29a128dd9570'.
  • De HTTP-antwoordcode wordt 429. De subcode wordt TooManyRequests.
  • Het uitzonderingstype wordt QueryThrottledException voor query's en ControlCommandThrottledException voor beheeropdrachten.

Notitie

  • Als een van de limieten die zijn gedefinieerd door het capaciteitsbeleid of door een beleid voor aanvraagsnelheidslimieten wordt overschreden, wordt een beheeropdracht beperkt.
  • Het capaciteitsbeleid kan de aanvraagsnelheid van aanvragen beperken die onder een specifieke categorie vallen, zoals opname.

Limiet voor resourcegebruik

Een aanvraagsnelheidslimiet van het type ResourceUtilization bevat de volgende eigenschappen:

Naam Type Beschrijving Ondersteunde waarden
ResourceKind ResourceKind De resource die moet worden beperkt.

Wanneer ResourceKind is TotalCpuSeconds, wordt de limiet afgedwongen op basis van rapporten na uitvoering van het CPU-gebruik van voltooide aanvragen. Aanvragen die het gebruik van 0,005 seconden CPU of lager rapporteren, worden niet meegeteld. De limiet (MaxUtilization) vertegenwoordigt de totale CPU-seconden die kunnen worden verbruikt door aanvragen binnen een opgegeven tijdvenster (TimeWindow). Een gebruiker die ad-hocquery's uitvoert, kan bijvoorbeeld een limiet van 1000 CPU-seconden per uur hebben. Als deze limiet wordt overschreden, worden volgende query's beperkt, zelfs als deze gelijktijdig worden gestart, omdat de cumulatieve CPU-seconden de gedefinieerde limiet binnen de periode van het schuifvenster hebben overschreden.
RequestCount, TotalCpuSeconds
MaxU-gebruik long Het maximum van de resource die kan worden gebruikt. RequestCount: [1, 16777215]; TotalCpuSeconds: [1, 828000]
TimeWindow timespan Het tijdvenster waarin de limiet wordt toegepast. [00:00:01, 01:00:00]

Wanneer een aanvraag de limiet voor het gebruik van resources overschrijdt:

  • De status van de aanvraag, zoals weergegeven door systeeminformatieopdrachten, wordt Throttled.
  • Het foutbericht bevat de oorsprong van de beperking en het quotum dat is overschreden. Bijvoorbeeld:

In de volgende tabel ziet u enkele voorbeelden van aanvragen die de limiet voor resourcegebruik overschrijden en het foutbericht dat deze aanvragen retourneren:

Scenario Foutmelding
Een beperkte aanvraag die is geclassificeerd aan een workloadgroep met de naam Automated Requests, met een limiet van 1000 aanvragen per uur voor het bereik van een principal. De aanvraag is geweigerd vanwege het overschrijden van quotumbeperkingen. Resource: 'RequestCount', Quotum: '1000', TimeWindow: '01:00:00', Origin: 'RequestRateLimitPolicy/WorkloadGroup/Automated Requests/Principal/aadapp=9e04c4f5-1abd-48d4-a3d2-9f58615b4724; 6ccf3fe8-6343-4be5-96c3-29a128dd9570'.
Een beperkte aanvraag, die is geclassificeerd voor een workloadgroep met de naam Automated Requests, met een limiet van 2000 totale CPU-seconden per uur voor het bereik van de workloadgroep. De aanvraag is geweigerd vanwege het overschrijden van quotumbeperkingen. Resource: 'TotalCpuSeconds', Quotum: '2000', TimeWindow: '01:00:00', Oorsprong: 'RequestRateLimitPolicy/WorkloadGroup/Automated Requests'.
  • De HTTP-antwoordcode wordt 429. De subcode wordt TooManyRequests.
  • Het uitzonderingstype wordt QuotaExceededException.

Hoe consistentie van invloed is op frequentielimieten

Met sterke consistentie is de standaardlimiet voor maximale gelijktijdige aanvragen afhankelijk van de SKU van het cluster en wordt deze berekend als: Cores-Per-Node x 10. Een cluster dat is ingesteld met Azure D14_v2-knooppunten, waarbij elk knooppunt 16 vCores heeft, heeft bijvoorbeeld een standaardlimiet van 16 x 10 = 160.

Met zwakke consistentie is de effectieve standaardlimiet voor maximale gelijktijdige aanvragen afhankelijk van de SKU van het cluster en het aantal querykoppen, en wordt berekend als: Cores-Per-Node x 10 x Number-Of-Query-Heads. Een cluster dat is ingesteld met Azure D14_v2 en vijf querykoppen, waarbij elk knooppunt 16 vCores heeft, heeft bijvoorbeeld een effectieve standaardlimiet van 16 x 10 x 5 = 800.

Met sterke consistentie is de standaardlimiet voor maximale gelijktijdige aanvragen afhankelijk van de SKU van het eventhouse en wordt berekend als: Cores-Per-Node x 10. Een eventhouse dat is ingesteld met Azure D14_v2-knooppunten, waarbij elk knooppunt 16 vCores heeft, heeft bijvoorbeeld een standaardlimiet van 16 x 10 = 160.

Met zwakke consistentie is de effectieve standaardlimiet voor maximale gelijktijdige aanvragen afhankelijk van de SKU van het gebeurtenishuis en het aantal querykoppen, en wordt berekend als: Cores-Per-Node x 10 x Number-Of-Query-Heads. Een eventhouse dat is ingesteld met Azure D14_v2 en vijf querykoppen, waarbij elk knooppunt 16 vCores heeft, heeft bijvoorbeeld een effectieve standaardlimiet van 16 x 10 x 5 = 800.

Zie Queryconsistentievoor meer informatie.

De workloadgroep default

De default workloadgroep heeft standaard het volgende beleid gedefinieerd. Dit beleid kan worden gewijzigd.

[
  {
    "IsEnabled": true,
    "Scope": "WorkloadGroup",
    "LimitKind": "ConcurrentRequests",
    "Properties": {
      "MaxConcurrentRequests": < Cores-Per-Node x 10 >
    }
  }
]

Notitie

  • Wanneer u het beleid voor de default workloadgroep wijzigt, moet er een limiet worden gedefinieerd voor het maximum aantal gelijktijdige aanvragen.

Voorbeelden

Met de volgende beleidsregels kunt u maximaal:

  • 500 gelijktijdige aanvragen voor de workloadgroep.
  • 25 gelijktijdige aanvragen per principal.
  • 50 aanvragen per principal per uur.
[
  {
    "IsEnabled": true,
    "Scope": "WorkloadGroup",
    "LimitKind": "ConcurrentRequests",
    "Properties": {
      "MaxConcurrentRequests": 500
    }
  },
  {
    "IsEnabled": true,
    "Scope": "Principal",
    "LimitKind": "ConcurrentRequests",
    "Properties": {
      "MaxConcurrentRequests": 25
    }
  },
  {
    "IsEnabled": true,
    "Scope": "Principal",
    "LimitKind": "ResourceUtilization",
    "Properties": {
      "ResourceKind": "RequestCount",
      "MaxUtilization": 50,
      "TimeWindow": "01:00:00"
    }
  }
]

Met de volgende beleidsregels worden alle aanvragen geblokkeerd die zijn geclassificeerd voor de workloadgroep:

[
  {
    "IsEnabled": true,
    "Scope": "WorkloadGroup",
    "LimitKind": "ConcurrentRequests",
    "Properties": {
      "MaxConcurrentRequests": 0
    }
  },
]