Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » DTP » Using DTP components as runtime "Schema Container"?
Using DTP components as runtime "Schema Container"? [message #346] Thu, 12 May 2005 22:53 Go to next message
Stefan Vaillant is currently offline Stefan VaillantFriend
Messages: 8
Registered: July 2009
Junior Member
Hi,

given the following problem: Assume we have server side products that should
run on a number of RDBMS:s. Consequently, our product requires a certain
relational schema to be deployed in the RDBMS.

Can I use (the planed) DTP components to iplement the following use case:
1) The relational schema is shipped to the customer as XML files, which are
RDBMS vendor and version neutral.
2) DTP tools provide support for transforming the vendor neutral model into
vendor specific DDL statements, which are applied to the RDBMS. (in case no
schema exists, yet)
3) DTP tools provide support for generating "delta" DDL statements and apply
them to the RDBMS (in case a previous version of the schema has already been
deployed.)

[I guess answer to 1) is certainly "yes", I mention this just to clarify the
use case.]

Some notes:
a) The above functionality is IMHO always required independently of wether
O/R mapping is used or not.
b) I'm not sure if a schema-generic mapping from vendor neutral to vendor
specifc DDL statements is realistic. I might be a bit naive here (datatype
issues amoung 10s of other issues). Some extension points might be required.
Also non-schema related issues like TABLESPACE sizes might be problematic.
c) I would like to point to an existing product that provides similar
support, but unfortunatly I'm not aware of one.
d) I believe e.g.WebSphere supports 2) (but not 3), but only if the database
vendor code has been generated during development of the CMP Entity Bean.
e) A more general statement on what I'm looking for: With J2EE its possible
to create and ship vendor neutral business logic [OK, we all know the
problems in real life, but at least J2EE has this target]. What I'm looking
for is a standard shiping format and related "container" for vendor neutral
RDBMS schemas.
f) Run-Time Mapping support is really needed in my case.

