File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes JDBC and the fly likes pureQuery(tm)... What are the drawbacks? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Databases » JDBC
Bookmark "pureQuery(tm)... What are the drawbacks?" Watch "pureQuery(tm)... What are the drawbacks?" New topic
Author

pureQuery(tm)... What are the drawbacks?

Charles McGuire
Ranch Hand

Joined: Jan 18, 2005
Posts: 99
Now that the craziness of the book giveaway is over, I have a question about a rather intriguing looking product.

http://www.db2mag.com/story/showArticle.jhtml?articleID=202400140

According to the article, this is supposed to opeate as a "fairly thin layer that sits on top of JDBC" that "queries relationsal databases as well as Java collections and database caches." It works with any database that has a JDBC driver and plays well with Spring and iBatis.

My question is simple: Has anyone played with this yet, and if so, is it real? The article doesn't mention any drawbacks.


There's no place like 127.0.0.1
Jeanne Boyarsky
author & internet detective
Marshal

Joined: May 26, 2003
Posts: 30919
    
158

Charles,
Thanks for posting this after the promo so it gets more attention and thoughtful replies .

I haven't used it, but I'm a bit skeptical. They say "but it isn't just another SQL-like language." This looks plenty SQL like to me:


In fact, the whole description sounds a lot like JPA.

It doesn't force you to use a specific API (such as EJB2, JPA, Spring, or iBatis), but it does facilitate the implementation of several existing APIs for accessing data.

Gotta love the marketing speal. It doesn't force you to use a standard API like JPA. Instead, it forces you to use a whole new IBM specific API. This reeks of vendor lock in to me.

I can see their selling point of an IDE for SQL. They support JPA. I don't see why this can't just be JPA rather than another layer of abstraction around it.


[Blog] [JavaRanch FAQ] [How To Ask Questions The Smart Way] [Book Promos]
Blogging on Certs: SCEA Part 1, Part 2 & 3, Core Spring 3, OCAJP, OCPJP beta, TOGAF part 1 and part 2
Charles McGuire
Ranch Hand

Joined: Jan 18, 2005
Posts: 99
Hi Jeanne,

