4-D Relational Database

Steve Clark CLARK at SALK-SC2.SDSC.EDU
Wed Mar 24 01:24:11 EST 1993


/Hello all.
/Being a PC user, I sometimes lose touch with developments in the Mac
/world.  However, I ave heard about a relational database software
/package called "4-D" which is being used in the research community to
/organize sequence data.
/ 
/Can someone please fill me in?
/What are the benefits of using this package?
/How are you organizing your data?
/Are there any collaborative efforts in existence using 4-D?
/ 
/Any info would be appreciated :)
/ 
/Christina Klock
/Promega Corp.
/klock at psl.wisc.edu
 
I'm using 4th Dimension to keep track of the physical mapping data our lab 
generates as part of the Genome Project. The database is called the Genome 
Notebook. I'm aware of two other genome-related databases developed with 
4D: Chrominfo by Prakash Nadkarni and GDB-Lite by Randy Smith and Dan 
Davison, and am sure there are lots of databases being developed for all 
sorts of purposes. Sorry I don't know of any to keep track of just sequence 
data, although mine keeps track of the results of sequence analysis, but 
doesn't store the sequences themselves.

	4D is a pretty comprehensive package that can't be described 
adequately in a short note. It is fully programable, 
multi-simultaneous-user, and relational. There are optional (extra-cost) 
modules that you can get to add more features such as spreadsheet functions 
and word-processing (to help with mail merge). The only one I have 
experience with is 4D Draw, which enables you to procedurally generate 
vector-based drawings such as you could do by hand with a package like 
MacDraw or Canvas. It has all the features you would expect in a drawing 
package, the drawings can be modified by hand from within the database, and 
everything that can be done by hand can be done procedurally as well. I'm 
very impressed and happy with this setup. I'm using the Draw module to draw 
ideograms of the chromosomes, showing where the loci I've selected in the 
database are located. When things get a little crowded I use the manual 
tools to move things around a bit. I'm also drawing contigs.

	The procedural language is similar to Pascal or C, but has a few 
quirks in it that may take you by surprise. For example, there are no GOTO 
statements, no way to break out of a loop, all boolean relationships in a 
statement are evaluated before the total statement is evaluated (for 
example, 

while( (i<=n) & (string{i}#" ") )
 ...
 i := i + 1
end while

will cause a problem if n is the length of the array and there are no 
spaces in the string: the program will try to evaluate string{n+1}) and all
statements are evaluted from left to right, so that in the expression 

x := 1 + 2 * 4

x gets the value 12 instead of the expected 9. Having said that, you can do 
almost anything with the language and there is a debugger built in so you 
can track what's going on. A lot of the functions for manipulating the data 
are very high-level so you can do a lot in one line of programming. An
optional (and quite expensive) compiler is available to speed up the
operations which involve a lot of calculations. As Randy Smith pointed out
to me, the compiler is worth having just for it's ability to pick up
programming errors that the interpreter doesn't notice. Unfortunately the
compiler doesn't make a stand-alone application - it still requires a
runtime module that can be had for a fee. 

	The develpment environment is very Mac-ish (too Mac-ish in some 
respects for me) and the environment the end-user sees is also very Mac-ish 
so biologists will feel right at home with it. Changes that don't involve 
programming, such as adding new tables or fields within pre-existing 
tables, can be done very rapidly. 

	The newly released version of 4D (version 3) works on the 
client-server model which should speed things up quite a bit (for multiuser 
work, you really need a fast network - phonenet is out, but even with 
Ethernet, complicated searches can take a while under version 2). It adds a 
number of other nice goodies that I can't report on because I haven't got 
it running yet. Although I've had it since last December, I can't use it 
because they haven't released the update of 4D Draw that is required to be 
used with it. I've been calling them about twice a month since January and 
they always tell me it should be out in two weeks :-(

	There are a huge number of features I haven't touched on. One thing 
I may use in the future is the optional extension that enables the 4D 
database to act as a front-end for an Oracle or Sybase (SQL) database that 
runs on a multiuser computer. This extension also enables the exchange of 
data between the two kinds of databases.

	I hope I've left you with the impression that I generally quite 
like 4D, even if it does do a few things in a way that I consider to be 
suboptimal. I'm sorry that I can't tell you how I organize my data, but the 
structure is just too complicated to describe in writing. Besides, it's 
pretty flexible so there are any number of ways that you could store your 
data.

	4th Dimension is sold in the USA by ACI US, 10351 Bubb Rd, 
Cupertino, CA 95014 (408) 252-4444. The head office is in France, with 
other offices in Germany, Sweden and England. They have a discount for 
educational institutions, at least here in the US.

Disclaimer: I have no relationship to ACI or ACI US other than as a 
satisfied customer. If satisfaction is measured by the amount of time spent 
on hold while waiting to talk to a technical support person, I am a very 
satisfied customer indeed. Also, it gives me a chance to catch up on 
reading the bionet newsgroups.


Steve Clark

clark at salk-sc2.sdsc.edu  (Internet)
clark at salk               (Bitnet)




More information about the Bio-soft mailing list