* Stefan
Re: Using DTP components as runtime "Schema Container"? [message #351 is a reply to message #346] Fri, 13 May 2005 14:12 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: christian.sell.netcologne.de

the data tooling that is provided with the WTP project (and will become
part of DTP in some way) already does the conversion from generic to
vendor-specific schema, extensible (for non-supported DBMS) via eclipse
mechanisms. I dont think they do deltas, however.
What do you mean by run-time mapping? That would be the job of an O/R
layer IMO.

christian

Stefan Vaillant wrote:
> Hi,
>
> given the following problem: Assume we have server side products that should
> run on a number of RDBMS:s. Consequently, our product requires a certain
> relational schema to be deployed in the RDBMS.
>
> Can I use (the planed) DTP components to iplement the following use case:
> 1) The relational schema is shipped to the customer as XML files, which are
> RDBMS vendor and version neutral.
> 2) DTP tools provide support for transforming the vendor neutral model into
> vendor specific DDL statements, which are applied to the RDBMS. (in case no
> schema exists, yet)
> 3) DTP tools provide support for generating "delta" DDL statements and apply
> them to the RDBMS (in case a previous version of the schema has already been
> deployed.)
>
> [I guess answer to 1) is certainly "yes", I mention this just to clarify the
> use case.]
>
> Some notes:
> a) The above functionality is IMHO always required independently of wether
> O/R mapping is used or not.
> b) I'm not sure if a schema-generic mapping from vendor neutral to vendor
> specifc DDL statements is realistic. I might be a bit naive here (datatype
> issues amoung 10s of other issues). Some extension points might be required.
> Also non-schema related issues like TABLESPACE sizes might be problematic.
> c) I would like to point to an existing product that provides similar
> support, but unfortunatly I'm not aware of one.
> d) I believe e.g.WebSphere supports 2) (but not 3), but only if the database
> vendor code has been generated during development of the CMP Entity Bean.
> e) A more general statement on what I'm looking for: With J2EE its possible
> to create and ship vendor neutral business logic [OK, we all know the
> problems in real life, but at least J2EE has this target]. What I'm looking
> for is a standard shiping format and related "container" for vendor neutral
> RDBMS schemas.
> f) Run-Time Mapping support is really needed in my case.
>
> * Stefan
>
>
Re: Using DTP components as runtime "Schema Container"? [message #356 is a reply to message #351] Fri, 13 May 2005 20:03 Go to previous messageGo to next message
Stefan Vaillant is currently offline Stefan VaillantFriend
Messages: 8
Registered: July 2009
Junior Member
> What do you mean by run-time mapping? That would be the job of an O/R
> layer IMO.
That means that it should be possible to do the mapping RDB-EMF-Model to
vendor specific DDL statements during runtime (and not during development
time only).
Maybe mapping is the term to use, "SQL code generation" might be better.

Thanks for the info!

* Stefan

"Christian Sell" <christian.sell@netcologne.de> wrote in message
news:d62d5l$62g$1@news.eclipse.org...
> the data tooling that is provided with the WTP project (and will become
> part of DTP in some way) already does the conversion from generic to
> vendor-specific schema, extensible (for non-supported DBMS) via eclipse
> mechanisms. I dont think they do deltas, however.
> What do you mean by run-time mapping? That would be the job of an O/R
> layer IMO.
>
> christian
>
> Stefan Vaillant wrote:
> > Hi,
> >
> > given the following problem: Assume we have server side products that
should
> > run on a number of RDBMS:s. Consequently, our product requires a certain
> > relational schema to be deployed in the RDBMS.
> >
> > Can I use (the planed) DTP components to iplement the following use
case:
> > 1) The relational schema is shipped to the customer as XML files, which
are
> > RDBMS vendor and version neutral.
> > 2) DTP tools provide support for transforming the vendor neutral model
into
> > vendor specific DDL statements, which are applied to the RDBMS. (in case
no
> > schema exists, yet)
> > 3) DTP tools provide support for generating "delta" DDL statements and
apply
> > them to the RDBMS (in case a previous version of the schema has already
been
> > deployed.)
> >
> > [I guess answer to 1) is certainly "yes", I mention this just to clarify
the
> > use case.]
> >
> > Some notes:
> > a) The above functionality is IMHO always required independently of
wether
> > O/R mapping is used or not.
> > b) I'm not sure if a schema-generic mapping from vendor neutral to
vendor
> > specifc DDL statements is realistic. I might be a bit naive here
(datatype
> > issues amoung 10s of other issues). Some extension points might be
required.
> > Also non-schema related issues like TABLESPACE sizes might be
problematic.
> > c) I would like to point to an existing product that provides similar
> > support, but unfortunatly I'm not aware of one.
> > d) I believe e.g.WebSphere supports 2) (but not 3), but only if the
database
> > vendor code has been generated during development of the CMP Entity
Bean.
> > e) A more general statement on what I'm looking for: With J2EE its
possible
> > to create and ship vendor neutral business logic [OK, we all know the
> > problems in real life, but at least J2EE has this target]. What I'm
looking
> > for is a standard shiping format and related "container" for vendor
neutral
> > RDBMS schemas.
> > f) Run-Time Mapping support is really needed in my case.
> >
> > * Stefan
> >
> >
Re: Using DTP components as runtime "Schema Container"? [message #361 is a reply to message #356] Thu, 26 May 2005 17:58 Go to previous messageGo to next message
Der Ping Chou is currently offline Der Ping ChouFriend
Messages: 36
Registered: July 2009
Member
The default SQL DDL Generation is using a generic SQL standard compliant
generator, or you can plugin your own DDL generation to handle something
like TABLESPACE code generation. But I think for OR mapping purpose the
generic DDL generation is suffice.

Der Ping
Re: Using DTP components as runtime "Schema Container"? [message #366 is a reply to message #346] Sun, 29 May 2005 00:46 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: eclipse.ambysoft.com

On Fri, 13 May 2005 00:53:30 +0200, "Stefan Vaillant"
<Stefan.Vaillant@nokia.com> wrote:

>Hi,
>
>given the following problem: Assume we have server side products that should
>run on a number of RDBMS:s. Consequently, our product requires a certain
>relational schema to be deployed in the RDBMS.
>
>Can I use (the planed) DTP components to iplement the following use case:
>1) The relational schema is shipped to the customer as XML files, which are
>RDBMS vendor and version neutral.

Is this an XML schema definition being shipped or an XML containing
meta data describing a schema?

>2) DTP tools provide support for transforming the vendor neutral model into
>vendor specific DDL statements, which are applied to the RDBMS. (in case no
>schema exists, yet)

