Posted by Richard Jacob (November 16, 2017)

Using a shared TaskDB with Mascot Daemon

Mascot Daemon is our automation client for Mascot Server. The client was introduced with Mascot Server version 1.6 and has been continually developed ever since. The licensing for Mascot Daemon allows as many copies of Daemon to be installed in your lab as you like. By default, each copy of Daemon uses its own task database, TaskDB, to store information about the tasks it is running and links to the results. For some labs, especially service orientated labs, there is a need to centralize and share the task database so that all the searches from all locations can easily be tracked.

The default database engine uses the VistaDB format which is not amenable to sharing. Instead we recommend switching to one of the other five database engines particularly the SQL database engines which are more robust and can handle access to the database from multiple clients at once. We have found that PostgreSQL works particularly well. If you wish to migrate one of your existing TaskDB databases to the new shared system, this can easily be done in Daemon 2.6 or later: go to the Edit->Preferences->ODBC connection tab and backup the database before doing anything else.

The database engine for the shared task database needs to be installed on a central computer. There are instructions on how to do this in the Daemon Help->Getting Started->Database engines. Once the database has been set up you need to install the database engine ODBC drivers on the Daemon client computers and then connect Daemon to the new shared database through the Daemon Edit->Preferences->ODBC engine tab. When the first Daemon client has made a connection to the new task database it will set up and configure the tables to store the results. Configure the Daemon clients on the other computers to use the same shared database and you will see the shared task listed across all the clients. If you made a backup of your original database you can now go to the go to the Edit->Preferences->ODBC connection tab and restore the contents to the new database. Note that this will overwrite any tasks that are in the new database.

There are a few things to note about the new set up: You may want to add the Daemon Client computer name into the task name so that you can quickly tell which computer the task was initiated on. The default Search title also includes the Daemon computers name by using the <localhost> tag. If you clone a job from another system and either the data or the search parameters files were local to the original system, then the new task will fail as it will not be able to find the files. If the files are on a network share and the share name is the same on both systems then Daemon will be able to find them and the task will complete. You can also choose to store the Daemon parameters directly in the database, (Daemon Edit->Preferences->General) which means you only need to worry about the data file location.

One of the new features in Mascot Daemon 2.6 is the ability to set a task to “Start on the completion of” another task. The task that it is following needs to have been started but does not need to be processing the files at that point. You can then chain a set of tasks to run in a custom order, task 2 on completion of task 1, task 3 on completion of task 2 etc. You can also set up two tasks to start on the completion of an earlier task. This is useful if one of the tasks is going to be a longer one and you still want other tasks to run at the same time. Tasks can be scheduled first come, first served or in another order that reflects the importance or urgency of the job. We still recommend running multiple tasks at once particularly scheduling shorter/smaller searches to run at the same time as longer searches rather than waiting for them to finish thereby keeping the que moving at a reasonable pace.

Shared Mascot Daemon task databases are easy to set up and can be useful to commercial, service or shared facility labs. When using a shared database, all Daemon clients can see all the tasks and add new tasks to the queue. You can choose to import one of your old Mascot Daemon databases into the new shared database or start with a fresh empty database. The new “Start on the completion of” feature in Daemon 2.6 adds the ability to order the tasks if desired.

Keywords: ,

Leave a Reply

Your email address will not be published. Required fields are marked *

*

HTML tags are not allowed.