Hmmm... I don't know much about JPA. Another article from their DeveloperWorks site may answer that. They say:
Such solutions (HQL/JPA's JQL and others) hide the actual native SQL from the developers and DBAs since these queries transform themselves into the native query languages at runtime. An inherent problem with such solutions is that developers have less visibility to the efficiency of the generated SQL, thus making problem determination more difficult. Resulting applications built using such products are rigidly tied to a single vendor query language. Often times the proprietary query languages are not sophisticated enough to handle more complex scenarios and queries.


There is a lot more. The full article can be found at http://www.ibm.com/developerworks/db2/library/techarticle/dm-0709surange/

I printed it out to read on the train. 48 pages (landscape), so I'm not through yet. This article contains a lot of illustrations of examples of working with it in Eclipse.

I e-mailed the author of the DB2 magazine article I posted originally. I couldn't find it available for download anywhere. He said it will be available for download at the end of this month. He offered me a beta if I wanted it right now, but since it is only a few days out I declined his kind offer and said I'd wait for the final release.

The "pure" prefix must be something new with IBM. First it was pureXML, now it's pureQuery. Kind of leaves them open to flame, doesn't it? "This product is pure(you-know-what)", etc.
[ October 23, 2007: Message edited by: Charles McGuire ]
Jeanne Boyarsky
author & internet detective
Marshal

Joined: May 26, 2003
Posts: 30919
    
158

Charles,
I agree with that paragraph. However pureQuery appears to have all those limitations as well.

There is an inherent problem here. Relational databases understand SQL. Which means we either need to write SQL or write in a language that is translated to SQL. The longer article explains that they do in fact use SQL. It looks like there main benefit is providing an IDE. I still think the biggest drawback is that you are locked into their API. And I still think that they would have been better off providing an IDE for a standard.
Charles McGuire
Ranch Hand

Joined: Jan 18, 2005
Posts: 99
Hi Jeanne,

As developers, we use API's all day long. I'm not too worried that this may be proprietary as there are different levels of proprietary, some worse than others. The gain will have to exceed the pain.

I didn't realize when I posted the original question that pureQuery wasn't available for download yet. We'll have to see the EULA when it becomes available at the end of the month, plus all of the functionality.

My predisposition is kind of anti-framework bloat. I don't know if this plays to that predisposition or against it. It will be something to play with on a rainy weekend.
Jeanne Boyarsky
author & internet detective
Marshal

Joined: May 26, 2003
Posts: 30919
    
158

Originally posted by Charles McGuire:
as there are different levels of proprietary, some worse than others. The gain will have to exceed the pain.

I agree with that. We certainly use our share of proprietary frameworks!

The difference is that we use it when there isn't a non-proprietary alternative available.
Charles McGuire
Ranch Hand

Joined: Jan 18, 2005
Posts: 99
Jeanne,
Sometimes I wonder if these kinds of debates will be at all relevant in five years. E-week magazine reported this from the OOPSA conference a few days ago:

Speaking on the move to solid state memory, Gosling said that "the real notion of what will change is databases. I say data structure, not database. Why do you want to use a database? Just use RAM. With the machines we make, you can put half a terabyte of RAM on them. And you don't use databases, you use RAM and things run like the wind."


Full article at: http://www.eweek.com/article2/0,1895,2206130,00.asp


We'll be relaxing at a Starbucks drinking a latte (that will cost twenty dollars by then) and be laughing about those irrelevant JDBC and SQL debates.
Jeanne Boyarsky
author & internet detective
Marshal

Joined: May 26, 2003
Posts: 30919
    
158

Interesting. Wouldn't we still have to read the data from somewhere to get it into RAM?
Charles McGuire
Ranch Hand

Joined: Jan 18, 2005
Posts: 99
Solid state RAM, Jeanne!

http://en.wikipedia.org/wiki/Solid_state_drive
Paul Campbell
Ranch Hand

Joined: Oct 06, 2007
Posts: 338
Originally posted by Charles McGuire:
Solid state RAM, Jeanne!

http://en.wikipedia.org/wiki/Solid_state_drive


From an OLAP perspective, even if it lives in some type of memory cache... it would still have to have some type of structure for it to be useful to the business... RAC is Oracle's progression towards this.

I'm not sure if I completely understand Gosling's statment... maybe he is just looking at this strictly from an OLTP application viewpoint.
Jeanne Boyarsky
author & internet detective
Marshal

Joined: May 26, 2003
Posts: 30919
    
158

Originally posted by Charles McGuire:
Solid state RAM, Jeanne!

http://en.wikipedia.org/wiki/Solid_state_drive

Cool! That's an interesting link.
Rafael Coss
Greenhorn

Joined: Nov 04, 2007
Posts: 1
You can download IBM Data Studio which contains pureQuery from the following URL:
https://www14.software.ibm.com/webapp/iwm/web/preLogin.do?lang=en_US&source=swg-ids

Here are some forums you can post questions to:
http://www.ibm.com/developerworks/forums/dw_forum.jsp?forum=1086&cat=19
http://www.iiug.org/forums/datastudio/

Here are the docs:
http://publib.boulder.ibm.com/infocenter/dstudio/v1r1m0/index.jsp?topic=/com.ibm.datatools.javatool.runtime.doc/topics/cpdqruntop.html
http://publib.boulder.ibm.com/infocenter/dstudio/v1r1m0/index.jsp?topic=/com.ibm.datatools.javatool.runtime.doc/topics/javadoc/overview-summary.html

You can find most of this info on the wikipedia:
http://en.wikipedia.org/wiki/IBM_PureQuery
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: pureQuery(tm)... What are the drawbacks?