It's pretty straight forward to generate table schema, given
sufficient meta data describing what you want. Do you also expect
triggers to support RI to be generated too? If so, then you'd need to
include meta data within the XML file to define the RI rules.

>3) DTP tools provide support for generating "delta" DDL statements and apply
>them to the RDBMS (in case a previous version of the schema has already been
>deployed.)

This is a pretty ugly can of worms once you start to look into it.
Are you assuming mere additions and substractions to the schema? What
happens if a column is renamed?
What should happen to the data, if any?

By asking to handle the delta, you're really asking to refactor the
database schema. I've described the issues for doing so at
www.agiledata.org/essays/databaseRefactoring.html and am currently
working with Pramod Sadalage on www.databaserefactoring.com which will
contain material from our upcoming DB refactoring book.

>
>[I guess answer to 1) is certainly "yes", I mention this just to clarify the
>use case.]
>
>Some notes:
>a) The above functionality is IMHO always required independently of wether
>O/R mapping is used or not.

Yes, it's important to decouple various aspects of DTP.

>b) I'm not sure if a schema-generic mapping from vendor neutral to vendor
>specifc DDL statements is realistic. I might be a bit naive here (datatype
>issues amoung 10s of other issues). Some extension points might be required.
>Also non-schema related issues like TABLESPACE sizes might be problematic.

Tools such as ER/Win have been dealing with this for many, many years.

>c) I would like to point to an existing product that provides similar
>support, but unfortunatly I'm not aware of one.
>d) I believe e.g.WebSphere supports 2) (but not 3), but only if the database
>vendor code has been generated during development of the CMP Entity Bean.
>e) A more general statement on what I'm looking for: With J2EE its possible
>to create and ship vendor neutral business logic [OK, we all know the
>problems in real life, but at least J2EE has this target]. What I'm looking
>for is a standard shiping format and related "container" for vendor neutral
>RDBMS schemas.

There are several data modeling CASE tools which do exactly this.
ERWin is my preferred one, but there are several others.

>f) Run-Time Mapping support is really needed in my case.

At www.ambysoft.com/persistenceLayer.html you'll find some links to
mapping products, many of which work in a Java environment. This
list isn't complete, but it's a pretty good start.

- Scott

