Probe design, probe matching, and searching the nearest relatives require a
lot of database searching.
Simply scanning the whole database for a specific target
takes several tens of seconds. Probe design and searching for
nearest relatives start thousands of search
operations. Waiting several weeks to get a result from the computer
makes every user hate the program, so better algorithms have
to be developed.
The basic ARB SEARCH ALGORITHM:
-
When any (calling) program wants to scan a database, it
does not do the job itself but calls a special
SEARCH_PATTERNS_IN_A_BIG_DATABASE_PROGRAM.
-
We named this program PT_SERVER ('Prefix tree server' or
synonymously 'Positional tree server').
The PT_SERVER searches for patterns in special database files
and sends all matches back to the calling program.
-
Different databases have different PT_SERVERs.
You must choose a PT_SERVER to match the database
you wish to search. The file $ARBHOME/lib/arb_tcp.dat defines
all possible choices.
-
If there is no PT_SERVER running, one is automatically started.
A PT_SERVER does not scan the database of the calling
program, but the database in $ARBHOME/lib/pts/*.arb.
That means:
-
If you have just entered a new sequence this sequence
will not be found by the the nearest-relative search.
This is normally very useful, as you only want to use old
sequences as a reference in the aligning process.
-
For generating probes it isn't useful, because new sequences have to
be added to the PT_SERVER before designing or matching probes.
Remember: By adding 1 new sequence to the database, any previously validated
probe may become invalid.
Re-build your PT-server frequently and re-evaluate any probes
you've made before.
Creating a new PT_SERVER template:
-
Edit the file $ARBHOME/lib/arb_tcp.dat.
<ARB_NTREE/Probes/PT_SERVER Admin/CREATE TEMPLATE>
Note: Make a copy of your changes because a new
ARB installation may reinstall $ARBHOME/lib/arb_tcp.dat.
-
Restart arb
Create a database for an existing template:
-
Start ARB with the database you want to send to the PT_SERVER.
-
Open the PT_SERVER ADMIN Window <ARB_NTREE/Probes/PT_SERVER Admin>.
-
Select a template
-
Press <BUILD SERVER>: ARB will save the DB into
$ARBHOME/lib/pts/name.arb
-
Wait (SUN Sparc 10: 10 minutes/megabyte_sequence_data)
ARB generates an index file $ARBHOME/lib/pts/name.arb.pt
-
If any '*.arb' file in $ARBHOME/lib/pts is newer than the
corresponding '*.arb.pt' ( == prefix tree) file the
'*.arb.pt' file will be updated as soon as the
PT_SERVER is started.
Updating a server:
see 'Create a database for an existing template'.
|