Alternatief data ophalen in batches

Wat is het alternatief om data op te halen in batches?

Aangezien de $skip option disabled is er geen normale pagination mogelijk
En $orderBy wordt ignored waardoor er geen cursor based pagination mogelijk is.

Date ranges zijn daarom de enige mogelijkheid

Ik kom niet helemaal uit de vraag.

Batches

Wat wordt bedoeld met “batches”?

Is bedoeld in delen of het gebruik van OData batches?

Er van uitgaande dat in delen bedoeld wordt: het is niet de bedoeling om een gehele dataset op te hakken in delen om afzonderlijk op te halen.

Als het verwerken in een geheel niet haalbaar is, dan kan het op rijniveau gebeuren.

De OData feed geeft de rijen streaming terug: zodra een rij beschikbaar komt wordt die teruggestuurd (gebundeld in kleine groepjes afhankelijk van de onderliggende lagen in het ISO-model).

De HTTP response kan dus per rij verwerkt worden zonder dat er veel geheugenbeslag of rekentijdig nodig is.

Afwezigheid $skip en $orderBy

$skip en $orderBy worden bewust niet aangeboden voor paginering of sortering.

Invantive Cloud met de Invantive SQL-engine er achter worden gebruikt om erg grote volumes aan clouddata te verwerken met een omvang per download die regelmatig boven de 10 GB ligt. Het is niet ongebruikelijk dat honderden of meer administraties tegelijk opgehaald.

De Invantive SQL-engine is zo gemaakt dat streaming data mogelijk is. Hierdoor is het geheugenbeslag en de benodigde CPU-capaciteit lineair aan het aantal doorgevoerde rijen per seconden in plaats van het totale aantal rijen in een OData dataset.

Toestaan van $skip en/of $orderBy zou het mogelijk maken om een relatief kleine OData download uit te voeren, terwijl daarvoor de volledige dataset op de server verwerkt moet worden.