>
>* Stefan
>
Re: Using DTP components as runtime "Schema Container"? [message #397 is a reply to message #361] Mon, 13 June 2005 18:44 Go to previous message
Der Ping Chou is currently offline Der Ping ChouFriend
Messages: 36
Registered: July 2009
Member
Stefan,

Our API for WTP rdb generic DDL generation is under rdb.core plugin, under
org.eclipse.wst.rdb.internal.core.rte.fe package.
Just to let you know that the supporting ui wizard for DDL generation will
be in WTP M5 this Thursday's integration build. Too, we will have a
complete customized DDL generation to support Derby database. By default
all these will roll over to DTP this summer.

Der Ping
Re: Using DTP components as runtime "Schema Container"? [message #565403 is a reply to message #346] Fri, 13 May 2005 14:12 Go to previous message
Christian Sell is currently offline Christian SellFriend
Messages: 77
Registered: July 2009
Member
the data tooling that is provided with the WTP project (and will become
part of DTP in some way) already does the conversion from generic to
vendor-specific schema, extensible (for non-supported DBMS) via eclipse
mechanisms. I dont think they do deltas, however.
What do you mean by run-time mapping? That would be the job of an O/R
layer IMO.

christian

Stefan Vaillant wrote:
> Hi,
>
> given the following problem: Assume we have server side products that should
> run on a number of RDBMS:s. Consequently, our product requires a certain
> relational schema to be deployed in the RDBMS.
>
> Can I use (the planed) DTP components to iplement the following use case:
> 1) The relational schema is shipped to the customer as XML files, which are
> RDBMS vendor and version neutral.
> 2) DTP tools provide support for transforming the vendor neutral model into
> vendor specific DDL statements, which are applied to the RDBMS. (in case no
> schema exists, yet)
> 3) DTP tools provide support for generating "delta" DDL statements and apply
> them to the RDBMS (in case a previous version of the schema has already been
> deployed.)
>
> [I guess answer to 1) is certainly "yes", I mention this just to clarify the
> use case.]
>
> Some notes:
> a) The above functionality is IMHO always required independently of wether
> O/R mapping is used or not.
> b) I'm not sure if a schema-generic mapping from vendor neutral to vendor
> specifc DDL statements is realistic. I might be a bit naive here (datatype
> issues amoung 10s of other issues). Some extension points might be required.
> Also non-schema related issues like TABLESPACE sizes might be problematic.
> c) I would like to point to an existing product that provides similar
> support, but unfortunatly I'm not aware of one.
> d) I believe e.g.WebSphere supports 2) (but not 3), but only if the database
> vendor code has been generated during development of the CMP Entity Bean.
> e) A more general statement on what I'm looking for: With J2EE its possible
> to create and ship vendor neutral business logic [OK, we all know the
> problems in real life, but at least J2EE has this target]. What I'm looking
> for is a standard shiping format and related "container" for vendor neutral
> RDBMS schemas.
> f) Run-Time Mapping support is really needed in my case.
>
> * Stefan
>
>
Re: Using DTP components as runtime "Schema Container"? [message #565428 is a reply to message #351] Fri, 13 May 2005 20:03 Go to previous message
Stefan Vaillant is currently offline Stefan VaillantFriend
Messages: 8
Registered: July 2009
Junior Member
> What do you mean by run-time mapping? That would be the job of an O/R
> layer IMO.
That means that it should be possible to do the mapping RDB-EMF-Model to
vendor specific DDL statements during runtime (and not during development
time only).
Maybe mapping is the term to use, "SQL code generation" might be better.

Thanks for the info!

* Stefan

"Christian Sell" <christian.sell@netcologne.de> wrote in message
news:d62d5l$62g$1@news.eclipse.org...
> the data tooling that is provided with the WTP project (and will become
> part of DTP in some way) already does the conversion from generic to
> vendor-specific schema, extensible (for non-supported DBMS) via eclipse
> mechanisms. I dont think they do deltas, however.
> What do you mean by run-time mapping? That would be the job of an O/R
> layer IMO.
>
> christian
>
> Stefan Vaillant wrote:
> > Hi,
> >
> > given the following problem: Assume we have server side products that
should
> > run on a number of RDBMS:s. Consequently, our product requires a certain
> > relational schema to be deployed in the RDBMS.
> >
> > Can I use (the planed) DTP components to iplement the following use
case:
> > 1) The relational schema is shipped to the customer as XML files, which
are
> > RDBMS vendor and version neutral.
> > 2) DTP tools provide support for transforming the vendor neutral model
into
> > vendor specific DDL statements, which are applied to the RDBMS. (in case
no
> > schema exists, yet)
> > 3) DTP tools provide support for generating "delta" DDL statements and
apply
> > them to the RDBMS (in case a previous version of the schema has already
been
> > deployed.)
> >
> > [I guess answer to 1) is certainly "yes", I mention this just to clarify
the
> > use case.]
> >
> > Some notes:
> > a) The above functionality is IMHO always required independently of
wether
> > O/R mapping is used or not.
> > b) I'm not sure if a schema-generic mapping from vendor neutral to
vendor
> > specifc DDL statements is realistic. I might be a bit naive here
(datatype
> > issues amoung 10s of other issues). Some extension points might be
required.
> > Also non-schema related issues like TABLESPACE sizes might be
problematic.
> > c) I would like to point to an existing product that provides similar
> > support, but unfortunatly I'm not aware of one.
> > d) I believe e.g.WebSphere supports 2) (but not 3), but only if the
database
> > vendor code has been generated during development of the CMP Entity
Bean.
> > e) A more general statement on what I'm looking for: With J2EE its
possible
> > to create and ship vendor neutral business logic [OK, we all know the
> > problems in real life, but at least J2EE has this target]. What I'm
looking
> > for is a standard shiping format and related "container" for vendor
neutral
> > RDBMS schemas.
> > f) Run-Time Mapping support is really needed in my case.
> >
> > * Stefan
> >
> >
Re: Using DTP components as runtime "Schema Container"? [message #565451 is a reply to message #356] Thu, 26 May 2005 17:58 Go to previous message
Der Ping Chou is currently offline Der Ping ChouFriend
Messages: 36
Registered: July 2009
Member
The default SQL DDL Generation is using a generic SQL standard compliant
generator, or you can plugin your own DDL generation to handle something
like TABLESPACE code generation. But I think for OR mapping purpose the
generic DDL generation is suffice.

Der Ping
Re: Using DTP components as runtime "Schema Container"? [message #565475 is a reply to message #346] Sun, 29 May 2005 00:46 Go to previous message
eclipse is currently offline eclipseFriend
Messages: 19
Registered: July 2009
Junior Member
On Fri, 13 May 2005 00:53:30 +0200, "Stefan Vaillant"
<Stefan.Vaillant@nokia.com> wrote:

>Hi,
>
>given the following problem: Assume we have server side products that should
>run on a number of RDBMS:s. Consequently, our product requires a certain
>relational schema to be deployed in the RDBMS.
>
>Can I use (the planed) DTP components to iplement the following use case:
>1) The relational schema is shipped to the customer as XML files, which are
>RDBMS vendor and version neutral.

Is this an XML schema definition being shipped or an XML containing
meta data describing a schema?

>2) DTP tools provide support for transforming the vendor neutral model into
>vendor specific DDL statements, which are applied to the RDBMS. (in case no
>schema exists, yet)

