Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Blueriq Studio is a client-server application where the data is stored in a SQL Compact Edition database (.sdf file in /Studio/Repository). For optimal user experience and modelling speed, data is cached in memory. The data consists out of the repositories, branches, projects, modules, version management and global configuration settings.

Note
Even though the Studio is a development environment, it should be treated as a production environment. This means server management, monitoring and backup should be in place.

How does the cache work?

When a user opens a branch for the first time, the data of that specific branch is cached in memory. Depending on the size of the branch, this could take some time but after that, reads and writes will happen in the cache and stored in the database. The branch will be evicted from the cache 30 minutes after the last user interaction with the cache.

...

The amount of memory that is needed depends on the number of users, repositories, branches, branching strategy, size of the projects and the size of the .sdf file. A general rule of thumb is that Studio allocates a maximum 12 times the size of the .sdf file in memory. For example, a database of 10MB on disk will take up to 120MB in memory. A well-chosen branching strategy, the functional architecture (as discussed in A maintainable and agile architecture and in DCM Foundation - v4 [editor]) and the system configuration will keep Studio performance optimal.

...

Because there are a lot of variables it is not possible to give a general advice which applies to all environments but at the moment our largest customers have a .sdf file that is around 800MB which results in to a maximum of 10GB of memory used. Alternatively, if the teams are developing on completely different and isolated projects it should be considered to setup multiple Studio servers so each team has its own Studio environment.

...

From our experience a single Blueriq Runtime could accommodate 10 active modellers business engineers in a development Blueriq modelling environment running on 4GB of memory. When developing modelling with more active developers business engineers it’s possible to increase the size of the memory but keep in mind that a restart of the servers will then take longer because the JVM needs to evict the allocated memory. Alternatively, if the teams are developing on completely different and isolated projects it should be considered to setup multiple Runtime environments so each team has its own Runtime environment and size it accordingly.