Invantive Cloud Structure

Go to Dutch version

This article provides an overview of the structure of Invantive Cloud. Some elements have deliberately been excluded, such as applying additional controls, filters, and firewall settings. These are available only with NDA.

Invantive Cloud can be accessed by users through three channels:

  1. Cloud: through the web user interface on https://cloud.invantive.com.
  2. Bridge Online: through OData4 queries on https://bridge-online.cloud.
  3. App Online: through custom web apps on https://app-online.cloud.

All three channels can access the same database definitions and data containers such as Twinfield, Simplicate, Yuki, Exact Online. You can also access databases that contain multiple types of data containers through all three channels; for example, custom web apps can read data in Yuki and write data in Visma.net Financials.

Invantive Cloud

The Invantive Cloud web user interface provides access to both configuration options as well as the customer portal functionality, displaying invoices and subscription data.

Invantive Bridge Online

Invantive Bridge Online provides access to over 70 (cloud)platforms using OData4 as a unified communications protocol. Invantive Bridge Online translates OData4 requests back-and-forth with Invantive SQL. Invantive Bridge Online is typically used with Microsoft Power BI, Power Query and Azure Data Factory to ease connectivity to (cloud)platforms using the Invantive connectors.

Invantive App Online

Invantive App Online is the web app counterparty of Invantive Bridge Online. App Online provides hosting and low-code facilities for data-driven websites.

Data Guard

Data Guard manages security-sensitive data. The security-sensitive data includes customer data (name, user list) and credentials.

Credentials

All credentials (user names, passwords, refresh tokens, API tokens) are stored after encryption in the credentials storage. The encryption key varies per party. All users of a party can use the credentials using Invantive Cloud functionality, but the credential values can not be retrieved through the user interface.

Credentials are made available to the user-facing components Invantive Bridge Online and Invantive Cloud when necessary for proper behavior. OAuth2 refresh tokens remain in the environment protected by Data Guard; solely a limited-lifetime access token is made available to Bridge Online and Cloud.

Bridge Online

Invantive Bridge Online works on the pull principle: no data (when necessary) is received from the (cloud)platforms behind the databases unless requested. This is different from the push principle with data replication such as with Data Replicator: with push, the data is continuously pushed from the source to an intermediate staging area such as an SQL Server database.

The advantages of using pull are:

  • efficiency: tables not used are not retrieved.
  • agile: tables can be added to a dataset within seconds
  • reduced latency: the latency between actual data events occurring in the source and the dataset can be reduced to real-time.

The advantages of using push are:

  • simple: easy to understand
  • reduced dependency: less dependency on availability and performance of the (cloud)platform

When an OData4 query is received by Invantive Bridge Online, the OData4 query is rewritten into an Invantive SQL statement on the virtual database. The Invantive SQL statement is then executed. The results of the SQL statement are packaged in OData4 response format and returned as a stream of data. The stream-nature allows your OData4 client to start receiving despite not all data yet fetched from the backing platform such as Twinfield or Exact Online.

Caches

Invantive Bridge maintains several caches that are configurable on a database level:

In the following sections these are explained. For cache configuration information, please see Differentiate OData4 for Power BI Cache Behavior.

OData4 Response Cache

The OData4 response cache contains answers to previously OData4 queries. The same answer will be served over and over again during a time frame determined by the value of the field “Bridge Response Cache Maximum Age (sec)” on your database definition. The value is by default 16 hours (57.600 seconds). When the answer is served from the OData4 response cache, the Invantive SQL engine is not used.

Contents of files are encrypted using a party-specific key when the OData4 response cache is stored on disk.

Via the option “Reset cache” in the menu on the right of Invantive Bridge Online it is possible to empty the content of the OData cache for a user (only for incidental use).

The files in the OData4 response cache are ineligible for use and eligible for removal when the cache duration expires. However, the actual removal can be delayed. This allows use of expired cache files when the “Use OData4 Cache Only”-option is checked. This typically provides a reporting solution when a cloud platform has APIs which tend to be unplanned unreliable or down, such as during large infrastructure changes. Otherwise, in combination with the real-time downloads of Invantive Cloud this would lead to longer downtimes.

Platform Response Cache

The platform response cache of Bridge Online within Invantive Cloud contains answers by the backing platform such as AFAS or Exact Online on previous queries to the platform in their respective desired API protocol. The same answer will be used when the same query is to be sent to the platform by the Invantive SQL engine in composing the answer to the SQL statement generated from your OData4 query. The maximum age can be seen at the value of the field “HTTP Disk Cache Maximum Age (sec)” on your database definition. The value is by default 16 hours (57.600 seconds).

Contents of files are encrypted using a party-specific key when the platform response cache is stored on disk.

Driver-specific Caches

Drivers can use specific caches, such as the Exact Online Sync APIs, unchangeable documents or Swagger metadata.

Contents of files are encrypted using a party-specific key when the driver-specific cache is stored on disk.

Subscription Constraints

The cache lifetime settings are also dependent on the subscription chosen. The maximum age does not affect when lower than the settings on the subscription. The subscription-specific settings can be found by navigating to “Subscriptions” and then clicking on the product code such as “SUBCMEA02”:

Monitor Cache Use

Whether the OData4 cache is actually used on an OData4 download into Power BI, Power Query, or Azure Data Factory is most easily determined using the real-time Invantive Bridge Online Monitoring. Click on a line to display many technical details about how a request is processed. The data is actually refreshed or taken from the platform response cache when there is a list of increasing row counts. Otherwise, a message is shown that the contents are actually taken from a cache.

The use of the platform response cache can currently not be determined from the Monitoring. The use of the platform response cache requires knowledge of Invantive SQL. For instance, the use can be studied using SessionIOs@DataDictionary. It is therefore recommended to keep both cache settings at the same value to simplify analysis.

Hosting Location

The infrastructure of Invantive Cloud is run from AWS Ireland (Europe, eu-west-1). Data for public consumption (such as icons) is replicated on AWS edge server using AWS CloudFront.

2 berichten zijn gesplitst naar een nieuw topic: 5000 API requests per dag Exact Online