Hot Topic (More than 10 Replies) Relational linking and Natural linking (Read 1216 times)
jondolar
Junior Member
**
Offline


Keep Trying

Posts: 57
Location: Montreal Canada
Joined: Dec 25th, 2003
Relational linking and Natural linking
May 5th, 2004 at 2:34pm
Print Post Print Post  
Hi

I am a FileMaker Pro 6 Developper. I have read posts on the Sesame forum every day since the very

beginning. I think that Sesame could offer an interesting alternative since it has a full language

and event driven actions (on field exit etc) which are sorely lacking in FMP.

Since linking a parent record to other tables records is one of the most important feature of a

DBS, I examined the user manual (PDF) and search for the term "relational". This search produced

over two dozen instances. I look and read everyone of them. The gist of it is that...Natural Link

is simpler and faster but not very flexible while the relational link is more complicated, slower

but more flexible. I am concerned by the "speed" aspect since Sesame does not do indexing at all.

In order to have a benchmark, I produced a test database In FMP using an application I had already

developped. It is essentially an order/line items application with additional relatinal links for

clients details, products description and price etc.

I have 10,000 records in the order file (with a subform for the line items) and 86,000 line items

in another table.

When I look at any record, the subform shows me instaneously its line items (1 item to 25 items on

average).
Finding subset of records is also very fast since every field is indexed on the fly if needed.

I have essentially 2 questions:

A) How fast/slow would Sesame be to show me line items on a subform if I was to build a similar

application with the same number of records using relational links.

B) How fast/slow is Sesame at finding a subset of record with a simple request (find all ACME Co

orders), with a more complicated request (find all ACME Co with orders for January Larger than

$500).

TIA

Serge
  

When all you have is a hammer, everything starts to look like nail!
Back to top
 
IP Logged
 
BOBSCOTT
Senior Member
Members
*****
Offline


That Darn Computer #$X#
{curse words}

Posts: 1195
Joined: Nov 22nd, 2002
Re: Relational linking and Natural linking
Reply #1 - May 5th, 2004 at 3:33pm
Print Post Print Post  
Serge,

This is a difficult if not impossible question to answer. How fast is subjective to many variables. I see slightly different results on different machines I try Sesame on.

What I can tell you is doing a multiple criteria  retrieve on a sample database with 37000 records retrieves the data including the data in  my naturally linked subform instantaneously on any machine I have tried so far.

Using the same criteria with a  Relational linked subform the results do not display instantaneous but it is to fast to time.

  

Team – Together Everyone Achieves More
Back to top
 
IP Logged
 
jondolar
Junior Member
**
Offline


Keep Trying

Posts: 57
Location: Montreal Canada
Joined: Dec 25th, 2003
Re: Relational linking and Natural linking
Reply #2 - May 5th, 2004 at 4:14pm
Print Post Print Post  
Hi Bob

Thanks for the reply.
I'm not sure we are talking about the samething. In FMP, you can browse your entire database using a key combination to go from one record to the next. Say you have 10,000 records, and you have record number 10,000 on your screen and it's subform with the line items (relational link). If you press Ctrl + Down arrow to goto record number 9,999 you instantly see record 9,999 and it's subform is instantly populated with its proper line items.

Regards

Serge
  

When all you have is a hammer, everything starts to look like nail!
Back to top
 
IP Logged
 
BOBSCOTT
Senior Member
Members
*****
Offline


That Darn Computer #$X#
{curse words}

Posts: 1195
Joined: Nov 22nd, 2002
Re: Relational linking and Natural linking
Reply #3 - May 5th, 2004 at 6:34pm
Print Post Print Post  
Serge,

I am not sure if we are talking about the same thing or not so let me explain what I did to test the speed.

I have a form that contains a patients name, address, etc. That form also contains a subform that is linked by a relational link to a database containing all the medications the patient uses. A second subform is also on the main form that is naturally linked  to a database that contains all the diagnostic tests performed on this patient.

If I search on all the records in the main database that are in the state of  Michigan and the patients last name begins with s and their age is greater than 50 it searches all 37000 records very quickly and finds 524 matches. It immediately populates the elements of the first displayed record with data on the  naturally linked diagnostic subform and tenths of seconds later it populates the elements with all the medications associated to this patient  from the relational  linked medication database.

If I advance a record with f10 it immediately shows me record 2 of my 524 records in my result set. It shows me instantly the 9 medications it found in the related database and the 3 diagnostic studies performed. I can continue to press f10 and as each record is entered it instantly populates the related elements on the subforms.

The amazing thing is that I have an additional subform that is related to the medication subform so when I throw focus to a particular medication displayed in my subform it displays a small explanation of what the drug is used for and any major interaction concerns. This link is also super fast.

I hope this clarified my earlier response.
  

Team – Together Everyone Achieves More
Back to top
 
IP Logged
 
TJCajun
Junior Member
**
Offline


"Laissez les bons temps
rouler"

Posts: 72
Location: Louisiana
Joined: Nov 25th, 2002
Re: Relational linking and Natural linking
Reply #4 - May 5th, 2004 at 6:42pm
Print Post Print Post  
I have a little experience with FMPro v5.  We have it here at my lab, but don't use it extensively.  In our setup, when you load FMP and select a database, FMP has "remembered" the last search criteria of that database and those records are now the subset of records available to BROWSE (scroll) through, not the entire database.  The user must do a FIND to access other records in the database. It is fairly fast at retrieving records, but seems a bit slow at sorting (this is on a fairly slow computer). 

It sounds like from your example that when you press Ctrl-Down to see the previous record that this previous record is a part of that subset of records available to "browse", and is already loaded in memory, and so seeing that record would be fast.  Am I correct on this?

