The initial size of a brand new and empty Journyx database is very small - a few megabytes at most. Over time, however, as records are added the database will grow. But how much? The information on this page is designed to help you answer that question for yourself because each installation is different. Following that discussion, we'll look at a few more technical issues regarding Journyx and databases.

How much growth should you expect in the first three years?

There are essentially two components that make up the total disk space usage of a Journyx database. The first component is general configuration overhead, which is comprised of the actual user and project records, entry codes, and other configuration records. The overhead for these tends to be very small or even negligible compared to the other component and will grow fairly slowly once the basic configuration is established. On most sites this general overhead is less than 10 MB.

The majority of disk space required by Journyx is dedicated to ongoing time records and related information. The exact usage depends, of course, on your configuration choices and other factors, but we present here the information needed to get a rough idea.

The total usage of a site can be approximated with the following formula:

General Overhead + (Time Record Overhead * Active Users * Days)

Time Record Overhead consists of:

((T * R) + (T * H * E))

Where:

  • T = Average Number of Time entries per user per day
  • H = Number of extra fields marked Historic
  • R = average time record size (approx. 2 KB per record)
  • E = average extra field size (approx. 0.5 KB per record)
  • Historic means that the value of an extra field, such as the Pay Rate of a Project, is recorded at the point in time when the time record is made. Therefore if the pay rate for that project changes at some point, you still have the historic pay rate at the time the record was made. Some sites do not need this feature while others use it extensively.

    Example: Assume a case in which you have 100 active users on your site, and each one of those users creates on average 5 separate time entries per day. Let's also suppose that you have 4 historic extra fields for time records.

    (5 * 2) + (5 * 4 * 0.5) = 20 KB per user per day.

    Therefore in this example the site would need approximately:
    (20 KB * 100 users * 365 days) = 712 megabytes per year

    Disclaimer: These calculations should be used as a rough guide only.

    Are separate production and test versions of the database required? If so, can they be on the same server?

    Separate production and test databases are not a requirement. If you are using your own external database such as Oracle, you can keep different versions on the same Oracle server, as long as they are kept under different database user IDs.

    The Windows version of Journyx does NOT currently support multiple separate installations on the same host machine. Of course, you can have two different Windows Journyx servers (production and test) pointing to the same physical Oracle server, as long as production and test data live under separate database accounts.

    The Unix version of Journyx does support multiple installs on the same physical machine as long as they are installed under different User IDs.

    We recommend that you make regular backups of your production database. The standard data backup utility, backupdb, can be used for this as can your database server's own backup tools. In fact, we strongly recommend you use both for additional safety.

    Can Journyx reside on a different server than the database?

    Yes, in fact this is recommended, but not required. If your database server hosts other applications then we strongly recommend installing on a separate machine.

    What SQL configuration does Journyx require?

    If you are using Microsoft SQL Server, Journyx does require that the collation (sort sequence) be set to SQL_Latin1_General_Cp1_CS_AS.

    See also this document

    How is security setup: NT ids, SQL id for each person, shared SQL id with security for each person set in the application?

    All Journyx data is stored in the database under a single database account ID. The actual Journyx user accounts and (encrypted) passwords are stored within that database. On Windows the Journyx NT service runs under the "Local System" account.

    What access will these ids need to the database?

    The answer to this question is different for Oracle and SQL Server. In general, only normal database access permissions are required.

    This document will answer your questions

    If it does not, please contact the Journyx Support Team and we will provide you with more detailed information.

    How much load will Journyx place on the database server?

    The answer to this question depends on your site configuration as well as on the specific usage patterns within your organization.

    In most cases, the load will result mainly from adding new time records, and the load may be estimated using the formula given above. The application server performs some caching of database records, so the full read load will not hit your database.

    In general we've observed that load on the database will tend to increase from about 8 am to 10 am local time, and then again at 4 pm to 6 pm local time, when employees generally work with their timesheets. At other times the load should be nominal.

    Does Journyx include utilities to purge unneeded records from the database?

    All installations of Journyx Timesheet and ProjectXecute 5.5.2 and greater include a feature in backupdb, the backup program, that allows you to back up from a certain date range and purge them from your live site. For example, this would allow you to create an archive backup that included only data from 2003 and earlier and, if you so choose, delete this data from your live site. You would then be able to restore that archive onto a test server in the event that you needed to report on the purged data.

    Where To Go From Here

    If you still have questions about Timesheet and how it interacts with databases, please contact the Journyx Support Team.