Primary Server
The primary server is the server with the best performance and best IO subsystem, that contains the stores on which users normally work.
Although the term Primary Server suggests that there’s only one primary server, multiple primary servers can exist in a multi-server environment. In this document no distinction will be made between a single-server or multi-server environment unless explicitly stated.
Archive Server
The archive server is the server, with normally a slower IO subsystem, that contains the archives for the stores that reside on the primary server.
An archive server is just another zarafa-server with the sole purpose of providing storage for one or more archive stores. In a multi-server environment this server will be just another node in the cluster.
Unlike primary servers, there’s no need for a multi-server environment to have a multi-archive server setup.
Primary Store
The primary store is the store that resides on the primary server and on which a user normally works.
Archive Store
The archive store is the store that resides on the archive server and which is used for storing the archived messages from the primary store.
zarafa-archiver
The archiver is the application to manage the archiving. Basically it can be used to attach primary stores to archive stores and execute archive runs. It can be installed on any Zarafa server to connect to the primary or archive server using SSL authentication. It can also be used on a single server, using zarafa-server
's unix socket.
Stubbed Message
A stubbed message is a message in the primary store that acts as a placeholder for the archived message. These messages occupy virtually no space, but allow a user to see that a message was once there. On top of that it acts as an entry point to the archived version of that message.
Archive Configuration
An archive store can be configured in two ways, one-to-one and one-to-many. This is not a system wide configuration and can be setup for each archive independently.
This allows for hybrid systems where N users with small to medium stores can be placed on M archive stores (where M is significantly smaller than N) and users with big to huge stores can be placed on dedicated archive stores.
One-to-One Configuration
In a one-to-one configuration one archive store is attached to one primary store.
The advantage of this configuration is that it’s faster as the archive store itself is kept smaller.
The disadvantage is that for each user an additional non-active user needs to be created (since there’s a one-to-one mapping between stores and users in Zarafa).
One-to-Many Configuration
In a one-to-many configuration one archive store is attached to multiple primary stores. For each attached primary store a folder is created in the archive store that will act as the root of the archive for that particular primary store.
The advantage of this configuration is that less additional non-active users are required.
The disadvantage is that the archive will become slower if the total amount of archive data in it grows.
Single Instances
The Zarafa Collaboration Platform uses single instance storage whenever possible to minimize storage requirements when data is stored more than once. The Zarafa Archiver makes use of this technology by remembering which instances it copied to an archive server and referencing that instance whenever possible.