This would be a different scenario than what you are asking about Sesame doing a complicated search on several criteria.  Sesame does not (by default) load a "result set" of records.  The user must do a search.  It would take time to search the database, but once Sesame has retrieved that "result set" of records, moving from one record to another would be instantaneous. (Am I correct that you are wanting to compare the speed of accessing a record in FMP that is already part of the subset of records that has already been loaded into memory, vs. Sesame doing a search on one or more criteria?)

I cannot offer any better comments about FMP, and am probably not doing a good job of discussing it.  I have not done a comparison to Sesame.  From reading about Sesame, the amount of RAM available is an important consideration.  I'm sure one of the Lanticans (probably Mark) will offer more specifics.

Either here on the Forum, or in the last Inside Sesame newsletter, someone mentioned something that might be of value.  They were asking about the amount of time it took to load the database.  The reply was to use one of the network licenses to keep that database loaded, and then access to it would be instantaneous, rather than having to wait for it to load.  That would mean having an extra license for this purpose, but might be a worthwhile business investment to provide rapid information to customers, clients, etc.

Would it be feasible to export your 10K record database and the 86K record lineitem database, and try to create a Sesame application and import the data to do a test?  A demo version of Sesame is available, and I don't think it is "crippled" in any of the features you would need.  (If I'm wrong, somebody speak up!)

Hope I've offered some food for thought!

T.J.
  
Back to top
IP Logged
 
jondolar
Junior Member
**
Offline


Keep Trying

Posts: 57
Location: Montreal Canada
Joined: Dec 25th, 2003
Re: Relational linking and Natural linking
Reply #5 - May 5th, 2004 at 6:48pm
Print Post Print Post  
Bob

It doe clarify things and the speed is surprising considering that Sesame does not use indexing! Very interesting.

Thanks

Serge
  

When all you have is a hammer, everything starts to look like nail!
Back to top
 
IP Logged
 
jondolar
Junior Member
**
Offline


Keep Trying

Posts: 57
Location: Montreal Canada
Joined: Dec 25th, 2003
Re: Relational linking and Natural linking
Reply #6 - May 5th, 2004 at 7:15pm
Print Post Print Post  
Hi T.J.

I think you are mixing together my 2 questions. My first question is browsing the entire parent database with 10,000 records (no finding of a subset is necessary if you want to look at the entire database) and simply going from one record (form) to the next or the previous (this done with Ctrl + Down Arrow and Ctrl + Up Arrow in FMP), the relational link with the line item file populates the subform (called a Portal in FMP parlance) instantly. Concerning the speed of a find, Bob indicated that it is quite fast with his database of 37,000 records.

Hope I'm clearer now

Thanks for your reply and Regards

Serge
  

When all you have is a hammer, everything starts to look like nail!
Back to top
 
IP Logged
 
TJCajun
Junior Member
**
Offline


"Laissez les bons temps
rouler"

Posts: 72
Location: Louisiana
Joined: Nov 25th, 2002
Re: Relational linking and Natural linking
Reply #7 - May 5th, 2004 at 8:51pm
Print Post Print Post  
Serge, I guess I was kinda "mixing" things together.  What I was trying to point out was a basic difference between how FMP operates and Sesame operates:

1) (Hope I'm right here) When you access a FMP database, some (or all) of the records are immediately available for browsing.  (Am I right?)  The user does not have to enter any retrieval criteria.  The database "pops up" loaded with the last subset of records accessed (or it may be the entire database)

2) In Sesame, the user is presented with an "empty" database record, and MUST enter some type of retrieval criteria to get a "result set" to examine.
Once data is available in both programs, then the comparison of "speed" of moving through the records would be of interest!

Am enjoying the exchange of ideas and comments - PLEASE don't take anything I'm saying as being argumentative.... do NOT mean it that way. 

Best,
T.J.
  
Back to top
IP Logged
 
jondolar
Junior Member
**
Offline


Keep Trying

Posts: 57
Location: Montreal Canada
Joined: Dec 25th, 2003
Re: Relational linking and Natural linking
Reply #8 - May 5th, 2004 at 9:32pm
Print Post Print Post  
Hi again T.G.

You are absolutely right on your point 1)

On point 2) and from what I am experimenting with the sample databases provided with Sesame, you put yourself in search-update mode and then pressing f10 0r f9 will let you immediately scroll through the actual set of records. There is no need to do any kind of retrieval if the actual set of records is what you need. At least it is my experience (very brief and superficial)

Regards

Serge

  

When all you have is a hammer, everything starts to look like nail!
Back to top
 
IP Logged
 
BOBSCOTT
Senior Member
Members
*****
Offline


That Darn Computer #$X#
{curse words}

Posts: 1195
Joined: Nov 22nd, 2002
Re: Relational linking and Natural linking
Reply #9 - May 5th, 2004 at 9:44pm
Print Post Print Post  
Quote:
you put yourself in search-update mode and then pressing f10 0r f9 will let you immediately scroll through the actual set of records. There is no need to do any kind of retrieval if the actual set of records is what you need.


Serge,

Pressing f10 with nothing specified is equivalent to searching for all records in the database.

After entering search mode you could put a criteria or  any combination of criteria in the elements on the form to specify the specific result set you are searching for.
  

Team – Together Everyone Achieves More
Back to top
 
IP Logged
 
jondolar
Junior Member
**
Offline


Keep Trying

Posts: 57
Location: Montreal Canada
Joined: Dec 25th, 2003
Re: Relational linking and Natural linking
Reply #10 - May 5th, 2004 at 10:06pm
Print Post Print Post  
Thanks for the specific details Bob

Serge
  

When all you have is a hammer, everything starts to look like nail!
Back to top
 
IP Logged