It's pretty straight forward to generate table schema, given
sufficient meta data describing what you want. Do you also expect
triggers to support RI to be generated too? If so, then you'd need to
include meta data within the XML file to define the RI rules.

>3) DTP tools provide support for generating "delta" DDL statements and apply
>them to the RDBMS (in case a previous version of the schema has already been
>deployed.)

This is a pretty ugly can of worms once you start to look into it.
Are you assuming mere additions and substractions to the schema? What
happens if a column is renamed?
What should happen to the data, if any?

By asking to handle the delta, you're really asking to refactor the
database schema. I've described the issues for doing so at
www.agiledata.org/essays/databaseRefactoring.html and am currently
working with Pramod Sadalage on www.databaserefactoring.com which will
contain material from our upcoming DB refactoring book.

>
>[I guess answer to 1) is certainly "yes", I mention this just to clarify the
>use case.]
>
>Some notes:
>a) The above functionality is IMHO always required independently of wether
>O/R mapping is used or not.

Yes, it's important to decouple various aspects of DTP.

>b) I'm not sure if a schema-generic mapping from vendor neutral to vendor
>specifc DDL statements is realistic. I might be a bit naive here (datatype
>issues amoung 10s of other issues). Some extension points might be required.
>Also non-schema related issues like TABLESPACE sizes might be problematic.

Tools such as ER/Win have been dealing with this for many, many years.

>c) I would like to point to an existing product that provides similar
>support, but unfortunatly I'm not aware of one.
>d) I believe e.g.WebSphere supports 2) (but not 3), but only if the database
>vendor code has been generated during development of the CMP Entity Bean.
>e) A more general statement on what I'm looking for: With J2EE its possible
>to create and ship vendor neutral business logic [OK, we all know the
>problems in real life, but at least J2EE has this target]. What I'm looking
>for is a standard shiping format and related "container" for vendor neutral
>RDBMS schemas.

There are several data modeling CASE tools which do exactly this.
ERWin is my preferred one, but there are several others.

>f) Run-Time Mapping support is really needed in my case.

At www.ambysoft.com/persistenceLayer.html you'll find some links to
mapping products, many of which work in a Java environment. This
list isn't complete, but it's a pretty good start.

- Scott

>
>* Stefan
>
Re: Using DTP components as runtime "Schema Container"? [message #565643 is a reply to message #361] Mon, 13 June 2005 18:44 Go to previous message
Der Ping Chou is currently offline Der Ping ChouFriend
Messages: 36
Registered: July 2009
Member
Stefan,

Our API for WTP rdb generic DDL generation is under rdb.core plugin, under
org.eclipse.wst.rdb.internal.core.rte.fe package.
Just to let you know that the supporting ui wizard for DDL generation will
be in WTP M5 this Thursday's integration build. Too, we will have a
complete customized DDL generation to support Derby database. By default
all these will roll over to DTP this summer.

Der Ping
Previous Topic:DTP Consolidation Notes Now Online
Next Topic:DTP Web site
Goto Forum:
  


Current Time: Fri Nov 28 08:59:03 GMT 2014

Powered by FUDForum. Page generated in 0.02508 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software