Data Security

Does Holistics store my data?

Holistics does not store your raw data in our servers. This means that your data sits securely within your system at all times. You retain full ownership and control over your data.

When a user runs a report or explores a dataset, Holistics will generate and send an SQL query to your database for processing. Once the query completes, Holistics will display the results on your browser.

Holistics only stores a few things:

  • Metadata: the definitions and settings of your reports, dashboards, models... etc. For examples: report's query, description, chart type, delivery schedules...
  • Cache: Holistics gives you the option to set a cache for your reports, dashboards and filters. This speeds up access to your data and also protects your database against repeated queries. Cached data will expire after a determined period of time. No cache data will ever be stored forever on Holistics servers.

Does your cache store the results of the SQL query, or the raw data of my database?

The cache layer only stores the query results. For further technical details of Holistics's cache system, please refer to our docs about Holistics Reporting Mechanism.

When exactly does your cache store the data, and for how long?

There are two occasions when we store your query result on our cache server.

First, when we first retrieve the query result from your database. You can configure the duration we cache data from the Settings tab of the report.

Second, when someone uses the Report Export feature (export to Excel/CSV file), we will generate the file and store it on our storage server. We then generate a secure download link for the end-users to download.

  • The exported files stored on our cloud storage (using AWS S3) are encrypted and automatically removed after 24 hours.
  • You can request to have the exported files stored on your S3 cloud storage instead of ours. As this feature is available on our Enterprise plan, please contact us at [email protected] if you want this implemented.

When I persist my SQL data model into a physical table, where is the table stored?

As shared in your docs about Storage Settings, if you want to speed up your SQL model load time, you can turn the result set of that SQL into a physical table in your database.

Just like with reports, dashboards, filters, etc., what is stored in Holistics is only the model's metadata (SQL, model description, custom field formula...)

My database is behind a private firewall. How do I give access to Holistics?

To securely open your DB for Holistics to access, there are two ways:

  • IP Whitelist: You can add Holistics' IP addresses to your whitelist so that Holistics can connect to your DB. For more information, please refer to Direct Connection section.
  • SSH Tunnel: You can setup a secure SSH tunnel from your DB to Holistics Network, so that all traffic will go through this channel. For more information, please refer to Setup Reverse SSH Tunnels section.

Since our database credentials are stored in Holistics's system, how do you protect them?

We apply AES encryption before storing your credentials in our database. The credentials are then decrypted on the fly whenever we make a connection to your DB server, and the raw credentials are never persisted anywhere. The encryption key resides in a server separated from the DB server.

Our DB server is under a private VPC network and is only accessible by our app servers.

Where are your servers hosted?

Our servers are hosted with a reputable data center provider based in Singapore.

How do I track what data/reports my team has accessed?

Holistics provides you real-time activity logs and audit trails to know the reports your team access to, the IP they accessed from, and their respective usage activities. Enterprise clients can also get more specific and detailed information on a regular basis.