× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



On Fri, Sep 15, 2017 at 2:44 PM, Nathan Andelin <nandelin@xxxxxxxxx> wrote:

The real proof is in benchmarks. And I don't have time to go through them
one by one. But I should respond to your assertions.

On Fri, Sep 15, 2017 at 1:50 PM, Charles Wilt <charles.wilt@xxxxxxxxx>
wrote:

Nathan,

Pretty much completely wrong...


You appear to have a habit of bluntness. Sometimes it works for your
benefit. But this is not one of those times.



Originally, SQL & RLA did use the same interface to the DB ...


That's an ambiguous statement. I don't believe that any SQL engine on IBM i
has ever bound to the QRNXIO service program that RPG programs bind to, nor
invoked the procedures that correspond with the op codes (open, close,
read, write, chain, etc.).


that's what's
known now as the Class Query Engine (CQE).


Again, I would challenge that the CQE ever used "the same interface to the
DB..."


​If you have an old enough system, you can look at the call stack of
process that is running under the CQE​ such as OPNQRYF or Query/400.

You'll see the same routines called that RPG RLA op-codes use.
QDBGETKY Get 1 record by key
QDBGETSQ Get 1 record sequentially
QDBGETM Get multiple records



You've evidently read about IBM rewriting its query engine and giving it a
new name, but you lack knowledge about its internals. Don't take that as a
put down. IBM hasn't revealed a lot of details.


Take the SQL Class ;)​



But SQE was completely new, lots of stuff was added below the MI to handle
SQL operations; taking advantage of the tight integration between DB &
OS.


There are some good documents out there about the SQE that make it obvious
that the new engine is using RLA under the covers.


​Not even close. Yes at some point a block of data is read, and part of
that data is extracted as a "record" or more likely a set of records.

So the disk I/O it the bottom is basically the same, but that doesn't mean
SQL is ​using RLA.





As mere mortals working above the OS, we can't take advantage of any of
it
with RLA.


This is where your ignorance begins to show. I don't have a good reference
to point to at the moment, but IBM has indicated that DB improvements at
the MI level show up in RLA interfaces too.


General improvements to the DB perhaps...but improvements to the SQE will
never help RLA.

Star Joins, LPG, the list goes on.

There isn't much room for improvement for a CHAIN or READ...



End result, SQL is faster and will continue to get faster than RPG RLA.


That contradicts what I've read. Do you have a source?


​Besides IBM and my own experience? Nope.

Charles​

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.