Teamleader en Fair Use limiet qua maximale looptijd

Ik sta volledig achter het principe van “fair use”, helaas hebben we dit niet altijd in de hand.

In ons geval hebben we via OData twee connecties met TeamLeader.

Als ik kijk naar ons dashboard – zie afbeelding – dan hebben we geen probleem op vlak van hoeveelheid data en frequentie, maar we zitten wel zwaar in het rood wat betreft de duurtijd:

80% van de duurtijd gaat naar het downloaden van 3 (!) tabellen:

  • CompanyCustomFieldValues
  • DealCustomFieldValues en
  • InvoiceCustomFieldValues.

Deze tabellen bevatten essentiële data die nodig zijn voor onze rapportering.

Deze tabellen bevatten zelf niet eens heel veel records, maar door de manier waarop Teamleader de data ter beschikking stelt zorgt ervoor dat het ophalen van de data heel traag verloopt, zelf na een aantal optimalisaties.

Aangezien de data in deze tabellen niet zo frequent wijzigt, zou het voor mij voldoende zijn dat deze data slechts eenmaal per week gedownload wordt. Helaas is het in PowerBI in een model niet mogelijk om een downloadfrequentie te zetten op tabelniveau, het is een alles-of-niks verhaal (en mijn suggestie bij Microsoft om dit aan te passen valt op een koude steen :frowning:).

Een andere manier zou vb. kunnen zijn om in “Invantive Cloud” de gegevens van bepaalde tabellen langer in cache te houden, vb. 7 dagen in plaats van maximaal 1 dag.

Of zien jullie andere mogelijke oplossingen?

Teamleader is inderdaad voor wat betreft ophalen custom fields een platform berucht voor de trage werking en hoge totale CPU-belasting; dit wordt veroorzaakt doordat er een beperkt aantal API-calls per minuut uitgevoerd mogen worden terwijl voor elke rij een aparte API-call nodig is. Downloadtijden van uren zijn niet ongebruikelijk.

U kunt voor datasets een afwijkende (hogere) cachelevensduur toestaan. In het beschreven scenario kunt u bijvoorbeeld meegeven:

Cache-Control: private,max-age: 604800

voor 7 dagen zoals beschreven in Real-time OLTP-style OData4 requests for Power Apps and other interactive website builders. U kunt dan bijvoorbeeld op de verschillende dagen van de week telkens een andere set actualiseren.

In Power Query ziet dit er uit als volgt:

let
    Source = OData.Feed("https://server/prefix/odata4", null, [Implementation="2.0", ODataVersion=4, OmitValues=ODataOmitValues.Nulls, Headers=[Referer = "MyReport", #"Cache-Control" = "private,max-age=604800" ], Timeout=#duration(0,6,0,0)]),
...

Daarnaast kunt u kijken of het mogelijk is via shared datasets in Power BI Service met verschillende verversfrequenties te werken.

Daarnaast kunt u ook kijken naar de mogelijkheid om per gewenste levensduur een aparte database te definieren met andere cache levensduurinstellingen.

Algemene tip is om downloads op Teamleader NIET parallel uit te voeren, maar achtereenvolgens. Door bijvoorbeeld 4 downloads de erg lage rate limit te laten delen zal de doorvoersnelheid niet verhoogd worden, maar is de totale duur wel 4x zo hoog.

1 like

Deze vraag is automatisch gesloten na 2 weken inactiviteit. Het laatste gegeven antwoord is gemarkeerd als oplossing.

Gelieve een nieuwe vraag te stellen via een apart topic als het probleem opnieuw optreedt. Gelieve in de nieuwe vraag een link naar dit topic op te nemen door de URL er van in de tekst te plakken.

Dit topic is 7 dagen na het laatste antwoord automatisch gesloten. Nieuwe antwoorden zijn niet meer toegestaan.

Gelieve ook kennis te nemen van de oplossingsrichting voor dit probleem specified optredend bij de combinatie Teamleader Focus custom fields en Invantive Cloud: