Object <-> Relational Mapping (TopLink) 
Author Message
 Object <-> Relational Mapping (TopLink)

Hey,

Has anyone successfully used TopLink for relational database access within
Digitalk's Smalltalk?  The concern that I have is one of performance.  TopLink
does not support a "dirty" bit concept; therefore, it must go off to the database
to determine if an update or insert operation should take place (during a #writeObject:).
If the primary key of the object exists in the database, then an update is performed.
Otherwise, an insert is performed.

In addition, although TopLink has an object cache, it does not use this cache
to determine if an object must be committed to the database.  A TopLink
commit operation simply calls the database commit operation.  All object inserts
and updates have already taken place during the #writeObject:.

Has anyone used TopLink for complex object structures?  If so, did you experience
quite a performance penalty?

In addition, are there any smart "object adaptors" available for Digitalk's Smalltalk
environment?




Fri, 06 Feb 1998 03:00:00 GMT  
 Object <-> Relational Mapping (TopLink)

Quote:

>Has anyone successfully used TopLink for relational database access within
>Digitalk's Smalltalk?  

I have been using TopLink successfully for DB2 on MVS via ODBC and
DDCS/2 (IBM's database gateway) for VisualAge.  The system is already
in production for just over 3 weeks. TopLink is  working fine and the
performance is acceptable to our current application requirement.
As you may aware, access to database via ODBC can only support dynamic
SQL which incurs a great deal of overhead because of the authorization
checking and access path selection (prepare process).  Please don't
expect sub-second response time from this type of environment.  A more
efficient way to access database is called static SQL where
authorization and access path are determined at bind time rather
run-time.

Personally, I believe the strength of TopLink is to allow developers
to continue coding in objects using the Smalltalk syntax without
coding any SQL statements.  In our case, we have less than 3 SQL
statements in our entire application.
BTW, I'm an experienced DBA and I have no trouble in coding SQL.
I strongly believe the smooth transition from objects to relational
database is one of the contributing factors in productivity gain.

Quote:
>In addition, although TopLink has an object cache, it does not use this cache
>to determine if an object must be committed to the database.  A TopLink
>commit operation simply calls the database commit operation.  All object inserts
>and updates have already taken place during the #writeObject:.

I believe it is the developer's responsibility in issuing a 'commit'
to an unit of work. All DBMSs are designed in this way and I don't
think it is reasonable to ask TopLink to perform commit on your
behalf.

Quote:
>Has anyone used TopLink for complex object structures?  If so, did you experience
>quite a performance penalty?

Personally, I believe our object structures are fairly complicated and
TopLink can handle them very nicely. TopLink  supports both
'post-build' and 'pre-write' exits which will allow you performance
complex transformation after reading from tables or prior to writing
to database.  It also supports integrity checking (e.g. timestamp)
automatically which could eliminate a lot of additional code.

Regards,
CF Wong



Sat, 14 Feb 1998 03:00:00 GMT  
 
 [ 2 post ] 

 Relevant Pages 

1. Object <-> Relational mapping

2. ><><><><>Heeeeeeeeeeeeeeelp on INT 14!><><><><><>

3. <<<<<YOU MUST CHECK THIS OUT >>>>>>>>>> 2103

4. Object <-> XML Mapping

5. <><><> FLOODFILL <><><>

6. Object To Relational Mapping War Stories

7. ACM Paper on Mapping Object to Relational Databases

8. Paper about Object Relational Mapping with Eiffel

9. >>>HELP, DECOMPILER<<<

10. Dylan & object/relational mapping

11. Dylan, MOP, object/relational mapping...

12. <<<XXX Password>>>

 

 
Powered by phpBB® Forum Software